> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sequenzy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List Sequence Events

> Retrieve paginated raw email events for all email steps in a sequence.

Returns a paginated raw event stream for every email step in a sequence. The endpoint defaults to `delivery` events and resolves the sequence to its email and A/B test nodes before querying event storage. Use `eventTypes` to include opens, clicks, bounces, complaints, unsubscribes, sends, and delivery delays.

## Path Parameters

<ParamField path="sequenceId" type="string" required>
  The ID of the sequence.
</ParamField>

## Query Parameters

<ParamField query="eventTypes" type="string" default="delivery">
  Comma-separated event types. Supported values: `send`, `delivery`, `bounce`,
  `complaint`, `open`, `click`, `unsubscribe`, `delivery_delay`.
</ParamField>

<ParamField query="eventType" type="string">
  Single event type convenience alias. If both `eventType` and `eventTypes` are
  provided, both are included.
</ParamField>

<ParamField query="period" type="string">
  Sliding time window. One of: `1h`, `24h`, `7d`, `30d`, `90d`. Ignored when
  `start` and `end` are provided.
</ParamField>

<ParamField query="start" type="string">
  Start of custom time range (ISO 8601). Must be used with `end`.
</ParamField>

<ParamField query="end" type="string">
  End of custom time range (ISO 8601). Must be used with `start`. Max range: 90
  days.
</ParamField>

<ParamField query="page" type="number" default="1">
  Page number for pagination.
</ParamField>

<ParamField query="limit" type="number" default="100">
  Events per page (max 500).
</ParamField>

<ParamField query="includeMachineEngagement" type="boolean" default="false">
  Set to `true` to include detected scanner, preview, and tracked asset
  open/click events when requesting engagement event types.
</ParamField>

## Common Queries

### List delivered recipients for a sequence

```bash theme={null}
curl "https://api.sequenzy.com/api/v1/metrics/sequences/seq_abc123/events?limit=100" \
 -H "Authorization: Bearer YOUR_API_KEY"
```

### Include opens and clicks for sequence email steps

```bash theme={null}
curl "https://api.sequenzy.com/api/v1/metrics/sequences/seq_abc123/events?eventTypes=delivery,open,click&period=30d" \
 -H "Authorization: Bearer YOUR_API_KEY"
```

## Responses

<ResponseExample>
  ```json 200 theme={null}
  {
    "success": true,
    "sequenceId": "seq_abc123",
    "automationNodeIds": ["node_email_1", "node_email_2"],
    "eventTypes": ["delivery"],
    "events": [
      {
        "id": "evt_abc123",
        "emailSendId": "send_abc123",
        "companyId": "company_123",
        "campaignId": "node_email_1",
        "transactionalEmailId": null,
        "subscriberId": "sub_123",
        "email": "user@example.com",
        "emailName": "Welcome",
        "emailType": "sequence",
        "abTestId": null,
        "abTestVariantId": null,
        "eventType": "delivery",
        "bounceType": null,
        "bounceSubType": null,
        "complaintType": null,
        "clickedUrl": null,
        "ipAddress": null,
        "userAgent": null,
        "countryCode": "US",
        "metadata": {},
        "eventTime": "2026-02-14T10:30:00.000Z"
      }
    ],
    "pagination": {
      "page": 1,
      "limit": 100,
      "total": 1,
      "totalPages": 1
    }
  }
  ```

  ```json 400 theme={null}
  {
    "success": false,
    "error": "Invalid event type 'purchase'. Must be one of: send, delivery, bounce, complaint, open, click, unsubscribe, delivery_delay"
  }
  ```

  ```json 401 theme={null}
  { "success": false, "error": "Unauthorized" }
  ```

  ```json 404 theme={null}
  { "success": false, "error": "Sequence not found" }
  ```
</ResponseExample>
