Links

Projects

Get a project quote

Get a quote of a project given the provided parameters without actually creating it.
OAuth: This endpoint requires one of the following scopes: project:manage, project:write, project:read or project:quote.
get
https://api.textmaster.com
/v1/clients/projects/quotation
Get a quotation

Code samples

curl -G "https://api.textmaster.com/v1/clients/projects/quotation" \
--date-urlencode "project[activity_name]=translation" \
--date-urlencode "project[options][language_level]=enterprise" \
--date-urlencode "project[options][quality]=yes" \
--date-urlencode "project[language_from]=fr" \
--date-urlencode "project[language_to]=en" \
--data-urlencode "project[total_word_count]=100" \
-H "Authorization: Bearer 59e939b01b92c929166f18b9888990f0e4ef5b691ddbbabed2d75aa21317d452"

List projects

OAuth: This endpoint requires one of the following scopes: project:manage, project:write or project:read.
get
https://api.textmaster.com
/v1/clients/projects
List Projects

Code samples

curl -G "https://api.textmaster.com/v1/clients/projects" \
-H "Authorization: Bearer 54561947218dc1abd692a19cb02c7256cac140dc33e10406d3e093b2accd68f1"

Filter projects

OAuth: This endpoint requires one of the following scopes: project:manage, project:write or project:read.
get
https://api.textmaster.com
/v1/clients/projects/filter
Filter Projects

Parameters

You can use the Filter API to filter documents on a collection of criteria.
Name
Type
Description
ref
string
The reference identifying the project.
name
string
The name of the project.
activity_name
string
The activity of the project.
archived
boolean
Whether the project is archived or not.
status
string
The status of the project. See the Workflow section.
created_at
string
Describes the time the project was created. This is a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.
updated_at
string
Describes the time the project was last updated. This is a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.
launched_at
string
Describes the time the project was launched. This is a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.
completed_at
string
Describes the time the project was completed. This is a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.
cached_documents_count
integer
The number of documents in a project.
language_from_code
string
The source language code of the project. One of the language code returned by the Language endpoint.
language_to_code
string
The target language code of the project. One of the language code returned by the Language endpoint.
level_name
string
The level of the project. One of the level names returned by the Level endpoint.
pricing.total_cost_at_launch_time
integer
The cost of the project at launch time in credits.
total_word_count
integer
The number of words in the project.
progress
integer
Describe the progress in percent towards the project's completion.
category
string
The category identifier for the project. One of the category returned by the Category endpoint.
platform_id
string
The unique UUID of the integration platform. Used to tell apart projects created via different integrations (Salesforce, Wordpress, etc.).

Code samples

curl -G "https://api.textmaster.com/v1/clients/projects/filter" \
--data-urlencode 'where={"total_word_count":{"$gt":100},"language_from_code":"fr","language_to_code":"en"}' \
--data-urlencode 'order=level_name' \
-H "Authorization: Bearer 423773845b670244f0d3025c0be48de100f29482665e98c89e8dd31051938f12"

Get a project

OAuth: This endpoint requires one of the following scopes: project:manage, project:write or project:read.
get
https://api.textmaster.com
/v1/clients/projects/{project_id}
Get a Project

Code samples

curl -G "https://api.textmaster.com/v1/clients/projects/61698af48b81926d91c0f3d1" \
-H "Authorization: Bearer f93607587ed3813d5339f77aa69fe0aa217366030149b9d60e50f21ed2182313"

Create a project

Creates a project and assign its document later or create a project with documents embedded along with the project's attributes.
Setting the auto_launch option on a project, assuming your account's balance has enough funds, TextMaster will automatically attempt to launch the project as soon as all asynchronous operations have been completed, such as Translation Memory analysis for example.
Warning: Using the auto_launch option assumes your account has enough funds to launch the project. The project will stay in_creation otherwise and will need to be launched manually with the Launch a project endpoint.

Using a project template

Create a project from a project template by providing its unique ID. The newly created project will inherit its attributes from the template. Projects created from a template still require documents to be assigned to them through the Create document endpoint.
Operations on project templates with translation_memory or translation_diff options enabled will not be performed until explicitly requested through the Finalize project endpoint.
Tips: Such options for projects created from templates will not appear as enabled on the TextMaster application. However, there are present on the project and will have to be activated by calling the Finalize project endpoint.

Available options

A project can be created with the following options:
Name
Type
Description
language_level
string
Required. premium or enterprise.
quality
boolean
Whether the project should be sent to quality control or not.
expertise
string
The expertise or sub-expertise ID. One of the expertise ID returned by the Expertise endpoint.
specific_attachment
boolean
Whether the project has documents with exotic file extensions such as .idml or .psd for example.
priority
boolean
Whether the project is urgent or not. A financial incentive will be shown to authors to ensure the project gets picked up faster.
uniq_author
boolean
Whether the project should be assigned to the same author for all its documents or not. Slower but with editorial continuity.
translation_memory
boolean
Whether translation memory analysis should be applied or not.
translation_diff
boolean
Whether translation diff pre-fill should be applied or not.
post_editing_machine_translation
boolean
Whether machine translation should be applied or not.
Warning: Some options such as translation_memory, translation_diff and post_editing_machine_translation require a project to have documents assigned to work properly. Enabling these options on a project without documents will result in an error.
OAuth: This endpoint requires one of the following scopes: project:manage, project:read or project:write.
post
https://api.textmaster.com
/v1/clients/projects
Create a Project

Code samples

curl "https://api.textmaster.com/v1/clients/projects" \
-X POST \
-d '{
"project": {
"name": "My project",
"activity_name": "translation",
"language_from": "fr-fr",
"language_to": "en-us",
"category": "C014",
"vocabulary_type": "not_specified",
"target_reader_groups": "not_specified",
"grammatical_person": "not_specified",
"project_briefing": "Some instructions.",
"glossaries": [
"e9a081d1-c920-4bb4-b63e-6faea5ae9a8d"
],
"textmasters": [
"641c18428b81928a34b96070"
],
"options": {
"translation_memory": true,
"post_editing_machine_translation": true,
"language_level": "enterprise",
"expertise": "61698af08b81926d91c0f320"
},
"custom_data": {
"tags":["red", "soft"],
"external_client_id": 1234
},
"deadline": "2020-12-30 12:34:56 UTC"
}
}' \
-H "Authorization: Bearer f8f704163650f148b6a4b4e7eb8826d4e6c8cdb2bd16dfa84704ca651b251d34" \
-H "Content-Type: application/json"

Duplicate a project

Creates a new project from the given one. It copies the following attributes from the source project:
  • category
  • grammatical_person
  • keywording_requirements
  • language_from
  • language_level
  • language_to
  • name
  • project_briefing
  • same_author_must_do_entire_project
  • target_reader_groups
  • textmasters
  • vocabulary_type
  • work_template
OAuth: This endpoint requires one of the following scopes: project:manage, project:read or project:write.
post
https://api.textmaster.com
/v1/clients/projects/{project_id}/duplicate
Duplicate a Project

Code samples

curl "https://api.textmaster.com/v1/clients/projects/61698aca8b81926d91c0ed01/duplicate" \
-X POST \
-H "Authorization: Bearer cd11cd0b8ba828e611ebdcf57a173f5eb8e9b5776711d3c4d694f93c51ad3368" \
-H "Content-Type: application/json"

Launch a project

This endpoint is asynchronous and instruct the API to queue the project to be launched as soon as possible. Trying to launch a project while an asynchronous operation is still running on it or its documents will result in an error.
OAuth: This endpoint requires one of the following scopes: project:manage or project:launch.
post
https://api.textmaster.com
/v1/clients/projects/{project_id}/async_launch
Launch a Project asynchronously

Code samples

curl "https://api.textmaster.com/v1/clients/projects/61698ad18b81926d91c0ee39/async_launch" \
-X POST \
-H "Authorization: Bearer e5bb8d4315309202ea38b43cab7d09a95797aa2bc12d29e9c48a7347cd256094" \
-H "Content-Type: application/json"

Launch a project synchronously

Deprecated: This endpoint is deprecated and will be removed in future version of the API. Use the Launch a project endpoint instead.
Launches given project assuming your account has enough funds and all asynchronous operations have been run. Launching a project synchronously might result in HTTP timeouts depending on the its size and complexity.
OAuth: This endpoint requires one of the following scopes: project:manage or project:launch.
put
https://api.textmaster.com
/v1/clients/projects/{project_id}/launch
Launch a Project synchronously

Code samples

curl "https://api.textmaster.com/v1/clients/projects/61698acd8b81926d91c0eda9/launch" \
-X PUT \
-H "Authorization: Bearer 3d4f8762bd41328ded69d9eeddbf9fa21ffca3ee6bf207fbcece15746a504a12"

Finalize a project

Instruct the API that all documents have been created for this project and asynchronous operations should be started as soon as possible.
Tips: The finalize endpoint only applies to projects created from a project template.
Since asynchronous operations such as translation_memory , translation_diff or post_editing_machine_translation should only be run on projects when all their documents have been created, this endpoint gives you the opportunity to tell TextMaster when you have created all documents for a project.
Under the hood, the API will schedule any asynchronous operations configured on the project such as for example, counting the number of words on each document, running the Translation Memory analysis and pre-fill translations.
When combined with the auto_launch option from the create project endpoint, assuming your account has enough funds, the API will attempt to automatically launch the project as soon as all asynchronous operations have been executed.
Note that you don't have to monitor and wait for asynchronous operations to be completed on each document before calling this endpoint. TextMaster takes care of queuing this request to be executed as soon as possible.
OAuth: This endpoint requires one of the following scopes: project:manage or project:launch.
put
https://api.textmaster.com
/v1/clients/projects/{project_id}/finalize
Finalize a Project

Code samples

curl "https://api.textmaster.com/v1/clients/projects/61698aea8b81926d91c0f20a/finalize" \
-X PUT \
-H "Authorization: Bearer 12e8b324b29b41a23362ab5a44349e712d1f1beb80dec043b6168f6706ae4e64"

Update a project

OAuth: This endpoint requires one of the following scopes: project:manage or project:write.
put
https://api.textmaster.com
/v1/clients/projects/{project_id}
Update a Project

Code samples

curl "https://api.textmaster.com/v1/clients/projects/61698af88b81926d91c0f4bf" \
-X PUT \
-d '{ "project": { "name": "Some new name" } }' \
-H "Authorization: Bearer bc02a6185a7c47bc20fff504b31a0c5b502b7ea3ab4f7cf6b85a8ac4c261cfc3" \
-H "Content-Type: application/json"

Pause a project

OAuth: This endpoint requires one of the following scopes: project:manage or project:write.
put
https://api.textmaster.com
/v1/clients/projects/{project_id}/pause
Pause a Project

Code samples

curl "https://api.textmaster.com/v1/clients/projects/61698ad88b81926d91c0ef5b/pause" \
-X PUT \
-H "Authorization: Bearer 4c66e6c844e7dacf5916e701030eeb06c6fd572c228b04a3572c763197e84b83"

Resume a paused project

OAuth: This endpoint requires one of the following scopes: project:manage or project:write.
put
https://api.textmaster.com
/v1/clients/projects/{project_id}/resume
Resume a Project

Code samples

curl "https://api.textmaster.com/v1/clients/projects/61698adc8b81926d91c0efe2/resume" \
-X PUT \
-H "Authorization: Bearer c778bb88983e52afc9cf90f78efeee5fdcc49f96bda75ce6a785274fb7fc552f"

Cancel a project

OAuth: This endpoint requires one of the following scopes: project:manage or project:write.
put
https://api.textmaster.com
/v1/clients/projects/{project_id}/cancel
Cancels a Project

Code samples

curl "https://api.textmaster.com/v1/clients/projects/61698ad58b81926d91c0eece/cancel" \
-X PUT \
-H "Authorization: Bearer 3da5d6892b3c8f70c3f6db295451474c6c50cd3cf433600719994e2263aa2d1c"

Archive a project

Only completed or cancelled projects can be archived.
OAuth: This endpoint requires one of the following scopes: project:manage or project:write.
put
https://api.textmaster.com
/v1/clients/projects/{project_id}/archive
Archive a Project

Code samples

curl "https://api.textmaster.com/v1/clients/projects/61698ae08b81926d91c0f06b/archive" \
-X PUT \
-H "Authorization: Bearer 125a475543052ee628fd9f0841f07953d4ae23575762e0ce7e21dfd543c66666"

Unarchive a project

OAuth: This endpoint requires one of the following scopes: project:manage or project:write.
put
https://api.textmaster.com
/v1/clients/projects/{project_id}/unarchive
Unarchive a Project

Code samples

curl "https://api.textmaster.com/v1/clients/projects/61698ae68b81926d91c0f17d/unarchive" \
-X PUT \
-H "Authorization: Bearer 88d733ecc072991e0a9e9a761e8dfc77abbedef0aa7e38705be4ba1bd9fe8ac1"

Enable translation memory options on project

Enables the translation_memory , translation_diff and/or post_editing_machine_translation option(s) on given project. This endpoint should be used to request the Translation Memory analysis and/or pre-fill translations operation to be run on the project or Machine Translation.
OAuth: This endpoint requires one of the following scopes: project:manage or project:write.
put
https://api.textmaster.com
/v1/clients/projects/{project_id}/activate_tm_options
Activate Translation Memory options on a Project

Code samples

curl "https://api.textmaster.com/v1/clients/projects/61698aec8b81926d91c0f287/activate_tm_options" \
-X PUT \
-d '{
"project": {
"options": {
"translation_memory": true,
"translation_diff": true,
"post_editing_machine_translation": true
}
}
}' \
-H "Authorization: Bearer ebdeb743536b7300db174320b7b4924e388bb7a5bd252faa888016ca68d2366d" \
-H "Content-Type: application/json"