> ## Documentation Index
> Fetch the complete documentation index at: https://docs.r28.ai/charter/llms.txt
> Use this file to discover all available pages before exploring further.

# webhook_endpoints_create

> Register an HTTPS URL to receive note events, so a program does not have to poll. Choose which notes with scopes and, optionally, which folders with folder_ids. The response carries the signing secret, and no later response ever does, so store it when this returns.

<div className="tool-route"><span className="tool-row-method" data-method="POST">POST</span><code>{"https://public-api.granola.ai/v1/webhook-endpoints"}</code></div>

```python granola_webhook_endpoints_create.py theme={null}
from charter.packs import granola

result = await granola.webhook_endpoints_create.ainvoke({"url": ..., "scopes": ...})
```

## Body

<div className="reference-table">
  | Field                                                          | Type                                                                            | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
  | -------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `url` <span className="required" title="required">\*</span>    | `string`                                                                        | The publicly reachable HTTPS URL to deliver events to                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
  | `scopes` <span className="required" title="required">\*</span> | [WebhookScope](/charter/charter/packs/granola/webhooks/objects#webhookscope)\[]         | Which notes to receive events for. `personal` covers notes you own, notes shared directly with you, and notes in private folders shared with you. `public` covers notes visible to everyone in the workspace. Pass both for both sets of notes. Workspace admins can disable scopes for non-admin members in the workspace's API settings. With a Workspace API key, pass exactly `["workspace"]` — the key's own scope: public workspace notes plus notes in spaces with Granola API access enabled. <span className="field-constraints">min 1 items</span> |
  | `events`                                                       | [WebhookEventName](/charter/charter/packs/granola/webhooks/objects#webhookeventname)\[] | Event names to subscribe to. Omit to subscribe to all events — `note.access_granted`, `note.edited` and `note.generated`. <span className="field-constraints">min 1 items</span>                                                                                                                                                                                                                                                                                                                                                                             |
  | `folderIds`                                                    | `string`\[]                                                                     | Restrict delivery to notes in these folders or any of their subfolders. Accepts folder IDs returned by `GET /v1/folders`. Omit to receive events for every note matching `scopes`. The same filter applies to all subscribed `events`. <span className="field-constraints">min 1 items; max 100 items</span>                                                                                                                                                                                                                                                 |
</div>
