|
Документация
Заказать демоПлатформа
ПлатформаMCPCLIAPI
Процессы
РуководстваЖурнал изменений

Добро пожаловать

  • Обзор
  • Аутентификация
  • Ошибки и коды статуса
  • Подписи webhook

Локализация

  • Обзор
  • Создать задачи
  • Заблокировать непереводимые ключи
  • Отслеживание группы заданий
  • Получить одно задание
  • Список заданий
  • Доставка через вебхук
  • Прогресс в реальном времени (WebSocket)

Пайплайн

  • Обзор
  • AI-редактирование перед локализацией
  • Проверка человеком
  • AI-оценка (post-edit)
  • Перефразирование для естественного звучания
  • Проверка обратным переводом
  • Настройка пайплайна
  • Как отслеживать запуски пайплайна

Развёртывание

  • Обзор
  • Создать задание развёртывания
  • Типы источников
  • Что извлекает AI
  • Доставка webhook
  • Прогресс в реальном времени (WebSocket)

Синхронный

  • Локализация
  • Распознавание

Управление движком

  • Предложения для движка

Создать задание развёртывания

Передайте источники, которые у вас уже есть, — и сразу получите движок. POST /jobs/provisioning принимает имя нового движка и до 10 источников — ссылки для обхода или сырой текст — и возвращает 202 Accepted с ID движка. Ждать, пока ИИ дочитает ваш контент, не нужно: движок появляется сразу, как только приходит ответ, а его конфигурация применяется по мере выполнения задания.

text
POST /jobs/provisioning

На этой странице разобран вызов создания: параметры, формат запроса и ответ 202. Впервые работаете с асинхронным развёртыванием? Начните с обзора Async Provisioning API, чтобы понять общую логику. О том, что считается хорошим источником, читайте на отдельной странице — Типы источников. А что именно ИИ из них извлекает, описано в Что извлекает ИИ.

Аутентификация

Передайте API-ключ в заголовке X-API-Key. Ключи привязаны к организации и дают доступ ко всем движкам внутри неё. Подробнее см. в разделе Аутентификация.

Параметры#

Обязателен только engine.name. Всё остальное определяет, чему будет учиться движок. А если не передавать больше ничего, вы получите чистый движок с настройками по умолчанию.

ПараметрТипОписание
engine.namestringИмя нового движка локализации.
engine.descriptionstring (необязательно)Произвольное текстовое описание движка.
localesstring[] (необязательно)Целевые локали в формате BCP-47, для которых нужно выполнить настройку, например ["es", "ja", "de"].
sourcesarray (необязательно)До 10 источников для анализа. Каждый источник — это либо link (URL, который платформа обходит), либо content (сырой текст или markdown). См. Типы источников.
callbackUrlstring (необязательно)URL HTTPS-вебхука для получения итогового результата. Поддерживается только HTTPS — callback URL на HTTP отклоняются. См. Доставка вебхуков.

Запрос#

Источник — это объект { type, payload }. Для источников link указывайте страницы с реальным контекстом — гайдлайны бренда, стилистические руководства, продуктовую документацию. А content используйте для терминологии и правил тональности, которые можно сразу вставить в запрос. В примере ниже сочетаются оба варианта: две страницы для обхода и один блок явных правил.

javascript
const response = await fetch("https://api.lingo.dev/jobs/provisioning", {
  method: "POST",
  headers: {
    "X-API-Key": process.env.LINGO_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    engine: {
      name: "Acme Corp Engine",
      description: "Production localization engine for acme.com",
    },
    locales: ["de", "fr", "ja", "es"],
    sources: [
      { type: "link", payload: "https://acme.com/brand-guidelines" },
      { type: "link", payload: "https://acme.com/docs/style-guide" },
      {
        type: "content",
        payload:
          "Brand name 'Acme' is never translated. Use formal tone in German (Sie-form). Product names: AcmeFlow, AcmeSync, AcmeVault - always keep in English.",
      },
    ],
    callbackUrl: "https://your-app.com/webhooks/provisioning",
  }),
});

const { jobId, engineId, status } = await response.json();
// 202 back right away.
// status: "in_progress" – the AI is reading your sources.
console.log(engineId); // "eng_X1y2Z3a4B5c6D7e8" – usable right now

Ответ (202 Accepted)#

Вызов возвращается без ожидания завершения обхода и анализа: вы сразу получаете ID задания для отслеживания и ID движка, который уже можно использовать.

json
{
  "jobId": "pjb_A1b2C3d4E5f6G7h8",
  "engineId": "eng_X1y2Z3a4B5c6D7e8",
  "status": "in_progress"
}
ПолеОписание
jobIdID задания развёртывания (с префиксом pjb_). Отслеживайте выполнение, подключившись по WebSocket и получая прогресс в реальном времени, или получите результат в свой вебхук после завершения.
engineIdID нового движка (с префиксом eng_). Им можно пользоваться сразу — конфигурация, которую извлекает ИИ, применяется к нему по мере выполнения задания.
statusin_progress, если вы передали источники; completed, если нет (см. ниже).

Именно это делает асинхронный вызов действительно полезным, а не просто долгим ожиданием: engineId возвращается в том же ответе 202 и сразу указывает на реальный движок. Вы можете сохранить его, отправить через него Синхронный запрос Localize или встроить в приложение ещё до того, как ИИ успеет дочитать хотя бы один источник. По мере того как платформа извлекает тональность бренда, элементы глоссария и инструкции, она применяет их к тому же самому движку — движок существует ещё до появления его конфигурации. Чтобы точно понимать, что создало это задание, см. Что извлекает ИИ.

Нет источников? Вы получаете движок без ожидания.

Если не передавать sources, обходить будет нечего, поэтому движок создаётся с конфигурацией модели по умолчанию и возвращается вместе с status: "completed" в том же ответе. Это самый быстрый вариант, если вам нужен пустой движок для самостоятельной настройки: один вызов, готовый engineId и никакого фонового задания, за которым нужно следить.

Что дальше#

Типы источников
Источники link и content, а также что делает источник действительно полезным для анализа.
Что извлекает ИИ
Тональность бренда, элементы глоссария и инструкции — плюс сводка, которую возвращает задание.
Доставка вебхуков
Получайте итоговый результат на свой callback URL и проверяйте подпись.

Эта страница была полезной?

Max PrilutskiyMax Prilutskiy·Обновлено 12 дней назад·4 минуты чтения