Create banners from your own system, with an API.
An API is how you request banners from your code. Test it without spending credits, and receive a webhook (an automatic signed notice) when the job finishes.
See the developers pageCreate banners from your code
A request with the prompt, sizes, and languages returns a job that generates a concept in all of them; you check it until it finishes.
Signed notices
Register a webhook and receive an event (banner generated, export ready, review approved…) with a signature you can verify.
Safe to test
Test keys return a sample banner without using AI or credits. If you retry a request with the same idempotency key, it is not charged twice.
From the key to the banner, in three steps.
Create a key
A test key (bm_test_…) to start, or a production key (bm_live_…). It is shown in full only once.
Make the request
Send the prompt, sizes, and languages with an idempotency header.
Wait for the notice
Check the job, or receive the webhook when the banner is ready.
Costs, limits, and requirements.
- Available on
- API and webhooks: Team, Agency, and Enterprise plans. MCP server: [plans to be confirmed].
- Keys
- Production and test, each with its own permissions; only a fingerprint is stored, not the value.
- Webhook events
- All 13 documented events are emitted today, including banner.generated, generation.failed, review.approved, and export.ready.
- Signature
- Standard Webhooks: webhook-id, webhook-timestamp, and webhook-signature headers (HMAC SHA-256, with a 5-minute tolerance) on every notice.
Related features
Learn to use it step by step
Create a banner with the APITutorialReceive notices with webhooksTutorialBanner examples with this feature
Questions about api and webhooks
Which plans include the API?
Team ($99 per month), Agency ($299 per month), and Enterprise (from $1,500 per month). Starter does not include the API or webhooks.
Do I spend credits when I test?
Not with test keys: they always return a sample banner, with no AI and no credits. Production keys use the same credits as the app.
What happens if I retry a request?
With the Idempotency-Key header, repeating the same request returns the previous result instead of charging you again.
How do I know a webhook is from BannerMotion?
Each notice carries the webhook-id, webhook-timestamp, and webhook-signature headers of the Standard Webhooks standard: an HMAC SHA-256 signature you verify with your webhook secret. The SDKs ship the verification ready to use.
Are there SDKs?
There are TypeScript and Python clients, not published yet [date to be confirmed]; ask for them at soporte@bannermotion.com. For any other language, use a client generated from the OpenAPI 3.1 specification.
Can I connect Claude or another AI assistant?
Yes: BannerMotion is an MCP server. Claude, Cursor, or ChatGPT generate, correct, preview, and export with your workspace's permissions and credits.
Connect BannerMotion to your platform.
Try it with a real campaign.