Wistia Brands API
The Brands API from Wistia — 1 operation(s) for brands.
Operations 1
Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay
The Brands API from Wistia — 1 operation(s) for brands.
Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/wistia:wistia-brands-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Data Brands API
description: Wistia Data API
version: edge-version
servers:
- url: https://api.wistia.com/modern
tags:
- name: Brands
x-wistia-mcp-toolsets: customizations
x-displayName: Brands
paths:
/brands:
get:
summary: List Brands
x-wistia-mcp-annotations:
read_only_hint: true
read_only_hint_justification: This tool only reads brands from the account and does not modify any data.
open_world_hint: false
open_world_hint_justification: This tool only queries records inside the account and does not reach external services.
destructive_hint: false
destructive_hint_justification: This tool is read-only and does not make any changes.
idempotent_hint: true
idempotent_hint_justification: Reading data does not change any state, so repeated calls have no additional effect.
x-speakeasy-group: brands
x-speakeasy-name-override: list
description: 'Lists the brands belonging to the account. A brand is a saved set of
branding options (colors, fonts, logos, and layout) that can be applied to
media, projects, channels, and webinars. The account-level default brand is
flagged with `is_default`.
## Requires api token with one of the following permissions
```
Read all data
```'
x-wistia-mcp-tool-name: get-brands
x-wistia-mcp-description: 'List the brands in the account — the saved sets of branding options (colors,
fonts, logos, border radius) used to style players and pages. The
account-level default brand is marked with is_default. Supports pagination
and sorting (by name, created, updated, or id). Use this when someone wants
to see which brands exist and how each is configured.
'
parameters:
- name: page
in: query
description: 'The page number to retrieve. This cannot be combined with `cursor`,
pagination.
'
required: false
schema:
type: integer
- name: per_page
in: query
description: The number of medias per page. Use this for both offset pagination and cursor pagination.
required: false
schema:
type: integer
- name: cursor
in: query
description: 'If `cursor[enabled]` is set to 1 then cursor pagination is enabled and the
first set of records are fetched up to the `per_page`. Cursor
pagination will also be turned on if `cursor[before]` or `cursor[after]`
are set. Records returned will have a `cursor` property set which can be used to fetch more records in the same `sort_by` ordering.
The cursor value of the last record can be used to fetch records after the current result set and
the cursor of the first record can be used to fetch records before the result set.
NOTE: a cursor value is only valid if the `sort_by` value hasn''t changed from the
last fetch. For example, you cannot fetch using `sort_by` id and then pass that
cursor value to a `sort_by` name.
'
required: false
schema:
unevaluatedProperties: false
type: object
properties:
enabled:
description: 'If `cursor[enabled]` is set to 1, the first result set will be fetched with cursor pagination enabled. This
values is ignored if `cursor[before]` or `cursor[after]` are set.
'
type: integer
enum:
- 0
- 1
before:
description: 'If `cursor[before]` is set then cursor pagination is enabled and all records
before the cursor up to the `per_page` are returned. This feature is useful for
fetching "new records", for example, in a "pull to refersh" feature when showing records in a descending
order.
'
type: string
after:
description: 'If `cursor[after]` is set then cursor pagination is enabled and all records
after the cursor up to the `per_page` are returned.
'
type: string
style: deepObject
- name: sort_by
in: query
description: 'Ordering. When using cursor pagination (see cursor param),
only `id`, `updated` and `created` are supported. All other sort_by options
require offset pagination.
'
required: false
schema:
type: string
enum:
- name
- created
- updated
- id
- name: sort_direction
in: query
description: Ordering Sort Direction (0 = desc, 1 = asc)
required: false
schema:
type: integer
enum:
- 0
- 1
responses:
'200':
description: A list of brands
content:
application/json:
schema:
type: array
items:
unevaluatedProperties: false
type: object
description: 'A brand is a saved set of branding options — colors, fonts, logos, and
layout — that can be applied to media, projects, channels, and webinars.
'
properties:
name:
description: The brand's display name.
type: string
examples:
- My Brand
is_default:
description: Whether this brand is the account-level default, applied to content that has no more specific brand.
type: boolean
examples:
- true
created:
description: The date the brand was originally created.
type: string
format: date-time
examples:
- '2010-08-13T18:47:39+00:00'
updated:
description: The date the brand was last updated.
type: string
format: date-time
examples:
- '2010-08-19T21:47:00+00:00'
primary_color:
description: The primary brand color, used for primary buttons and the player playbar. Either a hex color string or a gradient represented as an array of [hexColor, percentage] tuples. Null when unset.
unevaluatedProperties: false
oneOf:
- type: string
examples:
- '#2949E5'
- type: array
items:
type: array
items: {}
- type: 'null'
page_background_color:
description: The brand color used for page backgrounds. Either a hex color string or a gradient represented as an array of [hexColor, percentage] tuples. Null when unset.
unevaluatedProperties: false
oneOf:
- type: string
examples:
- '#111111'
- type: array
items:
type: array
items: {}
- type: 'null'
body_font_family:
description: The brand font family for body text. Null when unset.
type:
- string
- 'null'
examples:
- Inter
headline_font_family:
description: The brand font family for headlines. Null when unset.
type:
- string
- 'null'
examples:
- GT Walsheim
button_font_family:
description: The brand font family for buttons. Null when unset.
type:
- string
- 'null'
examples:
- Inter
border_radius:
description: The border radius in pixels for rounded corners. Null when unset.
type:
- integer
- 'null'
examples:
- 10
contrast_icons:
description: Controls whether the player icon color is always white or uses an accessible contrast color when necessary.
type:
- string
- 'null'
enum:
- enabled
- disabled
- unset
- null
opaque_controls:
description: Controls the opacity of the video player control bar and big play button.
type:
- string
- 'null'
enum:
- enabled
- disabled
- unset
- null
page_logo:
description: The brand logo used for pages. Null when unset.
type:
- object
- 'null'
unevaluatedProperties: false
properties:
url:
description: The URL of the logo image.
type: string
dimensions:
type:
- object
- 'null'
unevaluatedProperties: false
properties:
width:
type: integer
height:
type: integer
size:
description: The size multiplier of the logo.
type:
- number
- 'null'
player_logo:
description: The brand logo used for the player. Null when unset.
type:
- object
- 'null'
unevaluatedProperties: false
properties:
url:
description: The URL of the logo image.
type: string
dimensions:
type:
- object
- 'null'
unevaluatedProperties: false
properties:
width:
type: integer
height:
type: integer
size:
description: The size multiplier of the logo.
type:
- number
- 'null'
cursor:
description: A cursor for stable pagination based on current `sort_by` order. You can pass this to `cursor[before]` or `cursor[after]` as a parameter to fetch the records before or after this record in the same sort order. This is only populated if records were fetched with `cursor[enabled]`, or `cursor[before]` or `cursor[after]`.
type:
- string
- 'null'
'400':
description: Bad request
content:
application/json:
schema:
unevaluatedProperties: false
type: object
properties:
error:
description: Error message detailing the reason for the bad request.
type: string
examples:
- Bad request
errors:
description: Array of error messages detailing the reasons for the bad request.
type: array
items:
type: string
'401':
description: Unauthorized, invalid or missing token
content:
application/json:
schema:
unevaluatedProperties: false
type: object
properties:
code:
description: A machine-readable identifier for the specific authorization failure.
type: string
enum:
- unauthorized_credentials
- account_inactive
- unauthorized_scope
- unauthorized_params
error:
type: string
examples:
- Invalid credentials.
'500':
description: Internal server error
content:
application/json:
schema:
unevaluatedProperties: false
type: object
properties:
error:
type: string
examples:
- Internal server error
tags:
- Brands
security:
- BearerAuth: []
operationId: getBrands
x-operation-id-source: derived
components:
securitySchemes:
BearerAuth:
type: http
scheme: bearer
x-tagGroups:
- name: Data API
tags:
- Media
- Customizations
- Captions
- Localizations
- Trims
- Extended Audio Descriptions
- Brands
- Tags
- Taggings
- Folders
- Folder Sharings
- Subfolders
- Channels
- Channel Collaborators
- Channel Episodes
- Webinars
- Webinar Collaborators
- Webinar Registrations
- Account
- Search
- Resource URLs
- Expiring Access Tokens
- Background Job Status
- Allowed Domains
- Remix
- Push Devices
- Deleted Media
- Review Bundles
- Share Links
- Bulk Actions
- Custom Metadata Field Definitions
- Custom Metadata Field Values
- name: Stats API
tags:
- Stats:Account
- Stats:Events
- Stats:Media
- Stats:Projects
- Stats:Visitors
- name: Analytics API
tags:
- Analytics:Account
- Analytics:Media
- Analytics:Webinar