Редагувати проект

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}/edit-project?login={username}&account-key={account-key}

Параметри

Ім'я Значення Опис
name необов'язковий рядок Назва проекту.
languages необов'язковий масив Масив мовних кодів на які проект повинен бути перекладений.
join_policy необов'язковий рядок Політика приєднання до проекту. Прийнятними значеннями є:
  • відкрити
  • private
language_access_policy необов'язковий рядок Визначає, як учасники проекту можуть отримати доступ до цільових мов. Прийнятними значеннями є:
  • "відкритий" - будь-який перекладач може отримати доступ до будь-якої мови.
  • "помірний" - перекладач має доступ до певної мови.
hide_duplicates необов'язковий число Визначає, чи повинні дубльовані рядки відображатися для перекладачів, або вони повинні бути прихованими і автоматично перекладеними. Прийнятними значеннями є:
  • 0: Показувати - перекладачі будуть перекладати кожен рядок окремо
  • 1: Hide (regular detection) - all duplicates will share the same translation
  • 2: Показувати, але автоматично перекладати їх
  • 3: Show within a version branch (regular detection) - duplicates will be hidden only between version branches
  • 4: Hide (strict detection) - all duplicates will share the same translation
  • 5: Show within a version branch (strict detection) - duplicates will be hidden only between version branches
export_translated_only необов'язковий bool Визначає, чи будуть експортовані тільки перекладені рядки в кінцевий файл. Ми не рекомендуємо встановлювати цю опцію, якщо у вашому проекті є текстові (* .html, * .txt, * .docx і т. п.) документи, оскільки вони можуть стати причиною пошкодження підсумкових файлів. Доступні значення: 1 або 0.
export_approved_only необов'язковий bool Якщо встановлено 1, то тільки затверджені переклади будуть експортовані в підсумковий ZIP-файл. Доступні значення: 1 або 0.
auto_translate_dialects необов'язковий bool Неперекладені рядки на діалекті мови будуть автоматично перекладені в експортованих файлі, використовуючи переклад з основної мови. Доступні значення: 1 або 0.
public_downloads необов'язковий bool Визначає, чи буде кнопка "Завантажити" видна всім на веб-сторінках Crowdin. Доступні значення: 1 або 0.
use_global_tm необов'язковий bool Визначає, чи будуть використані переклади з Глобальної пам'яті перекладів Crowdin. Якщо ця опція використовується, всі переклади вашого проекту будуть автоматично передані в Глобальну пам'ять перекладу. Доступні значення: 1 або 0.
logo необов'язковий файл Емблема проекту в Crowdin.
cname необов'язковий рядок Власне доменне ім'я проекту Crowdin.
description необов'язковий рядок Опис проекту.
qa_checks необов'язковий масив Визначає, чи повинна бути активована перевірка КЯ (контроль якості) в проекті. В якості ключа необхідно вказати параметр перевірки КЯ (Огляд параметрів перевірки КЯ). Можливі ключі:
  • "enabled" - включення або відключення перевірки якості
  • "empty" - порожній переклад
  • "size" — проблеми довжини
  • "tags" - невідповідність тегів
  • "spaces" - невідповідність прогалин
  • "variables" — невідповідність змінних
  • "punctuation" - невідповідність пунктуації
  • "symbol_register" - невідповідність регістру символів
  • "special_symbols" - невідповідність спеціальних символів
  • "wrong_translation" - проблеми з «неправильним перекладом»
  • "spellcheck" - орфографія
  • "icu" - синтаксис ICU
Доступні значення: 1 або 0.
Увага!Ця опція доступна тільки на тарифних планах для організацій.
webhook_file_translated необов'язковий рядок Відкрити цю URL-адресу, коли один з файлів проекту перекладено. Разом з URL буде відкрито: "project" - ідентифікатор проекту, "language" - код мови і "file" - ім'я файлу.
webhook_file_proofread необов'язковий рядок Відкрити цю URL-адресу, коли один з файлів проекту пройшов коректуру. Разом з URL буде відкрито: "project" - ідентифікатор проекту, "language" - код мови і "file" - ім'я файлу.
webhook_project_translated необов'язковий рядок Відкрийте цю URL-адресу після завершення перекладу проекту. Разом з URL буде відкрито "project" - ідентифікатор проекту та "language" - код мови.
webhook_project_proofread необов'язковий рядок Відкрийте цю URL-адресу після завершення перевірки проекту. Разом з URL буде відкрито "project" - ідентифікатор проекту та "language" - код мови.
json необов'язковий рядок Може не містити значення. Визначає, що відповідь має бути в форматі JSON.
jsonp необов'язковий рядок Назва функції зворотного виклику. Визначає, що відповідь має бути в форматі JSONP.
Variables
project-identifier рядок Ідентифікатор проекту.
login рядок Ваше ім'я користувача в Crowdin.
account-key рядок API ключ вашого облікового запису.

Відповідь

Якщо метод успішний, відповідь буде містити XML-структуру, як показано нижче (якщо language_access_policy = open).
<?xml version="1.0" encoding="UTF-8"?>
<project>
  <success>1</success>
  <invitation>http://translate.example.com/project/test-project-api/invite</invitation>
  <url>http://translate.example.com/project/test-project-api</url>
</project>
Приклад відповіді для проектів з "Moderate" language_access_policy.
<?xml version="1.0" encoding="UTF-8"?>
<project>
  <success>1</success>
  <invitation>
    <item>
      <language>Українська</language>
      <translator>http://translate.example.com/project/test-project-api/invite?d=7585662585d5d32307d3937373</translator>
      <proofreader>http://translate.example.com/project/test-project-api/invite?d=3585k635r4d5d32307d3937373</proofreader>
    </item>
  </invitation>
  <url>https://crowdin.com/project/test-project-api</url>
</project>
Невдалий зразок відповіді:
<?xml version="1.0" encoding="UTF-8"?>
<error>
  <code>3</code>
  <message>Ключ API недійсний</message>
</error>

Приклади

curl \
  -F "logo=@logo.png" \
  -F "name=new project name" \
  -F "description=new project description" \
  -F "cname=new.example.com" \
  -F "languages[]=de" \
  -F "languages[]=fr" \
  -F "languages[]=zh-CN" \
  -F "hide_duplicates=1" \
  -F "export_approved_only=0" \
  -F "public_downloads=1" \
  -F "qa_checks[enabled]=1" \
  https://api.crowdin.com/api/project/{project-identifier}/edit-project?login={username}&account-key={account-key}
<?php
$post_params = array();
$request_url = 'https://api.crowdin.com/api/project/{project-identifier}/edit-project?login={username}&account-key={account-key}';
$post_params['name'] = 'new project name';
$post_params['join_policy'] = 'open';
$post_params['languages[0]'] = 'fr';
$post_params['languages[1]'] = 'de';
$post_params['languages[2]'] = 'zh-CN';
$post_params['qa_checks[enabled]'] = 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;

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