Land up to 10 authored compositions
PUT /scenes/{id}/composition for each scene — the same gates, mount, hosting and write — with every verdict inline.
dry_run validates without writing (free, parallel); real writes run one at a time. Authored HTML is staff-only for now (403 authoring_restricted), except on a dry run.
Authorization
bearerAuth Typecut API key. Generate one in app.typecut.ai → Settings → API keys. Send as Authorization: Bearer tc_live_….
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/scenes/compositions" \ -H "Content-Type: application/json" \ -d '{ "scenes": [ { "scene_id": "string" } ] }'{
"data": {}
}{
"error": {
"type": "string",
"code": "string",
"message": "string"
}
}{
"error": {
"type": "string",
"code": "string",
"message": "string"
}
}{
"error": {
"type": "string",
"code": "string",
"message": "string"
}
}Authoring context for up to 10 scenes POST
One merged context per scene: GET /scenes/{id}/authoring-context plus the rulers, cues and heard words of GET /scenes/{id}/context.
Frame facts for up to 10 scenes POST
POST /scenes/{id}/frame-report for each scene at the given scene-clock seconds (per scene, or a shared times).