Create a webhook endpoint
create_webhook_endpointRegister an HTTPS URL to receive Extend events (webhooks group). CRITICAL: the response's signingSecret is shown ONLY on this call — store it immediately; it cannot be retrieved later. Receivers verify HMAC-SHA256 of "v0:{timestamp}:{body}" against it (reject timestamps older than 5 minutes). enabledEvents here are workspace-global and NOT every event type is valid globally: resource-run events such as workflow_run.completed are rejected here and must instead be scoped to a specific resource via create_webhook_subscription (create the endpoint with enabledEvents [], then subscribe it to the workflow/extractor/etc.). Setting up webhooks by hand? Call get_documentation with https://docs.extend.ai/webhooks/configuration.md first. Follow any llmContext guidance included in results.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | HTTPS URL events are POSTed to. | |
| name | Yes | Display name for the endpoint. | |
| status | No | Defaults to enabled. | |
| apiVersion | No | Payload API version for deliveries. Defaults to 2026-02-09 (this server's pinned version). | |
| environment | Yes | "TEST" = the Test (development) environment, "PRODUCTION" = live. Must match a granted target from get_me (an API key pins one environment). | |
| workspaceId | Yes | Target workspace (ws_...). Must be a granted workspace — get_me lists the accepted values. | |
| enabledEvents | Yes | Workspace-global event types only — full list: https://docs.extend.ai/webhooks/events.md. Resource-run events like "workflow_run.completed" are NOT valid here; pass [] and scope them with create_webhook_subscription. | |
| advancedOptions | No | Optional { headers?: { [name]: value }, payload?: { format: "json"|"url", urlThresholdBytes? } } — "url" delivers a presigned URL instead of inlining large payloads. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| url | Yes | ||
| name | No | ||
| status | Yes | ||
| createdAt | No | ||
| apiVersion | No | ||
| enabledEvents | Yes | ||
| signingSecret | Yes | Shown ONCE, on creation only — store it immediately. |