Skip to main content
PATCH
Update Brand Kit

Authorizations

Authorization
string
header
required

API key from Settings > Developer > REST API

Headers

Moda-Version
enum<string>
default:2026-05-01

Calendar-dated API version pin. New integrations should pin 2026-05-01 to opt into the newest response shapes. For back-compat the server also accepts requests with no header and resolves them to the current default (today: 2026-04-12); that default advances on each sunset date. Any unsupported value returns 400 unsupported_version.

Available options:
2026-04-12,
2026-05-01
Example:

"2026-05-01"

Path Parameters

brand_kit_id
string
required

Prefixed bk_ wire ID (Crockford base32 body) — the canonical, recommended form. For back-compat, a bare UUID string is also accepted in both path parameters and JSON request bodies (older integrations that stored raw UUIDs keep working), as is the prefix over a UUID body (bk_00000000-0000-4000-8000-000000000000). All three are permanent, supported inputs; only the canonical form is ever emitted.

Pattern: ^bk_[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$
Example:

"bk_01HT9WK8N3M2J4A5Z6P7Q8R9TV"

Body

application/json
title
string | null

New display name for the brand kit.

Maximum string length: 255
colors
Colors · object[] | null

Array of {color, label?, mode?, gradient?} objects. Replaces all existing colors — send the full desired palette (read it first), including any mode/gradient values to keep.

fonts
Fonts · object[] | null

Array of {family, label?, weight?} objects. Replaces all existing fonts. Each font's supported flag is derived server-side from the platform + team font catalogs; a caller-supplied value is ignored.

company_name
string | null

Company name.

company_description
string | null

Brief company description.

tagline
string | null

Company tagline or slogan.

brand_values
string[] | null

List of brand values (e.g. 'innovative', 'trustworthy').

brand_aesthetic
string[] | null

Deprecated list of aesthetic descriptors (e.g. 'minimal', 'bold'). The free-text aesthetic is derived during brand-kit population and is not settable via this API.

brand_tone_of_voice
string[] | null

List of tone-of-voice descriptors (e.g. 'professional', 'friendly').

default_theme_canvas_id
string | null

Prefixed cvs_ wire ID (Crockford base32 body) — the canonical, recommended form. For back-compat, a bare UUID string is also accepted in both path parameters and JSON request bodies (older integrations that stored raw UUIDs keep working), as is the prefix over a UUID body (cvs_00000000-0000-4000-8000-000000000000). All three are permanent, supported inputs; only the canonical form is ever emitted.

Pattern: ^cvs_[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$
Example:

"cvs_01HT9WK8N3M2J4A5Z6P7Q8R9TV"

is_default
boolean | null

Send true to make this the team's default brand kit, clearing whichever kit held it. Applied in the same transaction as the field writes above. Omit to leave the flag unchanged. false is rejected (400): demoting without naming a replacement leaves the team with no default — promote the replacement kit instead.

Response

Successful Response

The response is of type Response Updatebrandkit · object.