Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.myzendo.com/llms.txt

Use this file to discover all available pages before exploring further.

Intro

Push notifications can open a specific screen in the Zendo app when tapped. For example, a notification about your doorbell can open its live stream directly so you can see who’s there.

Set up

Before you start, make sure you have push notifications set up. If push notifications are already configured, open the Zendo iOS/Android app, go to Settings > Property > Push Notifications and tap Refresh Settings to make sure Home Assistant has the latest list of available destinations.

List available destinations

To see which destinations are available, call the list_deep_link_destinations service.
  1. Go to Developer Tools > Services in Home Assistant.
  2. Select Zendo: List deep link destinations.
  3. Click Call Service.
  4. The response panel shows the available destinations.

Response format

destinations:
  - id: "securityCamera_abc123"
    destination: "security_camera"
    title: "Front door"
    subtitle: "Camera/Doorbell"
    entityType: "security_camera"
  - id: "securityCamera_def456"
    destination: "security_camera"
    title: "Back garden"
    subtitle: "Camera/Doorbell"
    entityType: "security_camera"
FieldDescription
idThe identifier you use in automations. This is what you pass to deep_link_destination.
destinationThe type of destination (e.g. security_camera).
titleThe name of the destination (e.g. the camera’s label).
subtitleSecondary description (e.g. “Camera/Doorbell”).
entityTypeThe entity category.

Send a notification that opens a destination

Use the zendo.send_notification service with the deep_link_destination field set to the id of the destination you want to open.
Opening a destination from a notification bypasses Family Sharing (Access Control). The receiver can view and control the accessory even if they wouldn’t normally have access. Make sure you’re sending the notification to the right person.

Example: doorbell notification

A doorbell press is the ideal use case - the notification tells you someone is at the door, and tapping it opens the doorbell camera stream so you can see who it is.
automation:
  - alias: "Doorbell pressed - notify household"
    trigger:
      - platform: state
        entity_id: binary_sensor.doorbell_press
        to: "on"
    action:
      - service: zendo.send_notification
        target:
          entity_id:
            - notify.zendo_owner
            - notify.zendo_bob
        data:
          message: "Someone is at the door"
          interruption_level: "time_sensitive"
          deep_link_destination: "securityCamera_abc123"
When the doorbell is pressed, both people receive a time-sensitive notification. Tapping it opens the Zendo app directly to the doorbell camera’s live stream.

Without a destination

The deep_link_destination field is optional. Omitting it sends a normal notification that opens the default notification view when tapped.
- service: zendo.send_notification
  target:
    entity_id: notify.zendo_owner
  data:
    message: "Someone is at the door"

What happens when a destination can’t be found

The notification always arrives, even if the destination can’t be resolved. The destination is best-effort.
ScenarioWhat happens
deep_link_destination ID not foundWarning logged, notification sent without a destination.
Camera removed after the destination was setNotification sends with the destination. The Zendo app handles the missing camera gracefully.
deep_link_destination field omittedNormal notification, no destination.