Media generation

Generate images and videos through HopsAPI asynchronous media tasks.

HopsAPI media models use an asynchronous workflow: create a task, save the returned tsk_* task ID, then poll until the task reaches a terminal status. You can instead pass callback_url at creation and receive one signed webhook. Polling remains available if the webhook does not arrive. See Media task callbacks.

Available models

CategoryModelsGuide
VideoGrok Imagine VideoGrok Imagine Video
VideoMiniMax H3MiniMax H3
VideoSeedance 2.0Seedance 2.0
VideoSeedance 2.0 FastSeedance 2.0 Fast
VideoSeedance 2.0 MiniSeedance 2.0 Mini
ImageGemini imageGemini image
ImageNano Banana ProNano Banana Pro
ImageNano Banana 2Nano Banana 2
ImageSeedream 5.0 ProSeedream 5.0 Pro
ImageGPT Image 2GPT Image 2
ImageGPT Image 2.5GPT Image 2.5

Common workflow

  1. Prepare public HTTPS input URLs when a model requires reference media. Local files and Data URLs must be uploaded through file uploads first.
  2. Send the model-specific request to POST /v1/router/task/create.
  3. Poll GET /v1/router/tasks/{task_id} every 3–5 seconds, or pass callback_url when creating the task and wait for the callback. To stop a queued or processing task, call POST /v1/router/task/stop.
  4. Read results[].urls after the task reaches status 2 and download the result promptly because media URLs expire.
StatusMeaning
0Queued
1Processing
2Completed
3Failed; no charge is settled
4Cancelled; no charge is settled

Each model page documents its supported task type, input fields, resolution limits, pricing, and request examples. Use the model ID and mode shown on that page rather than inferring support from another model.

On this page

On this page