Create a webhook endpoint
POST/api/v1/webhooks/create-endpoint
Creates an endpoint and optionally attempts a subscription when eventTypes is provided. These provider writes are separate and can partially succeed. Reconcile the endpoint and subscriptions before retrying to avoid orphaned endpoints or duplicate deliveries.
The following access conditions are preserved as declared intent and are not implemented by generated code: Tenant request context, Tenant-scoped webhook ownership.
Use this in a guide: Event catalog · Automate recurring agent work · Receive a completed order summary in your backend
Request
Responses
- 200
Endpoint created successfully
Create a receiver for generation completion; replace the URL with your verified receiver.
Section ID: DOC-IN-webhooks-api-createWebhookEndpoint#example-webhooks-createWebhookEndpoint-request
Request example
{
"name": "Generation events",
"url": "https://api.example.com/hooks/travila",
"eventTypes": [
"llm.generation_completed"
]
}
Guide request for Step 5: Subscribe to the results webhook (Optional). Replace example resource identifiers with your own authorized values.
Section ID: DOC-IN-webhooks-api-createWebhookEndpoint#example-cookbook-core-platform-scheduling-build-scheduled-agents-03-request
Request example
{
"name": "scheduled-agent-results",
"url": "https://api.example.com/hooks/agent-results",
"description": "Receives assistant messages from scheduled agent runs",
"eventTypes": [
"llm.message_published"
]
}
Guide request for 1. Register the receiver for completed runs. Replace example resource identifiers with your own authorized values.
Section ID: DOC-IN-webhooks-api-createWebhookEndpoint#example-cookbook-integrations-webhooks-endpoints-01-request
Request example
{
"name": "orders-service",
"url": "https://api.example.com/hooks/travila",
"description": "Order pipeline consumer",
"eventTypes": [
"llm.generation_completed"
]
}
Illustrative response shape; omitted default fields and actual outcomes depend on the operation.
Section ID: DOC-IN-webhooks-api-createWebhookEndpoint#example-webhooks-createWebhookEndpoint-response
Response example
{
"endpoint": {
"id": "example_123",
"name": "example",
"url": "https://example.com/resource",
"description": "example",
"status": "ENDPOINT_STATUS_ACTIVE",
"secret": "example",
"httpTimeout": 1,
"rateLimit": 1,
"rateLimitDuration": "example",
"createdAt": "2026-09-16T12:00:00Z",
"updatedAt": "2026-09-16T12:00:00Z"
},
"subscription": {
"id": "example_123",
"name": "example",
"endpointId": "https://example.com/resource",
"eventTypes": [
"example"
],
"filter": {},
"retryConfig": {
"strategy": "RETRY_STRATEGY_LINEAR",
"retryCount": 1,
"intervalSeconds": 1
},
"createdAt": "2026-09-16T12:00:00Z",
"externalId": "example_123",
"updatedAt": "2026-09-16T12:00:00Z"
}
}
Illustrative response for Step 5: Subscribe to the results webhook (Optional). Replace example resource identifiers with your own authorized values.
Section ID: DOC-IN-webhooks-api-createWebhookEndpoint#example-cookbook-core-platform-scheduling-build-scheduled-agents-json-04-response
Response example
{
"endpoint": {
"id": "ep_abc123",
"name": "scheduled-agent-results",
"url": "https://api.example.com/hooks/agent-results",
"status": "ENDPOINT_STATUS_ACTIVE",
"secret": "whsec_…"
},
"subscription": {
"id": "sub_def456",
"endpointId": "ep_abc123",
"eventTypes": [
"llm.message_published"
]
}
}
Document ID: DOC-IN-webhooks-api-createWebhookEndpoint. Section identities and revisions.
| Section | Stable reference |
|---|---|
| Create a webhook endpoint | DOC-IN-webhooks-api-createWebhookEndpoint#overview |
| Request | DOC-IN-webhooks-api-createWebhookEndpoint#request |
| Responses | DOC-IN-webhooks-api-createWebhookEndpoint#responses |