One history event in full
The described changes, the structured before -> after rows, the version range, the old values the ledger kept, and pointers to where the rest lives (the editor_revisions row with the previous composit
ion or script; harvested stills before and after). Reviewer and above; a viewer gets 403 and keeps the list. Raw scene source never comes back.
Authorization
bearerAuth Typecut API key. Generate one in app.typecut.ai → Settings → API keys. Send as Authorization: Bearer tc_live_….
In: header
Path Parameters
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/projects/497f6eca-6276-4993-bfeb-53cbbbba6f08/history/string"{
"data": {
"event": {
"id": "string",
"at": "string",
"source": "events",
"actor": {
"kind": "person",
"label": "string",
"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
"agent_run_id": "c3317f32-e28b-4af1-a584-86ac8c788dd8",
"session": "string",
"is_me": true
},
"scope": "project",
"entity": {
"type": "scene",
"id": "string",
"chapter_id": "string",
"scene_index": 0,
"scene_title": "string",
"chapter_index": 0,
"chapter_title": "string"
},
"kind": "string",
"domain": "script",
"sentence": "string",
"description": "string",
"changes": [
{
"path": "string",
"area": "string",
"op": "added",
"sentence": "string",
"before": "string",
"after": "string",
"derived": true
}
],
"changes_hidden": true,
"precise": true,
"columns": [
"string"
],
"version": {
"before": 0,
"after": 0
},
"group": {
"id": "string",
"kind": "string",
"revert_id": "string"
},
"group_id": "string",
"changeset_id": "string",
"undoes": "string",
"undone_by": "string",
"forced": true,
"count": 0,
"after_source": {
"property1": "next_event",
"property2": "next_event"
},
"after_unknown": [
"string"
],
"diff": [
{
"property1": null,
"property2": null
}
],
"before_summary": {
"property1": "string",
"property2": "string"
},
"pointers": {
"editor_revision_id": "string",
"frames": {
"before": "string",
"after": "string"
}
},
"truncated": true
},
"notes": [
"string"
]
}
}{
"error": {
"type": "string",
"code": "string",
"message": "string"
}
}{
"error": {
"type": "string",
"code": "string",
"message": "string"
}
}{
"error": {
"type": "string",
"code": "string",
"message": "string"
}
}{
"error": {
"type": "string",
"code": "string",
"message": "string"
}
}{
"error": {
"type": "string",
"code": "string",
"message": "string"
}
}What happened to a project, and who did it GET
One described record per change, newest first, from project_events (every writer: the editor, API keys and the connector, agent runs, the Director, the pipeline).
Who is working on a project right now GET
Live scene claims (people and agents, with expiry), everyone who wrote in the last minutes (from the history ledger, with the legacy fallback), and the agent runs on this project (status, last tool, scenes touched).