Prerequisites
- An API key, and a bearer token you create from it. See Authenticate with Chift API.
- A sync built with Chift, identified by a
syncid. Chift builds the sync and its flows with you. Find thesyncidwith Get syncs. - At least one active connector for the software your end-user connects. See Activate a connector. You cannot connect a connector you have not activated.
What your end-user connects
A sync connects two Unified APIs. Usually, one side is your own software. This side is the same for every end-user, so your end-user does not choose it. Your end-user chooses only the other side: their own software, such as their accounting software.Example. Your product is an e-commerce software. The sync fetches invoices from your software. It books them into the end-user’s accounting software. The e-commerce side is always your software. Your end-user chooses only their accounting software.
Two ways to present the choice
You can present the connector choice in two ways. Both ways run the same flow. They differ in one point only: who shows your end-user the connectors for their software. It is a trade-off between a native experience and the amount you build. Embedded connector-picker — you show the connector choice inside your own product. You pass the chosen connector asintegrationids. The Chift-hosted sync page then opens with the connector pre-selected. This gives the most on-brand experience, but you build and maintain that screen.

Embedded connector-picker: your end-user chooses their software inside your product.
integrationids. Your end-user then chooses their software on the Chift-hosted page.

Chift connector-picker: your end-user chooses their software on a Chift-hosted page.
The flow
1
Create the consumer
Create one consumer per end-user. Store the returned API reference: Create new consumer ↗
consumerid on your end-user record. Reuse it for every sync and connection that end-user makes.Already have a
consumerid for this end-user? Skip this step.2
Fetch the connectors (embedded connector-picker only)
Skip this step if you use the Chift connector-picker.
status=active returns only the connectors you have activated. Each entry includes integrationid (an integer), name, api, and logo fields. Filter on api to show only the connectors for the software your end-user chooses, such as accounting.API reference: Get list of integrations ↗3
Present the connector-picker
Choose the option that matches your setup (see Two ways to present the choice):Embedded connector-picker — render the list from the previous step in your own UI. Let your end-user choose the connector for their software. Pass the chosen
integrationids in the next step.Chift connector-picker — you build nothing here. Skip this step. Omit integrationids in the next step. Your end-user chooses their software on the Chift-hosted page after you send the link.4
Create the sync activation link
Create the link for this consumer with a API reference: Retrieve the url of a sync for a specific consumer ↗
POST. Pass the syncid of the sync Chift built for you.The call returns one field,
url.Your end-user chooses only the connector for their own software. Your own software is usually the only active connector of its type on your account, so Chift selects it automatically and you do not pass it.
integrationids accepts at most one id per Unified API. Two ids for the same Unified API return HTTP 400. An id that is not part of the sync also returns HTTP 400.5
Send your end-user to the activation link
Redirect your end-user to the returned
url, or email it to them.Your end-user opens the Chift-hosted sync page. There, your end-user connects their software and confirms the mappings the flow needs. If you set integrationids, the connector is pre-selected. If you do not, your end-user first chooses their software on the Chift connector-picker (see Two ways to present the choice).6
Confirm the setup
When your end-user finishes, read the sync status for the consumer. Confirm the status is
active.status returns active once the consumer completes the setup. Otherwise it returns inactive. When the status is inactive, status_details explains why.Do not rely on the redirect alone. An end-user who abandons the flow never triggers it. See Monitor sync executions to monitor the sync over time.API reference: Get sync information for one consumer ↗Next steps
Activation links & redirects
The sync activation link, connector pre-selection, and the redirect.
Monitor sync executions
Confirm setup, list executions, and trigger a run.
Error codes
Every code the endpoints above can return.