> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cognizo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# List brands



## OpenAPI

````yaml /api-reference/openapi.json get /api/v2/brands
openapi: 3.0.1
info:
  title: Cognizo Public API
  version: v1
  description: >-
    Public REST API for Cognizo. Authenticate with an API key via the
    `X-API-KEY` header.
servers:
  - url: https://core.cognizo.ai
security:
  - apiKey: []
paths:
  /api/v2/brands:
    get:
      tags:
        - Brands
      summary: List brands
      operationId: list_brands
      parameters:
        - name: filter[query]
          in: query
          required: false
          description: Case-insensitive name search
          schema:
            type: string
        - name: filter[is_pitch]
          in: query
          required: false
          description: true → pitch brands only; default → customer + demo brands
          schema:
            type: boolean
        - name: page
          in: query
          required: false
          schema:
            type: integer
        - name: page_size
          in: query
          required: false
          schema:
            type: integer
      responses:
        '200':
          description: brands returned (paginated when `page` is sent)
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/brand_info'
                required:
                  - data
components:
  schemas:
    brand_info:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
        description:
          type: string
          nullable: true
        primary_category:
          type: string
          nullable: true
        status:
          type: string
          nullable: true
          enum:
            - onboarding_pending
            - onboarding
            - pending
            - active
            - paused
            - past_due
            - onboarding_failed
            - deleted
            - null
          description: Brand lifecycle status
        brand_type:
          type: string
          nullable: true
          enum:
            - customer
            - pitch
            - demo
            - null
        is_favorite:
          type: boolean
        is_demo:
          type: boolean
          description: Ownerless brand (demo catalog)
        is_outbound:
          type: boolean
          description: Owned by the outbound-marketing org
        visibility:
          type: number
          nullable: true
          description: >-
            30-day brand visibility % (ClickHouse-derived); null on surfaces
            that don't compute it
        brand_updated_at:
          type: string
          format: date-time
          nullable: true
        domains:
          type: array
          items:
            type: string
        pitch_duration_days:
          type: integer
          nullable: true
          description: Pitch brands only
        pitch_expires_at:
          type: string
          format: date-time
          nullable: true
          description: Pitch brands only; null until activated
        pitch_days_remaining:
          type: integer
          nullable: true
          description: Pitch brands only; 0 when paused/expired
        mode:
          type: string
          enum:
            - diy
            - dfy
          description: >-
            Brand experience mode: 'diy' (regular UI) or 'dfy' (done-for-you
            shell). NULL rows read as 'diy'. Lets the FE route the brand on
            open.
      required:
        - id
        - name
        - description
        - primary_category
        - status
        - brand_type
        - is_favorite
        - is_demo
        - is_outbound
        - visibility
        - brand_updated_at
        - domains
        - pitch_duration_days
        - pitch_expires_at
        - pitch_days_remaining
        - mode
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: X-API-KEY

````