Welcome, Guest Login

Support Center

Tips and tricks for Memsource API

Last Updated: Apr 05, 2017 07:24PM CEST
Here you can find some frequently asked questions and a few tips to help you with our API calls.
You can sign up for our free Developer Edition to test our API.

API call can be sent directly from webrowser as URL:
Or you can use one of the free tools offered on the internet - for example Chrome Postman.

API documentation

You can find the documentation here.Please pay attention to Synchronous and Asynchronous calls. Check out the Data types and Error codes.

Optional parameters are marked with "O". Default values are in ( ) brackets:

page  O (0)

parameter page is optional and if not used, the page 0 (the first page) will be used.

API versions

Whenever a new version of API is added, the old version is still valid and available. The APIs are marked (v1, v2). Even deprecated APIs are still supported. However it is recommended to update your code from time to time.


API uses tokens, which are sent with every API call. Tokens are valid 24 hours. The same login (username and password) can be used for API and for working directly on Cloud (via web browser). OAuth 2.0 is also supported.

How to Pre-translate non-empty and locked segments

As a default, the Pre-translate API call only translate empty segments. If you need to translate segments which have some content in target, are confirmed or even locked, you have to use parameter 'overwrite' (for translating non-empty, but not locked segments) and for locked segment you need to also use parameter 'segmentFilter'. So to pre-translate all segments in job, including already translated, confirmed and locked segments, the parameters would be: overwrite=1&segmentFilter=LOCKED&segmentFilter=NOT_LOCKED

File parameter in CreateJob API

The file data type is used to post binary data - see more details in our documentation. Only one file can be uploaded in one call, but you can use ZIP file to upload more jobs.The best practice for creating jobs:
  1. You should always call the Memsource job/create API for just a single file
  2. Then you should wait for Memsource to return a response (multiple JobPart IDs can be returned if multiple job parts are created - for example in project with workflow steps).
  3. After Memsource responds with a success message, you can be sure the file got imported.
  4. At this point you can launch any operation with the file (e.g. analyze the file, pre-translate the file...) or you can go ahead to import another file.

Importing, pre-translating and analyzing large quantity of files

This is best done with our Asynchronous API.
  1. Create jobs,
  2. Keep checking the status of Asynchronous Request until you get the "OK" response - first after 5 seconds and then increase each interval by 1.5 times
  3. Run Analyse
  4. Call repeatedly Asynchronous Request for "OK" response
  5. Run pre-translate
  6. Call repeatedly Asynchronous Request for "OK" response

 Query parameter in Translation Memory API

Query is any string you want to search the TM for. No special syntax is supported, regular expressions are not supported. Tags in the query are written simply as {1> or {1}.

Parameters in Spellcheck API

referenceText is the text of the source segment, suggestions are the suggested spelling alternatives of a misspelled word.

Task versus JobPart

A task represents one file in one target language. Jobs in different workflow level will have the same task id but different jobPart id. Jobs split into more jobs will again have the same task id but different jobPart id. See more details in our API Documentation.

Search in TM calls  

  • Search is used when you know the TM ID.
  • Search by Task is used in Memsource Editor to get TM results for the CAT pane.
  • Search Segment By Task is used when searching for a segment and when you know the preceding and the following segment.
  • Response order - the first match in the response is the best match.
  • Search encoding has to always be UTF-8

Assign job with workflow

One job has different jobTask ID in different workflow step. In in ListByProject there is workflowLevel integer O(1) and that specifies which workflow step will be listed.


This API call will not only upload the file, but also save confirmed segments into TM. Can be used in a sense of "update segment" via API.

JobPart ID

the ID in JSON response for Job APIs is always ID of JobPart.

WorkflowStep field returned by getTransMemories

There are three different scenarios:  
  • Project has no workflow steps - workflowStep is null.
  • Project has workflow steps and a TM is selected for all workflow steps - workflowStep is null.
  • Project has workflow steps and a TM is selected for one or more workflow steps - workflowStep is not null. If the same TM is used in multiple workflow steps, the TM will be listed multiple times in the response.
seconds ago
a minute ago
minutes ago
an hour ago
hours ago
a day ago
days ago
Invalid characters found