---
title: "List Brand Kits"
method: POST
path: "/public_api/brand_kits/list"
tags: ["Brand Kits"]
---

# List Brand Kits

`POST /public_api/brand_kits/list`

Brand Kits for AEO operations — provides the brand_kit_id required by all AEO tools (analytics, prompts, pages, citations, reports, grids, topics, personas).

## Request body

- object
  - `workspace_id` integer — ID of the workspace to retrieve brand kits from. If not provided, returns brand kits from all workspaces the user belongs to.
  - `filters` object[] — Filter results. Nested fields (e.g. `writing_rules.text`) filter within an included association and require that association in `includes`. **Available fields:** - **workspace_name** (EQUALS, CONTAINS): Filter by workspace name - **brand_name** (EQUALS, CONTAINS): Filter by brand name - **brand_url** (EQUALS, CONTAINS): Filter by brand URL - **created_at** (EQ, GT, LT, GEQ, LEQ): Filter by creation date - **aeo_enabled** (EQ): Filter by whether AEO is enabled for the Brand Kit
    - `field` 'workspace_name' | 'brand_name' | 'brand_url' | 'created_at' | 'aeo_enabled', required — Field to filter on. workspace_name: Filter by workspace name; brand_name: Filter by brand name; brand_url: Filter by brand URL; created_at: Filter by creation date; aeo_enabled: Filter by whether AEO is enabled for the Brand Kit
    - `operator` 'EQUALS' | 'CONTAINS' | 'EQ' | 'GT' | 'LT' | 'GEQ' | 'LEQ', required — Filter operator. - **EQ/EQUALS**: Exact match - **NEQ**: Not equal - **GT/GEQ/LT/LEQ**: Numeric/date comparisons - **CONTAINS**: Partial text match - **STARTS_WITH**: Text prefix match - **IN**: Match any value in array - **HAS_ALL**: (tags filter) match only items having every listed value - **NOT_IN**: (tags filter) match only items having none of the listed values
    - `value` unknown, required
  - `includes` string[] — Include related resources. **Available includes:** - **product_lines**: Include product lines for this Brand Kit - **competitors**: Include competitor analysis - **audiences**: Include target audiences for this Brand Kit - **content_types**: Include content types configuration
  - `fields` string[] — Select additional fields to return. Default fields (id, brand_name, workspace_name) are always included. **Optional fields:** - **brand_url**: URL of the brand website - **brand_about**: Description/overview of the brand - **brand_customer**: Description of the target customer - **brand_competitors**: Information about brand competitors - **brand_point_of_view**: The brand's unique perspective or stance - **writing_persona**: The persona/voice used in brand writing - **writing_tone**: The tone of voice for brand content - **writing_cta**: Default call-to-action text - **writing_cta_url**: URL for call-to-action links - **writing_rules**: Writing rules and guidelines - **writing_sample_title**: Title of the writing sample - **writing_sample_outline**: Outline of the writing sample - **writing_sample_body**: Body content of the writing sample - **writing_sample_url**: URL reference for the writing sample - **primary_color**: Primary brand color (hex format, e.g., #FF5733) - **secondary_color**: Secondary brand color (hex format) - **accent_color**: Accent brand color (hex format) - **header_case**: Header case style (title_case, sentence_case, or custom) - **header_case_custom_value**: Custom header case rules (when header_case is custom) - **countries**: Array of country codes for brand targeting (e.g., ["US", "GB", "CA"]) - **aeo_enabled**: Whether AEO is enabled for the Brand Kit - **prompts_count**: Number of prompts/questions associated with this Brand Kit - **created_at**: When the Brand Kit was created - **updated_at**: When the Brand Kit was last updated
  - `sort` 'brand_name' | '-brand_name' | 'created_at' | '-created_at' | 'prompts_count' | '-prompts_count' — Sort field. Prefix with - for descending. **Available sort fields:** - **brand_name/-brand_name**: Sort alphabetically by brand name - **created_at/-created_at**: Sort by creation date - **prompts_count/-prompts_count**: Sort by number of prompts/questions
  - `page` integer — Page number
  - `per_page` integer — Items per page

## Response `200`

Successful response

- object
  - `data` object[], required
    - `id` integer, nullable, required — Unique identifier for the Brand Kit
    - `workspace_name` string, nullable, required — Name of the workspace this Brand Kit belongs to
    - `brand_name` string, nullable, required — Name of the brand
    - `brand_url` string, nullable — URL of the brand website
    - `brand_about` string, nullable — Description/overview of the brand
    - `brand_customer` string, nullable — Description of the target customer
    - `brand_competitors` string, nullable — Information about brand competitors
    - `brand_point_of_view` string, nullable — The brand's unique perspective or stance
    - `writing_persona` string, nullable — The persona/voice used in brand writing
    - `writing_tone` string, nullable — The tone of voice for brand content
    - `writing_cta` string, nullable — Default call-to-action text
    - `writing_cta_url` string, nullable — URL for call-to-action links
    - `writing_rules` string, nullable — Writing rules and guidelines
    - `writing_sample_title` string, nullable — Title of the writing sample
    - `writing_sample_outline` string, nullable — Outline of the writing sample
    - `writing_sample_body` string, nullable — Body content of the writing sample
    - `writing_sample_url` string, nullable — URL reference for the writing sample
    - `primary_color` string, nullable — Primary brand color (hex format, e.g., #FF5733)
    - `secondary_color` string, nullable — Secondary brand color (hex format)
    - `accent_color` string, nullable — Accent brand color (hex format)
    - `header_case` string, nullable — Header case style (title_case, sentence_case, or custom)
    - `header_case_custom_value` string, nullable — Custom header case rules (when header_case is custom)
    - `countries` string[], nullable — Array of country codes for brand targeting (e.g., ["US", "GB", "CA"])
    - `aeo_enabled` boolean, nullable — Whether AEO is enabled for the Brand Kit
    - `prompts_count` integer, nullable — Number of prompts/questions associated with this Brand Kit
    - `created_at` string, nullable — When the Brand Kit was created
    - `updated_at` string, nullable — When the Brand Kit was last updated
    - `product_lines` object[], nullable — Included product_lines collection (when requested via includes param)
    - `competitors` object[], nullable — Included competitors collection (when requested via includes param)
    - `audiences` object[], nullable — Included audiences collection (when requested via includes param)
    - `content_types` object[], nullable — Included content_types collection (when requested via includes param)
  - `meta` object, required
    - `page` integer
    - `per_page` integer
    - `total_count` integer
    - `total_pages` integer

## Other responses

- `400` — Bad request - invalid parameters, filters, or sort options
- `401` — Unauthorized - invalid or missing authentication token
- `404` — Not found - resource does not exist
- `412` — Precondition failed - AEO not configured for this brand kit

---

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