API referenceScenes

Describe a scene's gen:html sub-compositions

Return the visual-unit map of every resolved gen:html sub-composition in a scene — the same "what's inside this composition" structure the editor canvas exposes on double-click, but read statically from the hosted blob (no browser).

Each unit carries its id/label, whether it is a timed .clip layer, and its animation lanes (properties + times); engine fills also return the parsed window.DATA (their editable surface) with confidence "partial". Read-only. Scene ids are globally unique, so the flat path is unambiguous.

GET
/scenes/{sceneId}/genhtml

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

sceneId*string
Formatuuid

Query Parameters

element_id?string

Describe only the composition with this element id (the id returned in element_id, derived from the blob's composition id).

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/scenes/497f6eca-6276-4993-bfeb-53cbbbba6f08/genhtml"
{
  "data": {
    "scene_id": "861eef56-1159-4a95-802f-abab2d0cc192",
    "compositions": [
      {
        "element_id": "string",
        "blob_url": "http://example.com",
        "source": "resolved",
        "prompt": "string",
        "error": "string",
        "unit_map": {
          "composition_id": "string",
          "width": 0,
          "height": 0,
          "duration_seconds": 0,
          "js_built": true,
          "confidence": "high",
          "mounted": "string",
          "data": null,
          "units": [
            {
              "key": "string",
              "label": "string",
              "tag": "string",
              "is_clip_layer": true,
              "track_index": 0,
              "text": "string",
              "lanes": [
                {
                  "props": [
                    "string"
                  ],
                  "start": 0,
                  "end": 0
                }
              ]
            }
          ]
        }
      }
    ]
  }
}
{
  "error": {
    "type": "string",
    "code": "string",
    "message": "string"
  }
}
{
  "error": {
    "type": "string",
    "code": "string",
    "message": "string"
  }
}
{
  "error": {
    "type": "string",
    "code": "string",
    "message": "string"
  }
}