null) retains its current value. At least one field must be provided. You can use this endpoint to change the callback URL, update the event list, toggle the subscription on or off, or update the description.
The source API uses
POST (not PUT) for this update operation. Use the path POST /public/webhook/subscription/{SubscriptionId}.Request
POST /public/webhook/subscription/{SubscriptionId}
Headers
Must be
application/json.Must be
application/x-www-form-urlencoded.Your API Application Key.
Your User API Key.
Current UTC timestamp in RFC 7231 format (e.g.
Mon, 06 Apr 2026 00:22:19 GMT).HMAC-SHA256 signature of the canonical request, Base64-encoded.
Path Parameters
Numeric ID of the webhook subscription to update. Must belong to the authenticated account; returns
400 if not found.Body Parameters
New HTTPS callback URL. Must use
https:// and resolve to a publicly routable host. Omit to keep the current URL.Comma-separated list of event type strings to replace the current event list. Omit to keep the existing events. See the Webhook Events reference for available types.
Set
true to enable the subscription or false to disable it. Disabled subscriptions do not receive event deliveries. Omit to keep the current state.Human-readable label for the subscription. Omit to keep the current description.
Response
200 Success
Returns the full updated subscription object.Unique numeric identifier of the subscription.
Current HTTPS callback URL.
Current description label.
Whether the subscription is currently active.
HMAC secret for verifying webhook deliveries. Unchanged by update operations.
Current list of subscribed event type strings.
Error Codes
| Code | Meaning |
|---|---|
| 400 | Validation failed. Common causes: subscription not found or does not belong to this account, URL is not HTTPS or resolves to a private address, unrecognized event names, or no fields were provided. |
| 401 | HMAC signature validation failed or credentials are invalid. |
| 402 | An active Portal.io subscription is required to use this endpoint. |
| 403 | Your user account does not have permission for this action. |