Send digital credentials
By sending digital credentials (access links or QR codes), you can allow one-time users, visitors, and temporary staff to unlock doors in your place without having to sign up for a Kisi account or download the mobile apps. Depending on your needs, you can either:
- Send digital credentials via automated emails
- Send digital credentials via customized emails
- Fetch doors to create custom landing pages
Users with a digital credential can unlock doors associated with the link without having to sign in. Also, Geofence restrictions and Kisi Reader restrictions do not apply to digital credentials, allowing remote door opening from any location. To ensure secure usage, please follow our recommended access link best practices.
Send digital credentials via automated emails
In this use case, once you run the request, Kisi will send an automatic email to the defined email address, containing the digital credential. Once clicking on the link, the user will land on a Kisi-branded page with one or more doors they are provided access to.
- Access link
- QR code
- Send a
POST
request to the Create group link endpoint, following the example below.
Example
curl --request POST \
--url https://api.kisi.io/group_links \
--header 'Authorization: KISI-LOGIN <API_KEY> ' \
--header 'Content-Type: application/json' \
--data '{
"group_link": {
"name": "string",
"group_id": 0,
"email": "user@example.com",
"valid_from": "2019-08-24T14:15:22Z",
"valid_until": "2019-08-25T14:15:22Z"
}
}'
name
- the name of the access linkgroup_id
- the ID of the group the access link will be associated toemail
- the email address the access link will be sent tovalid_from
- the date and time at which the access link becomes validvalid_until
- the date and time at which the access link ceases to be valid
Make sure to provide a meaningful name (e.g. the name of the user to whom the access link is sent to) to simplify access and unlock events auditing.
Response
If your request was successful, you'll receive a 200 OK
response with the access link object, the user by whom it has been issued, and the authentication token associated with this access link.
{
"id": 0,
"email": "user@example.com",
"group_id": 0,
"name": "string",
"valid_from": "2019-08-24T14:15:22Z",
"valid_until": "2019-08-25T14:15:22Z"
"issued_by": {
"id": 0,
"name": "string",
"email": "user@example.com"
},
"secret": "0"
}
- Send a
POST
request to the Create group link endpoint, following the example below. Remember to includequick_response_code_type: online
into your call.
Example
curl --request POST \
--url https://api.kisi.io/group_links \
--header 'Authorization: KISI-LOGIN <API_KEY> ' \
--header 'Content-Type: application/json' \
--data '{
"group_link": {
"name": "string",
"group_id": 0,
"email": "user@example.com",
"quick_response_code_type: "online",
"valid_from": "2019-08-24T14:15:22Z",
"valid_until": "2019-08-25T14:15:22Z"
}
}'
name
- the name of the QR codegroup_id
- the ID of the group the QR code will be associated toemail
- the email address the QR code will be sent toquick_response_code_type
- will generate a QR code (optionally offline capable) that can be scanned with compatible readers. Will be sent as part of the access link email, if an email address is provided.valid_from
- the date and time at which the QR code becomes validvalid_until
- the date and time at which the QR code ceases to be valid
Make sure to provide a meaningful name (e.g. the name of the user to whom the QR code is sent to) to simplify access and unlock events auditing.
Response
If your request was successful, you'll receive a 200 OK
response with the QR code image object, the user by whom it has been issued, and the authentication token associated with this QR code.
{
"id": 0,
"email": "user@example.com",
"group_id": 0,
"name": "string",
"quick_response_code_image": "string",
"valid_from": "2019-08-24T14:15:22Z",
"valid_until": "2019-08-25T14:15:22Z"
"issued_by": {
"id": 0,
"name": "string",
"email": "user@example.com"
},
"secret": "0"
}
A digital credential is always associated to a group. This means, the link provides access to the same doors its associated group provides access to.
Send digital credentials via customized emails
In some cases, you might want to omit the automatic Kisi email and customize it yourself before sending the digital credential.
- Send a
POST
request to the Create group link endpoint, while omitting theemail
field. Note: if you want to send a QR code instead of an access link, remember to includequick_response_code_type: online
into your call.
Example
curl --request POST \
--url https://api.kisi.io/group_links \
--header 'Authorization: KISI-LOGIN <API_KEY> ' \
--header 'Content-Type: application/json' \
--data '{
"group_link": {
"name": "string",
"group_id": 0,
"valid_from": "2019-08-24T14:15:22Z",
"valid_until": "2019-08-25T14:15:22Z"
}
}'
- Copy the
secret
value that is returned upon link creation - Paste the
secret
value to the end ofhttps://web.kisi.io/grouplinks/
when composing your email
Example
https://web.kisi.io/grouplinks/123
Fetch doors to create custom landing pages
On top of customizing emails, you might also want to design a custom page that presents the available doors to the user, e.g. add your own logo, colors, or render the door buttons based on your company's design guidelines.
To achieve this, you can fetch a list of all doors that the link provides access to, and use this information to create your own custom doors overview page.
- Generate the access link or QR code as shown in the previous step
- Copy the
secret
value that is returned upon link creation - In a new request, change the
Authorization
header value toKISI-GROUP-LINK
- Paste the
secret
value right afterKISI-GROUP-LINK
- Send a
GET
request to the Fetch locks endpoint, as shown below
Example
curl --request GET \
--url https://api.kisi.io/locks \
--header 'Authorization: KISI-GROUP-LINK <secret> ' \
--header 'Content-Type: application/json'
Response
If your request was successful, you'll receive a 200 OK
response with a list of doors that the respective link provides access to.