Skip to main content
POST
cURL

Documentation by X-Pilot

Required scope: avatars:write. A stable Idempotency-Key is required for exact retries. Manage API keys · Authentication and recovery
An application sends a scoped API key to the X-Pilot REST API and receives an HTTP status and JSON response.
REST requests use a scoped API key. Keys, credits and usage are managed in the App console.

Authorizations

Authorization
string
header
required

Scoped X-Pilot API key

Headers

Idempotency-Key
string
required

Stable key for exact retries only. Use a different key for a different operation or input.

Required string length: 8 - 128

Body

application/json
name
string
required

Avatar name.

Maximum string length: 80
avatar_type
enum<string>
required

Training source.

Available options:
human_video,
virtual_character
asset_id
string

Owned asset ID returned by POST /v1/assets. human_video uses a video asset; virtual_character uses an image asset.

image_url
string

Public http(s) image URL. The backend archives third-party content to your owned storage before training. Use this or asset_id for virtual_character.

video_url
string

Public http(s) training video URL. The backend archives third-party content to your owned storage before training. Use this or asset_id for human_video.

gender
enum<string>

Required for image avatars.

Available options:
Male,
Female
callback_url
string

Optional public HTTPS URL notified once with avatar.completed or avatar.failed. Signed with the workspace callback secret (X-XPilot-Signature). Only set it when you run a receiving service.

Maximum string length: 2048
callback_id
string

Optional reference echoed back as data.callback_id. Requires callback_url.

Maximum string length: 128

Response

Success