Modulify

Enable or disable a webhook

toggle_site_webhook

Turns one webhook on a site on or off without deleting it.

POST /v1/toggle_site_webhookScopeconfig:writeMakes changes

A disabled webhook keeps its configuration and delivery history but stops receiving events, which makes this the way to pause a noisy endpoint. A delivery still waiting for a retry gives up at its next attempt while the webhook is off.

Modulify also switches a webhook off on its own after 20 deliveries in a row have used up all their attempts. Turning one back on resets that count and clears the reason in Disabled_Reason. The webhook comes back with its destination as Host only. See Webhooks.

Request

Call it with a POST to https://api.modulify.ai/v1/toggle_site_webhook, sending the inputs below as a JSON object. The token needs the config:write scope.

It makes changes, so send an Idempotency-Key header whenever you might retry it. A retry with the same key gets the first answer back instead of running again.

curl -X POST https://api.modulify.ai/v1/toggle_site_webhook \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"projectId":"PROJECT_ID","webhookId":"WEBHOOK_ID","enabled":true}'

Over MCP, the same method is the toggle_site_webhook tool.

Inputs

Input Type Required Description
projectId string Yes The site id.
webhookId string Yes The webhook id from list_site_webhooks.
enabled boolean Yes True to turn it on, false to turn it off.

Response

Every call answers with the JSON envelope of success, message, data, code and version. data holds the result described above, and on a method that returns a total, count carries it. The response headers carry the call's X-Request-Id and what is left of your per-minute budget in X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset. Errors explains every status code a call can answer with.