Skip to content
DashboardGet API Key

Get lip sync request

lipsync.requests.retrieve(strid) -> LipsyncRequest
GET/v1/lipsync/requests/{id}

Returns a single lip sync request by request UUID or reference_id.

ParametersExpand Collapse
id: str
minLength1
ReturnsExpand Collapse
class LipsyncRequest:
id: str

Lip sync request ID.

formatuuid
created_at: datetime

Request creation time in UTC.

formatdate-time
status: str

Current request status.

error_message: Optional[str]

Failure message when status is failed.

finished_at: Optional[datetime]

Request processing completion time in UTC.

formatdate-time
output_url: Optional[str]

URL to the generated output media, when available.

formaturi
reference_id: Optional[str]

Client-provided identifier for this request.

started_at: Optional[datetime]

Request processing start time in UTC.

formatdate-time

Get lip sync request

import os
from chamelaion import Chamelaion

client = Chamelaion(
    api_key=os.environ.get("CHAMELAION_API_KEY"),  # This is the default and can be omitted
)
lipsync_request = client.lipsync.requests.retrieve(
    "6f82a2d8-a6d4-4e8a-a0fa-e8b09823a2d8",
)
print(lipsync_request.id)
{
  "id": "6f82a2d8-a6d4-4e8a-a0fa-e8b09823a2d8",
  "reference_id": "dub-episode-42",
  "status": "completed",
  "created_at": "2026-04-07T10:00:00Z",
  "started_at": "2026-04-07T10:00:05Z",
  "finished_at": "2026-04-07T10:01:30Z",
  "output_url": "https://storage.chamelaion.com/output/6f82a2d8.mp4"
}
{
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "reference_id": "dub-episode-43",
  "status": "failed",
  "created_at": "2026-04-07T11:00:00Z",
  "started_at": "2026-04-07T11:00:04Z",
  "finished_at": "2026-04-07T11:00:12Z",
  "error_message": "video URL is not accessible"
}
{
  "error": "missing authorization header"
}
{
  "error": "invalid authorization format"
}
{
  "error": "missing token"
}
{
  "error": "invalid token"
}
{
  "error": "unauthorized"
}
{
  "error": "lipsync request not found"
}
{
  "error": "rate limit exceeded"
}
{
  "error": "internal error"
}
Returns Examples
{
  "id": "6f82a2d8-a6d4-4e8a-a0fa-e8b09823a2d8",
  "reference_id": "dub-episode-42",
  "status": "completed",
  "created_at": "2026-04-07T10:00:00Z",
  "started_at": "2026-04-07T10:00:05Z",
  "finished_at": "2026-04-07T10:01:30Z",
  "output_url": "https://storage.chamelaion.com/output/6f82a2d8.mp4"
}
{
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "reference_id": "dub-episode-43",
  "status": "failed",
  "created_at": "2026-04-07T11:00:00Z",
  "started_at": "2026-04-07T11:00:04Z",
  "finished_at": "2026-04-07T11:00:12Z",
  "error_message": "video URL is not accessible"
}
{
  "error": "missing authorization header"
}
{
  "error": "invalid authorization format"
}
{
  "error": "missing token"
}
{
  "error": "invalid token"
}
{
  "error": "unauthorized"
}
{
  "error": "lipsync request not found"
}
{
  "error": "rate limit exceeded"
}
{
  "error": "internal error"
}