Read-only endpoints for checking your credential, reading energy data, and monitoring gateway health through the Vendor API.
See Authentication for authentication.
Base & Authentication
| Item | Value |
|---|---|
| Base URL | http://<gateway-ip>:5000/api/vendor |
| Auth header | Authorization: Bearer <apiKey> |
Verify your credential
GET /me
Returns your credential's identity and exactly which operations and devices it can access — the fastest way to confirm setup and debug a 403.
{
"success": true,
"data": {
"credentialId": "72e128ae-...",
"name": "Crestron Test (Vendor API)",
"authType": "bearer",
"allowedOperations": ["monitor", "read", "control"],
"allowedDeviceIds": [],
"allowedSceneIds": [],
"restricted": false
}
}
Empty allowedDeviceIds/allowedSceneIds mean the credential can reach every exposed device and scene.
What each operation grants
| Operation | Endpoints |
|---|---|
monitor | GET /devices, /devices/:id/state, /groups, /energy, /health |
read | GET /devices/:id, /scenes, /energy/history |
control | POST /devices/:id/control, /scenes/:id/activate, /groups/:id/control |
Energy — current
GET /energy — operation: monitor
{
"success": true,
"data": { "readings": [ { "deviceId": "319701d5-...", "powerWatts": 0.5, "timestamp": "2026-08-07T..." } ] }
}
Energy — history
GET /energy/history — operation: read
Historical energy logs. Filter with query parameters:
| Parameter | Purpose |
|---|---|
from / to | ISO 8601 date range |
deviceId | Limit to a single device |
Returns { success, data: { count, logs[] } }.
Bridge health
GET /health — operation: monitor
{
"success": true,
"data": { "serialConnected": true, "onlineDevices": 4, "totalDevices": 6, "uptimeSeconds": 164413 }
}
Use this as a lightweight liveness check for your integration.