TextMaster Projects API

The Projects API from TextMaster — 14 operation(s) for projects.

Operations 16

GET /v1/clients/projects List Projects
POST /v1/clients/projects Create a Project
GET /v1/clients/projects/filter Filter Projects
GET /v1/clients/projects/quotation Get a quotation
GET /v1/clients/projects/{project_id} Get a Project
PUT /v1/clients/projects/{project_id} Update a Project
PUT /v1/clients/projects/{project_id}/activate_tm_options Activate Translation Memory options on a Project
PUT /v1/clients/projects/{project_id}/archive Archive a Project
POST /v1/clients/projects/{project_id}/async_launch Launch a Project asynchronously
PUT /v1/clients/projects/{project_id}/cancel Cancels a Project
POST /v1/clients/projects/{project_id}/duplicate Duplicate a Project
PUT /v1/clients/projects/{project_id}/finalize Finalize a Project
PUT /v1/clients/projects/{project_id}/launch Launch a Project synchronously
PUT /v1/clients/projects/{project_id}/pause Pause a Project
PUT /v1/clients/projects/{project_id}/resume Resume a Project
PUT /v1/clients/projects/{project_id}/unarchive Unarchive a Project

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/textmaster-projects-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

textmaster-projects-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: TextMaster API v1 Projects API
  version: v1
servers:
- url: https://api.textmaster.com
tags:
- name: Projects
paths:
  /v1/clients/projects:
    get:
      summary: List Projects
      tags:
      - Projects
      security:
      - oauth2:
        - project:manage
        - project:read
        - project:write
      parameters:
      - name: page
        in: query
        required: false
        description: Search results are limited to 100 items. Specify page number to read more than the first page.
        schema:
          type: integer
      responses:
        '401':
          description: Unauthorized
          content:
            application/json:
              examples:
                example_0:
                  value:
                    error: invalid_token
                    error_description: The access token is invalid
                    state: unauthorizez
        '403':
          description: Forbidden
          content:
            application/json:
              examples:
                example_0:
                  value:
                    error: invalid_token
                    error_description: The access token is invalid
                    state: unauthorizez
        '200':
          description: Lists Projects
          content:
            application/json:
              examples:
                example_0:
                  value:
                    projects:
                    - id: 61698ac38b81926d91c0ebba
                      name: factory_project
                      language_from: fr
                      language_to: en
                      language_from_code: fr-fr
                      language_to_code: en-us
                      category: C014
                      vocabulary_type: not_specified
                      target_reader_groups: not_specified
                      grammatical_person: not_specified
                      custom_data: {}
                      project_briefing: Lorem ipsum dolor sit amet, consectetur ...
                      project_briefing_is_rich: false
                      priority: 48.0
                      status: in_progress
                      total_word_count: 200
                      documents_statuses:
                        canceled: 0
                        completed: 0
                        copyscape: 0
                        counting_words: 0
                        in_creation: 0
                        in_extra_review: 0
                        in_progress: 0
                        in_review: 0
                        incomplete: 0
                        paused: 0
                        quality_control: 0
                        waiting_assignment: 1
                      progress: 0.0
                      same_author_must_do_entire_project: false
                      callback: {}
                      external_id: null
                      multi_project_id: null
                      auto_launch: false
                      project_template_id: null
                      finalized: false
                      word_count_error: null
                      cost_in_credits: 2000
                      ctype: translation
                      creation_channel: standard
                      reference: TR-9A6-1792
                      cost_per_word:
                        currency: credits
                        amount: 10
                      options:
                        language_level: premium
                      option_values:
                        language_level: premium
                      textmasters:
                      - 61698ac38b81926d91c0ebf8
                      glossaries: []
                      cost_in_currency:
                        currency: USD
                        amount: 2.8
                      api_template_id: null
                      created_at:
                        day: 15
                        month: 10
                        year: 2021
                        full: 2021-10-15 14:05:55 UTC
                      updated_at:
                        day: 15
                        month: 10
                        year: 2021
                        full: 2021-10-15 14:05:56 UTC
                      launched_at:
                        day: 15
                        month: 10
                        year: 2021
                        full: 2021-10-15 14:05:56 UTC
                      completed_at: null
                      work_template:
                        name: factory_template17
                        description: null
                        image_preview_path: null
                        ctype: public
                    total_pages: 1
                    count: 1
                    page: 1
                    per_page: 20
                    previous_page: null
                    next_page: null
              schema:
                type: object
                properties:
                  total_pages:
                    type: integer
                  count:
                    type: integer
                  page:
                    type: integer
                  per_page:
                    type: integer
                  previous_page:
                    type:
                    - integer
                    - 'null'
                  next_page:
                    type:
                    - integer
                    - 'null'
                  projects:
                    type: array
                    items:
                      $ref: '#/components/schemas/Project'
    post:
      summary: Create a Project
      tags:
      - Projects
      security:
      - oauth2:
        - project:manage
        - project:write
      parameters: []
      responses:
        '401':
          description: Unauthorized
          content:
            application/json:
              examples:
                example_0:
                  value:
                    error: invalid_token
                    error_description: The access token is invalid
                    state: unauthorizez
        '403':
          description: Forbidden
          content:
            application/json:
              examples:
                example_0:
                  value:
                    error: invalid_token
                    error_description: The access token is invalid
                    state: unauthorizez
        '200':
          description: Project Created
          content:
            application/json:
              examples:
                example_0:
                  value:
                    id: 61698af18b81926d91c0f397
                    name: factory_project
                    language_from: fr
                    language_to: en
                    language_from_code: fr-fr
                    language_to_code: en-us
                    category: C014
                    vocabulary_type: not_specified
                    target_reader_groups: not_specified
                    grammatical_person: not_specified
                    custom_data:
                      tags:
                      - red
                      - soft
                      external_client_id: 1234
                    project_briefing: Lorem ipsum dolor sit amet, consectetur ...
                    project_briefing_is_rich: false
                    priority: 0.0
                    status: in_creation
                    total_word_count: 0
                    documents_statuses:
                      in_creation: 1
                      waiting_assignment: 0
                      in_progress: 0
                      in_review: 0
                      incomplete: 0
                      completed: 0
                      paused: 0
                      canceled: 0
                      quality_control: 0
                      copyscape: 0
                      counting_words: 0
                      in_extra_review: 0
                    progress: 0.0
                    same_author_must_do_entire_project: false
                    callback:
                      project_in_progress:
                        url: https://callback.example.com/
                    external_id: null
                    multi_project_id: null
                    auto_launch: false
                    project_template_id: null
                    finalized: false
                    word_count_error: null
                    cost_in_credits: 0
                    ctype: translation
                    creation_channel: api
                    reference: TR-909-9784
                    cost_per_word:
                      currency: credits
                      amount: 20
                    options:
                      expertise: true
                      language_level: premium
                    option_values:
                      expertise: 61698af08b81926d91c0f320
                      language_level: premium
                    textmasters: []
                    glossaries: []
                    total_costs:
                    - currency: USD
                      amount: 0.0
                    - currency: credits
                      amount: 0
                    api_template_id: null
                    created_at:
                      day: 15
                      month: 10
                      year: 2021
                      full: 2021-10-15 14:06:42 UTC
                    updated_at:
                      day: 15
                      month: 10
                      year: 2021
                      full: 2021-10-15 14:06:42 UTC
                    launched_at: null
                    completed_at: null
                    work_template:
                      name: factory_template29
                      description: null
                      image_preview_path: null
                      ctype: public
              schema:
                $ref: '#/components/schemas/Project'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                project:
                  type: object
                  properties:
                    activity_name:
                      description: (required) Project type (copywriting, proofreading or translation)
                      type: string
                    api_template_id:
                      description: 'ApiTemplate for the Project by passing its ID. If provided, the following attributes will be copied from the Template:


                        * level_name

                        * activity_name

                        * language_from

                        * language_to

                        * project_briefing

                        * textmasters

                        * same_author_must_do_entire_project

                        * auto_launch

                        '
                      type: string
                    author_should_use_rich_text:
                      description: Enables author to write HTML content and displays it as such (defaults to false). Only applies to Copywriting projects.
                      type: boolean
                    auto_launch:
                      description: Instruct the API to automatically attempt to launch the Project as soon as all asynchronous operations have been completed. Such operations are, for example, counting the number of words on each Document and running the translation memory analysis on the Project and its Documents (defaults to false).
                      type: boolean
                    callback:
                      description: List of callbacks to be called upon Project status changes.
                      type: object
                      properties:
                        project_in_progress:
                          type: object
                          properties:
                            url:
                              type: string
                          required:
                          - url
                        project_tm_completed:
                          type: object
                          properties:
                            url:
                              type: string
                          required:
                          - url
                        project_finalized:
                          type: object
                          properties:
                            url:
                              type: string
                          required:
                          - url
                        project_tm_diff_completed:
                          type: object
                          properties:
                            url:
                              type: string
                          required:
                          - url
                        project_in_review:
                          type: object
                          properties:
                            url:
                              type: string
                          required:
                          - url
                        project_cancelled:
                          type: object
                          properties:
                            url:
                              type: string
                          required:
                          - url
                        project_canceled:
                          type: object
                          properties:
                            url:
                              type: string
                          required:
                          - url
                        project_not_launched:
                          type: object
                          properties:
                            url:
                              type: string
                          required:
                          - url
                    category:
                      description: '(required) Code representing a category (eg: "C014"). Full list available via API call.'
                      type: string
                    custom_data:
                      description: Arbitrary structured data to attach to a Project
                      type: object
                    deadline:
                      description: You can add an optional deadline to inform the author when the project should be delivered by. Please note that this deadline is not enforced and serve for informational purposes. Finally, please make sure you provide a realistic deadline in order not to impact negativaly the selection of your project by the authors. Must be a string in "YYYY-MM-DD" or "YYYY-MM-DD hh:mm:ss" format.
                      type: string
                    documents:
                      description: In case Documents are already known when creating the projects, Documents fields can be encapsulated inside the project. This Document will appear after creation in the Documents list field of the project. For more details on the Document fields to add, refer to the Documents endpoint.
                      type: array
                      items:
                        $ref: '#/components/schemas/Document'
                    glossaries:
                      description: An array of IDs listing the Glossaries to add to the project.
                      type: array
                      items:
                        type: string
                    grammatical_person:
                      description: 'Which personal pronoun should the content be written with?


                        * not_specified: Same as "first_person_singular"

                        * first_person_singular: I

                        * second_person_singular: You

                        * third_person_singular_masculine: He

                        * third_person_singular_feminine: She

                        * third_person_singular_neuter: It

                        * first_person_plural: We

                        * second_person_plural: You

                        * third_person_plural: They

                        '
                      type: string
                    language_from:
                      description: '(required) Bigram representing a language (ex: en-us). Full list available via API call.'
                      type: string
                      pattern: ^[a-z]{2}(-[a-z]{2})?$
                    language_to:
                      description: '(required for translation projects) Bigram representing a language (ex: en-us). Full list available via API call.'
                      type: string
                      pattern: ^[a-z]{2}(-[a-z]{2})?$
                    name:
                      description: (required) Name of the Project
                      type: string
                    options:
                      description: (required) Options for the Project
                      type: object
                      properties:
                        expertise:
                          type: string
                        language_level:
                          type: string
                        quality:
                          type: boolean
                        priority:
                          type: boolean
                        specific_attachment:
                          type: boolean
                        uniq_author:
                          type: boolean
                        translation_memory:
                          type: boolean
                        translation_diff:
                          type: boolean
                      required:
                      - language_level
                    project_briefing:
                      description: (required) This is where you have to provide the general instructions for the project. All the information must be common to all documents and allow the authors to carry out their task in the best possible conditions. Providing more details will increase your chances of getting the best content.
                      type: string
                    project_briefing_is_rich:
                      description: 'Specifies if project briefing contains rich formatting (defaults to false).


                        Unless ''true'', HTML in briefing is escaped when displayed.


                        Allowed tags (the rest is stipped):

                        div h1 h2 h3 h4 h5 h6 p br a b strong i em u del strike ul ol li

                        '
                      type: boolean
                    target_reader_groups:
                      description: 'What is the age population target audience of this project?


                        * not_specified (default): Any age

                        * children: 0–13

                        * teenager: 14–18

                        * young_adults: 19–29

                        * adults: 30–59

                        * old_adults: 60+

                        '
                      type: string
                    textmasters:
                      description: Provide an array with the IDs of the authors you’d like to give the job to.
                      type: array
                      items:
                        type: string
                    vocabulary_type:
                      description: 'What style are you expecting your content to be written with?


                        * not_specified (default): Same as "popular"

                        * popular: based on simple, every day words and sentences

                        * technical: focused on precise and specific terms

                        * fictional: writing style amplified, expanded and scripted

                        '
                      type: string
                    work_template:
                      description: Select the template that fits your project (defaults to "Libre", no specifications about structure of work). This choice will determine how the content is organized in each Document that will be produced. Full list available via API call.
                  required:
                  - activity_name
                  - category
                  - language_from
                  - name
                  - options
                  - project_briefing
              required:
              - project
  /v1/clients/projects/filter:
    get:
      summary: Filter Projects
      tags:
      - Projects
      security:
      - oauth2:
        - project:manage
        - project:read
        - project:write
      parameters:
      - name: where
        in: query
        required: false
        description: URL encoded JSON selector composed of one or several criteria.
        schema:
          type: string
      - name: order
        in: query
        required: false
        description: Comma separated order list
        schema:
          type: string
      - name: page
        in: query
        required: false
        description: Search results are limited to 100 items. Specify page number to read more than the first page.
        schema:
          type: integer
      responses:
        '401':
          description: Unauthorized
          content:
            application/json:
              examples:
                example_0:
                  value:
                    error: invalid_token
                    error_description: The access token is invalid
                    state: unauthorizez
        '403':
          description: Forbidden
          content:
            application/json:
              examples:
                example_0:
                  value:
                    error: invalid_token
                    error_description: The access token is invalid
                    state: unauthorizez
        '200':
          description: Lists Projects
          content:
            application/json:
              examples:
                example_0:
                  value:
                    projects:
                    - id: 61698ac38b81926d91c0ebba
                      name: factory_project
                      language_from: fr
                      language_to: en
                      language_from_code: fr-fr
                      language_to_code: en-us
                      category: C014
                      vocabulary_type: not_specified
                      target_reader_groups: not_specified
                      grammatical_person: not_specified
                      custom_data: {}
                      project_briefing: Lorem ipsum dolor sit amet, consectetur ...
                      project_briefing_is_rich: false
                      priority: 48.0
                      status: in_progress
                      total_word_count: 200
                      documents_statuses:
                        canceled: 0
                        completed: 0
                        copyscape: 0
                        counting_words: 0
                        in_creation: 0
                        in_extra_review: 0
                        in_progress: 0
                        in_review: 0
                        incomplete: 0
                        paused: 0
                        quality_control: 0
                        waiting_assignment: 1
                      progress: 0.0
                      same_author_must_do_entire_project: false
                      callback: {}
                      external_id: null
                      multi_project_id: null
                      auto_launch: false
                      project_template_id: null
                      finalized: false
                      word_count_error: null
                      cost_in_credits: 2000
                      ctype: translation
                      creation_channel: standard
                      reference: TR-9A6-1792
                      cost_per_word:
                        currency: credits
                        amount: 10
                      options:
                        language_level: premium
                      option_values:
                        language_level: premium
                      textmasters:
                      - 61698ac38b81926d91c0ebf8
                      glossaries: []
                      cost_in_currency:
                        currency: USD
                        amount: 2.8
                      api_template_id: null
                      created_at:
                        day: 15
                        month: 10
                        year: 2021
                        full: 2021-10-15 14:05:55 UTC
                      updated_at:
                        day: 15
                        month: 10
                        year: 2021
                        full: 2021-10-15 14:05:56 UTC
                      launched_at:
                        day: 15
                        month: 10
                        year: 2021
                        full: 2021-10-15 14:05:56 UTC
                      completed_at: null
                      work_template:
                        name: factory_template17
                        description: null
                        image_preview_path: null
                        ctype: public
                    total_pages: 1
                    count: 1
                    page: 1
                    per_page: 20
                    previous_page: null
                    next_page: null
              schema:
                type: object
                properties:
                  total_pages:
                    type: integer
                  count:
                    type: integer
                  page:
                    type: integer
                  per_page:
                    type: integer
                  previous_page:
                    type:
                    - integer
                    - 'null'
                  next_page:
                    type:
                    - integer
                    - 'null'
                  projects:
                    type: array
                    items:
                      $ref: '#/components/schemas/Project'
  /v1/clients/projects/quotation:
    get:
      summary: Get a quotation
      tags:
      - Projects
      security:
      - oauth2:
        - project:manage
        - project:quote
        - project:read
        - project:write
      parameters:
      - name: project[activity_name]
        in: query
        description: (required) Project type
        schema:
          type: string
          enum:
          - copywriting
          - proofreading
          - translation
      - name: project[language_from]
        in: query
        required: true
        description: '(required) Bigram representing a language (ex: en-us). Full list available via API call.'
        schema:
          type: string
          pattern: ^[a-z]{2}(-[a-z]{2})?$
      - name: project[language_to]
        in: query
        required: false
        description: '(required for translation projects) Bigram representing a language (ex: en-us). Full list available via API call.'
        schema:
          type: string
          pattern: ^[a-z]{2}(-[a-z]{2})?$
      - name: project[options][expertise]
        in: query
        required: false
        schema:
          type: string
      - name: project[options][language_level]
        in: query
        required: true
        schema:
          type: string
      - name: project[options][quality]
        in: query
        required: false
        schema:
          type: boolean
      - name: project[options][priority]
        in: query
        required: false
        schema:
          type: boolean
      - name: project[options][specific_attachment]
        in: query
        required: false
        schema:
          type: boolean
      - name: project[total_word_count]
        in: query
        required: true
        description: (required) Number of words to quote
        schema:
          type: integer
      responses:
        '401':
          description: Unauthorized
          content:
            application/json:
              examples:
                example_0:
                  value:
                    error: invalid_token
                    error_description: The access token is invalid
                    state: unauthorizez
        '403':
          description: Forbidden
          content:
            application/json:
              examples:
                example_0:
                  value:
                    error: invalid_token
                    error_description: The access token is invalid
                    state: unauthorizez
        '200':
          description: Gets a quotation
          content:
            application/json:
              examples:
                example_0:
                  value:
                    id: 61698af18b81926d91c0f397
                    name: factory_project
                    language_from: fr
                    language_to: en
                    language_from_code: fr-fr
                    language_to_code: en-us
                    category: C014
                    vocabulary_type: not_specified
                    target_reader_groups: not_specified
                    grammatical_person: not_specified
                    custom_data:
                      tags:
                      - red
                      - soft
                      external_client_id: 1234
                    project_briefing: Lorem ipsum dolor sit amet, consectetur ...
                    project_briefing_is_rich: false
                    priority: 0.0
                    status: in_creation
                    total_word_count: 0
                    documents_statuses:
                      in_creation: 0
                      waiting_assignment: 0
                      in_progress: 0
                      in_review: 0
                      incomplete: 0
                      completed: 0
                      paused: 0
                      canceled: 0
                      quality_control: 0
                      copyscape: 0
                      counting_words: 0
                      in_extra_review: 0
                    progress: 0.0
                    same_author_must_do_entire_project: false
                    callback: {}
                    external_id: null
                    multi_project_id: null
                    auto_launch: false
                    project_template_id: null
                    finalized: false
                    word_count_error: null
                    cost_in_credits: 0
                    ctype: translation
                    creation_channel: api
                    reference: TR-909-9784
                    cost_per_word:
                      currency: credits
                      amount: 20
                    options:
                      expertise: true
                      language_level: premium
                    option_values:
                      expertise: 61698af08b81926d91c0f320
                      language_level: premium
                    textmasters: []
                    glossaries: []
                    total_costs:
                    - currency: USD
                      amount: 0.0
                    - currency: credits
                      amount: 0
                    api_template_id: null
                    created_at:
                      day: 15
                      month: 10
                      year: 2021
                      full: 2021-10-15 14:06:42 UTC
                    updated_at:
                      day: 15
                      month: 10
                      year: 2021
                      full: 2021-10-15 14:06:42 UTC
                    launched_at: null
                    completed_at: null
                    work_template:
                      name: factory_template29
                      description: null
                      image_preview_path: null
                      ctype: public
              schema:
                $ref: '#/components/schemas/Quotation'
  /v1/clients/projects/{project_id}:
    get:
      summary: Get a Project
      tags:
      - Projects
      security:
      - oauth2:
        - project:manage
        - project:read
        - project:write
      parameters:
      - name: project_id
        in: path
        required: true
        description: The Project ID.
        schema:
          type: string
      responses:
        '401':
          description: Unauthorized
          content:
            application/json:
              examples:
                example_0:
                  value:
                    error: invalid_token
                    error_description: The access token is invalid
         

# --- truncated at 32 KB (100 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/textmaster/refs/heads/main/openapi/textmaster-projects-api-openapi.yml