PUT
/
api
/
webhook
/
v2
/
endpoints
/
{endpointId}
curl --request PUT \
  --url https://api.atoa.me/api/webhook/v2/endpoints/4a124f25-fe8d-47a0-92c8-16d94cbfe24c \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "events": ["PAYMENTS_STATUS", "REFUND_STATUS", "EXPIRED_STATUS"],
    "description": "Updated production endpoint"
  }'
{
  "id": "4a124f25-fe8d-47a0-92c8-16d94cbfe24c",
  "url": "https://your-server.com/webhooks",
  "description": "Updated production endpoint",
  "environment": "PRODUCTION",
  "events": [
    { "event": "PAYMENTS_STATUS", "label": "Payment Status" },
    { "event": "REFUND_STATUS", "label": "Refund Status" },
    { "event": "EXPIRED_STATUS", "label": "Expired Status" }
  ],
  "hasAuthentication": false,
  "authenticationType": null,
  "failureCount": 0,
  "lastDeliveredAt": "2025-06-01T12:00:00.000Z"
}

Update an existing webhook endpoint’s description, event subscriptions, or authentication credentials.

The endpoint URL cannot be changed after creation. To use a different URL, delete the endpoint and create a new one.

Authorization

Bearer <token>

Path Parameters

endpointId
string
required

The unique identifier of the endpoint to update.

Request Body Schema

events
string[]
required

The complete set of event types to subscribe to. This replaces the existing subscriptions — any event not included is removed. At least one event is required.

If you are adding a new event type to this endpoint, each event type supports a maximum of 3 registered endpoints across your account. Adding an event that already has 3 other endpoints subscribed returns a 400 error. Use List endpoints to check current registrations before updating.

description
string

Updated description for this endpoint (max 100 characters). Omit to leave the current description unchanged.

authentication
object

Optional. Updated authentication configuration. Two methods are supported — choose one. Fields from different methods cannot be mixed. Pass null explicitly to remove existing authentication. Omit the field entirely to leave authentication unchanged.

Response

Returns the updated endpoint object. Same shape as Create endpoint.