Skip to content
OAOpenAppPhysical Security as a Service
Login

Bridge Home Assistant entities to OpenApp

Many homes and small buildings already run Home Assistant for relays, garage doors, and sensors. OpenApp acts as a control plane on top: policies, guest invites, virtual intercom, and audit — while entity actions still drive your existing switch.garage_door (or similar) through the Home Assistant integration.

This guide is for integrators who want no rip-and-replace. Product setup: Home Assistant integration. Comparison: OpenApp + Home Assistant vs HA-only.

Agent / SDK / Dashboard
→ OpenApp entity action (switchable.open)
→ Home Assistant integration
→ HA REST API → switch.garage_door
  1. Create a Home Assistant long-lived access token.
  2. In OpenApp, add integration provider type home_assistant with base_url and token. See Setup reference.
  3. Create a device on that integration.
  4. For each controllable point, create an OpenApp entity with external_id set to the Home Assistant entity id (e.g. switch.garage_door).
Terminal window
export OPENAPP_API_BASE='https://api.openapp.house/api/v1'
export OPENAPP_API_KEY='v1_openapp_YOUR_SECRET'
export OPENAPP_ORG_ID='01HORG00000000000000000000'
export ENTITY_ID='01HENTITY000000000000000000'
curl -sS -X POST \
-H "Authorization: Bearer ${OPENAPP_API_KEY}" \
-H "Content-Type: application/json" \
-H "X-Org: ${OPENAPP_ORG_ID}" \
-d '{}' \
"${OPENAPP_API_BASE}/entities/${ENTITY_ID}/actions/switchable.open"

OpenApp must reach your HA instance (network, DNS, firewall).

await client.entities.by_id(entity_id).open()
HA aloneOpenApp + HA bridge
Automations in HA YAMLSame hardware + org-wide API, invites, intercom
Per-household siloMulti-site orgs, roles, delegation
Ad-hoc guest accessTime-bound invites + public portal flows
  • List entities on the integration to verify external_id mapping before automating.
  • Handle 501 on unsupported actions — see Entities SDK.
  • Do not expose HA tokens to LLM prompts; use server-side env vars.

← PalGate gate · Agents overview