Img2Vid API

The Img2Vid API lets you create AI image and video generations, run preconfigured app workflows, and call chat models from your own backend. The media and app generation endpoints are intentionally small: discover callable resources, upload files, create asynchronous generation tasks, and poll the result.

Base URL

https://img2vid.net

Public endpoints

Method Endpoint Purpose
GET /api/v1/media_models List API-ready media models, public modes, inputs, and parameters.
GET /api/v1/apps List callable app workflows and their input parameters.
POST /api/v1/files Upload image, video, or audio assets for generation inputs.
POST /api/v1/generations Create an asynchronous media generation task.
GET /api/v1/generations/[id] Query media task status and result media.
POST /api/v1/apps/[app]/generations Create an asynchronous app generation task.
GET /api/v1/apps/[app]/generations/[id] Query app task status and result media.
GET /api/v1/models List callable chat models.
POST /api/v1/chat/completions Call chat models with the OpenAI-compatible format.
POST /api/v1/messages Call chat models with the Anthropic-compatible format.
POST /api/v1beta/models/{model}:generateContent Call chat models with the Gemini-compatible format.
POST /api/v1beta/models/{model}:streamGenerateContent Stream chat output with the Gemini-compatible format.

Chat model endpoints are documented in detail in Chat Models API.

Core workflow

  1. Authenticate with Authorization: Bearer $BUBLE_API_KEY.
  2. For direct media generation, pick a model and mode from GET /api/v1/media_models.
  3. For app workflows, pick an id and input parameter names from GET /api/v1/apps.
  4. Upload files first if the workflow requires media input.
  5. Create a generation task.
  6. Poll the task until success or failed.

Public field model

Img2Vid's public generation request is flat: put media URLs and model-specific controls directly in the JSON body.

Field Meaning
model Stable model key, for example google/nano-banana-pro.
mode Public operation, for example text_to_image or frames_to_video.
prompt Text instruction for the generation.
image_urls, start_frame, end_frame, video_urls, audio_urls Source media URLs for media-input modes.
model options Model-specific controls returned by /api/v1/media_models, such as duration, resolution, aspect_ratio, or output_format.

Do not send input, options, or internal implementation fields such as scene, sub_mode_id, provider, mediaType, or media_type. The API rejects these fields because Img2Vid resolves them server-side from model, mode, and the flat public input fields.

App field model

The Apps API also uses flat JSON. Call GET /api/v1/apps to get the app id and its input_parameters, then send those parameter names directly to POST /api/v1/apps/{app}/generations.

App responses intentionally do not expose internal workflow fields such as model, provider, scene, flow, icon, tags, or cover image.