Note: This is an advanced developer feature only available for customers on the Enterprise plan.
Embedded Apps is a feature which allows you to embed your remotely hosted, custom applications within the Rex interface. Embedding your custom apps into the Rex interface can go a long way to helping foster an integrated, seamless experience for users in your agency.
How they work
Embedded Apps are simply iFrame that can be configured to show in Rex, loading a custom URL of your choosing.
To give your app awareness of the context in which it sits, we are able to dynamically merge in several key data points into the URL. The available data points that can be merged is summarised below:
There are currently three embed types/app locations we support:
- Record Tab: Shows up as a custom tab on a Contact, Listing or Property Record
- Record First Tab Top Bar: Shows up as a bar at the top of the "Key Details" tab. Only supported for Contacts currently.
- Custom Dashboard: Shows up as a custom menu item under the "Dashboards" menu, and when clicked, shows a full-screen view.
Creating an Embedded App
- Go to Settings > Embedded Apps
- Click the plus button
- Fill out the fields in the dialog
- Name: The name of the app. Note that this will be used to label the app in the interface.
- App URL to embed: The URL that points to your remotely hosted app. The information tooltip covers all the available merge fields at your disposal. For most applications, you'll almost certain want {{record_id}}
- Embed type: The type/location of the iFrame embed. Some types also expose width and height options.
- If using a "Record Tab" or "Record First Tab Top Bar" type, we recommend a width of 640
- Record types: What record types the app should be enabled for. Note that Record First Tab Top Bar is not currently available for Properties or Listings.
FAQ
How/where do I actually build my application?
The short answer is: it's totally up to you. Embedded Apps are built entirely in isolation of Rex: since all we are doing simply loading a URL, feel free to host your app anywhere, build it with any technology you wish etc.
There are only two real specific considerations to consider
- You should avoid setting an X-Frame-Options header
- Your app should be equipped to handle the URL parameters that are being merged into it (if required).
How can I make my application take Rex actions?
We are considering offering a more comprehensive SDK in the future that will enable direct interaction with the Rex interface via a two-way library. For now though, your application should be calling the Rex API directly to conduct any actions it needs, using data passed through via the URL.