Public REST API
Trigger Brewdemo from every audience tool.
One endpoint, real bearer auth, real responses. POST a URL + description from Substack, Mailchimp, Shopify, HubSpot, Zapier, or anything that can POST JSON. Brewdemo records, narrates, composes, and webhooks back the finished share link.
Need your API key? Sign in to connect → Settings → API keys. Or skim the /api/v1/record reference before you wire anything.
Quickstart
- Grab a key at Settings → API keys (sign in to connect).
- POST to
/api/v1/recordwith a URL + description. Brewdemo returns a job id. - Either set a
webhookUrlon the key (we POST you when the video is ready) or poll/api/v1/runs/{id}.
📨
Substack
Welcome video the moment a reader subscribes.
Trigger
Substack Pro → Settings → Webhooks → "New subscriber" → POST to the URL below.
Payload
POST https://brewdemo.com/api/v1/record
Authorization: Bearer brk_<YOUR_API_KEY>
Content-Type: application/json
{
"url": "https://yoursite.com/welcome",
"description": "60-second welcome tour for new {{publication}} subscribers",
"targetDurationSec": 60
}Note: Free Substacks don't expose webhooks — wire Zapier on "new sub" → POST to the same URL.
🐵
Mailchimp
Onboarding video on tag change.
Trigger
Mailchimp → Automation → Tag added → HTTP Webhook
Payload
POST https://brewdemo.com/api/v1/record
Authorization: Bearer brk_<YOUR_API_KEY>
Content-Type: application/json
{
"url": "https://yourapp.com/dashboard",
"description": "Personalized onboarding tour for {{merge.FNAME}}",
"targetDurationSec": 90
}🛒
Shopify
Cart-abandon recovery video keyed off product.
Trigger
Shopify Flow → Cart abandoned → Send HTTP request
Payload
POST https://brewdemo.com/api/v1/record
Authorization: Bearer brk_<YOUR_API_KEY>
Content-Type: application/json
{
"url": "https://yourstore.com/products/{{product.handle}}",
"description": "Convince {{customer.first_name}} to come back for {{product.title}}",
"targetDurationSec": 45
}🟧
HubSpot
Demo video when a deal hits a stage.
Trigger
HubSpot Workflows → Trigger: "Deal stage = Demo scheduled" → Webhook action
Payload
POST https://brewdemo.com/api/v1/record
Authorization: Bearer brk_<YOUR_API_KEY>
Content-Type: application/json
{
"url": "https://app.yourproduct.com",
"description": "Personalized demo for {{contact.firstname}} at {{contact.company}} ({{contact.industry}})",
"targetDurationSec": 120
}⚡
Zapier / Make / n8n
Wire any trigger from any tool to a Brewdemo recording.
Trigger
Zapier → Action: "POST request" → URL below.
Payload
POST https://brewdemo.com/api/v1/record
Authorization: Bearer brk_<YOUR_API_KEY>
Content-Type: application/json
{
"url": "<the URL Brewdemo should record>",
"description": "<what should the demo say + who it's for>",
"targetDurationSec": 60
}Note: Works with Make.com, n8n, IFTTT, or anything that can POST JSON.
Native integration for your platform?
We’re prioritizing native (OAuth-based) HubSpot, Slack, and Zapier app integrations. In the meantime everything above works via the public webhook recipe. Tell us which one to prioritize →
