Update webhook

Changes an existing webhook's url, enabled_events, or auth_header. Send only the fields you want to change.

🚧

enabled_events replaces the list

The events you send replace the webhook's current events; they are not added to them. Send the full list you want the webhook to receive.

If the request includes url, even unchanged, Mamo first sends a test POST with the body {"ping":"pong"} to it, which must answer 2xx; otherwise the call fails with 422 and Webhook is unreachable. The test request carries an Authorization header only if you also send auth_header in the same request, so if your endpoint requires it, send auth_header together with url.

The response is the updated webhook, without the signing_secret; the existing secret keeps working. An unknown webhook ID returns 404 with error_code NOT FOUND (with a space).

Path Params
string
required
Defaults to MPB-WH-3C4D5E6F7A

Webhook ID

Body Params
uri
Defaults to https://your-server.example.com/mamo/webhook

The endpoint URL that Mamo delivers webhook events to. Optional on update — omit it to leave the current URL unchanged.

enabled_events
array of strings
Defaults to payment.failed,payment.succeeded,payment.refund_initiated,payment.refunded,payment.refund_failed,subscription.failed,subscription.succeeded,payment_link.create

The list of events this webhook is subscribed to. Optional on update — omit it to leave the current subscriptions unchanged. See Create webhook for the full event catalog.

enabled_events
string
length ≥ 1
Defaults to authentication header

A secret value of your choice. Mamo sends it as the Authorization header on every webhook delivery to this URL. Leading and trailing spaces and anything inside < > are removed, so don't use angle brackets in the value. Check it in your handler and reject requests that don't match, so only Mamo can trigger your webhook. Example: set it to Bearer followed by a random secret (for example Bearer 9f2c7a4e1b8d) and compare the incoming Authorization header against it.

Headers
string

A unique key, such as a UUID, that makes it safe to retry this request. Reuse the same key when you retry. See Idempotency.

Responses

429

Too many requests. You sent more than 100 requests in 30 seconds from one IP address. This response has no JSON body. See Rate limits.

500

Unexpected error

Language
Credentials
Header
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json