This document gives you more information about connections. It explains the lifecycle of a connection from the creation until the possible deletion.
Connections make the link between consumers and the software. Each consumer can have multiple connections but only one connection per integration (Odoo, Sage, …) A connection is represented by a name
, a link to a specific software
and link to a specific Chift API
. A connection will for example represent the credentials to connect to an Odoo instance for a specific consumer.
The API can be used to retrieve the list of active connections for consumers and as well to get a public URL that consumers can use to configure their connections. Optionally for specific integrations you can as well pass the credentials required when creating the connection allowing you to create connections for your customers; this can be useful for specific use cases.
There are two ways of managing connections:
You can manage connections through Chift’s platform. This is easy to help you onboarding your clients or when you are in an exploration phase. Through the platform, you can create a consumer and you can access the link that can be used to create a connection. The connection will be created behind the scene for you. Once created, you will see on the consumer the connected software and you will be able to use our unified APIs.
You can manage connections through our API. This is the preferred way to build a fully embedded experience in your software. The API gives you the possibility to:
country
code to filter the list of connectors shown to the user. You can only have one connection per type of integration (Odoo, Sage, …) for the same consumer.
One consumer can have multiple connections for the same API but only one connection for the same integration/connector (e.g. Odoo). When you want to support multiple connections for the same API, you will have to pass a specific header in the HTTP requests as otherwise we will not be able to know which connection to use. This is only needed when you want to work with multiple connections for the same API and for the same consumer.
For this specific use case, you can use one of the following two headers that you can pass in your HTTP requests when making requests on the unified API:
The diagram below explains the different phases and statuses of connections. It’s important to understand that a connection can be ‘active’ or ‘inactive’. Only when the connection is ‘active’, you will be able to use it to process requests through the unified APIs. The status of a connection is managed behind the scene for you and should evolve automatically through the correct lifecycle based on the input of your customers. This is the job we help you to not worry about. Next to that we give you through our API and the webhooks all the possibilities to have a detailed view on the status of your connections in order for you to build the best experience for your customers.
Notes: