Overview
Gemini Omni is a Google multimodal model on APIXO. Use it to create reusable audio assets, create character assets from an image, and generate videos with text, image, video, audio, and character references.Workflow
- Create an audio asset with
mode: "gemini-omni-audio"and save the returnedaudioId. - Create a character asset with
mode: "gemini-omni-character"and save the returnedcharacterId. - Generate a video with
mode: "gemini-omni-video"and optionally passaudio_ids,character_ids,image_urls, orvideo_urls.
taskId and should be polled or delivered by webhook.
Endpoint and authentication
Base URL:
All requests require your APIXO API key:
Copy-paste async quickstart
This minimal request submits a video task and returns ataskId.
taskId; you need it to poll for the final video result.
Poll for result
resultJson after state becomes success:
Request body
Audio asset
Character asset
Video without video input
Video with video input
Parameters
string
default:"async"
required
Result delivery mode. Use
async for polling with statusTask, or callback for webhook delivery. Callback mode is recommended for production video generation.string
Required when
request_type is callback. Must be a public HTTPS URL that can receive the final task payload. See Webhooks.object
required
Gemini Omni input parameters.
Official base voice options
voice_key is required for gemini-omni-audio. Choose one of these official base voices.
Response format
Audio asset response
Audio mode returns a final successful result directly:audioId; use it later in audio_ids for character or video requests.
Character asset response
Character mode returns a final successful result directly:characterId; use it later in character_ids for video requests.
Submit task response
POST /generateTask/gemini-omni returns a task ID when a video task is accepted:
integer
API status code.
200 means the task was accepted.string
Human-readable status message.
string
Unique task identifier used with the status endpoint.
Status response fields
string
Unique task identifier.
string
Current task state:
pending, processing, processing_r2, success, or failed.string
Audio asset ID for audio mode.
string
Audio asset name.
string
Character asset ID for character mode.
string
Character asset name.
string
Character image URL.
string
JSON string containing generated video URLs. Present when video
state is success.string
Machine-readable failure code. Present when
state is failed.string
Human-readable failure message. Present when
state is failed.integer
Task creation timestamp in Unix milliseconds.
integer
Task completion timestamp in Unix milliseconds. Present after completion.
integer
Processing duration in milliseconds. Present after successful or failed completion when available.
Webhook callback mode
Use callback mode when your backend should receive the final video result automatically instead of polling.Billing
Audio and character asset modes are free asset-generation modes. Video mode is billed by whether a video input is provided and by selectedresolution.
Without video input, final video billing is
resolution unit price * duration. With video input, duration is ignored and billing is fixed per request.
For current route and market comparison pricing, see Pricing.
Latency and polling
Actual latency may vary by prompt complexity, media inputs, selected route, and current queue load.
Audio and character modes share a free asset-generation limit of 1000 requests per user per 60 seconds. Video mode is billed separately and does not consume this free asset limit.
Rate limits and concurrency can vary by account, API key, and route. If you receive
429, slow down requests and retry with backoff. For account-level details, see System APIs.
Errors and troubleshooting
HTTP errors
Task failure codes
Common validation issues
See Error Codes for the full error reference.