Создать проект

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 проекта.

Запрос

POST https://api.crowdin.com/api/account/create-project?account-key={ключ-аккаунта}

Параметры

Название Значение Описание
login обязательный строка Ваше имя пользователя в Crowdin.
name обязательный строка Название проекта.
identifier обязательный строка Идентификатор проекта. Should be unique among other Crowdin projects.
source_language обязательный строка Source files language. языковой код Crowdin.
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 необязательный строка Описание проекта.
in_context необязательный булево Defines whether the In-Context should be active in the project. Допустимые значения: 1 или 0.
pseudo_language необязательныйо строка Укажите код языка для In-Context псевдо-языка, который будет хранить некоторые операционные данные.
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 будет открыт с помощью "project" - идентификатор проекта, "language" - код языка, "file_id" - идентификатор файла Crowdin и "file" - имя файла.
webhook_file_proofread необязательный строка Откройте этот URL при завершении утверждения одного из файлов проекта. URL будет открыт с помощью "project" - идентификатор проекта, "language" - код языка, "file_id" - идентификатор файла Crowdin и "file" - имя файла.
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
account-key строка API ключ вашего аккаунта Crowdin.

Ответ

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>
  <key>ca51cef8f852425496b1cdd3e86fea88</key>
</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>
  <key>d13720ba72204273af0321ca980945ec</key>
</project>
Unsuccessful response sample:
<?xml version="1.0" encoding="UTF-8"?>
<error>
  <code>12</code>
  <message>Account key is invalid</message>
</error>

Примеры

curl \
  -F "login=admin" \
  -F "logo=@logo.png" \
  -F "name=This is a test project" \
  -F "identifier=test-project-api" \
  -F "description=Brief Description" \
  -F "hide_duplicates=1" \
  -F "cname=translate.example.com" \
  -F "join_policy=open" \
  -F "languages[]=fr" \
  -F "languages[]=ru" \
  -F "export_approved_only=1" \
  -F "public_downloads=1" \
  -F "source_language=en" \
  -F "qa_checks[enabled]=1" \
  https://api.crowdin.com/api/account/create-project?account-key={account-key}
<?php
$post_params = array();
$request_url = 'https://api.crowdin.com/api/account/create-project?account-key={account-key}';
$post_params['login'] = 'admin';
$post_params['name'] = 'Test Project';
$post_params['identifier'] = 'api-test-project';
$post_params['join_policy'] = 'private';
$post_params['languages[0]'] = 'fr';
$post_params['languages[1]'] = 'uk';
$post_params['source_language'] = 'en';
$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;

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