Skip to main content
GET
/
subscribers
/
{subscriberId}
/
events
List events for a subscriber
curl --request GET \
  --url https://api.recurr.dev/v1/subscribers/{subscriberId}/events \
  --header 'Authorization: Bearer <token>'
{
  "data": [
    {
      "id": "evt_01HQX8K9M1P0R5N3Y2T7B4C6V",
      "type": "<string>",
      "schema_version": "v1",
      "created_at": "2026-05-22T12:34:56.123Z",
      "tenant": {
        "id": "tnt_app123",
        "name": "ExampleApp"
      },
      "subscriber": {
        "id": "subscriber_01HQ...",
        "email_hashed": "sha256:abc123def456...",
        "created_at": "2023-11-07T05:31:56Z",
        "email": "jsmith@example.com"
      },
      "subscription": {
        "id": "sub_01HQ...",
        "plan": "premium_monthly",
        "current_period_start": "2023-11-07T05:31:56Z",
        "current_period_end": "2023-11-07T05:31:56Z"
      }
    }
  ],
  "has_more": true,
  "next_cursor": "<string>"
}

Authorizations

Authorization
string
header
required

Your Recurr secret API key as a Bearer token: Authorization: Bearer rk_live_….

Keys are environment-scoped — rk_live_ operates on live data, rk_test_ on isolated test data (see Test mode). Create, scope, and rotate keys in your dashboard (Settings → API keys, developer role). Secret keys are server-side only — never ship them in an app binary or client JavaScript.

Path Parameters

subscriberId
string
required

Query Parameters

event_types
string[]
limit
integer
default:50

Maximum number of items to return (1-100, default 50).

Required range: 1 <= x <= 100
starting_after
string

Cursor for pagination. Pass the next_cursor from the previous response to fetch the next page.

ending_before
string

Cursor for reverse pagination.

Response

200 - application/json

Event list

data
object[]
required
has_more
boolean
required
next_cursor
string | null