Завантажити переклад

Вивантажити наявні переклади до вашого Crowdin проекту.
Метод не працює для Локалізація додаткових матеріалів.

Запит

Примітка: Або використовуйте комбінацію ідентифікатора проекту ідентифікатора проекту та ключ проекту або комбінацію ідентифікатор проекту, ім'я користувача, та ключ облікового запису щоб перейти до цієї кінцевої точки.

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

Параметри

Ім'я Значення Опис
files обов'язковий масив Масив перекладених файлів. Ключі масиву повинні містити імена файлів в Crowdin.
Увага!Максимально дозволено завантаження 20 файлів за один раз.
language обов'язково рядок мовний код Crowdin. За один виклик можна завантажити переклади для декількох файлів, але тільки на одній з мов.
import_duplicates необов'язковий bool Визначає, чи слід додавати переклад, якщо той же самий переклад був доданий раніше. Доступні значення: 0 або 1. Значення за замовчуванням 0.
import_eq_suggestions необов'язковий bool Визначає, чи слід додавати переклад, якщо він еквівалентний вихідному рядку в Crowdin. Доступні значення: 0 або 1. Значення за замовчуванням 0.
auto_approve_imported необов'язковий bool Позначати завантажені переклади як затверджені. Доступні значення: 0 або 1. Значення за замовчуванням 0.
format необов'язковий рядок Вкажіть цей параметр, якщо переклади завантажуються в проект в форматі файлу XLIFF. Допустиме значення: xliff
Щоб завантажити файл XLIFF для автономного перекладу, застосуєте методЕкспорт файлу.
branch необов'язковий рядок Ім'я гілки пов'язаної версії (Управління версіями).
json необов'язковий рядок Може не містити значення. Визначає, що відповідь має бути в форматі JSON.
jsonp необов'язковий рядок Назва функції зворотного виклику. Визначає, що відповідь має бути в форматі JSONP.
Variables
project-identifier рядок Ідентифікатор проекту.
project-key рядок API-ключ проекту. Потрібно або ключ проекту, або комбінація ім'я користувача і ключ акаунта.
login рядок Ваше ім'я користувача в Crowdin. Потрібно або ключ проекту, або комбінація ім'я користувача і ключ акаунта.
account-key рядок API ключ вашого облікового запису. Потрібно або ключ проекту, або комбінація ім'я користувача і ключ акаунта.

Відповідь

Якщо метод успішний, він повертає XML-структуру, як показано нижче.
<?xml version="1.0" encoding="UTF-8"?>
<success>
</success>
Приклад невдалого запиту:
<?xml version="1.0" encoding="UTF-8"?>
<error>
  <code>3</code>
  <message>Ключ API недійсний</message>
</error>
Наступний запит є частково вдалим, тому що всі формати файлів, які не мають певної структури (наприклад: Generic XML, HTML, Plain Text, Markdown, OpenOffice, Microsoft Office, Adobe InDesign, Adobe FrameMaker, Webxml), завантажити переклади неможливо.
<?xml version="1.0" encoding="UTF-8"?>
<success>
  <stats>
    <file name="spreadsheet.csv" status="uploaded"></file>
    <file name="webxml.xml" status="not_allowed"></file>
  </stats>
</success>

Приклади

curl \
  -F "files[strings.xml]=@strings.fr.xml" \
  -F "language=fr" \
  -F "auto_approve_imported=1" \
  https://api.crowdin.com/api/project/{project-identifier}/upload-translation?key={project-key}
<?php
$post_params = array();
$request_url = 'https://api.crowdin.com/api/project/{project-identifier}/upload-translation?key={project-key}';

if (function_exists('curl_file_create')) {
  $post_params['files[test.xml]'] = curl_file_create('/home/crowdin/test.fr.xml');
} else {
  $post_params['files[test.xml]'] = '@/home/crowdin/test.fr.xml';
}

$post_params['language'] = 'fr';
$post_params['import_eq_suggestions'] = 1;

$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;

Ця стаття була корисною?