Skip to content

Create Webhook Config

webhook_configs.create(WebhookConfigCreateParams**kwargs) -> WebhookConfigResponse
POST/api/v1/beta/webhook-configs

Create a reusable webhook configuration for the current project.

ParametersExpand Collapse
webhook_url: str

URL to receive webhook POST notifications.

organization_id: Optional[str]
project_id: Optional[str]
webhook_events: Optional[List[Literal["batch.cancelled", "batch.error", "batch.pending", 30 more]]]

Events to subscribe to. If null, all events are delivered. An empty list subscribes to nothing and is rejected.

One of the following:
"batch.cancelled"
"batch.error"
"batch.pending"
"batch.running"
"batch.success"
"classify.cancelled"
"classify.error"
"classify.partial_success"
"classify.pending"
"classify.running"
"classify.success"
"extract.cancelled"
"extract.error"
"extract.partial_success"
"extract.pending"
"extract.success"
"parse.cancelled"
"parse.error"
"parse.partial_success"
"parse.pending"
"parse.running"
"parse.success"
"sheets.cancelled"
"sheets.error"
"sheets.partial_success"
"sheets.pending"
"sheets.success"
"split.cancelled"
"split.error"
"split.pending"
"split.processing"
"split.success"
"unmapped_event"
webhook_headers: Optional[Dict[str, str]]

Custom HTTP headers sent with each webhook request.

webhook_output_format: Optional[Literal["json", "string"]]

Response format sent to the webhook: ‘string’ (default) or ‘json’.

One of the following:
"json"
"string"
webhook_signing_secret: Optional[str]

Shared secret used to sign deliveries to this endpoint. Write-only: it is never returned in responses.

ReturnsExpand Collapse
class WebhookConfigResponse:

A stored webhook configuration. The signing secret is never included.

id: str

Unique identifier for the webhook configuration.

has_secret: bool

Whether a signing secret is configured for this endpoint.

tenant_id: str

Owner tenant ID.

tenant_type: Literal["project"]

Owner tenant type.

webhook_url: str

URL that receives webhook POST notifications.

created_at: Optional[datetime]

Creation datetime

formatdate-time
updated_at: Optional[datetime]

Update datetime

formatdate-time
webhook_events: Optional[List[Literal["batch.cancelled", "batch.error", "batch.pending", 30 more]]]

Subscribed events (null = all events).

One of the following:
"batch.cancelled"
"batch.error"
"batch.pending"
"batch.running"
"batch.success"
"classify.cancelled"
"classify.error"
"classify.partial_success"
"classify.pending"
"classify.running"
"classify.success"
"extract.cancelled"
"extract.error"
"extract.partial_success"
"extract.pending"
"extract.success"
"parse.cancelled"
"parse.error"
"parse.partial_success"
"parse.pending"
"parse.running"
"parse.success"
"sheets.cancelled"
"sheets.error"
"sheets.partial_success"
"sheets.pending"
"sheets.success"
"split.cancelled"
"split.error"
"split.pending"
"split.processing"
"split.success"
"unmapped_event"
webhook_headers: Optional[Dict[str, str]]

Custom HTTP headers sent with each request.

webhook_output_format: Optional[Literal["json", "string"]]

Response format sent to the webhook.

One of the following:
"json"
"string"

Create Webhook Config

import os
from llama_cloud import LlamaCloud

client = LlamaCloud(
    api_key=os.environ.get("LLAMA_CLOUD_API_KEY"),  # This is the default and can be omitted
)
webhook_config_response = client.webhook_configs.create(
    webhook_url="https://example.com/webhooks/llamacloud",
)
print(webhook_config_response.id)
{
  "id": "id",
  "has_secret": true,
  "tenant_id": "tenant_id",
  "tenant_type": "project",
  "webhook_url": "webhook_url",
  "created_at": "2019-12-27T18:11:19.117Z",
  "updated_at": "2019-12-27T18:11:19.117Z",
  "webhook_events": [
    "batch.cancelled"
  ],
  "webhook_headers": {
    "foo": "string"
  },
  "webhook_output_format": "json"
}
Returns Examples
{
  "id": "id",
  "has_secret": true,
  "tenant_id": "tenant_id",
  "tenant_type": "project",
  "webhook_url": "webhook_url",
  "created_at": "2019-12-27T18:11:19.117Z",
  "updated_at": "2019-12-27T18:11:19.117Z",
  "webhook_events": [
    "batch.cancelled"
  ],
  "webhook_headers": {
    "foo": "string"
  },
  "webhook_output_format": "json"
}
Note for AI agents: this documentation is built for programmatic access. - Overview of all docs: https://developers.llamaindex.ai/llms.txt - Any page is available as raw Markdown by appending index.md to its URL — e.g. https://developers.llamaindex.ai/llamaparse/parse/getting_started/index.md - Agent-friendly REST search APIs live under https://developers.llamaindex.ai/api/ — search (BM25 full-text), grep (regex), read (fetch a page), and list (browse the doc tree). See https://developers.llamaindex.ai/llms.txt for parameters. - A hosted documentation MCP server is available at https://developers.llamaindex.ai/mcp. If you support MCP, you can ask the user to install it for browsing these docs directly (an alternative to the REST API). Setup: https://developers.llamaindex.ai/for-agents/mcp/ - Other LlamaIndex tooling for agents — the LlamaParse Platform MCP server, agent skills and plugins, and the n8n node — is mapped at https://developers.llamaindex.ai/for-agents/