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

# List brands you can promote

> List the brands you're approved to promote on the Archer platform.

Each row carries a `brand_id`, display `brand_name`, `active_products`, and
`storefront_page_count`. Use `brand_id` with `/getproducts?brand_id=…` to browse a brand's catalog
or with `/reports` to scope reporting to one brand.

### Filtering
- `search` — find brands matching a query against their name.
- `brand_name` — match brands whose display name contains the given text.
- `brand_id` — fetch a single brand by id.

### Paging through results
Use `skip` and `limit` to page through the list. `total_count` is the
total across every page; `fetched_count` is how many you got back.



## OpenAPI

````yaml /docs/api-reference/openapi.json get /brands
openapi: 3.1.0
info:
  title: Archer Affiliates API
  description: API that allows use of features on the Archer Platform
  version: '2.0'
servers:
  - url: https://api.archeraffiliates.com
    description: Production
security: []
paths:
  /brands:
    get:
      tags:
        - Brands
      summary: List brands you can promote
      description: >-
        List the brands you're approved to promote on the Archer platform.


        Each row carries a `brand_id`, display `brand_name`, `active_products`,
        and

        `storefront_page_count`. Use `brand_id` with `/getproducts?brand_id=…`
        to browse a brand's catalog

        or with `/reports` to scope reporting to one brand.


        ### Filtering

        - `search` — find brands matching a query against their name.

        - `brand_name` — match brands whose display name contains the given
        text.

        - `brand_id` — fetch a single brand by id.


        ### Paging through results

        Use `skip` and `limit` to page through the list. `total_count` is the

        total across every page; `fetched_count` is how many you got back.
      operationId: get_brands_brands_get
      parameters:
        - name: skip
          in: query
          required: false
          schema:
            anyOf:
              - type: integer
                minimum: 0
              - type: 'null'
            description: How many brands to skip — used for paging.
            default: 0
            title: Skip
          description: How many brands to skip — used for paging.
        - name: limit
          in: query
          required: false
          schema:
            anyOf:
              - type: integer
                maximum: 500
                minimum: 1
              - type: 'null'
            description: How many brands to return per page (1–500). Defaults to 100.
            default: 100
            title: Limit
          description: How many brands to return per page (1–500). Defaults to 100.
        - name: search
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: Find brands matching the given text in their name.
            title: Search
          description: Find brands matching the given text in their name.
        - name: brand_name
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Match brands whose display name contains the given text
              (case-insensitive).
            title: Brand Name
          description: >-
            Match brands whose display name contains the given text
            (case-insensitive).
        - name: brand_id
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: Fetch a single brand by its identifier.
            title: Brand Id
          description: Fetch a single brand by its identifier.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BrandsResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - OAuth2PasswordBearer: []
components:
  schemas:
    BrandsResponse:
      properties:
        total_count:
          type: integer
          title: Total Count
          description: Total brands matching your filters across every page.
        fetched_count:
          type: integer
          title: Fetched Count
          description: Brands in this page.
        skip:
          type: integer
          title: Skip
          description: The `skip` value that produced this page.
        limit:
          type: integer
          title: Limit
          description: The `limit` value that produced this page.
        brands:
          items:
            $ref: '#/components/schemas/BrandRow'
          type: array
          title: Brands
          description: The brands on this page.
      type: object
      required:
        - total_count
        - fetched_count
        - skip
        - limit
        - brands
      title: BrandsResponse
      description: The response from GET /brands.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    BrandRow:
      properties:
        brand_id:
          type: string
          title: Brand Id
          description: >-
            The brand's identifier. Pass this to `/getproducts?brand_id=…` to
            limit the catalog to this brand and use it to correlate rows in
            `/reports`.
        brand_name:
          type: string
          title: Brand Name
          description: Brand name as shown on the Archer platform.
        active_products:
          type: integer
          title: Active Products
          description: Products with `is_active=true` and `deleted=false` for this brand.
        storefront_page_count:
          type: integer
          title: Storefront Page Count
          description: >-
            Active, non-stale storefront pages currently discoverable for this
            brand.
      type: object
      required:
        - brand_id
        - brand_name
        - active_products
        - storefront_page_count
      title: BrandRow
      description: A brand you're approved to promote.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    OAuth2PasswordBearer:
      type: oauth2
      flows:
        password:
          scopes: {}
          tokenUrl: token

````