---
title: "Update Brand Kit"
method: PATCH
path: "/brand-kits/{brand_kit_id}"
tags: ["brand-kits"]
---

# Update Brand Kit

`PATCH /brand-kits/{brand_kit_id}`

Update a brand kit.

## 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). Both are permanent, supported inputs.

## Headers

- `Moda-Version` '2026-04-12' | '2026-05-01'

## Request body

- UpdateBrandKitRequest
  - `title` string, nullable — New display name for the brand kit.
  - `colors` object[], nullable — Array of {color, label} objects. Replaces all existing colors.
  - `fonts` object[], nullable — Array of {family, label, weight} objects. Replaces all existing fonts.
  - `company_name` string, nullable — Company name.
  - `company_description` string, nullable — Brief company description.
  - `tagline` string, nullable — Company tagline or slogan.
  - `brand_values` string[], nullable — List of brand values (e.g. 'innovative', 'trustworthy').
  - `brand_aesthetic` string[], nullable — 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[], nullable — List of tone-of-voice descriptors (e.g. 'professional', 'friendly').
  - `default_theme_canvas_id` string, nullable — 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). Both are permanent, supported inputs.

## Response `200`

Successful Response

- object

## Other responses

- `401` — Authentication required.
- `403` — Permission denied for this scope.
- `404` — Resource not found.
- `409` — Conflict (idempotency / resource state).
- `422` — Request validation failed.
- `429` — Rate limit exceeded.
- `500` — Internal error.

---

[API](https://skmtc.dev/moda/apis/moda-public-api.md) · [All operations](https://skmtc.dev/moda/apis/moda-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/moda/moda-public-api/revisions/b34cb4cca59e/schema)
