Skip to main content
The List Contacts endpoint returns all contact records stored in your CharityStack account. Each contact includes identifying information, associated emails, phone numbers, addresses, and lifetime transaction totals. Use limit and lastEvaluatedKey to page through large contact lists.

Endpoint

GET https://0k90mc4jjj.execute-api.us-east-2.amazonaws.com/v1/contacts

Authentication

Authorization
string
required
Bearer token using your API key. Format: Bearer cs_live_your_key

Query parameters

limit
number
default:"50"
Maximum number of contacts to return. Accepted range is 1–100.
lastEvaluatedKey
string
Pagination cursor returned by a previous response. Pass this value to retrieve the next page of results.
email
string
Filter results to contacts whose emails array contains this address.

Response

contacts
Contact[]
required
Array of contact objects belonging to your merchant account.
count
number
required
Number of contacts returned in this response page.
hasMore
boolean
required
true if additional pages of results are available.
lastEvaluatedKey
string
Pagination cursor to pass as lastEvaluatedKey in your next request. Only present when hasMore is true.

Examples

curl https://0k90mc4jjj.execute-api.us-east-2.amazonaws.com/v1/contacts?limit=10 \
  -H "Authorization: Bearer cs_live_your_key"
200 response
{
  "contacts": [
    {
      "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "firstName": "Jane",
      "lastName": "Smith",
      "fullName": "Jane Smith",
      "organizationName": "Smith Foundation",
      "emails": [
        { "value": "jane@smithfoundation.org", "is_primary": true }
      ],
      "phones": [
        { "value": "16175550101", "is_primary": true }
      ],
      "addresses": [
        {
          "line1": "456 Park Ave",
          "line2": "",
          "city": "Boston",
          "region": "MA",
          "postal": "02101",
          "country": "United States",
          "is_primary": true
        }
      ],
      "totalTransactionCount": 12,
      "totalTransactionValue": 3250.00,
      "created_at": "2024-03-15T10:22:00.000000",
      "updated_at": "2025-01-08T14:05:33.000000"
    }
  ],
  "count": 1,
  "hasMore": false
}
The lastEvaluatedKey value is a base64-encoded string. Treat it as an opaque cursor — do not parse or construct it manually.