URL Handler
Home Assistant supports opening from other apps via URL.
Platform compatibility
Platform support of different types of deeplinks will vary, consult the table below to see which deeplink types are available for your platform.
Deeplink type | Android | & |
---|---|---|
Navigate | ✅ | ✅ |
Call service | ✅ | |
Fire event | ✅ | |
Send location | ✅ |
Navigate
This allows you to update the frontend page location via a deeplink. To build a deeplink, follow these steps:
- Navigate to the link you'd like to deeplink to in the web app, e.g.
http://homeassistant.local:8123/dashboard-mobile/my-subview
- Copy the path portion of the URL, in this example that would be
/dashboard-mobile/my-subview
- Craft your URL by starting with
homeassistant://navigate
and adding the path, e.g.homeassistant://navigate/dashboard-mobile/my-subview
, BETA Specifying which server to navigate to is supported in iOS and in beta for Android
By default the App will ask which server you want to navigate to in case you have multiple servers.
To define which server you want to navigate to, use the query param ?server=
like the example below:
homeassistant://navigate/webcams?server=My%20home
when your server name is My Home
, or use ?server=default
if you want to navigate to the first server available.
Call service
Example: homeassistant://call_service/device_tracker.see?entity_id=device_tracker.entity
Query parameters are passed as a dictionary in the call.
If multiple servers are connected to an app, call_service
links will be handled using the first server in the list.
Fire event
You can create an event trigger and fire the event.
Example: homeassistant://fire_event/custom_event?entity_id=MY_CUSTOM_EVENT
Query parameters are passed as a dictionary in the call.
If multiple servers are connected to an app, fire_event
links will be handled using the first server in the list.
Send location
Example: homeassistant://send_location/