Upload Glossary

Upload your glossaries for Crowdin Project in TBX, CSV or XLS/XLSX file formats.

Request

POST https://api.crowdin.com/api/project/{project-identifier}/upload-glossary?key={project-key}

Parameters

Name Value Description
file required file File in TBX, CSV or XLS/XLSX formats.
first_line_contains_header CSV and XLS/XLSX files only
optional
string Used when uploading CSV (or XLS/XLSX) files via API. Defines whether first line should be imported or it contains columns headers. May not contain value.
scheme CSV and XLS/XLSX files only
required
string Note: Used only when uploading CSV (or XLS/XLSX) file to define data columns mapping.
Acceptable value is the combination of the following constants (%language_code% is a placeholder for your language code): Example parameter you will have to add: &scheme=term_en,description_en,none,term_uk,description_uk
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.
Variables
project-identifier required string Should contain the project identifier.
project-key required string Project API key.

Response

If successful, this method returns a XML structure, as it is shown below.
<?xml version="1.0" encoding="ISO-8859-1"?>
<success>
</success>
Unsuccessful response sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<error>
  <code>3</code>
  <message>API key is not valid</message>
</error>

Examples

curl \
  -F "file=@glossary.tbx" \
  https://api.crowdin.com/api/project/{project-identifier}/upload-glossary?key={project-key}
curl \
  -F "file=@glossary.csv" \
  -F "first_line_contains_header=true" \
  -F "scheme=term_en,description_en,none,term_uk,description_uk" \
  https://api.crowdin.com/api/project/{project-identifier}/upload-glossary?key={project-key}
<?php
$post_params = array();
$request_url = 'https://api.crowdin.com/api/project/{project-identifier}/upload-glossary?key={project-key}';

if(function_exists('curl_file_create')) {
  $post_params['file'] = curl_file_create('/home/crowdin/test.tbx');
} else {
  $post_params['file'] = '@/home/crowdin/test.tbx';
}

$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;