Schlage Home Device Structure
Operational structure documentation for the Schlage Home Device entity, mapping each field to its source endpoint and the asynchronous command pattern that mutates it.
Type:
Properties: 0
Access ControlSmart LockSmart HomeMobile CredentialsBluetoothBLEIoTSecurityWebhooksOAuthSchlageVon DuprinENGAGE
Schlage Home Device Structure is a JSON Structure definition published by Allegion.
{
"title": "Schlage Home Device Structure",
"description": "Operational structure documentation for the Schlage Home Device entity, mapping each field to its source endpoint and the asynchronous command pattern that mutates it.",
"entity": "Device",
"primaryKey": "deviceId",
"endpoints": {
"list": "GET /devices",
"get": "GET /devices/{deviceId}",
"update": "PUT /devices/{deviceId}",
"lock": "POST /devices/{deviceId}/lock",
"unlock": "POST /devices/{deviceId}/unlock"
},
"fields": [
{ "name": "deviceId", "type": "string", "writable": false, "source": "Allegion-assigned" },
{ "name": "name", "type": "string", "writable": true, "source": "End-user labelled" },
{ "name": "model", "type": "enum", "writable": false, "values": ["BE489WB", "BE499WB", "FE789WB"] },
{ "name": "firmwareVersion", "type": "string", "writable": false, "source": "Reported by device" },
{ "name": "batteryLevel", "type": "integer", "writable": false, "source": "Reported by device" },
{ "name": "wifiSignalStrength", "type": "integer", "writable": false, "addedOn": "2025-03-06", "source": "Reported by device" },
{ "name": "connectivityState", "type": "enum", "writable": false, "values": ["Online", "Offline"] },
{ "name": "lockState", "type": "enum", "writable": false, "values": ["Locked", "Unlocked", "Unknown"], "changedVia": ["POST /devices/{id}/lock", "POST /devices/{id}/unlock", "Physical interaction"] }
],
"asyncPattern": {
"description": "POST, PUT, and DELETE requests to the device management endpoints will respond with a 202 ACCEPTED response. The final outcome is surfaced via a CommandStatusUpdated webhook and is readable at GET /devices/{deviceId}/commands/{commandId}.",
"successResponse": 202,
"completionSignal": "CommandStatusUpdated webhook + GET /devices/{deviceId}/commands/{commandId}"
},
"webhookEvents": [
"DeviceLockStateChanged",
"DeviceConnectivityStateChanged",
"DeviceBatteryLevelChanged",
"DeviceKeypadLockedOut",
"DeviceAlarmTriggered"
]
}