Granting Access

The ButterflyMX system allows a resident to grant access to an access point in the building either for themselves or for a visitor.

This guide outlines the requirements for implementing the ability to grant access to a specific access point in the building. In your mobile application, you are able to list the available ButterflyMX access points and allow the resident to grant access to that specific access point.

Getting started

This integration uses the ButterflyMX mobile SDK that is available for iOS and Android. In addition, to the ButterflyMX mobile SDK, you also could use our API directly from your mobile application. Lastly, we have created and maintain iOS and Android sample applications that showcase the integration.

In order for your application to work, you will need to do the following:

  1. Include our mobile SDK into your application and ensure compatibility.
  2. Implement authorization.
  3. Implement call UI/UX using our mobile SDK
  4. List access points
  5. Granting access
  6. Optional
    a. Removing authorization (User logout)
    a. Access history

1. Compatibility

Our mobile SDK is distributed using popular package managers. We use CocoaPods to distribute the iOS SDK and GitHub package manager for the Android SDK.

Please follow the SDK integration section of our mobile SDK reference (iOS or Android).

2. Authorization

ButterflyMX utilizes the OAuth 2 authorization code flow to facilitate authorization. This authorization allows the resident to authenticate to their ButterflyMX account to allow authorization from your application. This requires a button that initiates this authorization workflow within your application that is styled to the ButterflyMX brand guidelines.

Please follow the SDK authorization section of our mobile SDK reference (iOS or Android).

3. Implement call UI/UX using our mobile SDK

  a. List access points - A resident is able to view a list of all available access points. This is dependent on the permission group settings.
b. Grant access - A resident is able to grant access either for themselves or for a visitor to a specific access point. The system tracks when access was granted and the event will be recorded as an access log.

Please follow the SDK door release section of our mobile SDK reference (iOS or Android).

You can reference our demo applications for an example of the UI/UX implementation.

4. Optional features

Removing authorization (User logout) - It is a partner’s responsibility to implement the logout experience to make sure that resident does not receive notifications and does not have access to ButterflyMX SDK.
Access history - Access history can be retrieved by the resident and will include date and time that the request for granting access was made. To retrieve access history, a partner should use the Access History API.