Skip to main content
GET
/
events
/
{eventId}
Get event detail
curl --request GET \
  --url https://api.recurr.dev/v1/events/{eventId} \
  --header 'Authorization: Bearer <token>'
{
  "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"
  }
}

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

eventId
string
required

Response

200 - application/json

Event detail

id
string
required

Globally unique event ID. Use for idempotency dedup.

Example:

"evt_01HQX8K9M1P0R5N3Y2T7B4C6V"

type
string
required

Event type. See webhooks for catalog.

schema_version
string
required
Example:

"v1"

created_at
string<date-time>
required
Example:

"2026-05-22T12:34:56.123Z"

tenant
object
required
subscriber
object
required
subscription
object

Current subscription state at event time. Omitted for non-subscription events (e.g., ticket.submitted for a subscriber with no active sub).