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.

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.

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.

Parameters

You can use the Filter API to filter documents on a collection of criteria.

NameTypeDescription

id

string

The unique identifier of the project.

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.

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.

When 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 remainin_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.

Some operations on projects created from templates with translation_memory ,translation_diff or post_editing_machine_translation options enabled will not be performed until explicitly requested through the Finalize project endpoint.

Available options

A project can be created with the following options:

NameTypeDescription

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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"

Last updated