App Example

Mobile users and admins can interact directly with apps using canvases. Alternatively, apps can be set up to leverage webhooks and other data from the Optix API without introducing new UI to the mobile app or admin dashboard. Apps can actively retrieve information from the Optix platform querying or mutating data via an Optix Platform GraphQL endpoint.

Each app can use different features and resources. The following is an example of how we can think about building an app that uses all three of the available technologies: webhooks, the API, and canvases.

On this page

Example app: Door access control

To describe the features of the ecosystem, we will use an example of an integration with an existing door access control system.

This hypothetical app’s primary purpose is to connect a third party system that electronically controls door locks. This app will allow a coworking space’s members to get into a room they booked using the Optix mobile app. This app will also notify the admin when any bookings are scheduled outside of the opening hours.

The requirements for this app are:

RequirementsSolution

As an admin, I receive an email if a booking’s start or end time occurs outside of the venue opening hours

When the user creates a new booking, a webhook is triggered that targets an endpoint in the app. This endpoint verifies the new booking by making a call to the Optix API bookings object. If the start or end time is outside of the opening hours, the app will send an email to the venue admin.

As an Optix mobile app user, I can click a button on the home screen, which opens a full-screen experience to allow me to unlock doors that I have permission to unlock

The app will include an HTML user interface that lists available locks, including an ‘unlock’ button.

To display this interface inside the iOS/Android mobile app, it will specify in the app settings that it wants a canvas to appear on the home screen, using the MOBILE_HOME_PRIMARY canvas.

When loaded in the Optix user app, the URL specified has the User’s token appended to it. You can write Javascript code to retrieve all the data related to that user’s bookings, via the public API.

This data empowers the app to display only the locks that the user has permission to unlock, i.e., locks for doors that are linked to the room they just booked.

Design

Below is a mockup of how the app could look. You can see the button that launches the canvas from the mobile app home screen, then the canvas containing the app’s UI on the right

Got questions?

We are here to help. Ask us a question and we’ll do our best to answer as soon as possible.

Contact Us

Previous

Next