Редактировать проект

Редактирование Crowdin проекта.

Запрос

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

POST https://api.crowdin.com/api/project/{идентификатор-проекта}/edit-project?key={ключ-проекта}
POST https://api.crowdin.com/api/project/{project-identifier}/edit-project?login={username}&account-key={account-key}

Параметры

Название Значение Описание
name необязательный строка Название проекта.
languages необязательный массив Массив языковых кодов на которые проект должен быть переведен.
join_policy необязательный строка Project join policy. Допустимые значения:
  • open
  • private
language_access_policy необязательный строка Defines how project members can access target languages. Допустимые значения:
  • «open» - любой переводчик может получить доступ к любому языку.
  • «moderate» - переводчику должен быть предоставлен доступ к определенному языку.
hide_duplicates необязательный число Defines whether duplicated strings should be displayed to translators or should be hidden and translated automatically. Допустимые значения:
  • 0: Показывать - переводчики будут переводить каждую строку отдельно
  • 1: Скрыть - для всех дубликатов будет применен один перевод
  • 2: Показывать, но автоматически переводить их
  • 3: Показывать (рекомендуется для версий) - дубликаты будут скрыты только между версиями
export_translated_only необязательный булево Определяет, будут ли экспортированы только переведенные строки в конечный файл. Мы не рекомендуем устанавливать эту опцию, если в вашем проекте есть текстовые (*.html, *.txt, *.docx и т. п.) документы, поскольку они могут стать причиной повреждения итоговых файлов. Допустимые значения: 1 или 0.
export_approved_only необязательный булево If set to 1 only approved translations will be exported in resulted ZIP file. Допустимые значения: 1 или 0.
auto_translate_dialects необязательный булево Untranslated strings of dialect will be translated automatically in exported file, leveraging translations from main language. Допустимые значения: 1 или 0.
public_downloads необязательный булево Defines whether "Download" button visible to everyone on Crowdin webpages. Допустимые значения: 1 или 0.
use_global_tm необязательный булево Определяет, будут ли использованы переводы из Глобальной памяти переводов Crowdin. Если эта опцию используется, все переводы вашего проекта будут автоматически переданы в Глобальную память перевода. Допустимые значения: 1 или 0.
logo необязательный файл Логотип проекта на Crowdin.
cname необязательный строка Пользовательское доменное имя для проекта Crowdin.
description необязательный строка Описание проекта.
qa_checks необязательный массив Defines whether the QA checks should be active in the project. As a key you must specify QA check parameter (An Overview of QA Check Parameters). Possible keys are:
  • "enabled" - включение или отключения проверки качества
  • "empty" - пустой перевод
  • "size" — проблемы длины
  • "tags" - несоответствие тегов
  • "spaces" - несоответствие пробелов
  • "variables" — несоответствие переменных
  • "punctuation" - несоответствие пунктуации
  • "symbol_register" - несоответствие регистра символов
  • "special_symbols" - несоответствие специальных символов
  • "wrong_translation" - проблемы с «неправильным переводом»
  • "spellcheck" - орфография
  • "icu" - синтаксис ICU
Допустимые значения: 1 или 0.
Note! This option is available only for organization plans.
webhook_file_translated необязательный строка Откройте этот URL при завершении перевода одного из файлов проекта. URL will be opened with "project" - project identifier, "language" - language code and "file" - file name.
webhook_file_proofread необязательный строка Откройте этот URL при завершении утверждения одного из файлов проекта. URL will be opened with "project" - project identifier, "language" - language code and "file" - file name.
webhook_project_translated необязательный строка Open this URL when project translation is complete. URL will be opened with "project" - project identifier and "language" - language code.
webhook_project_proofread необязательный строка Open this URL when project proofreading is complete. URL will be opened with "project" - project identifier and "language" - language code.
json необязательный строка Может не содержать значения. Определяет, что ответ должен быть в формате JSON.
jsonp необязательный строка Название функции обратного вызова. Определяет, что ответ должен быть в формате JSONP.
Variables
project-identifier строка Идентификатор проекта.
project-key строка API-ключ проекта. Требуется либо ключ проекта, либо комбинация имя пользователя и ключ аккаунта.
login строка Ваше имя пользователя в Crowdin. Требуется либо ключ проекта, либо комбинация имя пользователя и ключ аккаунта.
account-key строка API ключ вашего аккаунта. Требуется либо ключ проекта, либо комбинация имя пользователя и ключ аккаунта.

Ответ

If the method is successful, it responds with an XML structure, as it is shown below (when 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>
Response example for projects with "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>
Unsuccessful response sample:
<?xml version="1.0" encoding="UTF-8"?>
<error>
  <code>3</code>
  <message>API key is not valid</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?key={project-key}
<?php
$post_params = array();
$request_url = 'https://api.crowdin.com/api/project/{project-identifier}/edit-project?key={project-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;

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