Предварительный перевод

Please consider that API 2.0 is now the preferred version to be used. The old API will remain fully functional until the end of 2021.

Crowdin API v2

Предварительный перевод файлов проекта Crowdin.

Запрос

Note: Use the combination of project identifier, username, and account key to pass to this endpoint.

POST https://api.crowdin.com/api/project/{project-identifier}/pre-translate?login={username}&account-key={account-key}

Параметры

Название Значение Описание
languages обязательный массив Set of languages to which pre-translation should be applied. For this use Сrowdin language codes.
files обязательный массив Files array that should be translated. Ключи массива должны содержать имена файлов с путем в проекте Crowdin.
method необязательный строка Определяет, какой метод будет использоваться для предварительного перевода.
Допустимые значения:
  • "tm" - предварительный перевод через память переводов
  • "mt" — Pre-translation via Machine Translation. Should be used with engine parameter.
Память переводов используется по умолчанию.
engine необязательный строка Определяет движок для машинного перевода.
Допустимые значения:
  • «microsoft» - предварительный перевод через Microsoft Translator
  • "google" - предварительный перевод через Google Translate
  • "yandex" - предварительный перевод через Яндекс.Переводчик
Note: Ensure that you have set appropriate keys for Machine Translation.
approve_translated необязательный булево Automatically approves translated strings. Допустимые значения: 1 или 0. It works only with TM pre-translation method.
auto_approve_option необязательный число Определяет, какие переводы, добавленные предварительным переводом через TM, должны быть автоматически утверждены.
Acceptable values are 0, 1, or 2. The default value is 0.
  • "0" — все
  • «1» - с идеальным совпадением
  • "2" — все (пропустить предложения авто-подстановки)
Примечание: Работает только в том случае, если параметр «Approve_translated» используется со значением 1.
import_duplicates необязательный булево Adds translations even if the same translation already exists. Допустимые значения: 1 или 0. It works only with TM pre-translation method.
apply_untranslated_strings_only необязательный булево Applies translations for untranslated strings only. Допустимые значения: 1 или 0. It works only with TM pre-translation method.
perfect_match необязательный булево Предварительный перевод будет применяться только для тех строк, которые имеют полное совпадение в тексте и контекстуальную информацию. Допустимые значения: 1 или 0. It works only with TM pre-translation method.
json необязательный строка Может не содержать значения. Определяет, что ответ должен быть в формате JSON.
jsonp необязательный строка Название функции обратного вызова. Определяет, что ответ должен быть в формате JSONP.
Variables
project-identifier строка Идентификатор проекта.
login строка Ваше имя пользователя в Crowdin.
account-key строка API ключ вашего аккаунта.

Ответ

If the method is successful it responds with an XML structure, as it is shown below:
<?xml version="1.0" encoding="UTF-8"?>
<success>
</success>
If you request languages that are not included in your project, the response looks like:
<?xml version="1.0" encoding="UTF-8"?>
<success>
  <languages>
    <language status="skipped">French</language>
  </languages>
</success>
Unsuccessful response sample:
<?xml version="1.0" encoding="UTF-8"?>
<error>
  <code>3</code>
  <message>API key is not valid</message>
</error>

Примеры

curl \
  -F "languages[]=fr" \
  -F "languages[]=uk" \
  -F "files[]=/example.txt" \
  https://api.crowdin.com/api/project/{project-identifier}/pre-translate?login={username}&account-key={account-key}
<?php
$post_params = array();
$request_url = 'https://api.crowdin.com/api/project/{project-identifier}/pre-translate?login={username}&account-key={account-key}';
$post_params['languages[]'] = 'uk';
$post_params['files[]'] = '/example.txt';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $request_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_params);

$result = curl_exec($ch);
curl_close($ch);

echo $result;

Была ли эта статья полезной?