Events

GET /events

List the organization's events from the last 30 days, newest first by default. Every event is recorded here whether or not a webhook subscribes to it, so you can poll instead of receiving pushes, or catch up on deliveries your endpoint missed. Pass after to read forward from the last event you handled.

Requires the webhooks:read permission.

Query parameters

limitnumber

The number of records to return.

cursorstring

A pagination cursor. Fetch the next page by passing the nextCursor value from the previous response.

sortcreatedAt | -createdAt

The sort order. Prefix a field with - to sort descending. Defaults to -createdAt.

filterstring

A JSON-encoded filter document, for example {"createdAt":{"$gte":"2025-01-01T00:00:00Z"}}. Filterable fields: id, name, createdAt. See Filtering for the syntax.

afterstring

Only events that happened after this one, oldest first. Store the id of the last event you processed and pass it here to pick up where you left off, or to replay everything since.

Request
curl \
  "https://your-store.meisei.app/api/events" \
  -H "Authorization: Bearer sk_YOUR_SECRET_KEY"
Response
{
  "data": [
    {
      "id": "A4Ws1igz",
      "name": "customer.created",
      "idempotencyKey": "string",
      "data": "...",
      "previousAttributes": "...",
      "createdAt": "2025-01-15T09:30:00Z"
    }
  ],
  "nextCursor": "string"
}

GET /events/{id}

Get a single event by ID.

Requires the webhooks:read permission.

Path parameters

idstringrequired

The ID of the event.

Request
curl \
  "https://your-store.meisei.app/api/events/A4Ws1igz" \
  -H "Authorization: Bearer sk_YOUR_SECRET_KEY"
Response
{
  "id": "A4Ws1igz",
  "name": "customer.created",
  "idempotencyKey": "string",
  "data": "...",
  "previousAttributes": "...",
  "createdAt": "2025-01-15T09:30:00Z"
}