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

# Get a company logo

> The one asset most callers want, without the rest of the record: a direct image URL for the company's mark, chosen for the background you name. Cheaper than a full brand resolve. The image itself is public and immutable, so the URL can be embedded anywhere.



## OpenAPI

````yaml https://api.hydrafetch.com/openapi.json get /v1/web/brand/logo
openapi: 3.0.0
info:
  title: Hydrafetch API
  description: >-
    Hydrafetch is a web data API for developers and agents. Send a URL and get
    back clean Markdown, the page's own structured data, schema-shaped JSON,
    links, or a summary, with the navigation, banners and boilerplate stripped
    out. Scrape one page, crawl a whole site, run a search, or extract to a
    schema, all through one API with one response shape. Every call costs one
    credit a page whatever it took to fetch, and failures are never billed.


    Point us at a whole site and get every page. Ask a question and get answers
    with per-field

    confidence and the passage each value came from. You describe the outcome
    you want — the

    pipeline decides how to get it.


    ## Authentication


    Every request is authenticated with your API key in the `X-API-Key` header.
    Keys are scoped to a

    workspace and carry its credit balance.


    ## Credits


    Calls are billed in credits and charged only on success. A standard scrape
    is one credit; richer

    formats and the extraction tier cost more. Each response reports what it
    consumed.


    ## Conventions


    All timestamps are UTC ISO 8601. Long-running jobs (crawl, batch) return a
    job id you poll, or a

    webhook you register. Errors return a structured body with a stable `code`
    and an HTTP status.
  version: '1.0'
  contact:
    name: Hydrafetch
    url: https://hydrafetch.com
    email: support@hydrafetch.com
servers:
  - url: https://api.hydrafetch.com
    description: Production
security:
  - apiKey: []
tags:
  - name: Scrape
    description: >-
      Turn one URL into clean, LLM-ready content. Ask for Markdown, HTML, links,
      or the page’s own structured data, and poll a job id when a fetch runs
      long.
  - name: Crawl & batch
    description: >-
      Whole sites rather than single pages. Map every URL, crawl with depth and
      path rules, batch a list you already have, and read the webhook deliveries
      for either.
  - name: Search
    description: >-
      Search the web and get the ranked results back already scraped, so an
      agent has content to cite rather than links to fetch.
  - name: Extract
    description: >-
      Pull schema-shaped JSON out of one or many pages, with optional per-field
      confidence and the source passage behind each value.
  - name: Brand
    description: >-
      Resolve a domain into the company ready to render: logos for light and
      dark, the palette ranked by how the site uses it, fonts, socials, and the
      design system behind them.
  - name: Media
    description: >-
      Images and screenshots from a page, with source and alt text, or a
      rendered capture of the page as it appears.
paths:
  /v1/web/brand/logo:
    get:
      tags:
        - Brand
      summary: Get a company logo
      description: >-
        The one asset most callers want, without the rest of the record: a
        direct image URL for the company's mark, chosen for the background you
        name. Cheaper than a full brand resolve. The image itself is public and
        immutable, so the URL can be embedded anywhere.
      operationId: logo
      parameters:
        - name: domain
          required: true
          in: query
          description: Domain to fetch the logo for. A URL works too.
          schema:
            type: string
            example: stripe.com
        - name: theme
          required: false
          in: query
          description: >-
            The background you are drawing on. `auto` prefers a single-colour
            mark.
          schema:
            default: light
            type: string
            enum:
              - light
              - dark
              - auto
        - name: type
          required: false
          in: query
          description: The square mark, or the full wordmark.
          schema:
            default: icon
            type: string
            enum:
              - icon
              - wordmark
      responses:
        '200':
          description: The chosen logo, or null when we have no mark for the domain.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BrandLogoResponseDto'
components:
  schemas:
    BrandLogoResponseDto:
      type: object
      properties:
        data:
          nullable: true
          description: >-
            Null when we hold no mark for the domain. A domain with no logo is
            free.
          type: object
          allOf:
            - $ref: '#/components/schemas/LogoDescriptionDto'
      required:
        - data
    LogoDescriptionDto:
      type: object
      properties:
        domain:
          type: string
          example: stripe.com
        url:
          type: string
          example: https://media.hydrafetch.com/brand/fe/fe927b2695157fca9fb3.webp
          description: Public and immutable, so it can be embedded anywhere.
        kind:
          type: string
          example: symbol
        variant:
          type: string
          enum:
            - light
            - dark
            - mono
          example: light
        format:
          type: string
          example: webp
        width:
          type: object
          nullable: true
          example: 180
        height:
          type: object
          nullable: true
          example: 180
        dominantColor:
          type: object
          nullable: true
          example: '#543cfc'
        blurhash:
          type: object
          nullable: true
          example: LmGk_aoh4sWHohWEWDt506WD?Sod
      required:
        - domain
        - url
        - kind
        - variant
        - format
        - width
        - height
        - dominantColor
        - blurhash
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: X-API-Key

````