---
title: "Get Brand Preload"
method: GET
path: "/brand_preload"
tags: ["Account"]
---

# Get Brand Preload

`GET /brand_preload`

## Request

- Base URL: `https://api.wistia.com/modern`
- URL: `https://api.wistia.com/modern/brand_preload`
- Auth: HTTP bearer

Retrieves Brandfetch-derived brand info for the current account's contact
domain, plus a boolean indicating whether the account already has any brand
kits configured. Used by Glass onboarding to preload the brand kit for new
signups on business-email domains.

Returns `brandfetch_brand` with nil `primary_color`/`logo`/`domain` for
free-mail domains, Wistia's own domain, when the Brandfetch feature
flag is off, or when Brandfetch has no data — the caller silently
skips the preload in every such case. The object itself is always
present; only its fields go nil.

## Requires api token with one of the following permissions
```
(any scope allowed)
```

Tokens with the "Act with a team member's permissions" permission
(`all:delegate_to_contact_permissions` scope) can also be used. Requests
made with such a token are authorized using the permissions of the
contact assigned to the token.

An [expiring access token](https://docs.wistia.com/reference/post_expiring-token)
created with the `all:delegate_to_contact_permissions` scope can also be
used, whatever its authorizations name; the preload belongs to the token's
own account.

## Headers

- `X-Wistia-API-Version` string, required

## Response `200`

Successful response

- object: Brandfetch-derived brand info for the current account's contact domain, plus whether the account has any brand kits configured.
  - `has_brand_kits` boolean, required: True iff the account has one or more configured brand kits. Glass uses this to skip the onboarding preload step for accounts that already have a brand kit set up.
  - `brandfetch_brand` object, required: Brandfetch response for the contact's email domain. Fields are nil for free-mail domains, Wistia's own domain, and accounts where Brandfetch has no data — the caller silently skips the preload in every such case.
    - `domain` string, nullable, required
    - `primary_color` string, nullable, required: Hex color string (e.g. "#3366FF") or null if Brandfetch returned no accent/primary color.
    - `logo` string, nullable, required: Absolute URL to the dark-theme logo, or null if none is available.
    - `font` string, nullable
    - `colors` string[]
    - `logos` object[]: Full Brandfetch logos list — Glass consumes only `logo` (the primary), but callers that want theme variants can walk this.
      - `theme` string, nullable: "dark" or "light".
      - `type` string, nullable: e.g. "logo", "icon", "symbol".
      - `tags` string[]
      - `formats` object[]
        - `src` string
        - `format` string: File extension (e.g. "png", "svg").
        - `background` string, nullable
        - `height` integer, nullable
        - `width` integer, nullable
        - `size` integer, nullable
    - `status` integer, nullable: HTTP status Brandfetch responded with (204 when empty).

## Other responses

- `401`: Unauthorized, invalid or missing token
- `500`: Internal server error

## Changes

- **2026-11-03** `b86cb2a7b420`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/wistia/apis/data-api/changes/brand_preload/get.md)

---

[API](https://skmtc.dev/wistia/apis/data-api.md) - [All operations](https://skmtc.dev/wistia/apis/data-api/llms.txt) - [OpenAPI document](https://skmtc.dev/wistia/apis/data-api/revisions/b86cb2a7b420?raw)
