Übersetzung hochladen

Bitte beachten Sie, dass API 2.0 jetzt die bevorzugte Version ist. Die alte API bleibt bis Ende 2021 voll funktionsfähig.

Crowdin API v2
Laden Sie existierende Übersetzungen zu Ihrem Crowdin-Projekt hoch.
Method is not working for Assets localization.

Anfrage

Hinweis: Verwenden Sie die Kombination von Projekt-ID, Nutzername und Kontoschlüssel, um an diesen Endpunkt weiterzugeben.

POST https://api.crowdin.com/api/project/{Projekt-ID}/upload-translation?login={Nutzername}&account-key={Kontoschlüssel}

Parameter

Name Wert Beschreibung
files benötigt Array Translated files array. Array keys should contain file names in Crowdin.
Note! 20 files max are allowed to upload per one time file transfer.
Sprache erforderlich String Crowdin-Sprachcodes. Mit nur einem Aufruf ist es möglich, mehrere Übersetzungen für mehrere Dateien, aber nur für eine Sprache, hochzuladen.
import_eq_suggestions optional Boolean Defines whether to add translation if it is equal to source string at Crowdin. Zulässige Werte sind: „0” und „1”. Der Standardwert ist 0.
auto_approve_imported optional Boolean Mark uploaded translations as approved. Zulässige Werte sind: „0” und „1”. Der Standardwert ist 0.
format optional String Geben Sie diesen Parameter an, sofern Sie die Übersetzungen im XLIFF-Format hochladen. Zulässiger Wert ist „xliff“
Um eine Datei im XLIFF-Format für die Offline-Übersetzung herunterzuladen, verwenden Sie die Datei exportieren-Methode.
branch optional String Der Name des dazugehörigen Versionszweiges (Versionsverwaltung).
json optional String Könnte keinen Wert enthalten. Definiert, dass die Antwort im JSON-Format sein soll.
jsonp optional String Name der Rückruffunktion. Definiert, dass die Antwort im JSONP-Format sein soll.
Variablen
project-identifier String Projekt-ID.
login String Ihr Nutzername auf Crowdin.
account-key String Ihr Konto-API-Schlüssel.

Antwort

Falls die Methode erfolgreich ist, gibt sie eine XML-Struktur zurück, wie sie unten gezeigt wird.
<?xml version="1.0" encoding="UTF-8"?>
<success>
</success>
Antwort-Beispiel bei Fehlschlag:
<?xml version="1.0" encoding="UTF-8"?>
<error>
  <code>3</code>
  <message>API key is not valid</message>
</error>
The following request is partly successful because for all the file formats that do not have defined structure (such as: Generic XML, HTML, Plain Text, Markdown, OpenOffice, Microsoft Office, Adobe InDesign, Adobe FrameMaker, Webxml) the translations upload is not possible.
<?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>

Beispiele

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?login={username}&account-key={account-key}
<?php
$post_params = array();
$request_url = 'https://api.crowdin.com/api/project/{project-identifier}/upload-translation?login={username}&account-key={account-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;

War dieser Artikel hilfreich?