Get the project bible
The project's source of look and cast: look (palette and type roles, rules), cast by id (identity refs, renderers, voice), sets, motifs, story, props.
When nobody has written one it is derived read-only from the theme, settings.visualSystem, the characters and the visual bible (derived: true, version: 0). 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
uuidQuery Parameters
Comma-separated sections: look,cast,sets,motifs,story,props,inherits.
Response Body
application/json
application/json
application/json
curl -X GET "https://example.com/projects/497f6eca-6276-4993-bfeb-53cbbbba6f08/bible"{
"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"
}
}Import a HyperFrames folder POST
An edited HyperFrames folder back into the project, as JSON {files: [{path, content | src_url}], dry_run, force} (src_url: a create_upload public_url, for documents too large to send inline) or the zi
Write the project bible PUT
Write the bible whole, compare-and-set: base_version is the version you read (0 for a derived bible, which this first write stores).