API и CLI
API-ключи
Заголовок раздела «API-ключи»Весь программный доступ к Ownlate осуществляется через API-ключи. Перейдите в Рабочее пространство → API-ключи для создания ключа.
Каждый ключ имеет:
- Название — метка для идентификации ключа (например,
ci-pipeline) - Разрешения — детализированные права (тот же набор, что и права участника рабочего пространства)
- Срок действия — опциональная дата истечения; после этой даты ключ перестаёт работать
Чтобы отозвать ключ, перейдите в Рабочее пространство → API-ключи и нажмите Отозвать.
REST API
Заголовок раздела «REST API»API Ownlate — стандартный REST API. Передавайте API-ключ в заголовке Authorization:
Authorization: Bearer <ваш-api-ключ>Полный список доступных эндпоинтов находится в интерактивной справке по API:
Публичные эндпоинты (без авторизации)
Заголовок раздела «Публичные эндпоинты (без авторизации)»Проекты, помеченные как публичные, предоставляют эндпоинты только для чтения без авторизации. Это удобно для open-source проектов, которые хотят показать прогресс перевода сообществу.
GET /public/projects/:projectId/translations-map?lang=ruВозвращает плоский словарь ключ → значение утверждённых переводов для указанного языка.
Инструмент @ownlate/cli предназначен для CI/CD-пайплайнов. Установите его:
npm install -g @ownlate/cli# илиpnpm add -g @ownlate/cliАвторизация
Заголовок раздела «Авторизация»ownlate login --api-key <ваш-api-ключ>Или задайте переменную окружения:
export OWNLATE_API_KEY=<ваш-api-ключ>Загрузка исходных файлов
Заголовок раздела «Загрузка исходных файлов»ownlate push --project <project-id> --file ./locales/en.json --lang enИспользуйте это в CI-пайплайне после вливания новых строк, чтобы Ownlate оставался синхронизированным с исходным кодом.
Скачивание утверждённых переводов
Заголовок раздела «Скачивание утверждённых переводов»ownlate pull --project <project-id> --lang ru --output ./locales/ru.jsonСкачать все языки сразу:
ownlate pull --project <project-id> --output ./locales/Это создаёт по одному файлу на язык в указанной директории.
Пример CI/CD
Заголовок раздела «Пример CI/CD»- name: Отправить строки в Ownlate run: ownlate push --project $PROJECT_ID --file locales/en.json --lang en env: OWNLATE_API_KEY: ${{ secrets.OWNLATE_API_KEY }}
- name: Скачать утверждённые переводы run: ownlate pull --project $PROJECT_ID --output locales/ env: OWNLATE_API_KEY: ${{ secrets.OWNLATE_API_KEY }}