Registration and authentication
To interact with the API, you must obtain an account first. An account can be created by existing users or by Kisi Support.
Sign in
Once you have signed up and confirmed your email, you can now sign in to create an authentication_token
.
- Sign in using the email and password, through a
POST
call to/users/sign_in
or/logins
- If the login is successful, the response will contain the
authentication_token
field/ Its value will be needed for the subsequent API calls.
Each time you sign in, this token will be different. If the login is not successful, you will get an error message.
Integration partner headers
We recommend that integration partners include these headers in requests to the Kisi API:
X-Kisi-Integration-Identifier: <name of integration partner>
X-Kisi-Integration-Contact: <contact(email) of the integration partner>
Multiple accounts on mobile
To manage multiple accounts on mobile, please refer to this guide
Generate a Kisi API key
You need to have organization administrator or organization owner rights to create an API key. We recommend creating API keys from the organization owner's account, to avoid the API key becoming invalid when an organization admin loses their admin rights.
- Sign in to Kisi
- On the top right corner, click on your name and click on My Account
- Next, select the API tab and click on Add API key
- Enter your name, your Kisi password, and your verification code and click Add
- Copy the API key shown on the screen and click Close
Please note that you can't change your API key. If you don't remember the password or you want to change the name, you will have to create a new API key.
White labeling
White labeling allows you to transparently integrate Kisi functionalities into your own applications, without requiring users to register for a Kisi account.
This allows your users, for instance, to unlock Kisi-enabled doors with your app.
Creating white label users
For creating white-label users, the authorization token of the organization owner or an admin is required. You will need to make a call to the members endpoint, sending the authorization token and a request payload:
{
"member": {
"email": "email-of-the-user@example.com",
"confirm": true,
"send_emails": false
}
}
The user will be created and automatically confirmed and will not receive notifications from Kisi. Omitting the send_emails
field from the request payload will result in the user receiving emails from Kisi. By default, we recommend setting the send_emails
to false
.
Creating logins on behalf of users
Kisi device logins can be created on behalf of users in an organization. To do that, send a request to the Kisi API login endpoint with the authorization token of the organization owner or an admin and the following payload:
{
"login": {
"type": "device",
"email": "email-of-the-user@example.com"
}
}
The login can then be used subsequently to make requests to the Kisi API on behalf of the user.