/v1/webhooks

Update a webhook.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Updates a webhook. Supply its id and only the fields you want to change -- anything you leave out keeps its current value.

To turn a webhook off without deleting it:

{
  id: 4513,
  enabled: false
}

To point it at a new URL and a different event:

{
  id: 4513,
  event_type: "booking_request_rescheduled",
  url: "https://example.com/apptoto/reschedules"
}

event_type and url follow the same rules as creating a webhook. The updated webhook is returned:

{
  webhook: {
    id: 4513,
    event_type: "booking_request_rescheduled",
    url: "https://example.com/apptoto/reschedules",
    enabled: false,
    created_at: "2026-10-12T15:10:42.000-07:00",
    updated_at: "2026-10-12T16:02:19.000-07:00"
  }
}

An id that does not belong to the account returns 404.

OAuth scope

Calls authenticated with an OAuth 2.0 bearer token must include the webhooks:write scope. A token without it receives a 403 insufficient_scope response. HTTP Basic auth is not scope-gated.

Body Params
int32
required

The id of the webhook to update.

string
enum

What has to happen in Apptoto for the webhook to fire. See Webhook Payloads for what each event sends.

string

The full http:// or https:// URL Apptoto should POST to. Up to 2048 characters.

boolean

Whether the webhook fires. A webhook that is turned off stays saved but sends nothing.

Language
Credentials
:
LoadingLoading…
Response
Click Try It! to start a request and see the response here!