Authentication

API CREDENTIALS

After creating an application on the dashboard, you get a set of API credentials (client_id and client_secret) that are sandbox credentials.
Those credentials are used to discover the API with some limitations: it can't have more than 20 users.
When ready to go in production, contact us and we'll provide you with your production credentials.

❗️

Do not use your sandbox credentials in your production environment!

To interact with the API, you must provide the client_id and the client_secret of an environment as a query parameter for every request.
This allows us to identify the application making the request.

curl "https://sync.bankin.com/v2/banks?client_id=MY_CLIENT_ID&client_secret=MY_CLIENT_SECRET" \
	-H 'Bankin-Version: VERSION'

ACCESS TOKEN

While some resources are public (like banks or categories) meaning that only providing a client_id is required, the majority of the resources need a logged in user.

📘

You can create a new user by calling the create a user method

To authenticate a user, you must provide an Authorization request header (using the bearer authentication scheme) in addition to the client_id parameter when making API request.

curl https://sync.bankin.com/v2/banks?client_id=MY_CLIENT_ID&client_secret=MY_CLIENT_SECRET \
	-H 'Authorization: Bearer TOP_SECRET_ACCESS_TOKEN' \
	-H 'Bankin-Version: VERSION'

The access token is obtained by calling the authenticate endpoint.