---
title: "Create Term Set"
method: POST
path: "/brand-terms/term-sets"
tags: ["brandTerms"]
---

# Create Term Set

`POST /brand-terms/term-sets`

Create a new term set. Terms and domains are linked to term sets.
The term set context text will be used to determine whether a term should be flagged in the text and what the term replacement should be.

## Headers

- `Authorization` string, required

## Request body

- TermSetCreateRequest — Payload to create a new term set.
  - `context` string, required
  - `term_type` 'preferred' | 'prohibited'
  - `context_polarity` 'include' | 'exclude'
  - `terms` TermCreateRequest[], nullable
    - `term` string, required
    - `type` 'preferred' | 'prohibited', required
    - `case_sensitive` boolean
  - `domain_ids` string[], nullable

## Response `201`

Successful Response

- TermSetResponse — DB-mapped representation of a term set (no terms).
  - `id` string, uuid, required
  - `context` string, required
  - `term_type` 'preferred' | 'prohibited'
  - `context_polarity` 'include' | 'exclude'
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required
  - `created_by` string, nullable
  - `updated_by` string, nullable

## Other responses

- `401` — Authentication failed or no valid API key provided.
- `403` — Forbidden
- `422` — Validation Error
- `500` — Internal Server Error

---

[API](https://skmtc.net/markup/apis/api-reference.md) · [All operations](https://skmtc.net/markup/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/markup/api-reference/revisions/8e28e770c55d/schema)
