Carica traduzione

Upload existing translations to your Crowdin project.
Method is not working for Assets localization.

Richiesta

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/{project-identifier}/upload-translation?key={project-key}
POST https://api.crowdin.com/api/project/{project-identifier}/upload-translation?login={username}&account-key={account-key}

Parametri

Nome Value Descrizione
file obbligatori insieme 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 required nella stringa Crowdin language code. With a single call it's possible to upload translations for several files but only into one of the languages.
import_eq_suggestions optional booleano Defines whether to add translation if it is equal to source string at Crowdin. Valori accettabili sono: 0 o 1. Predefinito è 0.
auto_approve_imported optional booleano Mark uploaded translations as approved. Valori accettabili sono: 0 o 1. Predefinito è 0.
format optional nella stringa Specify this parameter if translations are uploaded to the project in XLIFF file format. Acceptable value is: xliff
To download XLIFF file for offline translation, apply the Export File method.
ramo opzionale nella stringa Il nome del ramo versione relativo (Versioni Gestione).
json optional nella stringa May not contain value. Defines that response should be in JSON format.
jsonp optional nella stringa Callback function name. Defines that response should be in JSONP format.
Variables
identificatore-progetto nella stringa Identificatore progetto.
chiave-progetto nella stringa Project API key. Project-key o la combinazione di accesso e account-key sono obbligatori.
accesso nella stringa Il tuo nome utente su Crowdin. Project-key o la combinazione di accesso e account-key sono obbligatori.
chiave-profilo nella stringa La chiave API del tuo profilo. Project-key o la combinazione di accesso e account-key sono obbligatori.

Response

If successful, this method returns a XML structure, as it is shown below.
<?xml version="1.0" encoding="UTF-8"?>
<success>
</success>
Campione di risposta non riuscita:
<?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>

Esempi

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?key={project-key}
<?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;

Questo articolo è stato utile?