Storyboards

Convert storyboard document to timeline document

Converts a Kaitoi Storyboard Document v1 into a Kaitoi Timeline Document v1 without mutating any project. Storyboard shots become sequential timeline clips; URL, document, unresolved, and unsupported media references are skipped with warnings instead of being fetched.

post/api/v1/storyboards/to-timeline

Request

  • Base URL: https://api.studio.kaitoi.io (the document declares no server; this is the origin it was published from)
  • URL: https://api.studio.kaitoi.io/api/v1/storyboards/to-timeline
  • Auth: HTTP bearer

Headers

authorizationstring nullable

Request body

documentobject required

Kaitoi Storyboard Document v1 JSON to convert.

namestring nullable

Optional name for the generated Timeline Document.

frameRateinteger

Timeline frame rate. Unsupported values normalize to 30.

projectResolutionobject nullable

Optional timeline project resolution.

defaultDurationnumber nullable

Fallback shot duration in seconds when a storyboard shot omits durationSeconds.

Example request

{
  "defaultDuration": 3,
  "document": {
    "kaitoiType": "storyboard",
    "name": "Storyboard",
    "sequences": [
      {
        "id": "scene-1",
        "name": "Scene 1",
        "order": 0,
        "shots": [
          {
            "description": "A quiet establishing shot.",
            "durationSeconds": 3,
            "id": "frame-1",
            "order": 0,
            "transition": "cut"
          }
        ]
      }
    ],
    "settings": {
      "aspectRatio": "16:9",
      "defaultFrameDuration": 3
    },
    "version": 1
  },
  "frameRate": 30,
  "name": "Storyboard Timeline"
}

Response

Generated timeline document and non-fatal conversion warnings.

documentobject required

Generated Kaitoi Timeline Document v1.

Example response

{
  "document": {
    "kaitoiType": "timeline",
    "name": "Timeline",
    "timeline": {
      "clips": [
        {
          "duration": 3,
          "filename": "hero.png",
          "id": "clip-1",
          "name": "Hero",
          "opacity": 100,
          "startTime": 0,
          "storageType": "data",
          "trackId": "track-1",
          "transform": {
            "rotation": 0,
            "scale": 100,
            "x": 0,
            "y": 0
          },
          "trimEnd": 0,
          "trimStart": 0,
          "type": "image",
          "volume": 100
        }
      ],
      "currentTime": 0,
      "frameRate": 30,
      "playheadPosition": 0,
      "projectDuration": 60,
      "projectResolution": {
        "height": 1080,
        "isAutoDetected": true,
        "width": 1920
      },
      "selectedClipIds": [],
      "selectedTrackId": "track-1",
      "tracks": [
        {
          "height": 60,
          "id": "track-1",
          "locked": false,
          "mutedAudio": false,
          "mutedVideo": false,
          "name": "Track 1",
          "volume": 1
        }
      ],
      "zoom": 100
    },
    "version": 1
  },
  "summary": {
    "clipCount": 1,
    "durationSeconds": 60,
    "trackCount": 1
  },
  "warnings": []
}

Changes

No recorded changes to this operation across all 1 revision of this API.