List Contacts

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

GET/contacts

Resend Compatibility: Partial -- Postflare returns properties field and uses organization-level contacts instead of audience-scoped contacts.

Requires an API key with contacts:read permission.

Query Parameters

limitnumber

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

afterstring

Cursor for forward pagination.

beforestring

Cursor for backward pagination.

segment_idstring

Filter contacts to those in this segment (UUID).

Response Fields

objectstring

Always "list".

has_moreboolean

Whether there are more results available.

dataarray

Array of contact objects.

curl -X GET 'https://api.postflare.dev/contacts?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.contacts.list();

Response

Response
{
  "object": "list",
  "has_more": false,
  "data": [
    {
      "id": "e169aa45-1ecf-4183-9955-b1499d5701d3",
      "email": "user@example.com",
      "first_name": "John",
      "last_name": "Doe",
      "unsubscribed": false,
      "properties": {
        "plan": { "type": "string", "value": "pro" }
      },
      "created_at": "2026-01-01T00:00:00.000Z"
    }
  ]
}