List Emails

List all emails for the organization with cursor-based pagination.

GET/emails

Resend Compatibility: Compatible

Requires an API key with the emails:read permission.

Query Parameters

limitnumber

Maximum number of results to return. Min 1, max 100. Default 20.

afterstring

Cursor for forward pagination. Pass the ID of the last item from the previous page.

beforestring

Cursor for backward pagination. Pass the ID of the first item from the previous page.

Response Fields

objectstring

Always "list".

has_moreboolean

Whether there are more results available.

dataarray

Array of email objects (without html and text body content). Each item contains id, message_id, to, from, created_at, subject, bcc, cc, reply_to, last_event, scheduled_at and topic_id. message_id is null until the carrier accepts the email.

curl -X GET 'https://api.postflare.dev/emails?limit=10' \
  -H 'Authorization: Bearer sk_xxxxxxxxx'
// Set RESEND_BASE_URL=https://api.postflare.dev in the environment before
// the process starts. Without it the SDK sends to api.resend.com, silently.
import { Resend } from 'resend';

const resend = new Resend('sk_xxxxxxxxx');

const { data, error } = await resend.emails.list();

Response

Response
{
  "object": "list",
  "has_more": false,
  "data": [
    {
      "id": "49a3999c-0ce1-4ea6-ab68-afcd6dc2e794",
      "message_id": "<111-222-333@email.example.com>",
      "to": ["user@example.com"],
      "from": "Acme <hello@acme.com>",
      "created_at": "2026-01-01T00:00:00.000Z",
      "subject": "Hello World",
      "bcc": [],
      "cc": [],
      "reply_to": [],
      "last_event": "delivered",
      "scheduled_at": null,
      "topic_id": null
    }
  ]
}