BrandReel
Developer API

Brand content,
from your terminal.

Read owned brand context and start image or video generations through the same pipeline, plan rules, and monthly credits as the BrandReel app.

Bearer authentication

Create a personal br_… key in account settings. Keys only access workspaces owned by that account and require an active plan.

Create or rotate a key

# Agent + CLI setup

npx skills add thijssmudde/brandreel-cli

npm install -g brandreel-cli

export BRANDREEL_API_KEY=br_your_key

br models:list

br brands:list

br assets:list your-brand

GET/api/v1/models

List available models

Returns live image and video capabilities, plan access, defaults, and credit estimates.

br models:list
GET/api/v1/brands

List brand workspaces

Returns the caller’s owned brand workspaces with logo, palette, tagline, and asset count.

curl https://brandreel.com/api/v1/brands \
  -H "Authorization: Bearer br_your_key"
GET/api/v1/brands/:slug

Get brand context

Returns one owned workspace including its logo reference, colors, and stored asset references.

curl https://brandreel.com/api/v1/brands/acme \
  -H "Authorization: Bearer br_your_key"
GET/api/v1/brands/:slug/assets

List reusable assets

Returns the workspace logo and asset library with fresh usable URLs. Run this before every agent flow.

br assets:list acme
POST/api/v1/brands/:slug/assets

Upload a brand asset

Uploads a PNG, JPEG, WebP, or AVIF image up to 10 MB into the owned workspace asset library.

br assets:upload acme ./product.png
# Replace the logo intentionally:
br assets:upload acme ./logo.png --kind logo
GET/api/v1/brands/:slug/generations

List recent generations

Returns recent image and video generations. Use ?limit=20, from 1 to 100.

curl 'https://brandreel.com/api/v1/brands/acme/generations?limit=20' \
  -H "Authorization: Bearer br_your_key"
POST/api/v1/brands/:slug/generations

Create a generation record

Creates an owned image or video generation record. The CLI handles this before starting the generation pipeline.

curl https://brandreel.com/api/v1/brands/acme/generations \
  -X POST -H "Authorization: Bearer br_your_key" \
  -H "Content-Type: application/json" \
  -d '{"type":"image","prompt":"Studio product still"}'
POST/api/scenes/generate

Generate an image

Starts image generation for an owned generation record. Plan capabilities and credits are enforced exactly as in the app.

br image:create acme --prompt "Studio product still" \
  --source-image <asset-url> --aspect-ratio 4:3
POST/api/video/generate

Generate a video

Starts an image-to-video job for an owned generation record and returns a job ID for polling.

br video:create acme --prompt "Slow dolly in" \
  --source-image https://example.com/frame.jpg --duration 5
GET/api/video/status

Poll video status

Checks one existing video job. Continue polling this job instead of creating duplicates.

br video:status <job-id> --generation <generation-id>

Want the agent-ready workflows?

Use copyable playbooks that inspect the brand and ask before spending credits.

View playbooks