Übersetzung hochladen

Laden Sie existierende Übersetzungen zu Ihrem Crowdin-Projekt hoch.

Anfrage

Hinweis: Entweder die Kombination aus Projekt-ID und Projektschlüssel oder die Kombination aus Projekt-ID, Nutzername und Kontoschlüssel to pass to this endpoint.

POST https://api.crowdin.com/api/project/{Projekt-ID}/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 Übersetzter Dateien-Array. Die Array-Schlüssel sollen die Dateinamen in Crowdin enthalten.
Hinweis! Pro Upload können nur max. 20 Dateien übertragen werden.
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. Definiert, ob eine Übersetzung zu einer Zeichenkette hinzugefügt werden darf, sofern schon ein Vorschlag existiert. Zulässige Werte sind 0 oder 1. Der Standardwert ist 0.
import_eq_suggestions optional Bool. Definiert, ob eine Übersetzung hinzugefügt werden darf, auch wenn sie mit der Quellzeichenkette übereinstimmt. Zulässige Werte sind 0 oder 1. Der Standardwert ist 0.
auto_approve_imported optional Bool. Definiert, ob hochgeladene Übersetzungen sofort genehmigt werden sollen. Zulässige Werte sind 0 oder 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 Crowdin-Nutzername. Entweder project-key oder die Kombination aus login und account-key wird benötigt.
account-key String Ihr Konto-API-Schlüssel. Entweder project-key oder die Kombination aus login und account-key wird benötigt.

Antwort

Wenn die Methode erfolgreich war, gibt sie eine XML-Struktur zurück, so wie unten zu sehen.
<?xml version="1.0" encoding="ISO-8859-1"?>
<success>
</success>
Beispiel einer fehlgeschlagenen Antwort:
<?xml version="1.0" encoding="ISO-8859-1"?>
<error>
  <code>3</code>
  <message>API key is not valid</message>
</error>
Die folgende Anfrage ist nur teilweise erfolgreich, da der Übersetzungen-Upload für alle unstrukturierten Dateiformate (wie z.B.: Generische XML, HTML, einfacher Text, Markdown, OpenOffice, Microsoft Office, Adobe InDesign, Adobe FrameMaker oder Webxml) nicht möglich ist.
<?xml version="1.0" encoding="ISO-8859-1"?>
<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?