Salesforce

Contacts

GET
/v1/salesforce/contacts

One row per contact, with its account and lead source.

dateFrom and dateTo filter by created_date (inclusive days, YYYY-MM-DD). Rows are sorted by id, integration_id, inserted_at and paginated with page/limit; meta.hasNextPage says whether another page exists. Responses are cached for 30 minutes.

Authorization

ClientIdAuthClientSecretAuth
headerx-client-id<token>

Client ID

headerx-client-secret<token>

Client secret

Query Parameters

organizationId*string

Organization that owns the connected accounts.

Formatuuid
integrationId?string

One connected account of this integration (integration_id of the rows). Omit it to read every account of the organization.

Lengthlength <= 255
dateFrom?string

First day (inclusive) of created_date, YYYY-MM-DD.

Formatdate
dateTo?string

Last day (inclusive) of created_date, YYYY-MM-DD. Must not be before dateFrom.

Formatdate
page?integer

Page number, starting at 1.

Range1 <= value <= 1000000
Default1
limit?integer

Rows per page (max 5000).

Range1 <= value <= 5000
Default500

Response Body

One page of rows

application/json
  1. response
data*array<>
meta*
curl -X GET "https://example.com/v1/salesforce/contacts?organizationId=3f2b8c1e-5d4a-4e6f-9a7b-1c2d3e4f5a6b&dateFrom=2026-10-01&dateTo=2026-10-31"
{  "data": [    {      "organization_id": "3f2b8c1e-5d4a-4e6f-9a7b-1c2d3e4f5a6b",      "integration_id": "9a8b7c6d-5e4f-4a3b-8c2d-1e0f9a8b7c6d",      "user_id": "123456",      "document_id": "123456",      "integration_name": "example",      "id": "123456",      "email": "name@example.com",      "account_id": "123456",      "lead_source": "example",      "owner_id": "123456",      "is_deleted": true,      "created_date": "2026-10-01T12:00:00.000Z",      "system_modstamp": "2026-10-01T12:00:00.000Z",      "inserted_at": "2026-10-01T12:00:00.000Z"    }  ],  "meta": {    "page": 1,    "limit": 500,    "hasNextPage": false,    "hasPreviousPage": false  }}