Skip to main content

Overview

InfiniteTalk turns a source portrait plus an audio track into a talking or singing avatar video with lip synchronization. Use this page when you are ready to call the API after trying the model in the APIXO playground.

Endpoint and authentication

Base URL:
All requests require your APIXO API key:
Submit requests also require:

Copy-paste async quickstart

This minimal request submits an InfiniteTalk task and returns a taskId.
Successful response:
Save the taskId; you need it to poll for the final result.

Poll for result

Processing response:
Success response:
Failed response:
Parse resultJson after state becomes success:

Request body

Image-to-video

With an optional mask image

image_urls[0] is sent as the source image. image_urls[1], when provided, is sent as the mask image.

Parameters

string
default:"async"
Result delivery mode. Use async for polling with statusTask, or callback for webhook delivery.
string
Required when request_type is callback. Use a public endpoint that can receive the final task payload. See Webhooks.
object
required
InfiniteTalk input parameters.

Response format

Submit task response

POST /generateTask/infinitetalk returns a task ID when the 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, success, or failed.
string
JSON string containing the generated video URLs as resultUrls. Present when 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 time in milliseconds. Present after successful completion when available.

Webhook callback mode

Use callback mode when your backend should receive the final result automatically instead of polling.
Callback payloads use the same code, message, and data shape as the status response. See Webhooks for delivery requirements and retry behavior.

Billing

InfiniteTalk is billed per probed audio second. The backend downloads the audio, probes its real audio length, then bills:
For current route and market comparison pricing, see Pricing.

Latency and polling

Actual latency varies by audio length, selected resolution, upstream queue load, and final result storage. Longer audio generally takes longer to complete.
For production workloads, especially long audio, use callback mode to avoid frequent polling.
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

Common validation issues

Task failure codes

See Error Codes for the full error reference.