← Back to docs

Google Home API

Language: SV | EN | SV

Google Home API

Tools exponerar en behörighetsstyrd Google Home-integration för Home Graph-anrop.

Åtkomstmodell

  • API-rutter finns under /api/google-home/*
  • Kräver inloggad användare med behörigheten google-home.use (admins tillåts)
  • Adminkonsol finns på /admin/google-home

Endpoints

POST /api/google-home/request

Generisk wrapper för stödja Google Home Graph-endpoints.

Request body:

{
  "endpoint": "v1/devices:query",
  "payload": {
    "agentUserId": "demo-user",
    "inputs": []
  }
}

POST /api/google-home/devices/query

Snabb-endpoint för statusfrågor.

Request body:

{
  "agentUserId": "demo-user",
  "inputs": []
}

POST /api/google-home/devices/request-sync

Snabb-endpoint för synkbegäran.

Request body:

{
  "agentUserId": "demo-user",
  "async": true
}

POST /api/google-home/push/tokens/register

Registrera/uppdatera mobilens push-token för aktuell användare.

Request body:

{
  "token": "fcm-device-token",
  "platform": "android",
  "device_label": "Pixel 9"
}

GET /api/google-home/push/tokens

Lista aktiva push-tokens för aktuell användare.

DELETE /api/google-home/push/tokens/{tokenId}

Avaktivera ett registrerat push-token för aktuell användare.

POST /api/google-home/push/test

Skicka test-push till alla aktiva tokens för aktuell användare.

Request body:

{
  "title": "Tools Google Home",
  "body": "Push-notiser är konfigurerade och fungerar."
}

Svarsformat

Lyckade/misslyckade svar följer detta format:

{
  "ok": true,
  "status": 200,
  "endpoint": "v1/devices:query",
  "data": {},
  "push": {
    "attempted": 1,
    "delivered": 1,
    "ok": true,
    "error": ""
  }
}

Om credentials saknas eller endpoint inte stöds returneras ok=false med error och relevant HTTP-status.

Konfiguration

Sätt credentials i .env:

  • GOOGLE_HOME_API_BASE_URL (standard https://homegraph.googleapis.com)
  • GOOGLE_API_KEY (valfri)
  • GOOGLE_HOMEGRAPH_BEARER (valfri)
  • GOOGLE_FCM_SERVER_KEY (för push-notiser)
  • GOOGLE_FCM_ENDPOINT (standard https://fcm.googleapis.com/fcm/send)
  • GOOGLE_HOME_TIMEOUT (standard 15)

Minst en credential (GOOGLE_API_KEY eller GOOGLE_HOMEGRAPH_BEARER) måste vara satt.