Base URL
Send every public API request to this versioned base URL:
text
https://api-platform.gensta.ai/v1The /v1 segment versions the public HTTP contract. Compatible additions can ship inside v1; a breaking contract requires a new major version.
Before you start
- Get a project API key.Keep it on your server. Never expose it in browser or mobile code.
- Read the live catalog.
GET /v1/modelsneeds no key and is the source of truth for availability, capabilities, and customer rates. - Create one logical generation.Use a stable
Idempotency-Keyso a lost response can be retried safely. - Poll by ID.Video is asynchronous; stop when the generation reaches a terminal status.
Create a generation
POST
/v1/generationsBearer key · generations:writebash
export GENSTA_API_KEY="your-secret-key"
curl --silent --show-error --fail-with-body \
-X POST "https://api-platform.gensta.ai/v1/generations" \
-H "Authorization: Bearer $GENSTA_API_KEY" \
-H "Idempotency-Key: order-8493-shot-1" \
-H "Content-Type: application/json" \
-d '{
"model": "wan-3.0",
"mode": "text_to_video",
"variant": "standard",
"parameters": {
"resolution": "720p",
"duration_seconds": 5,
"ratio": "16:9",
"audio": true,
"prompt_extend": true
},
"input": {
"prompt": "A quiet lake at sunrise, cinematic aerial shot"
}
}'A valid create returns HTTP 202 with an id, status: queued, and a USD price hold snapshot. Save the ID before doing anything else.
Poll for a result
GET
/v1/generations/{id}Bearer key · generations:readbash
curl --silent --show-error --fail-with-body \
"https://api-platform.gensta.ai/v1/generations/$GENERATION_ID" \
-H "Authorization: Bearer $GENSTA_API_KEY"Start after about five seconds, then back off to 10–15 seconds with jitter. On succeeded, download artifacts[].download_url promptly. The URL is short-lived; a later GET returns a newly signed URL for the same artifact.