> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.videogen.io/rest-api-reference/webhooks/list-webhook-endpoints/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.videogen.io/_mcp/server. # List webhooks GET https://api.videogen.io/v1/webhooks/endpoints List configured webhook endpoints for your account. Cursor-paginated; see the [Pagination](/pagination) guide. Reference: https://docs.videogen.io/rest-api-reference/webhooks/list-webhook-endpoints ## Authentication - `Authorization` header (bearer token, required) — API key from [app.videogen.io/api](https://app.videogen.io/api). The full key is only shown once when you create it. ## Request ### Query parameters - `limit` (integer, optional, default: 50) — Maximum number of items to return in the page. Defaults to 50; capped at 200. See [Pagination](/pagination). - `cursor` (string, optional) — Opaque pagination cursor returned as `nextCursor` by the previous page. Omit on the first request. Cursors are tied to the endpoint that produced them and must be passed unmodified. See [Pagination](/pagination). ## Response ### 200 Configured endpoints - `endpoints` (list of WebhookEndpoint, required) - `hasMore` (boolean, required) — When true, there are more endpoints available. Pass `nextCursor` as the `cursor` query param to fetch the next page. - `nextCursor` (string, required, nullable) — Opaque cursor to fetch the next page. `null` when `hasMore` is false. ## Types ### WebhookEndpoint - `endpointId` (string, required) — Webhook endpoint id (e.g. `ep_...`). - `url` (string, required) - `events` (list of enum, required) - Allowed values: `tool_execution.succeeded`, `tool_execution.failed`, `tool_execution.cancelled`, `workflow_run.succeeded`, `workflow_run.failed`, `workflow_run.cancelled`, `project_export.succeeded`, `project_export.failed`, `project_export.cancelled`, `assistant_message.succeeded`, `assistant_message.failed`, `assistant_message.cancelled`, `file.upload.completed`, `file.upload.failed`, `file.playback_ready`, `file.download_ready`, `file.analysis_completed`, `file.analysis_failed` - `createdAt` (integer, required) — Seconds since epoch (Unix timestamp) when the endpoint was created. - `description` (string, optional, nullable) - `signingSecret` (string, optional) — HMAC secret for verifying [Standard Webhooks](https://www.standardwebhooks.com/) signatures. Only returned once on create; store it securely. - `signingSecretLast4` (string, optional) — Last four characters of the signing secret, for display purposes. ## Examples **Response** ```json { "endpoints": [ { "endpointId": "ep_28KVX7vT9mQ2sL4nR6pB1cD0fG", "url": "https://webhooks.example.com/videogen", "events": [ "tool_execution.succeeded", "tool_execution.failed", "tool_execution.cancelled" ], "createdAt": 1705308600, "description": "Primary webhook endpoint for tool execution notifications", "signingSecret": null, "signingSecretLast4": "9f3d" } ], "hasMore": false, "nextCursor": null } ``` **SDK Code** ```typescript import { VideoGen } from "@videogen/sdk"; const client = new VideoGen({ apiKey: "sk_videogen_live_..." }); await client.webhooks.listWebhookEndpoints(); ``` ```python from videogen import VideoGen client = VideoGen(api_key="sk_videogen_live_...") client.webhooks.list_webhook_endpoints() ``` > HTTP API with TypeScript and Python SDKs for generating image, video, and audio assets with VideoGen.