List contacts
Get a paginated list of contacts with cursor-based pagination.
Authorization
ApiKeyAuth API Key authentication. The project is automatically derived from the key.
/v1/track requires a public key (pk_*) — it is the one endpoint intended for client-side use, and a secret key is rejected there with 401.
Every other endpoint requires a secret key (sk_*) and rejects public keys with 401.
So the two key types are not interchangeable in either direction: pick the key that matches the endpoint you are calling.
In: header
Query Parameters
Maximum items per page. Values above 100 are clamped to 100.
201 <= value <= 100Pagination cursor. Pass the cursor returned by the previous page.
Case-insensitive substring match on email.
Filter by subscription state. Omit to return both subscribed and unsubscribed contacts.
Column to sort by. Unrecognised values fall back to createdAt.
"createdAt""email" | "createdAt"Sort direction. Unrecognised values fall back to the default.
"desc""asc" | "desc"Response Body
application/json
application/json
curl -X GET "https://api.plunk.jimster.dev/contacts"{
"data": [
{
"id": "string",
"email": "user@example.com",
"subscribed": true,
"data": {},
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z"
}
],
"cursor": "string",
"hasMore": true,
"total": 0
}{
"success": false,
"error": {
"code": "INVALID_API_KEY",
"message": "Invalid secret API key. This endpoint requires a secret key (sk_*), not a public key.",
"statusCode": 401,
"requestId": "8f14e45f-ceea-467a-9575-1f0f38e0b1c2"
},
"timestamp": "2025-01-15T10:30:00.000Z"
}