REST API overview
Base URL, authentication, and conventions for the VideoGen REST API.
Base URL
Authentication
All requests require a bearer token in the Authorization header:
Get your API key from app.videogen.io/api. The full key is only shown once when you create it.
The bearer token can also be an OAuth 2.1 access token if your app acts on behalf of other VideoGen users — see Sign in with VideoGen.
Request format
- All request bodies are JSON (
Content-Type: application/json). - Workflow endpoints are asynchronous:
POST /v1/workflows/...returns202 Acceptedwith{ workflowRunId, projectId, projectUrl }. UseprojectIdfor API follow-ups (export, remix).projectUrlis optional and opens the project in the app editor. PollGET /v1/workflows/runs/{workflowRunId}untilstatusis terminal. See Workflows. - Tool endpoints are asynchronous too:
POST /v1/tools/...returns202 Acceptedwith atoolExecutionId. PollGET /v1/tools/executions/{toolExecutionId}untilstatusissucceeded,failed, orcancelled. - Text generation is synchronous:
POST /v1/text/generatereturns200 OKwith the generatedtextinline — no polling. - Either async surface can notify you via webhooks instead of polling.
IDs
All IDs are prefixed strings (e.g. vg_work_..., vg_tool_..., vg_file_...). Store them as-is and do not parse them.