Create documentation / Developers
API and integrations
Create a key in the app, make a first request, and handle jobs and errors in your integration.
In this guide
An integration that authenticates correctly and follows jobs without duplicating work.
1. Create an API key inside Create
Sign in and open API management from the main menu. Choose Create API key, enter a recognizable Key name, and select Expires in. The app offers 7, 30, and 90 days.
Select Create key when ready. Copy the key immediately; its full value is shown only once. Store it in your server's secret configuration. Keys have full access to the Create operations allowed for their account and projects; there is no per-key permission picker.
Use a separate key for each integration. Never include a real key in a browser bundle, public repository, or screenshot.
2. Confirm the key with a read-only request
The base URL is https://create.mango9.com/api/v1. Send the key as a bearer token from your backend.
With the key already stored in an environment variable, make an identity request:
curl --fail-with-body https://create.mango9.com/api/v1/me \
-H "Authorization: Bearer $CREATE_API_KEY"
Successful JSON responses contain data and meta.requestId. On failure, inspect error.code and error.message. Keep the request ID for troubleshooting without logging the secret key.
3. Find and inspect the endpoint
Open API documentation → Endpoint reference. Search by path, method, or feature, then expand an endpoint to inspect its inputs and response. Download OpenAPI for the machine-readable contract.
Create an empty project using POST /projects with a body such as {"name":"Spring launch","aspectRatio":"9:16"}. Keep the returned project and scene identifiers. This operation creates the workspace without submitting generation work.
Use GET /models to discover models and account pricing. Consult the current OpenAPI schema for each operation's required fields.
4. Submit and follow asynchronous jobs
Provide the project, scene, model, and inputs required by the generation operation. Send a UUID Idempotency-Key for a new request, retain the returned job identifier, and poll the documented job endpoint until it reaches a terminal state.
An accepted request is still processing. Download the output after completion.
After an uncertain timeout, retry the identical request with its original key. Changed inputs require a new key. Check the first job's outcome before submitting new paid work.
5. Connect editing and completion events
Start an editor session, attach and sync media, and read the current timeline. Editor commands require the current revision and an idempotency key. After a revision conflict, fetch the latest timeline and review the intended change.
Register a public HTTPS webhook for supported production/review events or completed native renders. Generation jobs use polling. Verify HMAC-SHA256 signatures against the exact raw body and timestamp, reject timestamps outside five minutes, and deduplicate body.id. Delivery is at least once.
The interactive editor uses a signed-in Mango9 browser session with project edit access. An API key does not sign a person into that browser editor.
6. Rotate keys and handle limits
Return to API management to review Active or All keys, expiry, and last use. Create a replacement, update your integration, and verify it before revoking the old key.
The current limit is 120 requests per minute per key. Respect Retry-After on 429 and 503 responses. Check the current reference when adding or changing an operation.