Docs › API
API quick start
The MsgVibe API creates the same videos from your own code: one request per video, or up to 500 at once. It’s REST over HTTPS with JSON.
In one sentence
POST your content to /v1/videos, get an id back instantly, and receive the MP4 link on your webhook about a minute later.
Watch it work
See one API call, start to finish
A simulation with the real request and responses. No key needed, nothing is charged.
Press “Run demo”
Watch a request travel through MsgVibe: from your server, through the render, to the finished video.
The video
Appears here when the render finishes
Ready for the real thing? It’s the same request with your own key.Open the live API console
Do it yourself in 4 steps
- 1
Get an API key
Sign in, open the dashboard → Developer API → Create key. It starts withmvk_live_and is shown once: keep it on your server only. - 2
Add a webhook (recommended)
In the same place, set a URL on your server. We POSTvideo.completedorvideo.failedthere, signed so you can verify it came from us. - 3
Send the request
Copy the code below, set MSGVIBE_API_KEY, and run it. You get a video id and status "queued" right away. - 4
Receive the video
Onvideo.completed, downloaddata.outputUrl. No webhook? PollGET /v1/videos/{id}every 10–15 seconds until status isdone.
curl -X POST https://api.msgvibe.com/v1/videos \
-H "Authorization: Bearer $MSGVIBE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"templateId": "fashion_sale_01",
"externalId": "order-1042",
"business": {
"name": "Main Street Apparel",
"phone": "(512) 555-0142"
},
"promotion": {
"title": "Black Friday",
"subtitle": "40% off everything",
"cta": "Shop now"
}
}'What each part of the request means
| Field | Meaning |
|---|---|
templateId | Which design to use. Find ids in the template gallery. |
externalId | Your own reference (order, store or customer id). Returned in webhooks so you can match the video. |
business | Who the video is for: name, logo, phone, address. Or pass brandKitId to use a saved brand kit. |
promotion | The words: title, subtitle, offerText, cta, discountPercent, validity. |
products | Up to 6 items with name, price, salePrice, image (public https URL) and tag. |
aspectRatios | Optional, e.g. ["9:16","1:1"]: one video per size. |
Next
Batches: up to 500 videos per request One row per customer, store or product.Webhooks & signature check Verify every event in 10 lines of code.Live API console Send real requests from your browser with your key.Full API reference Every endpoint, field, limit and error.
Questions? Write to us and we’ll help.Contact support →