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

# List brands

> The workspace's brands: the same rows `GET /v1/accounts` lists (same ids, pass one as `account_id`), plus the brand profile (`website`, `business_model`, `business_categories`) and `default_avatar_id`, the identity a run for the brand renders with unless the request names an `avatar_id`.



## OpenAPI

````yaml /openapi.json get /v1/brands
openapi: 3.1.0
info:
  title: Creatorline API
  version: 1.0.0
  description: >-
    Generate AI influencer photos and videos, and publish them to your creators'
    social

    accounts — from your own backend, your scripts, or a coding agent.


    Every request authenticates with an organization-scoped API key and is
    charged against

    that organization's credits, at the same prices the studio shows.
servers:
  - url: https://api.creatorline.io
    description: Production
  - url: http://localhost:3000/api
    description: Local development (the same routes, under the app's own /api prefix)
security:
  - bearerAuth: []
  - apiKeyHeader: []
tags:
  - name: Account
    description: Who the key belongs to, and what it can spend.
  - name: Catalog
    description: The live tool and model catalog. Read it, do not hardcode it.
  - name: Creators
    description: >-
      The AI creators a generation or post belongs to (the `accounts` alias of
      brands).
  - name: Brands
    description: 'The accounts: niche, language, connections, content, and a default avatar.'
  - name: Avatars
    description: The reusable identities (face, voice, persona) a run renders with.
  - name: Generations
    description: Start, price and poll image and video runs.
  - name: Assets
    description: The media library, and uploading your own files.
  - name: Posts
    description: Turn media into a post and publish it to social platforms.
  - name: Credits
    description: Balance and the consumption ledger.
paths:
  /v1/brands:
    get:
      tags:
        - Brands
      summary: List brands
      description: >-
        The workspace's brands: the same rows `GET /v1/accounts` lists (same
        ids, pass one as `account_id`), plus the brand profile (`website`,
        `business_model`, `business_categories`) and `default_avatar_id`, the
        identity a run for the brand renders with unless the request names an
        `avatar_id`.
      operationId: listBrands
      parameters:
        - name: limit
          in: query
          description: How many rows to return (1-100).
          schema:
            type: integer
            default: 20
            minimum: 1
            maximum: 100
      responses:
        '200':
          description: Brands, newest first.
          headers:
            x-request-id:
              description: >-
                Correlation id for this request. Quote it in any support
                question.
              schema:
                type: string
            x-ratelimit-limit:
              description: Requests allowed per minute.
              schema:
                type: integer
            x-ratelimit-remaining:
              description: Requests left in the current window.
              schema:
                type: integer
            x-ratelimit-reset:
              description: Unix seconds when the window resets.
              schema:
                type: integer
          content:
            application/json:
              schema:
                type: object
                properties:
                  object:
                    type: string
                    enum:
                      - list
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Brand'
                  has_more:
                    type: boolean
                required:
                  - object
                  - data
                  - has_more
        '401':
          description: Missing, malformed, revoked or expired key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  type: authentication_error
                  code: invalid_api_key
                  message: Missing or invalid API key.
                request_id: req_8fQ2mRxK1pLd
components:
  schemas:
    Brand:
      type: object
      description: >-
        An account: the same row `GET /v1/accounts` lists, with its brand
        profile and default avatar.
      properties:
        object:
          type: string
          enum:
            - brand
        id:
          type: string
        name:
          type: string
        kind:
          type: string
        vertical:
          type: string
        bio:
          type: string
        language:
          type: string
        country:
          type: string
        website:
          type: string
          format: uri
          description: The brand's site or store page.
        business_model:
          type: string
          enum:
            - b2b
            - b2c
            - both
        business_categories:
          type: array
          items:
            type: string
            enum:
              - ecommerce
              - saas
              - agency
              - services
              - marketplace
              - media
              - mobile_app
              - other
        default_avatar_id:
          type: string
          description: >-
            The avatar a run for this brand renders with when the request names
            no `avatar_id`. Absent on a faceless brand.
        voice_id:
          type: string
          description: >-
            The default avatar's cloned voice; a run with this `account_id`
            speaks in it by default.
        voice_name:
          type: string
        created_at:
          type: number
          description: Epoch milliseconds.
      required:
        - object
        - id
    Error:
      type: object
      description: >-
        Every failure has this shape. `param` names the offending field when
        there is one.
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - invalid_request_error
                - authentication_error
                - permission_error
                - not_found_error
                - rate_limit_error
                - insufficient_credits_error
                - api_error
            code:
              type: string
            message:
              type: string
            param:
              type: string
          required:
            - type
            - code
            - message
        request_id:
          type: string
        required_credits:
          type: number
          description: 402 only.
        credit_balance:
          type: number
          description: 402 only.
      required:
        - error
        - request_id
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Your organization's API key, from Settings → MCP. `Authorization: Bearer
        crl_sk_live_…`
    apiKeyHeader:
      type: apiKey
      in: header
      name: X-API-Key
      description: Alternative to the Authorization header, for tooling that prefers it.

````