# Return an engagement summary

> **GET** `https://api.us.nylas.com/v3/metrics/tracking/summary`

Source: https://developer.nylas.com/docs/reference/api/tracking-events/get-tracking-summary/

Returns your open and click rates for a date window, compared with the previous window of the
same length, with the counts behind them. Use it to see whether engagement is going up or down.

The open rate is the share of messages with open tracking that were opened at least once. Treat
it as a trend rather than an exact count: some mail clients and privacy features load images
automatically, which counts as an open. Messages count on the day they were sent, so rates for
recent days keep rising as recipients open them.

**Authentication:** NYLAS_API_KEY

## Parameters

### Query parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `start` | string, format: date | No | The first day of the window, as a UTC date in `YYYY-MM-DD` format. Defaults to six days before `end`, so the default window covers 7 days. A window can cover up to 365 days. |
| `end` | string, format: date | No | The last day of the window, as a UTC date in `YYYY-MM-DD` format. Defaults to today. Today is included as a partial day. |
| `sending_domain` | string, maxLength: 255 | No | Return only data for messages sent from this domain. |

## Responses

### 200 - Success. Returns the summary.

- `request_id` (string) - The request ID.
- `data` (object)
  - `totals` (object) - Engagement counts. Each message counts on the day it was sent, so a message sent last week and
opened today adds to last week's numbers.
    - `tracked_opens` (integer) - The number of messages sent with open tracking on.
    - `tracked_links` (integer) - The number of messages sent with link click tracking on.
    - `opened` (integer) - The number of messages with open tracking that were opened at least once.
    - `clicked` (integer) - The number of messages with link click tracking that had at least one click.
    - `opens_total` (integer) - The number of opens, including repeat opens.
    - `clicks_total` (integer) - The number of link clicks, including repeat clicks.
  - `metrics` (object) - Open and click rates for the window, compared with the previous window of equal length.
    - `open_rate` (object) - A rate for the window, compared with the same rate in the previous window of equal length.
      - `value` (number, nullable) - The rate for the window, as a percentage from 0 to 100. `null` when there is nothing to divide by.
      - `delta_pp` (number, nullable) - The change from the previous window, in percentage points (`value` minus `prior_value`). `null` when either value is `null`.
      - `prior_value` (number, nullable) - The same rate for the previous window. `null` when it can't be calculated.
    - `click_rate` (object) - A rate for the window, compared with the same rate in the previous window of equal length.
      - `value` (number, nullable) - The rate for the window, as a percentage from 0 to 100. `null` when there is nothing to divide by.
      - `delta_pp` (number, nullable) - The change from the previous window, in percentage points (`value` minus `prior_value`). `null` when either value is `null`.
      - `prior_value` (number, nullable) - The same rate for the previous window. `null` when it can't be calculated.
  - `prior_period` (any) - The previous window of equal length that the rates are compared with. `null` when it's older than the data Nylas keeps.
    - **object**
      - `start` (string, format: date) - The first day of the window.
      - `end` (string, format: date) - The last day of the window.
    - **null**

### 400 - Bad request. A query parameter or the request body isn't valid.

- `request_id` (string) - The request ID.
- `error` (object) - The response error object.
  - `type` (string) - The error type.
  - `message` (string) - The error message.

### 401 - Unauthorized

- `request_id` (string) - The request ID.
- `error` (object) - The response error object.
  - `type` (string) - The error type.
  - `message` (string) - The error message.
  - `provider_error` (object) - The error from the provider.

### 403 - Forbidden. These endpoints need your application's API key, not a grant access token.

- `request_id` (string) - The request ID.
- `error` (object) - The response error object.
  - `type` (string) - The error type.
  - `message` (string) - The error message.

## Code samples

### cURL

```bash
curl --request GET \
  --url "https://api.us.nylas.com/v3/metrics/tracking/summary?start=2026-10-01&end=2026-10-30" \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer <NYLAS_API_KEY>'
```
