Головна/Початок роботи/Швидкий старт ENУКРРУС API-довідник (ReDoc) ↗

Швидкий старт

Один виклик без налаштувань — і три речі, які варто знати про відповідь.

Налаштовувати нічого не треба. API публічний, без автентифікації, лише на читання.

Зарезолвити одну мову

curl "https://languages.service.custom.mt/v1/resolve?provider=deepl_api&language=pt_BR"
{
  "query": "pt_BR",
  "provider": "deepl_api",
  "language": "pt-BR",
  "code": "PT-BR",
  "supported": true,
  "match": "exact",
  "matched_alias": null,
  "via_language": null
}

code — це відповідь, рядок для запиту до провайдера. Решта полів її пояснює.

Три речі про цю відповідь

code повертається навіть коли він дорівнює вашому вводу. Не робіть окремий кейс для «нічого не змінилось» — завжди надсилайте те, що каже code. У цьому й суть: ваш код перестає знати, які провайдери примхливі.

language — канонічний код. Зберігайте саме його, а не те написання, яке ви отримали. pt_BR, PT-BR і por-br канонізуються в pt-BR, і саме зберігання канонічної форми робить два записи порівнюваними згодом.

match каже, наскільки ми впевнені. exact означає, що пару налаштували свідомо. Будь-що інше означає, що відповідь виведена — коректна й безпечна, але не курована. Повна драбина — Resolution Ladder.

Уся задача за один раунд-тріп

Задача перекладу потребує source і target; проєкт розгортає один source на багато targets. Спитайте все одразу:

curl -X POST https://languages.service.custom.mt/v1/resolve/batch \
  -H 'Content-Type: application/json' \
  -d '{"pairs":[
        {"provider":"deepl_api","language":"en-GB"},
        {"provider":"deepl_api","language":"pt_BR"}
      ]}'

Порядок відповіді збігається із запитом, і кожен елемент несе або result, або error — одна невідома мова ніколи не коштує вам решти батча.

Як назвати провайдера

Працюють три форми:

Форма Приклад
Код каталогу deepl_api
Коротка назва deepl
Легасі service_name консолі OpenAiGPT4o_2024_11_20_Provider

Коди каталогу — ті самі, що у provider_credentials, тож один ідентифікатор працює в обох сервісах. Легасі-назви існують, щоб ті, хто переїжджає з консолі, нічого не міняли в перший день — див. Migrating from the Console.

Як назвати мову

Будь-яке зареєстроване написання; регістр і роздільники ігноруються. zh_hans, ZH-HANS і zh-Hans — один ключ. Див. Aliases and Normalisation.

Коли нічого не знайдено

{ "error": { "code": "language_not_found",
             "message": "Unknown language code: 'xx-YY'",
             "details": { "language": "xx-YY" } } }

Розгалужуйтесь по error.code, ніколи по тексту. Повний перелік — Error Codes.

Якщо ви чистите список кодів і волієте класифікувати, а не ловити винятки, беріть /v1/normalize — він віддає 200 з known: false замість 404. Див. Нормалізація вхідних кодів.

Далі