Inlet API use cases

This article explores the wide range of applications for integrating with the Inlet API, demonstrating how our platform can transform your business operations. Discover how leveraging Inlet's capabilities can streamline processes, enhance security, and provide exceptional customer experiences across various industries and scenarios.


Table of Contents:

  1. Create a code for a guest
  2. Set door unlocked for a period
  3. Direct access via an SMS
  4. Using a mobile key to gain access
  5. Use an app with a button to open a door

1. Create a code: The guest enters the provided code to open the door

To generate an access code, use the /GrantAccess endpoint with the operation = 'code' parameter. Refer to the Swagger documentation for details on expected success or error responses. Upon receiving a successful response, store the ReferenceId. This ID will be needed if you need to update or revoke access later.

You can provide the phoneNumber along with the countryCode or use the countryCode field directly. If SMS notifications are configured for the specified lock or location, an SMS with the code will be sent to the guest. If phoneNumber is not provided or SMS notifications aren’t configured, no SMS will be sent, and your platform (or another service) will need to handle guest communication.

Additionally, save the formatted access code in your system as a backup in case email or SMS notifications fail. This way, you can still provide the code to the guest through alternative methods. Note that codeFormatted includes any symbols required before or after the code, such as #1234*.


2. Set the door unlocked in a period of time

To set a door unlocked in a time period, use the /GrantAccess endpoint with the operation = 'unlock' parameter. Refer to the Swagger documentation for details on expected success or error responses. Upon receiving a successful response, store the ReferenceId. This ID will be needed if you need to update or revoke access later.

You can provide the phoneNumber along with the countryCode or use the countryCode field directly. If SMS notifications are configured for the specified lock or location, an SMS with the code will be sent to the guest. If phoneNumber is not provided or SMS notifications aren’t configured, no SMS will be sent, and your platform (or another service) will need to handle guest communication.


3. Direct access through SMS: The guest clicks a link provided to open the door

To grant door access to a user via SMS, use the /GrantPulseAccess endpoint. The Swagger documentation provides details on success and error responses. On a successful response, save the ReferenceId for potential updates or revocation of the pulse access in the future.

Include the phoneNumber and countryCode (or use the countryCode field). If SMS notifications are configured, an SMS with the access URL will be sent to the guest. If phoneNumber is not provided or SMS is not configured for the lock/location, no SMS will be sent, and guest communication will need to be managed by your platform.

Additionally, store the access URL in your system. If email or SMS communication fails, your platform must be able to provide the URL to the guest through alternative means.


4. Using a mobile key to gain access

To generate a mobile key, use the /GrantAccess endpoint with the operation = 'mobileKey' parameter. The Swagger documentation provides details on the expected success and error responses. Upon a successful response, store the ReferenceId, which is necessary for updating or revoking access in the future.

Depending on the requirements of the access control system issuing the mobile key, you will need to send either the phoneNumber with the countryCode (or use the countryCode field) or an email address to Inlet.


5. A button inside my app to open the door

Generate PulseAccess as in "4: Direct access through SMS" but without passing either phonenumber or email details. You could then store the returned url parameter and when the button is clicked you trigger a POST request to the same url. This will grant you with a json response containing the status of the request.

The response for the POST could be as follows:

{
	"status": "success",
	"code": 200
}
{
	"status": "warning",
	"code": 422,
	"message": "The Pulse has reached uses limit."
}
{
	"status": "warning",
	"code": 422,
	"message": "The Pulse Open has expired"
}
{
	"status": "warning",
	"code": 422,
	"message": "Wrong `referenceId` provided"
}
{
	"status": "error",
	"code": 424,
	"message": "Unable to contact the lock, the lock appears offline. Please contact the lock owner and inform about this error."
}