Skip to main content
The data sync API exposes read and write access to an account’s active data sync accounts and connections. It allows you to list and inspect third-party accounts, manage the connection lifecycle, view field mappings, and monitor sync health and errors.
This functionality is currently in beta. By participating in this beta, you agree to HubSpot's Developer Terms and Developer Beta Terms. Note that the functionality is still under active development and is subject to change based on testing and feedback.

Retrieve accounts

To return all third-party accounts connected to the data sync tool in your account, make a GET request to /developers/data-sync/2027-03-beta/accounts, and include any of the query parameters in the table below: The response will include the following properties: An example response is shown in the code block below:
To retrieve a single account by ID, make a GET request to /developers/data-sync/2027-03-beta/accounts/{accountId}. The response will resemble the following:

Retrieve connections

To retrieve all connections for the account, make a GET request to /developers/data-sync/2027-03-beta/connections. You can optionally include the query parameters in the table below to filter the results: The response will include the following properties: An example response is shown in the code block below:
To retrieve a single connection by its ID, make a GET request to /developers/data-sync/2027-03-beta/connections/{connectionId}. The response will resemble the following:

Retrieve field mappings

To return all field mappings configured for a connection, including which fields are synced and in which direction, make a GET request to /developers/data-sync/2027-03-beta/connections/{connectionId}/field-mappings. The response will include the following properties: An example response is shown in the code block below:

Activate connection

To start the initial sync for a new connection, or trigger a full re-sync, make a POST request to /developers/data-sync/2027-03-beta/connections/{connectionId}/activate. A successful response will include the id of the connection along with a status field confirming that the connection is STARTED.

Disable connection

To pause syncing for a connection, make a POST request to /developers/data-sync/2027-03-beta/connections/{connectionId}/disable. The connection can be re-enabled at any time. A successful response will include the id of the connection along with a status field confirming that the connection is PAUSED.

Enable connection

To resume a paused connection, make a POST request to /developers/data-sync/2027-03-beta/connections/{connectionId}/enable: A successful response will include the id of the connection along with a status field confirming that the connection has switched back to STARTED.
If you attempt to enable a connection that was never initially activated, you’ll receive a 400 VALIDATION ERROR.

Retrieve connection health

To retrieve a compact snapshot of the connection’s current health, you can make a GET request to /developers/data-sync/2027-03-beta/connections/{connectionId}/health. This endpoint provides a health snapshot and is distinct from the connection status returned by the other connection endpoints. The response will include the following properties: syncStatus values: recordHealth values: An example response is shown below:

Retrieve processed records

To retrieve all records being processed by the sync, make a GET request to /developers/data-sync/2027-03-beta/connections/{connectionId}/list-records. You can optionally include the query parameters in the table below to filter the results: This will include failing and excluded records, ordered by lastActivityAt (in descending order). A cursor preserves that order across pages. The response includes the following properties: status options lastActivity options error details Each result contains at least one object identifier. A failure can have multiple categories. categories values: For example, a response may resemble the following:

Retrieve connection analysis

To retrieve a diagnosis of the connection’s current health and possible next actions, make a GET request to /developers/data-sync/2027-03-beta/connections/{connectionId}/analysis. This analysis is based on sync health record data and cached error log analyses. The response will include the following properties: analysisStatus values: outcome values: recommendedAction values: An example response is shown below:
Last modified on November 13, 2026