Webhooks
List Webhook Subscriptions
Paginated list of Square webhook subscriptions across integration instances.
List Webhook Events
Paginated list of Square webhook events received.
Sync Square Webhook Subscriptions
Reconcile local Square webhook subscriptions against Square's API. Queued.
List Outbound Webhook Event Types
Returns the full catalog of subscribable events. Each entry includes the wire `event` name, human `label`/`description`, UI `group`, the `required_scope` needed to subscribe and view samples, and a one-record `sample_payload` shaped exactly like the live webhook payload. Requires `webhooks:read` or `webhooks:manage`.
Get Outbound Event Sample Payload
Returns up to 3 most-recent real records for the named event, each shaped exactly like the live webhook payload. Backs sample-record discovery for connected apps. Returns an empty `data` array if the tenant has no matching records yet.
List Webhook Subscriptions
Paginated list of every webhook subscription on the tenant, newest first. The signing `secret` is never included here — it is shown only once in the create response.
Create Webhook Subscription
Create a subscription. Body fields:
Get Webhook Subscription
Returns a single subscription owned by the authenticated user/tenant. Never includes the signing `secret`.
Delete Webhook Subscription
Delete (unsubscribe) a subscription permanently, along with its signing secret. Idempotent — always returns 204, even if no matching row existed, so clients may retry unsubscribe calls. To stop deliveries temporarily while keeping the secret and the delivery log, use Disable Webhook Subscription instead. Requires the `webhooks:manage` scope.
Enable Webhook Subscription
Turn a disabled subscription back on and return it in its new state. Idempotent — calling it on a subscription that is already active returns 200 with the row unchanged.
Disable Webhook Subscription
Pause a subscription without deleting it, and return it in its new state. Deliveries stop immediately; the delivery log and the signing secret are kept, so Enable resumes the same subscription rather than requiring a new one (and a new secret).
List Deliveries
Paginated delivery log for one subscription, newest first. Each row captures one delivery attempt: HTTP `response_status`/`response_body`, `duration_ms`, `attempt` number, whether it `succeeded`, and whether it was `throttled` (dropped before dispatch because the tenant's per-minute outbound rate cap was hit — `succeeded: false`, `attempt: 0`, `response_status: null`). The full signed `payload` that was (or would have been) sent is included. Requires `webhooks:read` or `webhooks:manage`.
Send Test Delivery
Send a synchronous test delivery to the subscription's target URL with a signed `{ '_test': true }` payload. Runs inline (not queued) so the UI can show the result immediately, and records a row in the delivery log regardless of outcome. Always returns 200 with the generated `delivery_id` even if the target responds with an error (inspect the delivery log for the captured status). Requires the `webhooks:manage` scope.