# General Translation Platform: Создание или обновление терминов глоссария
URL: https://generaltranslation.com/ru/docs/platform/openapi/reference/context-management/upsert-glossary.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Создаёт или обновляет от 1 до 100 терминов ({ entries: [...] }; чтобы отправить один термин, передайте массив из одного элемента) одним атомарным пакетом, сопоставляя их по ключевому слову. Если поле не передано, его текущее значение сохраняется. null очищает поле, допускающее null, или удаляет запись из словаря; остальные поля null не принимают. При пакетной обработке и импорте элементы сопоставляются с сохранёнными по естественному ключу; сохранённые элементы, отсутствующие в пакете, не изменяются, и больше ничего не удаляется. Пустая ячейка CSV считается непереданным значением. Если ключевое слово повторяется в одном пакете, весь пакет отклоняется (400). Требуется org:context:write. Справочник API для создания или обновления терминов глоссария.

{/* Этот файл автоматически создан с помощью Fumadocs. Не редактируйте его напрямую. Чтобы внести изменения, повторно выполните команду генерации. */}

## Endpoint

`POST https://api.gtx.dev/v2/context-groups/{groupId}/glossary`

**Operation ID:** `upsertContextGlossary`

**Tags:** `Context Management`

**Summary:** Upsert glossary terms

Creates or updates 1–100 terms (`{ entries: [...] }`; send one term as a one-item array), matched by keyword, in one atomic batch. An absent field keeps its stored value. `null` clears a nullable field or removes a map entry; other fields reject `null`. In batches and imports, items match stored items by natural key, stored items absent from the batch are untouched, and nothing else is deleted. A blank CSV cell counts as absent. Repeating a keyword within one batch rejects the whole batch (400). Requires `org:context:write`.

Authentication: required. Send an API key in the `Authorization: Bearer <key>` header when authenticating.

### Parameters

- `groupId` (path, string, required): Context group ID.
- `gt-api-version` (header, "2025-01-01.v0" | "2025-11-03.v1" | "2026-02-18.v1" | "2026-03-06.v1", optional): API contract version. Defaults to the oldest supported version.

### Request body (required)

Body (`application/json`, object):
- `entries` (object[], required): 1–100 terms, matched by keyword; a keyword may appear once.
  - `keyword` (string, required)
  - `userDefined` (boolean)
  - `definition` (string | null): null clears the definition.
  - `translations` (object): Translations by locale; null for a locale deletes its translation.
    - `<key>` (object | null, dynamic key)
      - `translation` (string, required)
      - `userDefined` (boolean)

### Responses

**200**: Glossary terms written
Response body (`application/json`, object):
- `committed` (true, required)
- `counts` (object, required)
  - `created` (integer, required)
  - `updated` (integer, required)
  - `unchanged` (integer, required)

**400**: Request error
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

**401**: Request error
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

**403**: Request error
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

**404**: Request error
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

**413**: Request error
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

**429**: Request error
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

**500**: Request error
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

Complete OpenAPI 3.1 specification: https://generaltranslation.com/openapi.yaml

OpenAPI schema: [openapi.json](https://generaltranslation.com/openapi.json)

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
