Skip to main content
GET
Poll a prediction

Authorizations

Authorization
string
header
required

Your eachlabs API key (dashboard → API keys), sent as Authorization: Bearer <api_key> on every request. One key authenticates and bills every video operation.

Path Parameters

id
string<uuid>
required

The prediction id returned by submit as predictionID.

Response

Current prediction state.

Body of GET /v1/prediction/{id} — the poll envelope.

id
string
required
input
object
required

Your submitted input, echoed back as sent — a tolerated legacy submission that omitted capability or params echoes without those fields.

logs
string | null
required

Present on every poll; null today.

metrics
object
required
output
required

Value of the poll envelope's output field. Capability descriptions that mention an output_urls array refer to THIS field — through the gateway the artifact URL array IS the output value. The shape follows the capability's output class: media capabilities deliver hosted artifact URL(s) as an array (single-artifact capabilities deliver a one-element array); analysis capabilities (probe, scene_detect, silence_detect, audio_analysis) deliver structured JSON (an object, which may also arrive as a JSON string or as a URL to a JSON body); packaging capabilities (package_abr, package_abr_ladder, hls_ladder) deliver the manifest plus artifacts. On status "error" this is the ErrorOutput object. Download or persist artifact URLs promptly; treat them as valid for at least 24 hours.

status
enum<string>
required

Typical flow: starting → processing → success. Terminal states: success, error, cancelled. The video surface writes "starting" as the initial state; "created" appears only on legacy paths, so a poll loop may never observe it. A failed prediction reports "error", never "failed". Poll every 3-5 seconds — platform status checks are quantized to ~5 s, tighter loops buy nothing. No queue-time bound is enforced: a prediction can wait in "starting" behind the per-tier concurrency cap; keep polling.

Available options:
created,
starting,
processing,
success,
error,
cancelled
urls
object
required
Last modified on August 13, 2026