---
title: "Retrieve email metrics"
method: GET
path: "/v1/emails/metrics"
tags: ["Emails"]
---

# Retrieve email metrics

`GET /v1/emails/metrics`

## Request

- Base URL: `https://smtpfa.st/api`
- URL: `https://smtpfa.st/api/v1/emails/metrics`
- Auth: HTTP bearer

Resend-compatible counts and rates over a date range, for transactional and broadcast email together. Leave dimensions out for one totals row; add period, domain, email or broadcast (email and broadcast cannot be combined) to break the numbers down. Each lifecycle timestamp counts in its own period. Sends where every recipient is the SES mailbox simulator are left out. Rates are percentages with one decimal. Open and click metrics need tracking on. Requires the email:read scope.

## Query parameters

- `start_date` string
- `end_date` string
- `timezone` string
- `granularity` 'hourly' | 'daily' | 'weekly' | 'monthly'
- `metrics` string
- `dimensions` string
- `domain_id` string
- `email_id` string
- `broadcast_id` string

## Response `200`

Metrics

- object
  - `object` string, required
  - `start_date` string, date-time, required
  - `end_date` string, date-time, required
  - `timezone` string, required
  - `metrics` string[], required
  - `dimensions` string[], required
  - `granularity` 'hourly' | 'daily' | 'weekly' | 'monthly', required
  - `totals` object, required: One value per requested metric: counts are integers, rates percentages with one decimal.
  - `data` object[]: One row per combination of the requested dimensions, with the requested metrics. Absent when no dimensions are requested.
    - `period` string, nullable: With the period dimension
    - `domain_id` string, nullable: With the domain dimension
    - `domain_name` string, nullable: With the domain dimension
    - `email_id` string, nullable: With the email dimension
    - `broadcast_id` string, nullable: With the broadcast dimension
    - `broadcast_name` string, nullable: With the broadcast dimension

## Other responses

- `400`: Bad request - check your payload
- `401`: Invalid or missing API key
- `403`: Forbidden - domain not verified or insufficient permissions
- `429`: Rate limit exceeded - retry after the period indicated in the Retry-After header
- `500`: Internal server error

---

[API](https://skmtc.dev/smtpfa/apis/smtpfast-api.md) · [All operations](https://skmtc.dev/smtpfa/apis/smtpfast-api/llms.txt) · [OpenAPI document](https://skmtc.dev/smtpfa/apis/smtpfast-api/revisions/79dda742f53e?raw)
