Docs

Generate (or regenerate) the AI summary of a video

Starts an asynchronous, paid generation of the summary from the video transcript; poll GET /v1/videos/{id}/summary for completion. When a summary already exists, pass ?regenerate=true to replace it: this is required so a summary is never silently recharged. An optional prompt steers style/focus only. Consumes AI credits (reserved up front, refunded on failure). Requires the videos:write scope.

POST
/v1/videos/{id}/summary

Authorization

BearerAuth
AuthorizationBearer <token>

Pass the raw API key as a Bearer token (Authorization: Bearer <key>). Publishable keys start with mvi_pub_ (playback-scoped). Other prefixes denote private/admin keys for general REST routes. GET /v1/embeds/{embedId}/playback accepts publishable keys only.

In: header

Path Parameters

id*string

Video identifier.

Formatuuid

Query Parameters

regenerate?string

Set to true to replace an existing summary (explicit regenerate intent).

Value in"true" | "false"

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

curl -X POST "https://api.moviie.ai/v1/videos/497f6eca-6276-4993-bfeb-53cbbbba6f08/summary" \  -H "Content-Type: application/json" \  -d '{}'
{
  "status": "generating",
  "estimatedCost": 3
}
{
  "error": "Resource not found",
  "code": "NOT_FOUND"
}
{
  "error": "Resource not found",
  "code": "NOT_FOUND"
}
{
  "error": "Resource not found",
  "code": "NOT_FOUND"
}
{
  "error": "Resource not found",
  "code": "NOT_FOUND"
}
{
  "error": "Resource not found",
  "code": "NOT_FOUND"
}