Главная/Рецепты/Закрепить код провайдера ENУКРРУС API-справочник (ReDoc) ↗

Закрепить код провайдера

Провайдер хочет не то, что даёт лестница фолбэка. Исправляется одной правкой.

Цель: Baidu хочет cht для традиционного китайского. Без настройки zh-TW фолбэчится в zh — это то, что прод шлёт сегодня, и это неправильно.

Проверьте текущий ответ

curl ".../v1/resolve?provider=baidu_translate&language=zh-TW"
{ "language": "zh-TW", "code": "zh", "match": "base_language", "via_language": "zh" }

match: base_language — это и есть признак: никто эту пару не настраивал, лестница угадала.

Закрепите

Admin → Providers → baidu_translate → Matrix, поиск chinese, найдите Chinese (Traditional), введите cht в ячейку, кликните вне неё.

Рамка ячейки зеленеет, чип источника меняется на exact, появляется ↺ Unpin.

Проверьте

curl ".../v1/resolve?provider=baidu_translate&language=zh-TW"
{ "language": "zh-TW", "code": "cht", "match": "exact" }

Без рестарта и без ожидания кеша — каталог инвалидируется при записи.

Пометка пары неподдерживаемой

Иногда ответ в том, что ответа нет. ✕ Unsupported на строке это фиксирует:

{ "language": "ceb", "code": null, "supported": false, "match": null }

Тогда вызывающие знают, что провайдера нужно пропустить, а не слать запрос, который упадёт.

Помечайте только то, что проверили

supported: false — фактическое утверждение, по которому вызывающий будет действовать. Если вы пару не тестировали, оставьте её выведенной: ошибочное false тихо убирает провайдера из выбора для этого языка.

Открепление

Очистите ячейку. Явная строка удаляется, пара возвращается к лестнице фолбэка. Полезно, когда провайдер добавил поддержку кода, который вы закрепили на что-то другое.

Как найти, что закреплять

Matrix → Show → Derived only показывает все пары, которые для этого провайдера никто не проверял. Скомбинируйте с Kind → Regional — базовые языки почти никогда не стоит закреплять.

Сначала пройдите языки, которые вы действительно продаёте; хвост списка редко стоит времени.

Далее