Models
Available image and video models, providers, and supported params
List models
GET /v1/models?type=imageReturns all enabled image models with their cost and accepted params. This is the canonical source of truth — use it to discover new models or validate param names.
curl -s https://api.goodtake.ai/v1/models?type=image \
-H "Authorization: Bearer $GOODTAKE_API_KEY" | jq .Image models
| Model identifier | Provider | Notes |
|---|---|---|
gpt-image-2 | fal (OpenAI) | Excellent text-in-image, editing via image_urls |
seedream-5-0-260128 | ByteDance | Latest Seedream, highest quality |
seedream-4-5-251128 | ByteDance | Proven quality, broad size support |
seedream-4-0-250828 | ByteDance | Legacy, use for backward compatibility |
gemini-3.1-flash-image-preview | Fast, grounding and thinking support | |
gemini-3-pro-image-preview | Pro-tier, multi-step reasoning |
Video models
Video generation uses a separate endpoint: POST /v3/contents/generations/tasks.
| Model identifier | Provider | Notes |
|---|---|---|
dreamina-seedance-2-0-mini-260615 | ByteDance (Dreamina) | Multimodal-to-video; reference & first/last frame; 480p–720p |
Pricing
| Condition | Rate |
|---|---|
| Input includes video | 2.1 USD / M tokens |
| Input is text / image only | 3.5 USD / M tokens |
Video request format
Unlike the image API, video models use a content array for multimodal inputs and accept generation params as top-level fields:
{
"model": "dreamina-seedance-2-0-mini-260615",
"content": [
{ "type": "text", "text": "your prompt" },
{
"type": "image_url",
"image_url": { "url": "https://example.com/ref.jpg" },
"role": "reference_image"
},
{
"type": "video_url",
"video_url": { "url": "https://example.com/ref.mp4" },
"role": "reference_video"
},
{
"type": "audio_url",
"audio_url": { "url": "https://example.com/bg.mp3" },
"role": "reference_audio"
}
],
"ratio": "16:9",
"resolution": "720p",
"duration": 8,
"generate_audio": true,
"watermark": false
}Content roles
| Role | Type | Description |
|---|---|---|
reference_image | image_url | Reference image for style or subject |
reference_video | video_url | Reference video for motion or framing |
reference_audio | audio_url | Background audio / music |
Generation modes (set in the UI; controlled by input content in the API)
| Mode | How to use |
|---|---|
| Reference generation | Supply reference_image / reference_video / reference_audio items in content |
| First & last frame | Supply two reference_image items — first frame and last frame, in order |
Supported params per model
Pass model-specific options in the params object of your generate request. Unknown keys are rejected with a 400 and the list of supported keys.
gpt-image-2
| Param | Type | Description |
|---|---|---|
image_size | string | e.g. 1024x1024, 1792x1024 |
quality | string | low, medium, high, auto |
num_images | integer | 1–4 |
output_format | string | png, jpeg, webp |
mask_url | string | For inpainting edits; image_urls must also be set |
seedream-* (ByteDance)
| Param | Type | Description |
|---|---|---|
size | string | 1K, 2K, 4K, 2048x2048, 2560x1440, etc. |
number_of_images | integer | 1–4 |
optimize_prompt_mode | string | standard, creative, precise |
output_format | string | png, jpeg |
gemini-* (Google)
| Param | Type | Description |
|---|---|---|
aspect_ratio | string | e.g. 16:9, 1:1, 9:16 |
resolution | string | standard, high |
number_of_images | integer | 1–4 |
seed | integer | For reproducibility |
thinking_level | string | low, medium, high |
enable_thinking | boolean | Enables multi-step reasoning |
enable_grounding | boolean | Grounds generation on context |
enable_image_search | boolean | Uses image search context |
output_format | string | png, jpeg |
dreamina-seedance-2-0-mini-260615
Top-level fields (not nested under params):
| Field | Type | Values / notes |
|---|---|---|
ratio | string | 21:9, 16:9, 4:3, 1:1, 3:4, 9:16, auto |
resolution | string | 480p, 720p |
duration | integer | string | Seconds in range 4–15, or "smart_length" |
generate_audio | boolean | Generate audio track for the output video |
watermark | boolean | Overlay provider watermark |
Reference images
Pass hosted http(s) or data: URIs in the top-level image_urls array to provide reference or edit images. For gpt-image-2, supplying image_urls routes the request to the edit endpoint automatically.
Internal/private addresses (e.g. localhost, RFC 1918 ranges) are rejected.
Reference images must be publicly reachable.