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

# Brand API prefetch by domain (HEAD)

<Note>
  The same availability check as
  [`HEAD /v2/brands/{identifier}`](/reference/brand-api-prefetch), on the
  explicit domain route: `200` held, `202` crawl queued, `404` nothing to
  fetch, `403` on a free plan, `503` when the crawl could not be queued. Like
  the other explicit type routes it accepts a domain only and refuses an email
  address with a `400`.
</Note>


## OpenAPI

````yaml HEAD /v2/brands/domain/{domain}
openapi: 3.0.1
info:
  title: Brandfetch API
  description: >-
    Our APIs help you personalize your customer journey through unique branded
    experiences.
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.brandfetch.io
security: []
paths:
  /v2/brands/domain/{domain}:
    head:
      tags:
        - brands
      summary: Check availability and prefetch a brand
      description: >-
        Tells you whether Brandfetch already holds the brand for a domain and,
        when it does not, queues a crawl so that the `GET` which follows is
        answered from our store instead of waiting on a live crawl. Available on
        paid plans. A `HEAD` request carries no body and never consumes a
        credit.


        - `200` — the brand is held. A `GET` answers from the store.

        - `202` — the brand is not held and a crawl has been queued. A `GET`
        made before the crawl finishes still crawls live.

        - `404` — nothing can be fetched: the domain has no public suffix, or
        its brand has been removed.


        This route accepts a domain only; like the other explicit type routes it
        refuses an email address with a `400`. Prefetch requests may be
        throttled to prevent abuse and ensure quality of service.
      operationId: prefetchBrandByDomain
      parameters:
        - name: domain
          in: path
          description: Domain name (e.g., `nike.com`)
          required: true
          schema:
            type: string
          examples:
            domain:
              summary: Domain
              value: nike.com
      responses:
        '200':
          description: The brand is held. A `GET` answers from the store.
          headers:
            x-api-key-quota:
              description: >-
                Your organization's API credit quota for the current period. The
                check itself consumes no credit.
              schema:
                type: integer
            x-api-key-approximate-usage:
              description: >-
                Credits used so far this period. Usage is counted
                asynchronously, so the figure trails your latest requests
                slightly.
              schema:
                type: integer
        '202':
          description: The brand is not held; a crawl has been queued.
          headers:
            x-api-key-quota:
              description: >-
                Your organization's API credit quota for the current period. The
                check itself consumes no credit.
              schema:
                type: integer
            x-api-key-approximate-usage:
              description: >-
                Credits used so far this period. Usage is counted
                asynchronously, so the figure trails your latest requests
                slightly.
              schema:
                type: integer
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Your organization is not on a paid plan.
          headers:
            x-bf-error:
              description: Why the request was refused.
              schema:
                type: string
                enum:
                  - paid_plan_required
        '404':
          description: >-
            Nothing can be fetched for the identifier: it is unknown, or its
            brand has been removed.
        '429':
          description: >-
            Request throughput limit exceeded. The check never consumes your
            quota, so this is the platform rate limit rather than your
            allowance.
        '503':
          description: The crawl request could not be queued. Retry later.
          headers:
            x-bf-error:
              description: Why the request was refused.
              schema:
                type: string
                enum:
                  - temporarily_unavailable
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````