API referenceProjects
Write the project bible
Write the bible whole, compare-and-set: base_version is the version you read (0 for a derived bible, which this first write stores).
The version bumps by one. A stale base_version is a 409 carrying current_version. Free.
Authorization
bearerAuth AuthorizationBearer <token>
Typecut API key. Generate one in app.typecut.ai → Settings → API keys. Send as Authorization: Bearer tc_live_….
In: header
Path Parameters
id*string
Format
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 PUT "https://example.com/projects/497f6eca-6276-4993-bfeb-53cbbbba6f08/bible" \ -H "Content-Type: application/json" \ -d '{ "bible": { "schema": "typecut.bible/1", "look": { "palette": { "property1": "string", "property2": "string" }, "type": { "property1": "string", "property2": "string" }, "texture": "string", "rules": [ "string" ], "theme_slug": "string", "mode": "light" }, "cast": [ { "id": "string", "name": "string", "what": "string", "identity": { "sheet": "string", "refs": [ "string" ], "palette": { "property1": "string", "property2": "string" } }, "renderers": [ { "kind": "string" } ], "voice": { "property1": null, "property2": null } } ], "sets": [ { "id": "string", "what": "string" } ], "motifs": [ { "id": "string", "what": "string" } ], "story": { "logline": "string", "thesis": "string", "through_line": "string", "arc": [ "string" ], "episode_memory": [ "string" ], "visual_bible": "string" }, "props": [ { "id": "string", "what": "string" } ], "inherits": { "property1": null, "property2": null } }, "base_version": 0 }'{
"data": {
"project_id": "405d8375-3514-403b-8c43-83ae74cfe0e9",
"bible_id": "6bd922f1-4c9a-4865-be6c-d4be3c8fde2e",
"version": 0,
"derived": true,
"sources": [
"string"
],
"updated_at": "string",
"bible": {
"schema": "typecut.bible/1",
"look": {
"palette": {
"property1": "string",
"property2": "string"
},
"type": {
"property1": "string",
"property2": "string"
},
"texture": "string",
"rules": [
"string"
],
"theme_slug": "string",
"mode": "light"
},
"cast": [
{
"id": "string",
"name": "string",
"what": "string",
"identity": {
"sheet": "string",
"refs": [
"string"
],
"palette": {
"property1": "string",
"property2": "string"
}
},
"renderers": [
{
"kind": "string"
}
],
"voice": {
"property1": null,
"property2": null
}
}
],
"sets": [
{
"id": "string",
"what": "string"
}
],
"motifs": [
{
"id": "string",
"what": "string"
}
],
"story": {
"logline": "string",
"thesis": "string",
"through_line": "string",
"arc": [
"string"
],
"episode_memory": [
"string"
],
"visual_bible": "string"
},
"props": [
{
"id": "string",
"what": "string"
}
],
"inherits": {
"property1": null,
"property2": null
}
}
}
}{
"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"
}
}