Introduction
Apiframe API — generate images, videos, and music with a single unified API.
Apiframe provides a unified REST API for AI-powered media generation. Submit a prompt and get back images, videos, or music — powered by leading AI models like Midjourney, Kling, and Suno.
Base URL
All API requests are made to:
https://api.apiframe.ai/v2How it works
- Authenticate with your API key via the
X-API-Keyheader - Submit a generation request to the appropriate endpoint (images, videos, or music)
- Poll the job or receive a webhook when the result is ready
- Download the result from the CDN URL in the job response
Available models
See the Image, Video, and Music overviews for full per-model parameters. Each model name below links to its reference page.
Image — POST /v2/images/generate
| Model | Identifier |
|---|---|
| Midjourney | "midjourney" |
| Nano Banana | "nano-banana" |
| Nano Banana Pro | "nano-banana-pro" |
| Nano Banana 2 | "nano-banana-2" |
| Flux 1.1 Pro | "flux-1.1-pro" |
| Flux 1.1 Pro Ultra | "flux-1.1-pro-ultra" |
| Flux 2 Pro | "flux-2-pro" |
| Flux 2 Dev | "flux-2-dev" |
| Flux 2 Flex | "flux-2-flex" |
| Flux 2 Max | "flux-2-max" |
| Seedream 3 | "seedream-3" |
| Seedream 3.1 | "seedream-3.1" |
| Seedream 4 | "seedream-4" |
| Seedream 4.5 | "seedream-4.5" |
| Seedream 5 Lite | "seedream-5-lite" |
| Ideogram V2 | "ideogram-v2" |
| Ideogram V2 Turbo | "ideogram-v2-turbo" |
| Ideogram V2a | "ideogram-v2a" |
| Ideogram V2a Turbo | "ideogram-v2a-turbo" |
| Ideogram V3 Balanced | "ideogram-v3-balanced" |
| Ideogram V3 Turbo | "ideogram-v3-turbo" |
| Ideogram V3 Quality | "ideogram-v3-quality" |
| Ideogram Character | "ideogram-character" |
| Imagen 3 | "imagen-3" |
| Imagen 3 Fast | "imagen-3-fast" |
| Imagen 4 | "imagen-4" |
| Imagen 4 Ultra | "imagen-4-ultra" |
| Imagen 4 Fast | "imagen-4-fast" |
| DALL-E 3 | "dall-e-3" |
| DALL-E 2 | "dall-e-2" |
| GPT Image 2 | "gpt-image-2" |
| GPT Image 1.5 | "gpt-image-1.5" |
| Kling Image | "kling-image" |
| Qwen Image | "qwen-image" |
| Qwen Image 2 | "qwen-image-2" |
| Qwen Image 2 Pro | "qwen-image-2-pro" |
| Wan Image 2.6 | "wan-image-2.6" |
| Wan Image 2.7 | "wan-image-2.7" |
| Wan Image 2.7 Pro | "wan-image-2.7-pro" |
| Grok Imagine Image | "grok-imagine-image" |
| Reve Create | "reve-create" |
Video — POST /v2/videos/generate
| Model | Identifier |
|---|---|
| Grok Imagine Video | "grok-imagine-video" |
| Hailuo 02 | "hailuo-02" |
| Hailuo 2.3 | "hailuo-2.3" |
| Hailuo 2.3 Fast | "hailuo-2.3-fast" |
| Luma Ray 2 | "luma-ray-2" |
| Luma Ray Flash 2 | "luma-ray-flash-2" |
| Kling 2.1 | "kling-2.1" |
| Kling 2.1 Master | "kling-2.1-master" |
| Kling 2.5 Turbo Pro | "kling-2.5-turbo-pro" |
| Kling 2.6 | "kling-2.6" |
| Kling 3.0 | "kling-3.0" |
| Midjourney Video | "midjourney-video" |
| Runway Gen-4 Turbo | "runway-gen4-turbo" |
| Runway Gen-4.5 | "runway-gen4.5" |
| Seedance 1 Lite | "seedance-1-lite" |
| Seedance 1 Pro | "seedance-1-pro" |
| Seedance 1 Pro Fast | "seedance-1-pro-fast" |
| Seedance 1.5 Pro | "seedance-1.5-pro" |
| Seedance 2.0 | "seedance-2" |
| Seedance 2.0 Fast | "seedance-2-fast" |
| Sora 2 | "sora-2" |
| Sora 2 Pro | "sora-2-pro" |
| Veo 2 | "veo-2" |
| Veo 3 | "veo-3" |
| Veo 3 Fast | "veo-3-fast" |
| Veo 3.1 | "veo-3.1" |
| Veo 3.1 Fast | "veo-3.1-fast" |
| Wan 2.5 | "wan-2.5" |
| Wan 2.5 Fast | "wan-2.5-fast" |
| Wan 2.6 | "wan-2.6" |
| Wan 2.6 Flash | "wan-2.6-flash" |
Music — POST /v2/music/generate
| Model | Identifier |
|---|---|
| Suno | "suno" |
| Producer | "producer" |
| Mureka | "mureka" |
| Udio | "udio" |
| ElevenLabs Music | "elevenlabs-music" |
| Lyria 3 Pro | "lyria-3-pro" |
| Lyria 3 Clip | "lyria-3-clip" |
Editing & upscaling
| Model | Identifier | Endpoint |
|---|---|---|
| Topaz Image Upscale | "topaz-image-upscale" | POST /v2/images/upscale |
| Clarity Upscaler | "clarity-upscale" | POST /v2/images/upscale |
| Bria Background Remove | "bria-bg-remove" | POST /v2/images/background-remove |
| 851-labs Background Remove | "851-bg-remove" | POST /v2/images/background-remove |
| Flux Fill Pro | "flux-fill-pro" | POST /v2/images/edit |
| Wan 2.7 VideoEdit | "wan-2.7-videoedit" | POST /v2/videos/edit |
| Topaz Video Upscale | "topaz-video-upscale" | POST /v2/videos/upscale |
Rate limits
- Authenticated requests: 500 requests per minute per user
- Account info (
GET /v2/me): 60 requests per minute per user
Exceeding the rate limit returns a 429 Too Many Requests response.
Error format
All error responses follow a consistent format:
{
"error": "Human-readable error message",
"details": {}
}| Status | Meaning |
|---|---|
400 | Validation failed — check details for field-level errors |
401 | Missing or invalid API key / token |
402 | Insufficient credits |
403 | Forbidden — admin role required or API key inactive |
404 | Resource not found |
429 | Rate limit exceeded |
503 | Service temporarily unavailable |