Skip to main content
Return a page of the project’s contacts. Filter by subscription state, search by email or name, and page forward with the cursor. GET /v1/contacts

Query parameters

subscribed
boolean
Filter by subscription state. Omit to return both.
q
string
Search term matched against email and name.
cursor
string
Opaque pagination cursor from a previous response’s nextCursor.
limit
integer
Page size, 1100 (default 25).

Request

curl "https://api.drin.run/v1/contacts?subscribed=true&limit=50" \
  -H "Authorization: Bearer $DRIN_API_KEY"

Response

Returns 200 OK with a page under data. When nextCursor is non-null, pass it as cursor to fetch the next page. The SDK’s paginate() iterator does this for you.
200 OK
{
  "data": [
    {
      "id": "ct_7Yh2Lp",
      "email": "ada@example.com",
      "firstName": "Ada",
      "lastName": "Lovelace",
      "subscribed": true,
      "unsubscribedAt": null,
      "metadata": { "plan": "pro" },
      "createdAt": "2026-06-02T17:30:00.000Z",
      "updatedAt": "2026-06-02T17:30:00.000Z"
    }
  ],
  "nextCursor": "ct_7Yh2Lp"
}