Sync Lipsync 2 Pro API
Sync Labs' highest-fidelity lip-sync, keeping teeth, beards and fine facial detail intact.
Sync Lipsync 2 Pro is a video generation model from Sync Labs, available on OttoPort's OpenAI-compatible API as the model ID sync-lipsync-2-pro at $0.104 / second as of 2026-10-14.
Provider
Sync Labs
Price
$0.104 / second
Model ID
sync-lipsync-2-pro
Type
video generation model
Create with Sync Lipsync 2 Pro
videoYour result appears here
Start with the example prompt or make it your own. Your OttoPort account is used securely for generation.
Sync Lipsync 2 Pro API pricing
What OttoPort bills for Sync Lipsync 2 Pro, and what that works out to per unit. Rates are read from the same catalog the gateway meters against, and were current on 2026-10-14.
| Per second | $0.104 | |
|---|---|---|
| 5-second clip | $0.52 | |
| 8-second clip | $0.832 | |
| Seconds per $10 | 96 | of generated video |
No subscription and no minimum — OttoPort bills prepaid credits against usage. See the full rate card.
Call Sync Lipsync 2 Pro in three lines
Send "model": "sync-lipsync-2-pro" to POST https://ottoport.ai/api/v1/videos/generations with an OttoPort key. No Sync Labs account, no waitlist, no separate SDK.
curl https://ottoport.ai/api/v1/videos/generations \
-H "Authorization: Bearer $OTTOPORT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "sync-lipsync-2-pro",
"prompt": "cinematic product reveal, slow dolly, black background",
"duration": 5,
"aspect_ratio": "16:9"
}'import requests
job = requests.post(
"https://ottoport.ai/api/v1/videos/generations",
headers={"Authorization": "Bearer " + API_KEY},
json={
"model": "sync-lipsync-2-pro",
"prompt": "cinematic product reveal, slow dolly, black background",
"duration": 5,
"aspect_ratio": "16:9",
},
).json()
# Video is a job: poll it, or pass webhook_url and be told.
print(job["id"], job["status"])const res = await fetch("https://ottoport.ai/api/v1/videos/generations", {
method: "POST",
headers: {
Authorization: `Bearer ${API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "sync-lipsync-2-pro",
prompt: "cinematic product reveal, slow dolly, black background",
duration: 5,
aspect_ratio: "16:9",
}),
});
// Video is a job: poll it, or pass webhook_url and be told.
const job = await res.json();
console.log(job.id, job.status);Before you start
- 1. Create a key at /api-keys.
- 2. Top up credits — the smallest pack is $25.
- 3. Paste the request. It returns a job ID; poll it or pass a webhook_url.
Full reference at /docs, or drive it from an agent with the MCP server and CLI.
Request parameters
The body POST https://ottoport.ai/api/v1/videos/generations accepts for Sync Lipsync 2 Pro.
| Field | Type | Required | Notes |
|---|---|---|---|
| model | string | Yes | Always sync-lipsync-2-pro for Sync Lipsync 2 Pro. |
| prompt | string | Yes | Subject, action, and camera movement. |
| duration | integer | No | Seconds of output. This is the billed unit. |
| resolution | string | No | One of: . Tiers above this model's base rate bill at a multiplier. |
| aspect_ratio | string | No | e.g. 16:9 or 9:16. |
| image_url | string | No | The first frame, for image-to-video. |
| webhook_url | string | No | Called when the job settles, so you need not poll. |
| webhook_secret | string | No | Signs the webhook so you can verify it came from OttoPort. |
Sync Lipsync 2 Pro direct vs through OttoPort
Sync Lipsync 2 Pro is the same model either way — what changes is how many accounts, keys, and integrations you carry to reach it.
| Sync Labs direct | Via OttoPort | |
|---|---|---|
| Accounts and keys | A Sync Labs account, plus one more for every other model you add | One OttoPort account and one key for the whole catalog |
| Request shape | Sync Labs's own SDK and response format | OpenAI-compatible — point baseURL at OttoPort and change the model string |
| Switching models | A new integration per provider | Replace sync-lipsync-2-pro with any other model ID in the catalog |
| Billing | A separate invoice and contract per provider | Prepaid credits, no subscription, one usage ledger |
| Provider outages | Your call fails | Configured backup routes are tried in order on provider failure |
Describe the subject and action.
Add a camera movement.
Specify your output format.
Sync Lipsync 2 Pro API questions
Cost, keys, and model IDs for Sync Lipsync 2 Pro on OttoPort.
How much does the Sync Lipsync 2 Pro API cost?
On OttoPort, Sync Lipsync 2 Pro costs $0.104 / second as of 2026-10-14. For scale, 5-second clip: $0.52. Billing is prepaid usage with no subscription and no minimum, and the current rate is always published at ottoport.ai/pricing.
How do I get a Sync Lipsync 2 Pro API key?
You do not need a Sync Labs key. Create an OttoPort account, generate a key at ottoport.ai/api-keys, and send it as "Authorization: Bearer <key>" to POST https://ottoport.ai/api/v1/videos/generations with "model": "sync-lipsync-2-pro". The same key reaches every other model in the catalog.
What is the model ID for Sync Lipsync 2 Pro?
The OttoPort model ID for Sync Lipsync 2 Pro is sync-lipsync-2-pro. Pass it as the model field on POST https://ottoport.ai/api/v1/videos/generations, or list it programmatically from GET https://ottoport.ai/api/v1/models.
Is Sync Lipsync 2 Pro generation synchronous?
No. POST https://ottoport.ai/api/v1/videos/generations returns a job ID immediately. Poll GET https://ottoport.ai/api/v1/videos/generations/{id} for status, or pass webhook_url and webhook_secret and OttoPort will call you when the job settles. You are billed per second of output, so a failed job costs nothing.
Do I need a Sync Labs account to use Sync Lipsync 2 Pro?
No. OttoPort connects to Sync Labs on your behalf, so one OttoPort account covers Sync Lipsync 2 Pro and every other model in the catalog — no per-provider contracts, keys, or invoices.
Other video generation models on the same API
Same endpoint, same key — swapping model is a one-string change from sync-lipsync-2-pro.
Gemini Omni 1.1 Flash API
$0.138 / second
Gemini Omni Flash API
$0.156 / second
Wan 3.0 Text to Video API
Alibaba
$0.20 / second
FLUX 3 API
Black Forest Labs
$0.213 / second
Seedance 2.5 API
ByteDance
$0.35 / second
MiniMax H3 API
MiniMax
$0.163 / second
Browse the full catalog — every model with its provider and per-unit price.