---
title: "Patch brand voice/style fields: tone, colors, defaultLocale, flexibleScheduling. They steer all future article generation. Also Brand Profile's Local business switch: localBusiness, and serviceArea (the area the business serves, like \"Austin, Texas\"; 100 characters at most, empty clears it). Only provided fields change."
method: POST
path: "/api/v1/brand/profile"
---

# Patch brand voice/style fields: tone, colors, defaultLocale, flexibleScheduling. They steer all future article generation. Also Brand Profile's Local business switch: localBusiness, and serviceArea (the area the business serves, like "Austin, Texas"; 100 characters at most, empty clears it). Only provided fields change.

`POST /api/v1/brand/profile`

## Request

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

Requires the `write:content` scope.

## Request body

- object
  - `tone` string: One of: professional, conversational, technical, friendly, journalistic, persuasive
  - `primaryColor` string: Hex color, like #0F172A
  - `secondaryColor` string: Hex color, like #F59E0B
  - `defaultLocale` string: BCP-47 tag from the supported registry
  - `flexibleScheduling` boolean: true allows 1 to 5 articles a day and lets you move planned articles by hand
  - `localBusiness` boolean: Brand Profile's Local business switch
  - `serviceArea` string: The area the business serves, like "Austin, Texas". 100 characters at most; empty clears it.

## 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)
