KKeepMyNumber
Get started

Events

Every meaningful change is recorded as an immutable event — the same events that are pushed to your webhooks are queryable here forever. Use the events API to backfill state after downtime, audit history, or drive polling-based integrations.

Querying history

# everything, newest first
curl https://api.example.com/v2/porting/events \
  -H "Authorization: Bearer pk_live_YOUR_KEY"

# filter by type and/or order
curl "https://api.example.com/v2/porting/events?type=porting_order.status_changed&porting_order_id={id}" \
  -H "Authorization: Bearer pk_live_YOUR_KEY"

Each event: {id, type, order_id, payload, created_at}payload is exactly what was (or would have been) sent to your webhooks.

Republish

Missed something? Push any event to your currently registered endpoints again:

curl -X POST https://api.example.com/v2/porting/events/{event_id}/republish \
  -H "Authorization: Bearer pk_live_YOUR_KEY"

Republishing sends to your current endpoint configuration, and does not create a new event.

Deliveries per event

GET /v2/porting/events/{event_id}/deliveries shows every webhook delivery this event produced. For the account-wide delivery audit (filters, per-attempt history, manual retry), see the Webhooks guide.

Recommended recovery pattern

After your webhook receiver has been down:

  1. Note the timestamp of your last processed Porting-Event-Id.
  2. GET /v2/porting/events and page forward from that point.
  3. Process events in order, using their ids for deduplication.

This is simpler and more reliable than republishing one event at a time.