What are Models
Models are the AI systems that do the actual generation. Get3W exposes models from 25 providers behind one API and one addressing scheme.
Model Slugs
Every model is addressed by a three-part slug:
{provider_id}/{model_id}/{run_type}Examples:
google/nano-banana-pro/text-to-imagebytedance/seedance-2/reference-to-videominimax/music-2.6/text-to-musictripo/p1/image-to-3d
The slug is also the request path, so the model you want is the endpoint you call:
POST /v1/google/nano-banana-pro/text-to-imageThe same model_id can support several run types. alibaba/wan-3 for instance handles text-to-video, first-to-video, first-last-to-video, and reference-to-video — the run type you pick determines which inputs are required.
Run Types
| Run type | Input → Output |
|---|---|
text-to-image | Prompt → image |
image-to-image | Image + prompt → image (edit, upscale, restyle) |
text-to-video | Prompt → video |
first-to-video | First frame + prompt → video |
first-last-to-video | First and last frame + prompt → video |
reference-to-video | Reference images + prompt → video |
edit-to-video | Video + prompt → edited video |
extend-to-video | Video + prompt → new continuation segment |
digital-human | Portrait + audio → talking avatar video |
text-to-speech | Text → audio |
text-to-music | Prompt → music |
speech-to-text | Audio → transcribed text |
text-to-3d | Prompt → 3D model |
image-to-3d | Image → 3D model |
text-to-panorama | Prompt → 360° panorama |
image-to-panorama | Image → 360° panorama |
chat | Messages → text (OpenAI-compatible) |
Reference, edit, and extend
Three run types take a video as input, and picking the wrong one is the most common mistake. They differ in what happens to the source footage:
| Run type | What the source video is for | duration | aspect_ratio |
|---|---|---|---|
reference-to-video | Style / subject guidance for brand-new footage | Your choice | Your choice |
edit-to-video | The footage being rewritten in place | Set by the source, not accepted | Follows the source |
extend-to-video | The footage new frames continue from | Length of the new segment | Follows the source |
reference-to-video does not reuse the source footage at all — it generates a new video guided by it. Use edit-to-video to change what is in an existing clip, and extend-to-video to keep an existing clip and add to it.
One thing to get right on extend: duration is the length of the new segment, not the combined length, and the response contains only that new segment. Joining it to the original is up to you. Extending a 10s clip with duration: 5 returns 5 seconds of footage, which you concatenate to get 15.
On Seedance 2.5 these map to one upstream endpoint with three task modes, so a couple of constraints follow from the model rather than from Get3W:
- The edit source video must be 4–30 seconds. Shorter or longer is rejected at submit.
- Edit output length always matches the source, which is why
durationis not offered. Billing reflects the probed source length, not a fixed 5 seconds. - Extend accepts
durationbetween 4 and 30 seconds for the new segment. - Both edit and extend keep the source aspect ratio, so
aspect_ratiois ignored. - Anything with a video input is billed on (source length + output length), so a long source costs more even when you generate only a few seconds from it.
Write the prompt in the voice of the task you picked — "remove the car from the video" for edit, "continue the shot as the camera pulls back" for extend. The model cross-checks your prompt against the run type and fails the task outright when the two disagree.
Providers
Models come from Alibaba, Anthropic, Bilibili, Black Forest Labs, ByteDance, ElevenLabs, Google, Ideogram, JD, Kling, Lightricks, Midjourney, MiniMax, OpenAI, PixVerse, Recraft, Runway, SkyReels, Tencent, Topaz, Tripo, Vidu, xAI, Ace Step, and Get3W's own models.
The provider_id in a slug identifies who made the model, not which infrastructure serves it. A single slug can be served by several upstream platforms, and Get3W fails over between them within one task — see How Get3W Works.
Channels
Many models accept a channel in the request body to select a service tier:
{
"prompt": "A sunset over mountains",
"channel": "stable"
}The common set:
| Channel | Trade-off |
|---|---|
economy | Cheapest, best for bulk work |
stable | Balanced speed and reliability |
official | Direct official provider access |
Some model families use their own values instead — for example turbo / balanced / quality on Ideogram, turbo / pro on Vidu, pro / fast on Lightricks, and standard / human where a real-person path exists. Omit channel and Get3W applies that model's default.
Channel affects price, latency, and which upstream providers are eligible, so it is worth benchmarking before settling on one.
Parameters
Each model has its own input schema. Parameters that recur across many:
| Parameter | Description | Typical use |
|---|---|---|
prompt | Text description of the output | Most models |
image_url / image_urls | Input image(s) | Image and video models |
video_url / video_urls | Input video(s) | Edit-to-video, extend-to-video, reference-to-video |
aspect_ratio | Output framing, e.g. 16:9 | Image and video models |
resolution | Output resolution, e.g. 1k, 720p | Image and video models |
duration | Video length in seconds | Video models |
output_format | File format, e.g. png | Image models |
seed | Seed for reproducibility | Many models |
channel | Service tier | Where supported |
TIP
Parameter names, allowed values, and defaults vary per model. Each model's page on get3w.com/models lists its full schema. Sending an unsupported value returns 1401 Invalid Parameter in the task result.
Pricing
Price depends on the model, the channel, and output characteristics such as resolution and video duration. Your account tier can discount it further, per model. Every request is priced before it is queued and your balance is checked, so an underfunded call fails fast with 402 rather than running and overdrawing. See How Pricing Works.
Finding Models
Browse the full catalog with filters at get3w.com/models. Each model page shows its slug, supported run types, channels, parameters, and price.
For chat models specifically, there is an OpenAI-compatible listing endpoint:
curl "https://api.get3w.com/v1/models" \
-H "Authorization: Bearer YOUR_API_KEY"This returns only the chat models, matching what OpenAI clients expect from /v1/models. Generation models are not included — use the models catalog on the website for those.