Poko API
Videos

Continue video

POST
/api/workspaces/{workspaceId}/videos/{videoId}/messages

Ask for changes to a finished video. Starts a new video on the same project; poll it with get_video.

Authorization

apiKey
headerAuthorizationBearer <token>

A Poko API key (poko_live_…) from Poko Motion → Settings → API.

Path Parameters

workspaceId*string

Workspace id. GET /api/me returns the key's default workspace (workspaceId); GET /api/workspace/mine lists all of them.

videoId*string

Video id: requestId from create_video, continue_video or list_videos.

Header Parameters

Idempotency-Key?string

Send the same value when you retry, and Poko answers with the first result instead of starting the work again.

Request Body

application/json
  1. body
prompt*string
Length1 <= length <= 20000
model?string

A model id the Poko app offers, or gateway:. Leave out to use the app setting.

references?array<||>

Material the video should use: a project, a Poko animation, or a file link (for example fileUrl from upload_file).

Itemsitems <= 10

Response Body

Success

application/json
  1. response
success?boolean
data?
Example Request
curl -X POST 'https://api.poko.video/api/workspaces/string/videos/string/messages' \  -H 'Content-Type: application/json' \  -d '{  "prompt": "Make the logo bigger and cut the last scene."}'
Example Response
{  "success": true,  "data": {    "parentRequestId": "3f9c2a71-5b8e-4d2a-9c41-7e6b0d5a8f12",    "projectId": "Pj4kT9wQzN",    "chatId": "chat-mh3k2x9a-4f7qz",    "requestId": "8a1d4e6b-2c7f-4b9a-a3e5-1f0c9d7b6e24",    "status": "queued",    "keyId": "kQ7vX2mLp9Za",    "workspaceId": "Wk7pQ2xR",    "deliveryAttempts": 0,    "nextAttemptAt": "2026-11-05T09:20:31.004Z",    "cancellationPending": false,    "createdAt": "2026-11-05T09:20:31.004Z",    "updatedAt": "2026-11-05T09:20:31.004Z"  }}