Video in. Edited clips out.
One API for the entire short-form production pipeline: moment selection, cutting, silence removal, animated captions and music with automatic ducking. Replace an editing team with a POST request.
Quickstart
Three calls end to end. Create a project with autoEdit and the Kairos edit agent polishes every clip — hook tightening, dead-air cuts, caption styling and music placement — before delivery.
Create a project
curl -X POST https://api.kairoslabs.pro/v1/projects \
-H "x-api-key: krs_live_..." \
-H "Content-Type: application/json" \
-d '{
"videoUrl": "https://youtube.com/watch?v=...",
"clipCount": "auto",
"autoEdit": true,
"styleGoal": "viral",
"webhookUrl": "https://your-app.com/hooks/kairos"
}'Poll status — or just wait for the webhook
curl https://api.kairoslabs.pro/v1/projects/{projectId} \
-H "x-api-key: krs_live_..."Download rendered clips
curl https://api.kairoslabs.pro/v1/projects/{projectId}/clips/0/download \
-H "x-api-key: krs_live_..."Your own music
Upload brand tracks once in the dashboard editor (Music → Upload your track), then pass the track id as musicTrackId to use it on every clip of a project. Omit it and the edit agent chooses per clip from the library — including your uploads.
Webhooks
job.completed fires when clipping finishes. project.edited fires when the edit agent has finished every clip — that is your “clips delivered” signal. Respond with any 2xx.
{
"event": "project.edited",
"projectId": "6a494b7f...",
"timestamp": "2026-07-06T12:00:00.000Z",
"clips": [
{
"index": 0,
"title": "Bu yatırım modeli her şeyi değiştiriyor",
"hook": "Opens with the bold claim that surprised everyone",
"reasoning": "Strongest standalone moment with a natural arc.",
"viralityScore": 87,
"edit": {
"status": "done",
"summary": "sirius captions · 3 segments (tightened) · music chill-1"
},
"download": "/v1/projects/6a494b7f.../clips/0/download"
}
]
}Authentication & keys
Create keys in the dashboard (Business plan). Send the key on every request as x-api-key or Authorization: Bearer. Keys are shown once at creation and stored hashed; revoke and rotate at any time. Processing is billed against your plan’s monthly minutes.