Capability Discovery
The /capabilities endpoint lets adapters declare their supported devices, types, actions, and features.
When It's Called
- Onboarding — When an admin clicks "Preview Capabilities" during adapter setup
- Periodic sync — ZenEdge refreshes capabilities to detect changes
- Manual refresh — Admin triggers a capability re-scan
Response Schema
{
"adapter": {
"name": "My Custom Adapter",
"version": "1.0.0",
"vendor": "Acme Corp",
"protocol": "2.0"
},
"devices": [
{
"device_id": "ada-unique-id",
"name": "Front Door",
"type": "lock",
"model": "SmartLock Pro",
"brand": "Acme",
"criticality": "CRITICAL",
"actions": ["unlock", "lock", "status", "generate_pin"],
"webhook_capable": true,
"html_embed": true
}
]
}
Field Reference
Adapter Fields
| Field | Required | Description |
|---|---|---|
name | Yes | Human-readable adapter name |
version | Yes | Adapter software version |
vendor | Yes | Device vendor name |
protocol | Yes | Protocol version ("2.0") |
Device Fields
| Field | Required | Description |
|---|---|---|
device_id | Yes | Unique device identifier |
name | Yes | Human-readable device name |
type | Yes | Device type: lock, wifi, fan, light, display, camera, sensor |
model | No | Device model identifier |
brand | No | Device brand name |
criticality | Yes | CRITICAL, STANDARD, or OPTIONAL |
actions | Yes | Array of supported action names |
webhook_capable | No | Whether the device can push events (default: false) |
html_embed | No | Whether /ui returns an embeddable tile (default: false) |
Next Steps
- Health & Heartbeat — Monitoring
- HTML Embed Builder — Building guest-facing UI