Language Service Wiki

Как каждый провайдер называет каждый язык — и как это у нас спросить.

Это вики для разработчиков Language Service: единого источника правды о языках, которые платформа умеет переводить, и о точной строке кода, которую API каждого провайдера ожидает для них.

Задача узкая и неблагодарная. Упрощённый китайский — это zh-CN для Papago, zh-Hans для DeepL и Azure, zh-Hans-CN ещё для нескольких. Бразильский португальский приходит из интеграций как pt-BR, pt_BR, PT-BR или por-br. Ошибка здесь — не ошибка валидации, которую видно на тестах: это либо задача, упавшая на стороне провайдера, либо, что хуже, задача, которая тихо вернулась переведённой не в тот вариант.

Итак: пришлите любое написание и провайдера — получите точную строку, которую нужно положить в запрос.

GET /v1/resolve?provider=deepl_api&language=pt_BR
{ "query": "pt_BR", "provider": "deepl_api", "language": "pt-BR",
  "code": "PT-BR", "supported": true, "match": "exact" }

Без аутентификации

Здесь только открытые справочные данные — какие языки существуют и как они называются. API только на чтение: нет токена, который нужно получить, и нет заголовка, который нужно выставить.

Выберите свой путь

Вы… Начните здесь
Новичок — хочу, чтобы один вызов просто сработал Quickstart
Рантайм перевода, резолвящий source и target Resolution Ladder, далее Резолвинг всей задачи
Интеграция, принимающая коды снаружи Aliases and Normalisation, далее Нормализация входящих кодов
Ищете, что вообще есть Language Catalog · Providers and Vendors

Две идеи, которые стоит прочитать первыми

Один код на пару. Для любой (провайдер, язык) есть ровно одна строка, которую мы отправляем. Этот выбор сделан один раз и зафиксирован, а не решается во время запроса, — поэтому одна и та же пара всегда отвечает одинаково. См. Core Concepts.

Каждый ответ говорит, как он получен. match отличает настроенный маппинг от разумного фолбэка, так что вызывающий, которому нужна точность, видит разницу. См. Resolution Ladder.

Справочник API

Интерактивный ReDoc отдаёт сам API. Однострочное описание каждой операции со ссылками на страницы — Endpoints Index.

Карта разделов

00 Начало работы — Quickstart · Core Concepts · Errors and Conventions

01 Языки — Language Catalog · Aliases and Normalisation

02 Провайдеры — Providers and Vendors · Fallback Policies

03 Резолвинг — Resolution Ladder

04 Рецепты — Резолвинг языка · Резолвинг всей задачи · Нормализация входящих кодов

05 Справочник — Endpoints Index · Error Codes · Glossary