Change the project's tempo
The project's musical grid (settings.tempo): bpm, meter, key, where bar 1 falls, and tempo sections.
It is what grid-bound motion, sound cues, grooves and music loops are timed against.
Does what the editor's tempo chip does: every grid-bound sound cue moves to the same bar:beat on the new grid, and a music LOOP is re-conformed (time-stretched) to it. A full-length track keeps its own tempo; returning to a loop's own tempo restores its original file. Idempotent. A FLAT edit: a project with tempo ramps (a conductor map) has them flattened into steps (flattened_ramps: true); edit ramps with PATCH /projects/{id}/conductor. Free.
Authorization
bearerAuth Typecut API key. Generate one in app.typecut.ai → Settings → API keys. Send as Authorization: Bearer tc_live_….
In: header
Path Parameters
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X PATCH "https://example.com/projects/497f6eca-6276-4993-bfeb-53cbbbba6f08/tempo" \ -H "Content-Type: application/json" \ -d '{ "bpm": 120 }'{
"data": {
"tempo": {
"version": 1,
"bpm": 0,
"meter": {
"beats": 1,
"unit": 1
},
"keyScale": "string",
"originSec": 0,
"sections": [
{
"id": "string",
"atSec": 0,
"label": "string",
"bpm": 0,
"meter": {
"beats": 1,
"unit": 1
},
"keyScale": "string"
}
],
"source": "user"
},
"changed": true,
"edit_version": 0,
"sfx": {
"scenes": 0,
"changed": 0,
"stemsPending": 0
},
"music": [
{
"cueId": "string",
"trackId": "string",
"status": "unchanged",
"reason": "string",
"assetUrl": "string",
"unitDuration": 0
}
],
"flattened_ramps": true
}
}{
"error": {
"type": "string",
"code": "string",
"message": "string"
}
}{
"error": {
"type": "string",
"code": "string",
"message": "string"
}
}{
"error": {
"type": "string",
"code": "string",
"message": "string"
}
}{
"error": {
"type": "conflict",
"code": "conflict",
"message": "string",
"current_version": 0,
"expected_version": 0,
"last_writer": {
"label": "string",
"kind": "editor",
"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
"at": "string"
}
}
}Read the project's tempo GET
The project's musical grid (settings.tempo): bpm, meter, key, where bar 1 falls, and tempo sections.
Read the project's conductor (tempo map) GET
The project's musical grid as a conductor: tempo points with curved ramps, signature changes, key changes, markers and an arrangement lane, anchored in musical position (q = quarter-notes from bar 1,