---
title: "Put Brand Kit"
method: PUT
path: "/companies/{company_id}/brand-kit"
tags: ["creatives"]
---

# Put Brand Kit

`PUT /companies/{company_id}/brand-kit`

## Request

- Base URL: `https://app.zalster.com` (the document declares no server; this is the origin it was published from)
- URL: `https://app.zalster.com/companies/{company_id}/brand-kit`
- Auth: none declared

Merge a partial kit into the stored one, so the portal can save one field.

The website (decision 246) is kept beside the kit: it is no render input,
so a save of it alone asks no template for a run.

## Path parameters

- `company_id` string, uuid, required: Company id

## Request body

- BrandKitUpdate: A partial kit: every section given is merged into the stored one. The values are checked in ``core/creatives/brand.py`` rather than here, so the colour, typeface and wording rules have exactly one server-side home. A style is merged field by field, and its size format by format.
  - `colors` object, nullable
  - `fonts` object, nullable
  - `wording` object, nullable
  - `spacing` object, nullable
  - `radii` object, nullable
  - `styles` object, nullable
  - `website` string, nullable

## Response `200`

Successful Response

- BrandKitOut: A company's brand kit, always complete. A company that has never saved one gets the defaults with ``configured: false``, so the portal needs no empty state in its data layer.
  - `colors` object, required
  - `fonts` object, required
  - `wording` object, required
  - `spacing` object, required
  - `radii` object, required
  - `styles` object, required
  - `configured` boolean, required
  - `updated_at` string, date-time, nullable, required
  - `website` string, nullable

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/zalster/apis/zalster-feed-processor.md) - [All operations](https://skmtc.dev/zalster/apis/zalster-feed-processor/llms.txt) - [OpenAPI document](https://skmtc.dev/zalster/apis/zalster-feed-processor/revisions/d0b9dc66ad36?raw)
