rotate_webhook_endpoint_secret
Replace a webhook endpoint's signing secret and return the new one — this and create_webhook_endpoint are the only times a secret is returned, so store it now. New deliveries are signed with the new secret; deliveries already queued keep the secret they were queued with.
ACCESS: needs a Proof account. Authenticate this client (Claude Code: /mcp → Authenticate), then call this tool again. start_login does NOT open this tool.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"id": "<id>"
},
"name": "rotate_webhook_endpoint_secret"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Webhook endpoint ID |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | MongoDB ObjectId | |
| url | No | HTTPS URL deliveries are POSTed to, at most 2000 characters. Private, loopback and link-local addresses are refused. | |
| scope | No | `all` — every sub-account, present and future, plus account-level events. `selected` — only the sub-accounts in `profile_ids`; account-level events never reach it. | |
| events | No | ||
| legacy | No | The endpoint converted from the account's single webhook URL — the one the deprecated `/me/settings` webhook block reads and writes. | |
| secret | No | The signing secret — returned only in this response. Store it now. | |
| status | No | A `disabled` endpoint receives nothing; its history and secret are kept. | |
| created_at | No | ||
| secret_set | No | Whether the endpoint has a signing secret (always true). | |
| updated_at | No | ||
| description | No | ||
| profile_ids | No |