Events we have sent you
GET/eventsProbar
La llamada la hace tu navegador, contra el servidor que elijas arriba. Si la documentación no está servida desde el mismo origen que la API, el navegador puede bloquear la respuesta por CORS: en ese caso abre estas páginas desde la propia API (/docs) o usa el curl de arriba.
const url = 'http://localhost:3000/v1/events?status=pending&eventType=payment.settled&limit=25';const options = {method: 'GET', headers: {'x-api-key': '<x-api-key>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'http://localhost:3000/v1/events?status=pending&eventType=payment.settled&limit=25' \ --header 'x-api-key: <x-api-key>'Scope events:read. The log of every webhook we have sent you and how its delivery went.
Delivery is at-least-once: deduplicate by the body’s id. status=dead is your failed queue — what we couldn’t deliver after 12 attempts, which is neither lost nor marked as delivered.
The list does NOT include payload: to see it, get the event by its id. Here the cursor is the event’s numeric id, not the cursor of /payments or /beneficiaries.
Authorizations
Sección titulada «Authorizations»Parameters
Sección titulada «Parameters»Query Parameters
Sección titulada «Query Parameters»Id numérico del evento
Responses
Sección titulada «Responses»Página de eventos
object
object
Registro de un webhook que te hemos enviado.
object
Deduplica por esto. También viaja en la cabecera x-event-id
dead = tu cola de fallidos, reentregable
Example
{ "data": [ { "id": "40545", "event_type": "payment.settled", "aggregate_type": "payment", "aggregate_id": "89920401-26da-4f69-b57d-bc20e0366ce2", "status": "published", "attempts": 3, "last_error": null, "next_attempt_at": null, "published_at": "2026-08-31T19:06:52.004Z", "dead_at": null, "created_at": "2026-08-31T19:06:44.120Z" } ], "has_more": false, "next_cursor": null}