Verify the upload landed in storage and flip state to READY.
Idempotent on already-READY (returns the same row, 200). 409 if the bytes aren’t in storage yet — finish the upload and retry.
Documentation Index
Fetch the complete documentation index at: https://docs.roughy.ai/llms.txt
Use this file to discover all available pages before exploring further.
Either your Supabase session JWT (UI flows) or an API key minted via POST /api-keys (programmatic flows). Pass it as Authorization: Bearer <token>. The server inspects the token format and routes to JWT or API-key verification automatically.
Successful Response
Public projection of an assets row (no signed URLs).
audio, video, rendered_video, cut_file Lifecycle state, orthogonal to AssetType (content kind).
pending_upload, ready, deleted ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$