REST API ReferenceEndpointsTools

Get tool execution info

Retrieve the current status and result of a tool execution. Poll this endpoint until `status` is `succeeded`, `failed`, or `cancelled`. Each succeeded result carries signed `downloadUrl`/`thumbnailUrl` (with matching `*ExpiresAt` timestamps) alongside the full hydrated `file`. The signed URLs are private and valid for 24 hours; this single-execution endpoint automatically re-signs them when they are within an hour of expiring, so a caller always receives a URL valid long enough to use. Results remain retrievable indefinitely, including executions older than 24 hours. Note that list endpoints (e.g. `GET /v1/tools/executions`) do not re-sign URLs: they return the last-signed URL, which may already be expired (check `downloadUrlExpiresAt`). To refresh a URL, GET the individual execution here, or hydrate the file directly via `GET /v1/files/{fileId}` / `POST /v1/files/{fileId}/hydrate`.

Authentication

AuthorizationBearer
API key from [app.videogen.io/developers](https://app.videogen.io/developers). The full key is only shown once when you create it.

Path parameters

toolExecutionIdstringRequired
The tool execution id returned when the tool was started.

Response

Current execution state
toolExecutionIdstring
Execution id matching the original request.
statusenum

Lifecycle status shared by every asynchronous job (tool executions, workflow runs, remix actions, project exports, and timeline interchange jobs). pending and running are in-progress; succeeded, failed, and cancelled are terminal.

toolTypestring

Tool name (e.g. GENERATE_IMAGE, TEXT_TO_SPEECH).

progressPercentagedouble0-100

Completion progress for the current attempt (0-100). Always 100 when status is succeeded.

attemptIndexinteger>=0

Zero-based index of the current or most recent execution attempt.

resultslist of objects

One entry per generated result. Always present; empty until status is succeeded, then one entry per generated file (each with signed URLs and a hydrated file).

errorobject or null

Error details. Always present; null unless status is failed.