API referenceMedia

Generate a storyboard or sprite sheet

MANY pictures from ONE image call, each cell hosted as its own library asset plus a contact sheet.

mode panels: a cols × rows storyboard (≤ 4 × 4) of consecutive beats on one set with one cast — drawn together they keep the set, characters and story state consistent, for one call. mode items: a sprite sheet of ≤ 12 labelled props, each cut out. SPENDS CREDITS: the model's per-call price for the sheet (generation type image-grid for models without one) + the image-upscale price per cell with upscale; dry_run quotes. Waits ~50 s, then 202 status: "generating" — poll GET /generations/{id}, whose result is the same compact grid. 503 not_available while the sheet job is rolling out.

POST
/media/grid

Authorization

bearerAuth
AuthorizationBearer <token>

Typecut API key. Generate one in app.typecut.ai → Settings → API keys. Send as Authorization: Bearer tc_live_….

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/media/grid" \  -H "Content-Type: application/json" \  -d '{    "project_id": "405d8375-3514-403b-8c43-83ae74cfe0e9",    "mode": "panels"  }'
{
  "data": {
    "property1": null,
    "property2": null
  }
}
{
  "data": {
    "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"
  }
}
{
  "error": {
    "type": "string",
    "code": "string",
    "message": "string"
  }
}