# Events feed


# Events feed

`GET /api/v1/events` returns every event for the organization, oldest first: the same CloudEvents [webhooks](/developers/webhooks) deliver. Use it when your system can't receive webhooks, or to catch up after downtime. Scope: `events_read` (or `org_all`).

```bash
curl -s "https://codriver.autouncle.com/api/v1/events?after=$CURSOR&limit=100" -H "Authorization: Bearer $TOKEN"
```

```json
{
  "data": [],
  "next_cursor": "evt_019a1b2c-3d4e-7f5a-8b6c-7d8e9f0a1b2c",
  "has_more": false
}
```

- Store `next_cursor` and pass it as `after` next time. When nothing is new it stays the same, so you just keep polling with it, every minute or so.
- `types=opportunity.closed,appointment.booked` returns only those types.
- Events are kept 30 days. They are recorded from the moment the organization has an API client with `events_read` or a webhook endpoint.
- An event is visible two seconds after it happens, so a cursor never skips one.
