Docs/AngeMedia

Call the AngeMedia API

Specify a model and keep every returned task ID. Video submission does not return the final file synchronously.

RESTGateway keyAsync jobs

Authentication

Authorization: Bearer <GATEWAY_API_KEY>

The service can also accept X-API-Key. Do not confuse the administrator session with the Gateway API key.

Image generation

curl -X POST http://localhost:9890/v1/images/generations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_GATEWAY_KEY" \
  -d '{"model":"kolors","prompt":"a cinematic orange cat on a neon street","size":"1024x1024","response_format":"url"}'

Video job

curl -X POST http://localhost:9890/v1/videos \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_GATEWAY_KEY" \
  -d '{"model":"agnes-video-v2.0","prompt":"a slow cinematic camera move","width":1152,"height":768,"num_frames":121,"frame_rate":24}'

Save the returned task_id, then query it:

curl -H "Authorization: Bearer YOUR_GATEWAY_KEY" \
  http://localhost:9890/v1/videos/TASK_ID

Media route suggestion

curl -X POST http://localhost:9890/v1/media/route \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_GATEWAY_KEY" \
  -d '{"prompt":"Create a realistic commercial portrait with neon lighting"}'

The route endpoint can recommend a path, but the final request must still satisfy the selected model capability.

Error handling

StatusClient action
401/403Check the Gateway key and protected path
400/422Check model, size and input fields
429Back off using Retry-After instead of immediate concurrent retries
5xxRecord the request ID and redacted error, then retry a limited number of times
Video failedRead job events and the redacted provider reason