> For the complete documentation index, see [llms.txt](https://docs.khotan.com/llms.txt). A markdown version of any page is available at its `index.md` URL.

# Organization

`/api/v1` operations for organization. See [HTTP API](/api/) for authentication, the error envelope, and rate limits.

## Operations

### GET /api/v1/organization/brand

Get the organization's brand

Returns the stored primary and secondary colours, the app theme, and the logo's download path when one is stored. Returns { brand: null } when nothing is stored.

Auth: API key required.

Operation ID: `getOrganizationBrand`

Responses:
- `200` — The brand, or null.
- `401` — Authentication is missing or invalid.
- `429` — Too many requests; retry after the indicated delay.

CLI: `khotan organization brand get`

### GET /api/v1/organization/brand/logo

Download the brand logo

Returns the logo file (PNG or SVG). Responds 404 when no logo is stored.

Auth: API key required.

Operation ID: `getOrganizationBrandLogo`

Responses:
- `200` — The logo file.
- `401` — Authentication is missing or invalid.
- `404` — The resource was not found.
- `429` — Too many requests; retry after the indicated delay.

CLI: `khotan organization brand logo`

### PUT /api/v1/organization/brand/app-theme

Save the brand's app theme

Replaces the organization's app theme with the given light and dark CSS colour tokens. Token names must match ^--[a-z0-9-]+$ and values must be hex or oklch() colours. Logos and colours are unchanged.

Auth: API key required.

Operation ID: `setOrganizationBrandAppTheme`

Request body (`application/json`, required):
- `appTheme` (object, required)
- `source` (string | null, optional)

Responses:
- `200` — The saved app theme.
- `400` — The request was malformed or failed validation.
- `401` — Authentication is missing or invalid.
- `403` — The caller is not permitted to perform this action.
- `429` — Too many requests; retry after the indicated delay.

CLI: `khotan organization brand app-theme set`

<!-- generated from the /api/v1 OpenAPI spec v1.0.0 (adapter 0.10.0); do not edit by hand -->
