Übersetzung hochladen

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

Anfrage

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/{Projektkennung}/upload-translation?key={Projektschlüssel}
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.
language benötigt 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_duplicates optional Bool. Defines whether to add translation if there is the same translation previously added. Zulässige Werte sind: „0” und „1”. Der Standardwert ist 0.
import_eq_suggestions optional Bool. 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 Bool. 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 Versionszweigs (Versionsverwaltung).
json optional String May not contain value. Defines that response should be in JSON format.
jsonp optional String Callback function name. Defines that response should be in JSONP format.
Variablen
project-identifier String Projekt-ID.
project-key String Projekt-API-Schlüssel. Entweder project-key oder die Kombination aus login und account-key wird benötigt.
login String Ihr Nutzername auf Crowdin. Entweder project-key oder die Kombination aus login und account-key wird benötigt.
account-key String Your account API key. Entweder project-key oder die Kombination aus login und account-key wird benötigt.

Antwort

If successful, this method returns a XML structure, as it is shown below.
<?xml version="1.0" encoding="UTF-8"?>
<success>
</success>
Unsuccessful response sample:
<?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/{Projekt-ID}/upload-translation?key={Projektschlüssel}
<?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;

War dieser Artikel hilfreich?