## Create Webhook Config

`$ llp webhook-configs create`

**post** `/api/v1/beta/webhook-configs`

Create a reusable webhook configuration for the current project.

### Parameters

- `--webhook-url: string`

  Body param: URL to receive webhook POST notifications.

- `--organization-id: optional string`

  Query param

- `--project-id: optional string`

  Query param

- `--webhook-event: optional array of "batch.cancelled" or "batch.error" or "batch.pending" or 30 more`

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

- `--webhook-headers: optional map[string]`

  Body param: Custom HTTP headers sent with each webhook request.

- `--webhook-output-format: optional "json" or "string"`

  Body param: Response format sent to the webhook: 'string' (default) or 'json'.

- `--webhook-signing-secret: optional string`

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

### Returns

- `webhook_config_response: object { id, has_secret, tenant_id, 7 more }`

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

  - `id: string`

    Unique identifier for the webhook configuration.

  - `has_secret: boolean`

    Whether a signing secret is configured for this endpoint.

  - `tenant_id: string`

    Owner tenant ID.

  - `tenant_type: "project"`

    Owner tenant type.

  - `webhook_url: string`

    URL that receives webhook POST notifications.

  - `created_at: optional string`

    Creation datetime

  - `updated_at: optional string`

    Update datetime

  - `webhook_events: optional array of "batch.cancelled" or "batch.error" or "batch.pending" or 30 more`

    Subscribed events (null = all events).

    - `"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 map[string]`

    Custom HTTP headers sent with each request.

  - `webhook_output_format: optional "json" or "string"`

    Response format sent to the webhook.

    - `"json"`

    - `"string"`

### Example

```cli
llp webhook-configs create \
  --api-key 'My API Key' \
  --webhook-url https://example.com/webhooks/llamacloud
```

#### Response

```json
{
  "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"
}
```
