01
Introduction
Polyforge is a multi-model AI media generation platform. It aggregates 50+ top image, video, audio and text models behind one account, one workspace and one API.
There are two ways to use it: the no-code Creator Suite in your browser, and a unified API for production integration with automatic failover, routing and billing.
02
Quickstart
Create an API key in your dashboard, then make your first request. Every generation endpoint shares the same request shape — pick a model, send a prompt, get a result.
curl -X POST https://api.polyforge.ai/v1/images/generations \
-H "Authorization: Bearer $POLYFORGE_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "model": "nano-banana-2", "prompt": "studio shot of a drink", "size": "1024x1024" }'03
Authentication
All requests are authenticated with a bearer token. Pass your API key in the Authorization header. Keep keys server-side — never expose them in client code.
-H "Authorization: Bearer $POLYFORGE_API_KEY"
04
Generating images
Image models accept a prompt plus optional size, steps and seed. The response returns one or more URLs along with the credits spent.
{
"model": "nano-banana-2",
"prompt": "a pulped sparkling drink, studio light",
"size": "1024x1024",
"steps": 30
}05
Generating video
Video endpoints are asynchronous. Submit a job, then poll the job id (or use a webhook) until status is succeeded. Duration and fps vary per model — see each model page for limits.
curl https://api.polyforge.ai/v1/videos/jobs/$JOB_ID \
-H "Authorization: Bearer $POLYFORGE_API_KEY"
06
Failover & routing
Every request is routed to the best available upstream for the chosen model. If an upstream is degraded or unavailable, Polyforge automatically retries on a backup channel — your call stays stable without code changes.
The response includes a routing object so you can see which upstream served the request and whether a failover occurred.
"routing": { "upstream": "primary", "failover": false }07
Billing & credits
Polyforge is pay-as-you-go. Credits are deducted per generation and never expire. Costs average around 30% below market rates, with transparent per-modality pricing on the Pricing page.
08
Errors
The API uses standard HTTP status codes. 4xx codes indicate a problem with your request (bad params, auth, quota); 5xx codes indicate an upstream or platform issue that failover will usually absorb. Error bodies include a machine-readable code and a human-readable message.
{ "error": { "code": "invalid_model", "message": "Unknown model id." } }