---
title: "Add a brand guideline, as Brand Control, Writing, Brand Guidelines does: a rule the writer follows in every article from now on, with its type, what to avoid and what to write instead (300 characters each). It starts switched on; set_brand_guideline_active turns it off. Returns the new guidelineId."
method: POST
path: "/api/v1/brand/guidelines"
---

# Add a brand guideline, as Brand Control, Writing, Brand Guidelines does: a rule the writer follows in every article from now on, with its type, what to avoid and what to write instead (300 characters each). It starts switched on; set_brand_guideline_active turns it off. Returns the new guidelineId.

`POST /api/v1/brand/guidelines`

## Request

- Base URL: `https://api.rctrl.com`
- URL: `https://api.rctrl.com/api/v1/brand/guidelines`
- Auth: HTTP bearer

Requires the `write:content` scope.

## Request body

- object
  - `type` 'tone' | 'terminology' | 'topic' | 'style' | 'factual', required: What the guideline covers: tone, terminology, topic, style or factual
  - `avoid` string, required: What the writer should avoid (300 characters max)
  - `instead` string, required: What to write instead (300 characters max)

## Response `200`

Success; the payload is wrapped in a data envelope

- object
  - `data` unknown

## Other responses

- `400`: Bad input
- `401`: Missing or invalid API key
- `403`: API key lacks the required scope
- `404`: Not found in this workspace
- `429`: Rate limited; the body includes a retryAfterMs hint

---

[API](https://skmtc.dev/rctrl/apis/rankcontrol-api.md) · [All operations](https://skmtc.dev/rctrl/apis/rankcontrol-api/llms.txt) · [OpenAPI document](https://skmtc.dev/rctrl/apis/rankcontrol-api/revisions/98ecd236394a?raw)
