Lütfen API 2.0’ın artık kullanılacak tercih edilen sürüm olduğunu göz önünde bulundurun. Eski API, 2021’in sonuna kadar tamamen işlevsel kalacaktır.
Ad | Değer | Açıklama |
---|---|---|
files zorunlu | dizilim | Güncellenmesi gereken dosyalar dizilimi. Not! Bir kerede dosya aktarımı başına en fazla 20 dosya yüklenmesine izin verilir. |
titles isteğe bağlı | dizilim | Yüklenen dosyalar için başlıkları tanımlayan bir dizgiler dizilimi. Dizilim anahtarları, Crowdin projesinde yol içeren dosya adlarını içermelidir. |
export_patterns isteğe bağlı | dizilim | Sonuçta elde edilen dosyaların adlarını tanımlayan bir dizgiler dizilimi (ortaya çıkan arşivdeki çevrilmiş dosyalar). Dizilim anahtarları, Crowdin projesinde yol içeren dosya adlarını içermelidir. |
new_names isteğe bağlı | dizilim | Önceden içe aktarılan dosyalar için yeni adlar tanımlayan bir dizgiler dizilimi. Dizilim anahtarları, Crowdin projesinde yol içeren dosya adlarını içermelidir. |
first_line_contains_header sadece CSV ve XLS/XLSX dosyaları isteğe bağlı | dizgi | API aracılığıyla CSV (veya XLS/XLSX) dosyalarını yüklerken kullanılır. İlk satırın içe aktarılmasının gerekip gerekmediğini veya sütun üstbilgilerini içerip içermeyeceğini tanımlar. Değer içermeyebilir. |
scheme sadece CSV ve XLS/XLSX dosyaları zorunlu | dizgi | Not: Veri sütunları eşlemesini tanımlamak için sadece CSV (veya XLS / XLSX) dosyasını yüklerken kullanılır. Kabul edilebilir değer aşağıdaki sabitlerin birleşimidir:
Not: tüm hedef dillere çeviriler içerecek şekilde dışa aktarılan dosya için scheme içinde dil kodları belirtin (örn. &scheme=identifier,source_phrase,uk,ru,tr). |
update_option isteğe bağlı | dizgi | Değere bağlı olarak, "update_option" seçeneği çevirileri korumak ve dosya güncelleme sırasında değiştirilen dizgilerini doğrulamalarını korumak/kaldırmak için kullanılır. Değerler:
|
branch isteğe bağlı | dizgi | İlgili sürüm dalının adı (Sürümler Yönetimi). |
json isteğe bağlı | dizgi | Değer içermeyebilir. Yanıtın JSON biçiminde olması gerektiğini tanımlar. |
jsonp isteğe bağlı | dizgi | Geri çağırma işlev adı. Yanıtın JSONP biçiminde olması gerektiğini tanımlar. |
escape_quotes sadece properties dosyaları isteğe bağlı | tamsayı | Dışa aktarılan çevirilerde tek tırnağın başka bir tek tırnak tarafından yoksa ters eğik çizgi tarafından atlatılması gerektiğini tanımlar. Kabul edilebilir değerler: 0, 1, 2, 3. Varsayılan 3. 0 — Tek tırnağı atlatma; 1 — Başka bir tek tırnak ile tek tırnağı atlat; 2 — Ters eğik çizgi ile tek tırnağı atlat; 3 — Sadece değişkenler ( {0} ) içeren dizgilerde başka bir tek tırnak ile tek tırnağı atlat |
Değişkenler | ||
project-identifier | dizgi | Proje tanımlayıcısı. |
login | dizgi | Crowdin’deki kullanıcı adınız. |
account-key | dizgi | Hesap API anahtarınız. |
<?xml version="1.0" encoding="UTF-8"?>
<success>
</success>
<?xml version="1.0" encoding="UTF-8"?>
<error>
<code>3</code>
<message>API anahtarı geçerli değil</message>
</error>
curl \
-F "files[/dizin/strings.xml]=@strings.xml" \
https://api.crowdin.com/api/project/{project-identifier}/update-file?login={username}&account-key={account-key}
curl \
-F "files[/dizin/android.xml]=@strings.xml" \
-F "new_names[/dizin/android.xml]=strings.xml" \
https://api.crowdin.com/api/project/{project-identifier}/update-file?login={username}&account-key={account-key}
curl \
-F "files[dizin/cokdilli.csv]=@ornek.csv" \
-F "export_patterns[dizin/cokdilli.csv]=/translations/%original_file_name%" \
-F "titles[dizin/cokdilli.csv]=Crowdin Projesindeki Başlık" \
-F "scheme=identifier,source_phrase,translation" \
-F "first_line_contains_header=true" \
https://api.crowdin.com/api/project/{project-identifier}/update-file?login={username}&account-key={account-key}
<?php
$post_params = array();
$request_url = 'https://api.crowdin.com/api/project/{project-identifier}/update-file?login={username}&account-key={account-key}';
if (function_exists('curl_file_create')) {
$post_params['files[test.txt]'] = curl_file_create('/home/user/test.txt');
} else {
$post_params['files[test.txt]'] = '@/home/user/test.txt';
}
$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;
<?php
$post_params = array();
$request_url = 'https://api.crowdin.com/api/project/{project-identifier}/update-file?login={username}&account-key={account-key}';
if (function_exists('curl_file_create')) {
$post_params['files[/directory/android.xml]'] = curl_file_create('/home/user/strings.xml');
} else {
$post_params['files[/directory/android.xml]'] = '@/home/user/strings.xml';
}
$post_params['new_names[/directory/android.xml]'] = 'strings.xml';
$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;
<?php
$post_params = array();
$request_url = 'https://api.crowdin.com/api/project/{project-identifier}/update-file?login={username}&account-key={account-key}';
if(function_exists('curl_file_create')) {
$post_params['files[directory/multilingual.csv]'] = curl_file_create('/home/user/example.csv');
} else {
$post_params['files[directory/multilingual.csv]'] = '@/home/user/example.csv';
}
$post_params['export_patterns[directory/multilingual.csv]'] = '/translations/%original_file_name%';
$post_params['titles[directory/multilingual.csv]'] = 'Title in Crowdin Project';
$post_params['scheme'] = 'identifier,source_phrase,translation';
$post_params['first_line_contains_header'] = '';
$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;