Как начать работать с Translate
Yandex Translate предоставляет API для интеграции технологий перевода в свои приложения. Если вы хотите использовать для перевода графический интерфейс, воспользуйтесь Яндекс Переводчиком
В этом разделе вы научитесь переводить текст, используя Translate API.
Чтобы воспользоваться примерами, установите cURL
Больше примеров на разных языках программирования доступно в пошаговых инструкциях.
О том, как создать сервисный аккаунт и API-ключ для интеграции Yandex Translate в свое приложение, см. Настройка доступа с помощью API-ключа.
Перед началом работы
-
На странице Биллинг
убедитесь, что платежный аккаунт находится в статусеACTIVE
илиTRIAL_ACTIVE
. Если платежного аккаунта нет, создайте его. -
Для аутентификации от имени сервисного аккаунта вы можете использовать API-ключ или IAM-токен, для аутентификации от имени пользовательского аккаунта — только IAM-токен.
Получите данные вашего аккаунта для аутентификации в API Translate:
API-ключIAM-токен-
Если у вас еще нет сервисного аккаунта, создайте его.
-
Назначьте сервисному аккаунту роль
ai.translate.user
на каталог. -
Получите идентификатор каталога, в котором создан ваш сервисный аккаунт. Идентификатор каталога должен передаваться в теле каждого запроса в поле
folderId
. -
Создайте API-ключ с областью действия
yc.ai.translate.execute
.Передавайте полученный ключ в заголовке
Authorization
каждого запроса в формате:Authorization: Api-Key <API-ключ>
-
Получите идентификатор любого каталога, на который у вашего аккаунта есть роль
ai.translate.user
или выше. Идентификатор каталога должен передаваться в теле каждого запроса в полеfolderId
. -
Получите IAM-токен для аккаунта на Яндексе, федеративного аккаунта или сервисного аккаунта.
Передавайте полученный токен в заголовке
Authorization
каждого запроса в формате:Authorization: Bearer <IAM-токен>
-
Перевести текст
Пример ниже разработан для выполнения в операционных системах MacOS и Linux. Чтобы выполнить его в системе Windows, ознакомьтесь с особенностями работы с Bash в Microsoft Windows.
В этом примере показано, как выполнить перевод на русский язык двух строк с текстом: «Hello» и «World». Язык исходного текста будет определен автоматически.
-
Создайте файл с телом запроса (например,
body.json
):{ "folderId": "<идентификатор_каталога>", "texts": ["Hello", "World"], "targetLanguageCode": "ru" }
Где:
folderId
— идентификатор каталога, полученный перед началом работы.texts
— текст для перевода в виде списка из строк.targetLanguageCode
— язык, на который переводится текст. Вы можете узнать код языка вместе со списком поддерживаемых языков.
-
Передайте файл на перевод, выполнив команду:
export API_KEY=<API-ключ> curl \ --request POST \ --header "Content-Type: application/json" \ --header "Authorization: Api-Key ${API_KEY}" \ --data '@<путь_до_файла_json>' \ "https://translate.api.cloud.yandex.net/translate/v2/translate"
Где
API_KEY
— API-ключ, полученный перед началом работы. Если для аутентификации вы используете IAM-токен, измените заголовокAuthorization
на"Authorization: Bearer <IAM-токен>"
.В ответе сервис вернет переведенные строки текста:
{ "translations": [ { "text": "Привет", "detectedLanguageCode": "en" }, { "text": "Мир", "detectedLanguageCode": "en" } ] }