Memsource REST API

Data Types

Request Parameters

Data Type

Sample Value

Description

charset

windows-1250

Any supported character set.

currency

EUR

Any supported currency.

datetime

2012-07-30 17:30

Date and time in yyyy-MM-dd HH:mm format. The UTC timezone is always used when reading the date.

domain(type)

348

Identifier (ID property) of a domain object of the specified type. For example, when creating a project, id (e.g., 348) is returned in the JSON structure. This identifier can be later used to change the status of the project by setting the project=348 parameter.

enum(name)

A value from a fixed set of values. Each set of values (enum) has a name. Enums are always case-insensitive.

file

Binary data. The whole request has to be sent in multipart/form-data format. Examples of code in Java and C++.

exfile

Compatible with the file type. It also accepts handles from File AP.

jsonObject(type)

{ 'id': 'xyz' }

An object of the specified type (represented using JSON notation). See below for a description of particular types.

jsonObjectList(type)

[{ 'id': 'xyz' }]

A list of objects of the specified type (represented using JSON notation).

lang

en

Any supported language code.

list(type)

A list of values of another type. When calling an API action, the list is defined using the same parameter name multiple times (e.g., param=value1&param=value2).

string

My Project

The sequence of characters (UTF-8 encoded).

task

RiYnxBD0xBY1lwhf1

An identifier of a translation task. More job parts (if they were created by splitting the parent job part) may share the same task.

map(type, type)

A map of keys and values of a given type. When calling an API action, the map is defined using the same parameter name multiple times (e.g., map.key1=value1&map.key2=value2).

Response

The body of an HTTP may contain these data types:

  • JSON

    Data structure (UTF-8 encoded). Each API call returning JSON contains an example of a response.

  • binary

    Binary data.

Task vs. Job Part

Task

A task represents one translation job (i.e. file to be translated) in one target language. If one job is uploaded in more target languages, an independent task is created for every target language.

If a job is translated in multiple workflows, each workflow shares the same task but differs in workflow level. (This is why some API calls have two arguments for task and level.) A task identifier is composed of alphanumeric characters (e.g., RiYnxBD0xBY1lwhf1) while a level is identified by an integer (usually 1-10). The first level in each project that uses workflows always has identifier 1.

Jobs split into multiple parts will have the same task ID, and the parameter isParentJobSplit will be true.

Job Part

A jobPart represents a job per target language(s) and workflow steps. For instance, a single file imported to a project with 2 workflow steps and 3 target languages will result in 6 jobParts. Each jobPart can be assigned to a different Linguist or have a different due date or status.

Each jobPart can be also split into multiple jobParts which will get their own jobPart ID. A jobPart is always unique.

Object Types (used in JSON parameters)

TagMetadata {
  string id
  string type
  string content
  string transAttributes
}
Was this article helpful?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.