---
title: "Create Termbase Template"
method: POST
path: "/termbase-templates"
tags: ["Termbase Template"]
---

# Create Termbase Template

`POST /termbase-templates`

Creates a new termbase template.

## Query parameters

- `fields` string

## Headers

- `Authorization` string, required
- `X-LC-Tenant` string, required

## Request body

- TermbaseTemplateCreateRequest — The termbase template create request.
  - `name` string, required — The name of the termbase template.
  - `description` string, nullable — The description of the termbase template.
  - `copyright` string, nullable — The copyright of the termbase template.
  - `location` string — The folder identifier where the termbase template should be created. If not mentioned, it will be created in the Root folder. If the user does not have access in Root, the request will fail with forbidden error.
  - `languages` LanguageRequest[] — The languages of the termbase template.
    - `languageCode` string, required
  - `fields` TermbaseFieldCreateRequest[]
    - `name` string, required — The name of the termbase field. Must be unique.
    - `description` string, nullable — The description of the termbase field.
    - `level` 'entry' | 'language' | 'term', required — The level of which this field applies.
    - `dataType` 'text' | 'double' | 'date' | 'picklist' | 'boolean', required — The data type of the field.
    - `pickListValues` string[] — The pick list values. Only if dataType is "picklist". Values must be unique.
    - `allowCustomValues` boolean — Specifies if the field allows custom values. Must be true if pickListValues is empty.
    - `allowMultiple` boolean — Specifies if the field can be used multiple times.
    - `isMandatory` boolean — Specifies if the field is mandatory.

## Response `201`

Created

- TermbaseTemplate — The termbase template.
  - `id` string, required — The identifier of the termbase template.
  - `name` string — <div style="display:inline; float:right; color:#008080; margin-top:-23px; font-size:11px">default</div><div style="display: inline;">The name of the termbase template.</div>
  - `description` string, nullable — The description of the termbase template.
  - `copyright` string, nullable — The copyright of the termbase template.
  - `location` FolderV2 — Folder used for resource storage.
    - `id` string, required — The folder identifier.
    - `name` string — <div style="display:inline; float:right; color:#008080; margin-top:-23px; font-size:11px">default</div><div style="display: inline;">The name of the folder.</div>
    - `hasParent` boolean, nullable — Indicates if the folder has a parent folder.
    - `path` FolderPath[] — The hierarchical path. It consists of all the items of the path in reverse order, the parent of the current folder being the first in the list, and the root of the account being the last.
      - `id` string, required — The folder identifier.
      - `name` string, required — The name of the folder.
      - `location` string — <div style="display:inline; float:right; color:#008080; margin-top:-23px; font-size:11px">default</div>The location identifier.
      - `hasParent` boolean, nullable — <div style="display:inline; float:right; color:#008080; margin-top:-23px; font-size:11px">default</div>Indicates if the folder has a parent folder.
  - `createdAt` string, date-time — The date and time when the termbase template was created. <br> UTC Timezone <br> Allowed formats: <br> "YYYY-MM-DDThh:mmZ" <br> "YYYY-MM-DDThh:mm:ssZ" <br> "YYYY-MM-DDThh:mm:ss.sZ" <br> "YYYY-MM-DDThh:mm:ss.ssZ" <br> "YYYY-MM-DDThh:mm:ss.sss
  - `lastModifiedAt` string, date-time — The date and time when the termbase template was modified. <br> UTC Timezone <br> Allowed formats: <br> "YYYY-MM-DDThh:mmZ" <br> "YYYY-MM-DDThh:mm:ssZ" <br> "YYYY-MM-DDThh:mm:ss.sZ" <br> "YYYY-MM-DDThh:mm:ss.ssZ" <br> "YYYY-MM-DDThh:mm:ss.sss
  - `type` 'system' | 'userDefined', required — The type of the termbase template.
  - `languages` Language[] — The languages of the termbase template.
    - `languageCode` string, required — Language code. ex: "en-US", "de-DE".
    - `englishName` string — <div style="display:inline; float:right; color:#008080; margin-top:-23px; font-size:11px">default</div><div style="display: inline;">Human readable name.</div>
    - `direction` string
    - `parentLanguageCode` string
    - `defaultSpecificLanguageCode` string
    - `isNeutral` boolean, nullable
  - `fields` TermbaseField[]
    - `id` string, required — The identifier of the termbase field.
    - `name` string — <div style="display:inline; float:right; color:#008080; margin-top:-23px; font-size:11px">default</div><div style="display: inline;">The name of the termbase field.</div>
    - `description` string, nullable — The description of the termbase field
    - `type` 'system' | 'userDefined' — The type of the termbase field - system or userDefined.
    - `level` 'entry' | 'language' | 'term' — <div style="display:inline; float:right; color:#008080; margin-top:-23px; font-size:11px">default</div><div style="display: inline;">The level of which this field applies.</div>
    - `dataType` 'text' | 'double' | 'date' | 'picklist' | 'boolean' — <div style="display:inline; float:right; color:#008080; margin-top:-23px; font-size:11px">default</div><div style="display: inline;">The data type of the field.</div>
    - `pickListValues` string[] — The pick list options. Only if dataType is "picklist".
    - `allowCustomValues` boolean — Specifies if the field allows custom values.
    - `allowMultiple` boolean — Specifies if the field can be used multiple times.
    - `isMandatory` boolean — Specifies if the field is mandatory.

## Other responses

- `400` — Error codes: * "invalid": Invalid input in the query parameter mentioned in the “name” field on the error response. * "empty": Empty mandatory value mentioned in the "name" field on the error response. * "maxSize": Maximum size exceeded for the value mentioned in the "name" field on the error response. * "duplicate": The field name must be unique within the list.
- `401` — The user could not be identified.
- `403` — Error codes: * "forbidden": - The authenticated user is not allowed to create a termbase template in the specified location. * "benefitNotAvailable": - Your subscription does not include access to the requested type of benefit.
- `404` — Error codes: * "notFound": - The specified location was not found.
- `409` — Error codes: * "duplicate": There is already a termbase template with the same name.

---

[API](https://skmtc.net/rws/apis/trados-cloud-platform-api.md) · [All operations](https://skmtc.net/rws/apis/trados-cloud-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/rws/trados-cloud-platform-api/revisions/d42dac7c28a3/schema)
