{"openapi": "3.1.0", "info": {"title": "UniFi Protect API", "version": "7.1.42"}, "servers": [{"url": "https://{host}/proxy/protect/integration", "description": "Local — console direto na LAN (header X-API-KEY)", "variables": {"host": {"default": "192.168.1.1", "description": "IP/host do console UniFi"}}}, {"url": "https://api.ui.com/v1/connector/consoles/{consoleId}/protect/integration", "description": "Remoto — Cloud Connector via Site Manager (header X-API-Key)", "variables": {"consoleId": {"default": "CONSOLE_ID", "description": "id do console (GET /v1/hosts)"}}}], "paths": {"/v1/meta/info": {"get": {"summary": "Get application information", "description": "Get generic information about the Protect application", "tags": ["Information about application"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"applicationVersion": {"type": "string", "description": "Software version.", "examples": ["1.0.0"], "title": "protectVersion"}}, "required": ["applicationVersion"]}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/viewers/{id}": {"get": {"summary": "Get viewer details", "description": "Get detailed information about a specific viewer", "tags": ["Viewer information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of viewer", "schema": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey", "state", "name", "mac", "liveview", "streamLimit"], "title": "viewer"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "patch": {"summary": "Patch viewer settings", "description": "Patch the settings for a specific viewer", "tags": ["Viewer information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of viewer", "schema": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}}, "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey", "state", "name", "mac", "liveview", "streamLimit"], "title": "viewer"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/viewers": {"get": {"summary": "Get all viewers", "description": "Get detailed information about all viewers", "tags": ["Viewer information & management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey", "state", "name", "mac", "liveview", "streamLimit"], "title": "viewer"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/liveviews/{id}": {"get": {"summary": "Get live view details", "description": "Get detailed information about a specific live view", "tags": ["Live view management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of liveview", "schema": {"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, "modelKey": {"type": "string", "const": "liveview", "description": "The model key of the liveview", "title": "liveviewModelKey"}, "name": {"type": "string", "description": "The name of this live view."}, "isDefault": {"type": "boolean", "description": "Whether this live view is the default one for all viewers."}, "isGlobal": {"type": "boolean", "description": "Whether this live view is global and available system-wide to all users"}, "owner": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "layout": {"type": "number", "minimum": 1, "maximum": 26, "description": "The number of slots this live view contains. Which as a consequence also affects the layout of the live view.", "examples": [9, 4]}, "slots": {"type": "array", "items": {"type": "object", "properties": {"cameras": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}, "cycleMode": {"type": "string", "enum": ["motion", "time"], "description": "Whether to switch to next camera in slot based on motion events or a strict time interval"}, "cycleInterval": {"type": "number", "description": "How long should each camera stream be shown for in seconds until we cycle to the next camera", "examples": [10, 30]}}, "required": ["cameras", "cycleMode", "cycleInterval"], "description": "Which cameras will be visible in a given slot and how will they be cycled through"}, "description": "List of cameras visible in each given slot. And cycling settings for each slot if it has multiple cameras listed."}}, "required": ["id", "modelKey", "name", "isDefault", "isGlobal", "owner", "layout", "slots"], "title": "liveview"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "patch": {"summary": "Patch live view configuration", "description": "Patch the configuration about a specific live view", "tags": ["Live view management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of liveview", "schema": {"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"allOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, "modelKey": {"type": "string", "const": "liveview", "description": "The model key of the liveview", "title": "liveviewModelKey"}, "name": {"type": "string", "description": "The name of this live view."}, "isDefault": {"type": "boolean", "description": "Whether this live view is the default one for all viewers."}, "isGlobal": {"type": "boolean", "description": "Whether this live view is global and available system-wide to all users"}, "owner": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "layout": {"type": "number", "minimum": 1, "maximum": 26, "description": "The number of slots this live view contains. Which as a consequence also affects the layout of the live view.", "examples": [9, 4]}, "slots": {"type": "array", "items": {"type": "object", "properties": {"cameras": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}, "cycleMode": {"type": "string", "enum": ["motion", "time"], "description": "Whether to switch to next camera in slot based on motion events or a strict time interval"}, "cycleInterval": {"type": "number", "description": "How long should each camera stream be shown for in seconds until we cycle to the next camera", "examples": [10, 30]}}, "required": ["cameras", "cycleMode", "cycleInterval"], "description": "Which cameras will be visible in a given slot and how will they be cycled through"}, "description": "List of cameras visible in each given slot. And cycling settings for each slot if it has multiple cameras listed."}}, "required": ["id", "modelKey", "name", "isDefault", "isGlobal", "owner", "layout", "slots"], "title": "liveview"}], "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, "modelKey": {"type": "string", "const": "liveview", "description": "The model key of the liveview", "title": "liveviewModelKey"}, "name": {"type": "string", "description": "The name of this live view."}, "isDefault": {"type": "boolean", "description": "Whether this live view is the default one for all viewers."}, "isGlobal": {"type": "boolean", "description": "Whether this live view is global and available system-wide to all users"}, "owner": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "layout": {"type": "number", "minimum": 1, "maximum": 26, "description": "The number of slots this live view contains. Which as a consequence also affects the layout of the live view.", "examples": [9, 4]}, "slots": {"type": "array", "items": {"type": "object", "properties": {"cameras": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}, "cycleMode": {"type": "string", "enum": ["motion", "time"], "description": "Whether to switch to next camera in slot based on motion events or a strict time interval"}, "cycleInterval": {"type": "number", "description": "How long should each camera stream be shown for in seconds until we cycle to the next camera", "examples": [10, 30]}}, "required": ["cameras", "cycleMode", "cycleInterval"], "description": "Which cameras will be visible in a given slot and how will they be cycled through"}, "description": "List of cameras visible in each given slot. And cycling settings for each slot if it has multiple cameras listed."}}, "required": ["id", "modelKey", "name", "isDefault", "isGlobal", "owner", "layout", "slots"], "title": "liveview"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/liveviews": {"get": {"summary": "Get all live views", "description": "Get detailed information about all live views", "tags": ["Live view management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, "modelKey": {"type": "string", "const": "liveview", "description": "The model key of the liveview", "title": "liveviewModelKey"}, "name": {"type": "string", "description": "The name of this live view."}, "isDefault": {"type": "boolean", "description": "Whether this live view is the default one for all viewers."}, "isGlobal": {"type": "boolean", "description": "Whether this live view is global and available system-wide to all users"}, "owner": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "layout": {"type": "number", "minimum": 1, "maximum": 26, "description": "The number of slots this live view contains. Which as a consequence also affects the layout of the live view.", "examples": [9, 4]}, "slots": {"type": "array", "items": {"type": "object", "properties": {"cameras": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}, "cycleMode": {"type": "string", "enum": ["motion", "time"], "description": "Whether to switch to next camera in slot based on motion events or a strict time interval"}, "cycleInterval": {"type": "number", "description": "How long should each camera stream be shown for in seconds until we cycle to the next camera", "examples": [10, 30]}}, "required": ["cameras", "cycleMode", "cycleInterval"], "description": "Which cameras will be visible in a given slot and how will they be cycled through"}, "description": "List of cameras visible in each given slot. And cycling settings for each slot if it has multiple cameras listed."}}, "required": ["id", "modelKey", "name", "isDefault", "isGlobal", "owner", "layout", "slots"], "title": "liveview"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "post": {"summary": "Create live view", "description": "Create a new live view", "tags": ["Live view management"], "requestBody": {"required": true, "content": {"application/json": {"schema": {"allOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, "modelKey": {"type": "string", "const": "liveview", "description": "The model key of the liveview", "title": "liveviewModelKey"}, "name": {"type": "string", "description": "The name of this live view."}, "isDefault": {"type": "boolean", "description": "Whether this live view is the default one for all viewers."}, "isGlobal": {"type": "boolean", "description": "Whether this live view is global and available system-wide to all users"}, "owner": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "layout": {"type": "number", "minimum": 1, "maximum": 26, "description": "The number of slots this live view contains. Which as a consequence also affects the layout of the live view.", "examples": [9, 4]}, "slots": {"type": "array", "items": {"type": "object", "properties": {"cameras": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}, "cycleMode": {"type": "string", "enum": ["motion", "time"], "description": "Whether to switch to next camera in slot based on motion events or a strict time interval"}, "cycleInterval": {"type": "number", "description": "How long should each camera stream be shown for in seconds until we cycle to the next camera", "examples": [10, 30]}}, "required": ["cameras", "cycleMode", "cycleInterval"], "description": "Which cameras will be visible in a given slot and how will they be cycled through"}, "description": "List of cameras visible in each given slot. And cycling settings for each slot if it has multiple cameras listed."}}, "required": ["id", "modelKey", "name", "isDefault", "isGlobal", "owner", "layout", "slots"], "title": "liveview"}], "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, "modelKey": {"type": "string", "const": "liveview", "description": "The model key of the liveview", "title": "liveviewModelKey"}, "name": {"type": "string", "description": "The name of this live view."}, "isDefault": {"type": "boolean", "description": "Whether this live view is the default one for all viewers."}, "isGlobal": {"type": "boolean", "description": "Whether this live view is global and available system-wide to all users"}, "owner": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "layout": {"type": "number", "minimum": 1, "maximum": 26, "description": "The number of slots this live view contains. Which as a consequence also affects the layout of the live view.", "examples": [9, 4]}, "slots": {"type": "array", "items": {"type": "object", "properties": {"cameras": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}, "cycleMode": {"type": "string", "enum": ["motion", "time"], "description": "Whether to switch to next camera in slot based on motion events or a strict time interval"}, "cycleInterval": {"type": "number", "description": "How long should each camera stream be shown for in seconds until we cycle to the next camera", "examples": [10, 30]}}, "required": ["cameras", "cycleMode", "cycleInterval"], "description": "Which cameras will be visible in a given slot and how will they be cycled through"}, "description": "List of cameras visible in each given slot. And cycling settings for each slot if it has multiple cameras listed."}}, "required": ["id", "modelKey", "name", "isDefault", "isGlobal", "owner", "layout", "slots"], "title": "liveview"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/subscribe/devices": {"get": {"summary": "Get update messages about devices", "description": "A WebSocket subscription which broadcasts all changes happening to Protect-managed hardware devices", "tags": ["WebSocket updates"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"anyOf": [{"oneOf": [{"type": "object", "properties": {"type": {"type": "string", "const": "add"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey", "name", "doorbellSettings", "armMode"], "title": "nvr"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey", "state", "name", "mac", "isMicEnabled", "osdSettings", "ledSettings", "lcdMessage", "micVolume", "activePatrolSlot", "videoMode", "hdrType", "featureFlags", "smartDetectSettings", "hasPackageCamera"], "title": "camera"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey", "state", "name", "mac", "cameraIds", "ringSettings"], "title": "chime"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey", "state", "name", "mac", "lightModeSettings", "lightDeviceSettings", "isDark", "isLightOn", "isLightForceEnabled", "lastMotion", "isPirMotionDetected", "camera"], "title": "light"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey", "state", "name", "mac", "liveview", "streamLimit"], "title": "viewer"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "micVolume", "isMicEnabled", "speakerState", "featureFlags"], "title": "speaker"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey", "state", "name", "mac", "platform", "clients", "maxClients"], "title": "bridge"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "mountType", "batteryStatus", "stats", "lightSettings", "humiditySettings", "temperatureSettings", "isOpened", "openStatusChangedAt", "isMotionDetected", "motionDetectedAt", "motionSettings", "alarmTriggeredAt", "alarmSettings", "leakDetectedAt", "externalLeakDetectedAt", "leakSettings", "tamperingDetectedAt", "wirelessConnectionState"], "title": "sensor"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "ledSettings", "sirenStatus", "connectionType", "wirelessConnectionState"], "title": "siren"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "awayState", "featureFlags", "wirelessConnectionState"], "title": "fob"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "ledSettings", "outputs", "inputs", "wirelessConnectionState"], "title": "relay"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiProcessor"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiPort"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}], "discriminator": {"propertyName": "modelKey", "mapping": {"nvr": "#/components/schemas/nvr", "camera": "#/components/schemas/camera", "chime": "#/components/schemas/chime", "light": "#/components/schemas/light", "viewer": "#/components/schemas/viewer", "speaker": "#/components/schemas/speaker", "bridge": "#/components/schemas/bridge", "sensor": "#/components/schemas/sensor", "siren": "#/components/schemas/siren", "fob": "#/components/schemas/fob", "relay": "#/components/schemas/relay", "aiprocessor": "#/components/schemas/aiProcessor", "aiport": "#/components/schemas/aiPort", "linkstation": "#/components/schemas/linkStation"}}, "title": "device"}}, "required": ["type", "item"], "title": "deviceAdd"}, {"type": "object", "properties": {"type": {"type": "string", "const": "update"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey"], "title": "nvrPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey"], "title": "cameraPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey"], "title": "chimePartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey"], "title": "lightPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey"], "title": "viewerPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey"], "title": "speakerPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey"], "title": "bridgePartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sensorPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sirenPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "fobPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "relayPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiProcessorPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiPortPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey"], "title": "linkStationPartialWithReference"}], "discriminator": {"propertyName": "modelKey", "mapping": {"nvr": "#/components/schemas/nvrPartialWithReference", "camera": "#/components/schemas/cameraPartialWithReference", "chime": "#/components/schemas/chimePartialWithReference", "light": "#/components/schemas/lightPartialWithReference", "viewer": "#/components/schemas/viewerPartialWithReference", "speaker": "#/components/schemas/speakerPartialWithReference", "bridge": "#/components/schemas/bridgePartialWithReference", "sensor": "#/components/schemas/sensorPartialWithReference", "siren": "#/components/schemas/sirenPartialWithReference", "fob": "#/components/schemas/fobPartialWithReference", "relay": "#/components/schemas/relayPartialWithReference", "aiprocessor": "#/components/schemas/aiProcessorPartialWithReference", "aiport": "#/components/schemas/aiPortPartialWithReference", "linkstation": "#/components/schemas/linkStationPartialWithReference"}}, "title": "devicePartialWithReference"}}, "required": ["type", "item"], "title": "deviceUpdate"}, {"type": "object", "properties": {"type": {"type": "string", "const": "remove"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}}, "required": ["id", "modelKey"], "title": "nvrReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}}, "required": ["id", "modelKey"], "title": "cameraReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}}, "required": ["id", "modelKey"], "title": "chimeReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}}, "required": ["id", "modelKey"], "title": "lightReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}}, "required": ["id", "modelKey"], "title": "viewerReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}}, "required": ["id", "modelKey"], "title": "speakerReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}}, "required": ["id", "modelKey"], "title": "bridgeReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}}, "required": ["id", "modelKey"], "title": "sensorReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}}, "required": ["id", "modelKey"], "title": "sirenReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}}, "required": ["id", "modelKey"], "title": "fobReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}}, "required": ["id", "modelKey"], "title": "relayReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}}, "required": ["id", "modelKey"], "title": "aiProcessorReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}}, "required": ["id", "modelKey"], "title": "aiPortReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}}, "required": ["id", "modelKey"], "title": "linkStationReference"}], "discriminator": {"propertyName": "modelKey", "mapping": {"nvr": "#/components/schemas/nvrReference", "camera": "#/components/schemas/cameraReference", "chime": "#/components/schemas/chimeReference", "light": "#/components/schemas/lightReference", "viewer": "#/components/schemas/viewerReference", "speaker": "#/components/schemas/speakerReference", "bridge": "#/components/schemas/bridgeReference", "sensor": "#/components/schemas/sensorReference", "siren": "#/components/schemas/sirenReference", "fob": "#/components/schemas/fobReference", "relay": "#/components/schemas/relayReference", "aiprocessor": "#/components/schemas/aiProcessorReference", "aiport": "#/components/schemas/aiPortReference", "linkstation": "#/components/schemas/linkStationReference"}}, "title": "deviceReference"}}, "required": ["type", "item"], "title": "deviceRemove"}], "discriminator": {"propertyName": "type", "mapping": {"add": "#/components/schemas/deviceAdd", "update": "#/components/schemas/deviceUpdate", "remove": "#/components/schemas/deviceRemove"}}, "description": "A device which was created, updated or deleted"}, {"oneOf": [{"type": "object", "properties": {"type": {"type": "string", "const": "add"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}}]}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey", "name", "doorbellSettings", "armMode"], "title": "nvr"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}]}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey", "state", "name", "mac", "isMicEnabled", "osdSettings", "ledSettings", "lcdMessage", "micVolume", "activePatrolSlot", "videoMode", "hdrType", "featureFlags", "smartDetectSettings", "hasPackageCamera"], "title": "camera"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}}]}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey", "state", "name", "mac", "cameraIds", "ringSettings"], "title": "chime"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}}]}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey", "state", "name", "mac", "lightModeSettings", "lightDeviceSettings", "isDark", "isLightOn", "isLightForceEnabled", "lastMotion", "isPirMotionDetected", "camera"], "title": "light"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}}]}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey", "state", "name", "mac", "liveview", "streamLimit"], "title": "viewer"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}}]}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "micVolume", "isMicEnabled", "speakerState", "featureFlags"], "title": "speaker"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}}]}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey", "state", "name", "mac", "platform", "clients", "maxClients"], "title": "bridge"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}}]}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "mountType", "batteryStatus", "stats", "lightSettings", "humiditySettings", "temperatureSettings", "isOpened", "openStatusChangedAt", "isMotionDetected", "motionDetectedAt", "motionSettings", "alarmTriggeredAt", "alarmSettings", "leakDetectedAt", "externalLeakDetectedAt", "leakSettings", "tamperingDetectedAt", "wirelessConnectionState"], "title": "sensor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}}]}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "ledSettings", "sirenStatus", "connectionType", "wirelessConnectionState"], "title": "siren"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}}]}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "awayState", "featureFlags", "wirelessConnectionState"], "title": "fob"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}}]}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "ledSettings", "outputs", "inputs", "wirelessConnectionState"], "title": "relay"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiProcessor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiPort"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}}]}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}], "title": "deviceBulk"}}, "required": ["type", "item"], "title": "devicesAdd"}, {"type": "object", "properties": {"type": {"type": "string", "const": "update"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}}]}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey"], "title": "nvr"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}]}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey"], "title": "camera"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}}]}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey"], "title": "chime"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}}]}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey"], "title": "light"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}}]}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey"], "title": "viewer"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}}]}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey"], "title": "speaker"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}}]}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey"], "title": "bridge"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}}]}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sensor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}}]}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "siren"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}}]}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "fob"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}}]}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "relay"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiProcessor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiPort"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}}]}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey"], "title": "linkStation"}], "title": "deviceBulkPartialWithReference"}}, "required": ["type", "item"], "title": "devicesBulkUpdate"}, {"type": "object", "properties": {"type": {"type": "string", "const": "remove"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}}]}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}]}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}}]}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}}]}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}}]}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}}]}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}}]}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}}]}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}}]}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}}]}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}}]}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}}]}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}}, "required": ["id", "modelKey"]}], "title": "deviceBulkReference"}}, "required": ["type", "item"], "title": "devicesBulkRemove"}], "discriminator": {"propertyName": "type", "mapping": {"add": "#/components/schemas/devicesAdd", "update": "#/components/schemas/devicesBulkUpdate", "remove": "#/components/schemas/devicesBulkRemove"}}, "description": "Devices which were created, updated or deleted"}], "description": "Device(s) which was created, updated or deleted", "title": "deviceEvent"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/subscribe/events": {"get": {"summary": "Get Protect event messages", "description": "A WebSocket subscription that broadcasts Protect events", "tags": ["WebSocket updates"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"oneOf": [{"type": "object", "properties": {"type": {"type": "string", "const": "add"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "ring"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "A device ring button has been pressed", "title": "ringEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorExtremeValues"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["temperature", "light", "humidity", "aqi", "vape", "tvoc", "pm1p0", "pm2p5", "pm4p0", "pm10p0", "co2", "voc"]}}, "required": ["text"], "description": "Name of the metric measured by the sensor", "examples": [{"text": "temperature"}]}, "sensorValue": {"type": "object", "properties": {"text": {"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}}, "required": ["text"]}, "status": {"type": "object", "properties": {"text": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "required": ["text"]}}, "required": ["sensorType", "sensorValue", "status"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "The value of a metric measured by a sensor has gone in or out of range", "title": "sensorExtremeValueEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorWaterLeak"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Water leak in the given mount point has started or ended", "title": "sensorWaterLeakEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorTamper"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Sensor has started or finished being tampered with", "title": "sensorTamperEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorBatteryPercentage": {"type": "object", "properties": {"number": {"type": "number"}}, "required": ["number"], "description": "Decimal value of the available sensor battery percentage", "examples": [{"number": 95}]}}, "required": ["sensorBatteryPercentage"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor battery level is getting low", "title": "sensorBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorAlarm"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}}, "required": ["alarmType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor has started or finished enduring an alarming state", "title": "sensorAlarmEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorOpened"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor in a given mount type has entered an open state", "title": "sensorOpenEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorClosed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor in a given mount type has entered a closed state", "title": "sensorClosedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeTest"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"source": {"type": "string", "enum": ["remote", "local"]}}}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Smoke detector test has been initiated", "title": "sensorSmokeTestEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke/CO detector internal battery is low (replacement required)", "title": "sensorSmokeBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeNeedsCleaning"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke sensor requires cleaning", "title": "sensorSmokeNeedsCleaningEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeFault"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke sensor fault detected", "title": "sensorSmokeFaultEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorCoFault"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "CO sensor fault detected", "title": "sensorCoFaultEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeEndOfLife"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke/CO detector has reached end of service life", "title": "sensorSmokeEndOfLifeEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Sensor has started or finished detecting motion", "title": "sensorMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorButtonPressed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"button": {"type": "object", "properties": {"text": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}}, "required": ["text"], "description": "The button that was pressed", "examples": [{"text": "alarmHubButton"}]}}, "required": ["button"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A sensor button has been pressed", "title": "sensorButtonPressedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "lightMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Floodlight has encountered motion", "title": "lightMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "motion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Camera has started or finished detecting motion", "title": "cameraMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartAudioDetect"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"], "description": "A type of smart detection based on the audio feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart audio-based detection", "title": "cameraSmartDetectAudioEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectZone"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based zone detection", "title": "cameraSmartDetectZoneEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectLine"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based line detection", "title": "cameraSmartDetectLineEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectLoiterZone"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based loiter detection", "title": "cameraSmartDetectLoiterEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "relayInputChanged"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"inputState": {"type": "object", "properties": {"text": {"type": "string", "enum": ["circuitClosed", "circuitOpen"]}}, "required": ["text"], "description": "The state of the relay input circuit", "examples": [{"text": "circuitOpen"}]}, "inputChannel": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The channel index of the relay input", "examples": [{"text": "0"}]}}, "required": ["inputState", "inputChannel"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A relay input has changed state (circuit opened or closed)", "title": "relayInputChangedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub motion input has been triggered", "title": "alarmHubMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubEntryOpened"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub entry sensor has opened", "title": "alarmHubEntryOpenedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubEntryClosed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub entry sensor has closed", "title": "alarmHubEntryClosedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubSmoke"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub smoke detector has been triggered", "title": "alarmHubSmokeEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubGlassBreak"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub glass break detector has been triggered", "title": "alarmHubGlassBreakEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubButtonPress"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "button": {"type": "object", "properties": {"text": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}}, "required": ["text"], "description": "The button that was pressed", "examples": [{"text": "alarmHubButton"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "button", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub emergency button has been pressed", "title": "alarmHubButtonPressEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubTamper"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub input has been tampered with", "title": "alarmHubTamperEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubRelaySwitched"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub relay output has been switched", "title": "alarmHubRelaySwitchedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub battery level is low", "title": "alarmHubBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubBatteryConnected"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub battery has been connected", "title": "alarmHubBatteryConnectedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "nfcCardScanned"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"nfc": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["nfc"], "title": "nfcMetadata"}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "An NFC card was scanned at a device", "title": "nfcCardScannedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "fingerprintIdentified"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"fingerprint": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["fingerprint"], "title": "fingerprintMetadata"}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A fingerprint was scanned at a device", "title": "fingerprintIdentifiedEvent"}], "discriminator": {"propertyName": "type", "mapping": {"ring": "#/components/schemas/ringEvent", "sensorExtremeValues": "#/components/schemas/sensorExtremeValueEvent", "sensorWaterLeak": "#/components/schemas/sensorWaterLeakEvent", "sensorTamper": "#/components/schemas/sensorTamperEvent", "sensorBatteryLow": "#/components/schemas/sensorBatteryLowEvent", "sensorAlarm": "#/components/schemas/sensorAlarmEvent", "sensorOpened": "#/components/schemas/sensorOpenEvent", "sensorClosed": "#/components/schemas/sensorClosedEvent", "sensorSmokeTest": "#/components/schemas/sensorSmokeTestEvent", "sensorSmokeBatteryLow": "#/components/schemas/sensorSmokeBatteryLowEvent", "sensorSmokeNeedsCleaning": "#/components/schemas/sensorSmokeNeedsCleaningEvent", "sensorSmokeFault": "#/components/schemas/sensorSmokeFaultEvent", "sensorCoFault": "#/components/schemas/sensorCoFaultEvent", "sensorSmokeEndOfLife": "#/components/schemas/sensorSmokeEndOfLifeEvent", "sensorMotion": "#/components/schemas/sensorMotionEvent", "sensorButtonPressed": "#/components/schemas/sensorButtonPressedEvent", "lightMotion": "#/components/schemas/lightMotionEvent", "motion": "#/components/schemas/cameraMotionEvent", "smartAudioDetect": "#/components/schemas/cameraSmartDetectAudioEvent", "smartDetectZone": "#/components/schemas/cameraSmartDetectZoneEvent", "smartDetectLine": "#/components/schemas/cameraSmartDetectLineEvent", "smartDetectLoiterZone": "#/components/schemas/cameraSmartDetectLoiterEvent", "relayInputChanged": "#/components/schemas/relayInputChangedEvent", "alarmHubMotion": "#/components/schemas/alarmHubMotionEvent", "alarmHubEntryOpened": "#/components/schemas/alarmHubEntryOpenedEvent", "alarmHubEntryClosed": "#/components/schemas/alarmHubEntryClosedEvent", "alarmHubSmoke": "#/components/schemas/alarmHubSmokeEvent", "alarmHubGlassBreak": "#/components/schemas/alarmHubGlassBreakEvent", "alarmHubButtonPress": "#/components/schemas/alarmHubButtonPressEvent", "alarmHubTamper": "#/components/schemas/alarmHubTamperEvent", "alarmHubRelaySwitched": "#/components/schemas/alarmHubRelaySwitchedEvent", "alarmHubBatteryLow": "#/components/schemas/alarmHubBatteryLowEvent", "alarmHubBatteryConnected": "#/components/schemas/alarmHubBatteryConnectedEvent", "nfcCardScanned": "#/components/schemas/nfcCardScannedEvent", "fingerprintIdentified": "#/components/schemas/fingerprintIdentifiedEvent"}}, "title": "event"}}, "required": ["type", "item"], "title": "eventAdd"}, {"type": "object", "properties": {"type": {"type": "string", "const": "update"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "ring"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "A device ring button has been pressed", "title": "ringEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorExtremeValues"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["temperature", "light", "humidity", "aqi", "vape", "tvoc", "pm1p0", "pm2p5", "pm4p0", "pm10p0", "co2", "voc"]}}, "required": ["text"], "description": "Name of the metric measured by the sensor", "examples": [{"text": "temperature"}]}, "sensorValue": {"type": "object", "properties": {"text": {"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}}, "required": ["text"]}, "status": {"type": "object", "properties": {"text": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "required": ["text"]}}, "required": ["sensorType", "sensorValue", "status"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "The value of a metric measured by a sensor has gone in or out of range", "title": "sensorExtremeValueEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorWaterLeak"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Water leak in the given mount point has started or ended", "title": "sensorWaterLeakEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorTamper"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Sensor has started or finished being tampered with", "title": "sensorTamperEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorBatteryPercentage": {"type": "object", "properties": {"number": {"type": "number"}}, "required": ["number"], "description": "Decimal value of the available sensor battery percentage", "examples": [{"number": 95}]}}, "required": ["sensorBatteryPercentage"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor battery level is getting low", "title": "sensorBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorAlarm"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}}, "required": ["alarmType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor has started or finished enduring an alarming state", "title": "sensorAlarmEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorOpened"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor in a given mount type has entered an open state", "title": "sensorOpenEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorClosed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor in a given mount type has entered a closed state", "title": "sensorClosedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeTest"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"source": {"type": "string", "enum": ["remote", "local"]}}}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Smoke detector test has been initiated", "title": "sensorSmokeTestEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke/CO detector internal battery is low (replacement required)", "title": "sensorSmokeBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeNeedsCleaning"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke sensor requires cleaning", "title": "sensorSmokeNeedsCleaningEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeFault"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke sensor fault detected", "title": "sensorSmokeFaultEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorCoFault"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "CO sensor fault detected", "title": "sensorCoFaultEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeEndOfLife"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke/CO detector has reached end of service life", "title": "sensorSmokeEndOfLifeEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Sensor has started or finished detecting motion", "title": "sensorMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorButtonPressed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"button": {"type": "object", "properties": {"text": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}}, "required": ["text"], "description": "The button that was pressed", "examples": [{"text": "alarmHubButton"}]}}, "required": ["button"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A sensor button has been pressed", "title": "sensorButtonPressedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "lightMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Floodlight has encountered motion", "title": "lightMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "motion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Camera has started or finished detecting motion", "title": "cameraMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartAudioDetect"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"], "description": "A type of smart detection based on the audio feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart audio-based detection", "title": "cameraSmartDetectAudioEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectZone"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based zone detection", "title": "cameraSmartDetectZoneEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectLine"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based line detection", "title": "cameraSmartDetectLineEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectLoiterZone"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based loiter detection", "title": "cameraSmartDetectLoiterEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "relayInputChanged"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"inputState": {"type": "object", "properties": {"text": {"type": "string", "enum": ["circuitClosed", "circuitOpen"]}}, "required": ["text"], "description": "The state of the relay input circuit", "examples": [{"text": "circuitOpen"}]}, "inputChannel": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The channel index of the relay input", "examples": [{"text": "0"}]}}, "required": ["inputState", "inputChannel"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A relay input has changed state (circuit opened or closed)", "title": "relayInputChangedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub motion input has been triggered", "title": "alarmHubMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubEntryOpened"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub entry sensor has opened", "title": "alarmHubEntryOpenedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubEntryClosed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub entry sensor has closed", "title": "alarmHubEntryClosedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubSmoke"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub smoke detector has been triggered", "title": "alarmHubSmokeEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubGlassBreak"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub glass break detector has been triggered", "title": "alarmHubGlassBreakEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubButtonPress"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "button": {"type": "object", "properties": {"text": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}}, "required": ["text"], "description": "The button that was pressed", "examples": [{"text": "alarmHubButton"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "button", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub emergency button has been pressed", "title": "alarmHubButtonPressEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubTamper"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub input has been tampered with", "title": "alarmHubTamperEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubRelaySwitched"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub relay output has been switched", "title": "alarmHubRelaySwitchedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub battery level is low", "title": "alarmHubBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubBatteryConnected"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub battery has been connected", "title": "alarmHubBatteryConnectedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "nfcCardScanned"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"nfc": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["nfc"], "title": "nfcMetadata"}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "An NFC card was scanned at a device", "title": "nfcCardScannedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "fingerprintIdentified"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"fingerprint": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["fingerprint"], "title": "fingerprintMetadata"}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A fingerprint was scanned at a device", "title": "fingerprintIdentifiedEvent"}], "discriminator": {"propertyName": "type", "mapping": {"ring": "#/components/schemas/ringEvent", "sensorExtremeValues": "#/components/schemas/sensorExtremeValueEvent", "sensorWaterLeak": "#/components/schemas/sensorWaterLeakEvent", "sensorTamper": "#/components/schemas/sensorTamperEvent", "sensorBatteryLow": "#/components/schemas/sensorBatteryLowEvent", "sensorAlarm": "#/components/schemas/sensorAlarmEvent", "sensorOpened": "#/components/schemas/sensorOpenEvent", "sensorClosed": "#/components/schemas/sensorClosedEvent", "sensorSmokeTest": "#/components/schemas/sensorSmokeTestEvent", "sensorSmokeBatteryLow": "#/components/schemas/sensorSmokeBatteryLowEvent", "sensorSmokeNeedsCleaning": "#/components/schemas/sensorSmokeNeedsCleaningEvent", "sensorSmokeFault": "#/components/schemas/sensorSmokeFaultEvent", "sensorCoFault": "#/components/schemas/sensorCoFaultEvent", "sensorSmokeEndOfLife": "#/components/schemas/sensorSmokeEndOfLifeEvent", "sensorMotion": "#/components/schemas/sensorMotionEvent", "sensorButtonPressed": "#/components/schemas/sensorButtonPressedEvent", "lightMotion": "#/components/schemas/lightMotionEvent", "motion": "#/components/schemas/cameraMotionEvent", "smartAudioDetect": "#/components/schemas/cameraSmartDetectAudioEvent", "smartDetectZone": "#/components/schemas/cameraSmartDetectZoneEvent", "smartDetectLine": "#/components/schemas/cameraSmartDetectLineEvent", "smartDetectLoiterZone": "#/components/schemas/cameraSmartDetectLoiterEvent", "relayInputChanged": "#/components/schemas/relayInputChangedEvent", "alarmHubMotion": "#/components/schemas/alarmHubMotionEvent", "alarmHubEntryOpened": "#/components/schemas/alarmHubEntryOpenedEvent", "alarmHubEntryClosed": "#/components/schemas/alarmHubEntryClosedEvent", "alarmHubSmoke": "#/components/schemas/alarmHubSmokeEvent", "alarmHubGlassBreak": "#/components/schemas/alarmHubGlassBreakEvent", "alarmHubButtonPress": "#/components/schemas/alarmHubButtonPressEvent", "alarmHubTamper": "#/components/schemas/alarmHubTamperEvent", "alarmHubRelaySwitched": "#/components/schemas/alarmHubRelaySwitchedEvent", "alarmHubBatteryLow": "#/components/schemas/alarmHubBatteryLowEvent", "alarmHubBatteryConnected": "#/components/schemas/alarmHubBatteryConnectedEvent", "nfcCardScanned": "#/components/schemas/nfcCardScannedEvent", "fingerprintIdentified": "#/components/schemas/fingerprintIdentifiedEvent"}}, "title": "event"}}, "required": ["type", "item"], "title": "eventUpdate"}], "discriminator": {"propertyName": "type", "mapping": {"add": "#/components/schemas/eventAdd", "update": "#/components/schemas/eventUpdate"}}, "description": "An event that was created or updated"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/cameras/{id}/ptz/patrol/start/{slot}": {"post": {"summary": "Start a camera PTZ patrol", "description": "Start a camera PTZ patrol", "tags": ["Camera PTZ control & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of camera", "schema": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "required": true}, {"in": "path", "name": "slot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "schema": {"type": "string", "title": "activePatrolSlotString", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": ["0", "1", "2", "3", "4"]}, "required": true}], "responses": {"204": {"description": "The camera PTZ patrol was started successfully."}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/cameras/{id}/ptz/patrol/stop": {"post": {"summary": "Stop active camera PTZ patrol", "description": "Stop active camera PTZ patrol", "tags": ["Camera PTZ control & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of camera", "schema": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "required": true}], "responses": {"204": {"description": "The camera PTZ patrol was stopped successfully."}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/cameras/{id}/ptz/goto/{slot}": {"post": {"summary": "Move PTZ camera to preset", "description": "Adjust the PTZ camera position to a specified preset", "tags": ["Camera PTZ control & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of camera", "schema": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "required": true}, {"in": "path", "name": "slot", "description": "Which slot this preset belongs to (-1 home preset, >=0 other presets).", "schema": {"type": "string", "description": "Which slot this preset belongs to (-1 home preset, >=0 other presets).", "examples": ["-1", "0", "2", "8", "9"]}, "required": true}], "responses": {"204": {"description": "The PTZ camera was moved to the given preset successfully."}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/alarm-manager/webhook/{id}": {"post": {"summary": "Send a webhook to the alarm manager", "description": "Send a webhook to the alarm manager to trigger configured alarms", "tags": ["Alarm manager integration"], "parameters": [{"in": "path", "name": "id", "description": "User defined string used to trigger only specific alarms. Alarm should be configured with the same ID to be triggered.", "schema": {"type": "string", "description": "User defined string used to trigger only specific alarms. Alarm should be configured with the same ID to be triggered.", "examples": ["AnyRandomString"], "title": "alarmTriggerId"}, "required": true}], "responses": {"204": {"description": "Webhook was sent to alarm manager successfully"}, "400": {"description": "Bad request response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["'id' is required"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["BAD_REQUEST"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "idRequiredError"}}}}}}}, "/v1/arm-profiles": {"get": {"summary": "Get all arm profiles", "description": "Get a list of all arm profiles. Only available when using local alarm manager.", "tags": ["Arm profile management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of armProfile", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "armProfileId"}, "name": {"type": "string", "minLength": 1, "maxLength": 255, "title": "armProfileName", "description": "Name of the arm profile.", "examples": ["Arm Profile"]}, "automations": {"type": "array", "items": {"type": "string", "description": "The primary key of automation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "automationId"}, "title": "automations", "description": "List of automation IDs associated with this arm profile."}, "creator": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "schedules": {"type": "array", "items": {"type": "object", "properties": {"start": {"type": "string", "title": "armScheduleStart", "description": "Cron expression for the start time.", "examples": ["0 0 * * *"]}, "end": {"type": "string", "title": "armScheduleEnd", "description": "Cron expression for the end time.", "examples": ["0 0 * * *"]}}, "required": ["start", "end"], "title": "armSchedule"}, "title": "schedules", "description": "List of arm schedules."}, "recordEverything": {"type": "boolean", "title": "recordEverything", "description": "Whether to record everything when this arm profile is active.", "examples": [true, false]}, "activationDelay": {"anyOf": [{"type": "number", "const": 0}, {"type": "number", "const": 60000}, {"type": "number", "const": 300000}, {"type": "number", "const": 600000}], "title": "activationDelay", "description": "Activation delay in milliseconds. Allowed values: 0 (none), 60000 (1 min), 300000 (5 min), 600000 (10 min)."}, "createdAt": {"type": "number", "title": "createdAt", "description": "Arm profile creation time."}, "updatedAt": {"type": "number", "title": "updatedAt", "description": "Arm profile update time."}}, "required": ["id", "name", "automations", "creator", "schedules", "recordEverything", "activationDelay", "createdAt", "updatedAt"], "title": "armProfile"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "post": {"summary": "Create arm profile", "description": "Create a new arm profile. Only available when using local alarm manager.", "tags": ["Arm profile management"], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "minLength": 1, "maxLength": 255, "title": "armProfileName", "description": "Name of the arm profile.", "examples": ["Arm Profile"]}, "automations": {"type": "array", "items": {"type": "string", "description": "The primary key of automation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "automationId"}, "title": "automations", "description": "List of automation IDs associated with this arm profile."}, "schedules": {"type": "array", "items": {"type": "object", "properties": {"start": {"type": "string", "title": "armScheduleStart", "description": "Cron expression for the start time.", "examples": ["0 0 * * *"]}, "end": {"type": "string", "title": "armScheduleEnd", "description": "Cron expression for the end time.", "examples": ["0 0 * * *"]}}, "required": ["start", "end"], "title": "armSchedule"}, "title": "schedules", "description": "List of arm schedules."}, "recordEverything": {"type": "boolean", "title": "recordEverything", "description": "Whether to record everything when this arm profile is active.", "examples": [true, false]}, "activationDelay": {"anyOf": [{"type": "number", "const": 0}, {"type": "number", "const": 60000}, {"type": "number", "const": 300000}, {"type": "number", "const": 600000}], "title": "activationDelay", "description": "Activation delay in milliseconds. Allowed values: 0 (none), 60000 (1 min), 300000 (5 min), 600000 (10 min)."}}, "required": ["name", "automations", "schedules", "recordEverything", "activationDelay"]}}}}, "responses": {"201": {"content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of armProfile", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "armProfileId"}, "name": {"type": "string", "minLength": 1, "maxLength": 255, "title": "armProfileName", "description": "Name of the arm profile.", "examples": ["Arm Profile"]}, "automations": {"type": "array", "items": {"type": "string", "description": "The primary key of automation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "automationId"}, "title": "automations", "description": "List of automation IDs associated with this arm profile."}, "creator": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "schedules": {"type": "array", "items": {"type": "object", "properties": {"start": {"type": "string", "title": "armScheduleStart", "description": "Cron expression for the start time.", "examples": ["0 0 * * *"]}, "end": {"type": "string", "title": "armScheduleEnd", "description": "Cron expression for the end time.", "examples": ["0 0 * * *"]}}, "required": ["start", "end"], "title": "armSchedule"}, "title": "schedules", "description": "List of arm schedules."}, "recordEverything": {"type": "boolean", "title": "recordEverything", "description": "Whether to record everything when this arm profile is active.", "examples": [true, false]}, "activationDelay": {"anyOf": [{"type": "number", "const": 0}, {"type": "number", "const": 60000}, {"type": "number", "const": 300000}, {"type": "number", "const": 600000}], "title": "activationDelay", "description": "Activation delay in milliseconds. Allowed values: 0 (none), 60000 (1 min), 300000 (5 min), 600000 (10 min)."}, "createdAt": {"type": "number", "title": "createdAt", "description": "Arm profile creation time."}, "updatedAt": {"type": "number", "title": "updatedAt", "description": "Arm profile update time."}}, "required": ["id", "name", "automations", "creator", "schedules", "recordEverything", "activationDelay", "createdAt", "updatedAt"], "title": "armProfile"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/arm-profiles/settings": {"patch": {"summary": "Set current arm profile", "description": "Set the current arm profile to be used when enabling the arm alarm. Only available when using local alarm manager.", "tags": ["Arm profile management"], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"armProfileId": {"type": "string", "description": "The primary key of armProfile", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "armProfileId"}}, "required": ["armProfileId"]}}}}, "responses": {"204": {"description": "Arm profile settings updated successfully"}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/arm-profiles/{id}": {"patch": {"summary": "Update arm profile", "description": "Update an existing arm profile. Only available when using local alarm manager.", "tags": ["Arm profile management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of armProfile", "schema": {"type": "string", "description": "The primary key of armProfile", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "armProfileId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "minLength": 1, "maxLength": 255, "title": "armProfileName", "description": "Name of the arm profile.", "examples": ["Arm Profile"]}, "automations": {"type": "array", "items": {"type": "string", "description": "The primary key of automation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "automationId"}, "title": "automations", "description": "List of automation IDs associated with this arm profile."}, "schedules": {"type": "array", "items": {"type": "object", "properties": {"start": {"type": "string", "title": "armScheduleStart", "description": "Cron expression for the start time.", "examples": ["0 0 * * *"]}, "end": {"type": "string", "title": "armScheduleEnd", "description": "Cron expression for the end time.", "examples": ["0 0 * * *"]}}, "required": ["start", "end"], "title": "armSchedule"}, "title": "schedules", "description": "List of arm schedules."}, "recordEverything": {"type": "boolean", "title": "recordEverything", "description": "Whether to record everything when this arm profile is active.", "examples": [true, false]}, "activationDelay": {"anyOf": [{"type": "number", "const": 0}, {"type": "number", "const": 60000}, {"type": "number", "const": 300000}, {"type": "number", "const": 600000}], "title": "activationDelay", "description": "Activation delay in milliseconds. Allowed values: 0 (none), 60000 (1 min), 300000 (5 min), 600000 (10 min)."}}}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of armProfile", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "armProfileId"}, "name": {"type": "string", "minLength": 1, "maxLength": 255, "title": "armProfileName", "description": "Name of the arm profile.", "examples": ["Arm Profile"]}, "automations": {"type": "array", "items": {"type": "string", "description": "The primary key of automation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "automationId"}, "title": "automations", "description": "List of automation IDs associated with this arm profile."}, "creator": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "schedules": {"type": "array", "items": {"type": "object", "properties": {"start": {"type": "string", "title": "armScheduleStart", "description": "Cron expression for the start time.", "examples": ["0 0 * * *"]}, "end": {"type": "string", "title": "armScheduleEnd", "description": "Cron expression for the end time.", "examples": ["0 0 * * *"]}}, "required": ["start", "end"], "title": "armSchedule"}, "title": "schedules", "description": "List of arm schedules."}, "recordEverything": {"type": "boolean", "title": "recordEverything", "description": "Whether to record everything when this arm profile is active.", "examples": [true, false]}, "activationDelay": {"anyOf": [{"type": "number", "const": 0}, {"type": "number", "const": 60000}, {"type": "number", "const": 300000}, {"type": "number", "const": 600000}], "title": "activationDelay", "description": "Activation delay in milliseconds. Allowed values: 0 (none), 60000 (1 min), 300000 (5 min), 600000 (10 min)."}, "createdAt": {"type": "number", "title": "createdAt", "description": "Arm profile creation time."}, "updatedAt": {"type": "number", "title": "updatedAt", "description": "Arm profile update time."}}, "required": ["id", "name", "automations", "creator", "schedules", "recordEverything", "activationDelay", "createdAt", "updatedAt"], "title": "armProfile"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "delete": {"summary": "Delete arm profile", "description": "Delete an arm profile by ID. Only available when using local alarm manager.", "tags": ["Arm profile management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of armProfile", "schema": {"type": "string", "description": "The primary key of armProfile", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "armProfileId"}, "required": true}], "responses": {"204": {"description": "Arm profile deleted successfully"}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/arm-profiles/enable": {"post": {"summary": "Enable arm alarm", "description": "Enable the arm alarm feature using the currently selected arm profile. Only available when using local alarm manager.", "tags": ["Arm profile management"], "responses": {"204": {"description": "Arm alarm enabled successfully"}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/arm-profiles/disable": {"post": {"summary": "Disable arm alarm", "description": "Disable the arm alarm feature. Only available when using local alarm manager.", "tags": ["Arm profile management"], "responses": {"204": {"description": "Arm alarm disabled successfully"}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/lights/{id}": {"get": {"summary": "Get light details", "description": "Get detailed information about a specific light", "tags": ["Light information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of light", "schema": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey", "state", "name", "mac", "lightModeSettings", "lightDeviceSettings", "isDark", "isLightOn", "isLightForceEnabled", "lastMotion", "isPirMotionDetected", "camera"], "title": "light"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "patch": {"summary": "Patch light settings", "description": "Patch the settings for a specific light", "tags": ["Light information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of light", "schema": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}}, "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey", "state", "name", "mac", "lightModeSettings", "lightDeviceSettings", "isDark", "isLightOn", "isLightForceEnabled", "lastMotion", "isPirMotionDetected", "camera"], "title": "light"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/lights": {"get": {"summary": "Get all lights", "description": "Get detailed information about all lights", "tags": ["Light information & management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey", "state", "name", "mac", "lightModeSettings", "lightDeviceSettings", "isDark", "isLightOn", "isLightForceEnabled", "lastMotion", "isPirMotionDetected", "camera"], "title": "light"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/cameras/{id}": {"get": {"summary": "Get camera details", "description": "Get detailed information about a specific camera", "tags": ["Camera information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of camera", "schema": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey", "state", "name", "mac", "isMicEnabled", "osdSettings", "ledSettings", "lcdMessage", "micVolume", "activePatrolSlot", "videoMode", "hdrType", "featureFlags", "smartDetectSettings", "hasPackageCamera"], "title": "camera"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "patch": {"summary": "Patch camera settings", "description": "Patch the settings for a specific camera", "tags": ["Camera information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of camera", "schema": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the device."}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "additionalProperties": false, "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "additionalProperties": false, "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"description": "Message that's set on the LCD screen (for doorbells and/or other devices with LCD screens). To upload image assets for the LCD screen, use the `/files/{fileType}` endpoint.", "oneOf": [{"type": "object", "properties": {"type": {"type": "string", "const": "DO_NOT_DISTURB"}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}}, "required": ["type"], "description": "Show a pre-defined \"do not disturb\" message on the doorbell"}, {"type": "object", "properties": {"type": {"type": "string", "const": "LEAVE_PACKAGE_AT_DOOR"}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}}, "required": ["type"], "description": "Show a pre-defined \"leave package at door\" message on the doorbell"}, {"type": "object", "properties": {"type": {"type": "string", "const": "CUSTOM_MESSAGE"}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string", "description": "The custom text message to show on the doorbell", "examples": ["Hello world!"]}}, "required": ["type", "text"], "description": "Show a custom text message on the doorbell"}, {"type": "object", "properties": {"type": {"type": "string", "const": "IMAGE"}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string", "description": "The ID of the custom image to show on the doorbell", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["type", "text"], "description": "Show a custom image on the doorbell"}], "title": "lcdMessage"}, "micVolume": {"allOf": [{"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}], "minimum": 1}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"allOf": [{"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}], "description": "High Dynamic Range (HDR) mode setting.", "enum": ["auto", "on", "off"], "x-enum-descriptions": ["Recommended, the system automatically adjusts the HDR level.", "Forces HDR to be always enabled as the highest level.", "Disables HDR completely."], "x-enum-varnames": ["auto", "on", "off"]}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "additionalProperties": false, "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}}, "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey", "state", "name", "mac", "isMicEnabled", "osdSettings", "ledSettings", "lcdMessage", "micVolume", "activePatrolSlot", "videoMode", "hdrType", "featureFlags", "smartDetectSettings", "hasPackageCamera"], "title": "camera"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/cameras": {"get": {"summary": "Get all cameras", "description": "Get detailed information about all cameras", "tags": ["Camera information & management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey", "state", "name", "mac", "isMicEnabled", "osdSettings", "ledSettings", "lcdMessage", "micVolume", "activePatrolSlot", "videoMode", "hdrType", "featureFlags", "smartDetectSettings", "hasPackageCamera"], "title": "camera"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/cameras/{id}/rtsps-stream": {"post": {"summary": "Create RTSPS streams for camera", "description": "Returns RTSPS stream URLs for specified quality levels", "tags": ["Camera information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of camera", "schema": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"qualities": {"type": "array", "items": {"type": "string", "enum": ["high", "medium", "low", "package"], "title": "channelQuality"}, "minItems": 1, "description": "Array of quality levels of RTSPS streams. All qualities (high, medium, low) are available for all cameras. The package quality is only available for cameras with hasPackageCamera: true.", "examples": [["high", "medium"]], "title": "createdQualities"}}, "required": ["qualities"], "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"high": {"type": "string", "format": "uri"}, "medium": {"type": "string", "format": "uri"}, "low": {"type": "string", "format": "uri"}, "package": {"type": "string", "format": "uri"}}, "additionalProperties": false, "description": "The RTSPS stream URLs for the camera", "examples": [{"high": "rtsps://192.168.1.1:7441/5nPr7RCmueGTKMP7?enableSrtp", "medium": "rtsps://192.168.1.1:7441/AbUgnDb5IqIEMidk?enableSrtp"}], "title": "createdRtspsStreams"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "delete": {"summary": "Delete camera RTSPS stream", "description": "Remove the RTSPS stream for a specified camera", "tags": ["Camera information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of camera", "schema": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "required": true}, {"in": "query", "name": "qualities", "description": "The array of quality levels for the RTSPS streams to be removed. All qualities (high, medium, low) are available for all cameras. The package quality is only available for cameras with hasPackageCamera: true.", "schema": {"anyOf": [{"type": "array", "items": {"type": "string", "enum": ["high", "medium", "low", "package"], "title": "channelQuality"}, "minItems": 1}, {"type": "string", "enum": ["high", "medium", "low", "package"], "title": "channelQuality"}], "description": "The array of quality levels for the RTSPS streams to be removed. All qualities (high, medium, low) are available for all cameras. The package quality is only available for cameras with hasPackageCamera: true.", "examples": [["high", "medium"]], "title": "removedQualities"}, "required": true}], "responses": {"204": {"description": "RTSPS stream successfully removed"}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "get": {"summary": "Get RTSPS streams for camera", "description": "Returns existing RTSPS stream URLs for camera", "tags": ["Camera information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of camera", "schema": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"high": {"type": ["string", "null"], "format": "uri"}, "medium": {"type": ["string", "null"], "format": "uri"}, "low": {"type": ["string", "null"], "format": "uri"}, "package": {"type": ["string", "null"], "format": "uri"}}, "additionalProperties": false, "description": "The RTSPS stream URLs for the camera. All qualities (high, medium, low) are available for all cameras. The package quality is only available for cameras with hasPackageCamera: true.", "examples": [{"high": "rtsps://192.168.1.1:7441/5nPr7RCmueGTKMP7?enableSrtp", "medium": "rtsps://192.168.1.1:7441/AbUgnDb5IqIEMidk?enableSrtp", "low": null, "package": null}], "title": "existingRtspsStreams"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/cameras/{id}/snapshot": {"get": {"summary": "Get camera snapshot", "description": "Get a snapshot image from a specific camera. Use channel=package for cameras with a package camera (hasPackageCamera: true).", "tags": ["Camera information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of camera", "schema": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "required": true}, {"in": "query", "name": "channel", "description": "Camera channel to capture snapshot from. Use \"package\" for cameras with a package camera (hasPackageCamera: true).", "schema": {"type": "string", "enum": ["main", "package"], "description": "Camera channel to capture snapshot from. Use \"package\" for cameras with a package camera (hasPackageCamera: true).", "title": "channel"}}, {"in": "query", "name": "highQuality", "description": "Whether to force 1080P or higher resolution snapshot", "schema": {"type": "string", "enum": ["true", "false"], "description": "Whether to force 1080P or higher resolution snapshot", "title": "forceHighQuality"}}], "responses": {"200": {"description": "Camera snapshot", "content": {"image/jpeg": {"schema": {"type": "string", "format": "binary"}}}}, "503": {"description": "The camera is offline or not reachable."}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/cameras/{id}/disable-mic-permanently": {"post": {"summary": "Permanently disable camera microphone", "description": "Disable the microphone for a specific camera. This action cannot be undone unless the camera is reset.", "tags": ["Camera information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of camera", "schema": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey", "state", "name", "mac", "isMicEnabled", "osdSettings", "ledSettings", "lcdMessage", "micVolume", "activePatrolSlot", "videoMode", "hdrType", "featureFlags", "smartDetectSettings", "hasPackageCamera"], "title": "camera"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/cameras/{id}/talkback-session": {"post": {"summary": "Create talkback session for camera", "description": "Returns the talkback stream URL and audio configuration for a specific camera", "tags": ["Camera information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of camera", "schema": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"url": {"type": "string", "format": "uri", "description": "Talkback stream URL", "examples": ["rtp://192.168.1.123:7004"], "title": "talkbackStreamUrl"}, "codec": {"type": "string", "description": "Audio format to use.", "examples": ["opus", "aac"], "title": "talkbackStreamCodec"}, "samplingRate": {"type": "integer", "exclusiveMinimum": 0, "description": "Sampling Rate.", "examples": [24000, 22050], "title": "talkbackStreamSamplingRate"}, "bitsPerSample": {"type": "integer", "exclusiveMinimum": 0, "description": "Bits per sample.", "examples": [16], "title": "talkbackStreamBitsPerSample"}}, "required": ["url", "codec", "samplingRate", "bitsPerSample"], "description": "Talkback session information", "examples": [{"url": "rtp://192.168.1.123:7004", "codec": "opus", "samplingRate": 24000, "bitsPerSample": 16}], "title": "talkbackSession"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/sensors/{id}": {"get": {"summary": "Get sensor details", "description": "Get detailed information about a specific sensor", "tags": ["Sensor information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of sensor", "schema": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "mountType", "batteryStatus", "stats", "lightSettings", "humiditySettings", "temperatureSettings", "isOpened", "openStatusChangedAt", "isMotionDetected", "motionDetectedAt", "motionSettings", "alarmTriggeredAt", "alarmSettings", "leakDetectedAt", "externalLeakDetectedAt", "leakSettings", "tamperingDetectedAt", "wirelessConnectionState"], "title": "sensor"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "patch": {"summary": "Patch sensor settings", "description": "Patch the settings for a specific sensor", "tags": ["Sensor information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of sensor", "schema": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, "lightSettings": {"allOf": [{"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}], "additionalProperties": false}, "humiditySettings": {"allOf": [{"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}], "additionalProperties": false}, "temperatureSettings": {"allOf": [{"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}], "additionalProperties": false}, "motionSettings": {"allOf": [{"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}], "additionalProperties": false}, "alarmSettings": {"allOf": [{"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}], "additionalProperties": false}}, "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "mountType", "batteryStatus", "stats", "lightSettings", "humiditySettings", "temperatureSettings", "isOpened", "openStatusChangedAt", "isMotionDetected", "motionDetectedAt", "motionSettings", "alarmTriggeredAt", "alarmSettings", "leakDetectedAt", "externalLeakDetectedAt", "leakSettings", "tamperingDetectedAt", "wirelessConnectionState"], "title": "sensor"}}}}, "409": {"description": "This operation is not supported for this sensor"}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/sensors": {"get": {"summary": "Get all sensors", "description": "Get detailed information about all sensors", "tags": ["Sensor information & management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "mountType", "batteryStatus", "stats", "lightSettings", "humiditySettings", "temperatureSettings", "isOpened", "openStatusChangedAt", "isMotionDetected", "motionDetectedAt", "motionSettings", "alarmTriggeredAt", "alarmSettings", "leakDetectedAt", "externalLeakDetectedAt", "leakSettings", "tamperingDetectedAt", "wirelessConnectionState"], "title": "sensor"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/sirens/{id}": {"get": {"summary": "Get siren details", "description": "Get detailed information about a specific siren", "tags": ["Siren information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of siren", "schema": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "ledSettings", "sirenStatus", "connectionType", "wirelessConnectionState"], "title": "siren"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "patch": {"summary": "Patch siren settings", "description": "Patch the settings for a specific siren", "tags": ["Siren information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of siren", "schema": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"allOf": [{"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}], "additionalProperties": false}}, "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "ledSettings", "sirenStatus", "connectionType", "wirelessConnectionState"], "title": "siren"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/sirens": {"get": {"summary": "Get all sirens", "description": "Get detailed information about all sirens", "tags": ["Siren information & management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "ledSettings", "sirenStatus", "connectionType", "wirelessConnectionState"], "title": "siren"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/sirens/{id}/play": {"post": {"summary": "Play siren", "description": "Activate the siren alarm for the specified duration. The siren status will be tracked and can be stopped early using the stop endpoint.", "tags": ["Siren information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of siren", "schema": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "required": true}], "requestBody": {"required": false, "content": {"application/json": {"schema": {"type": "object", "properties": {"duration": {"description": "Duration of the siren activation in seconds. Defaults to 5 seconds.", "anyOf": [{"type": "number", "const": 5}, {"type": "number", "const": 10}, {"type": "number", "const": 20}, {"type": "number", "const": 30}], "examples": [5, 10, 20, 30], "title": "sirenDurationSeconds"}}, "additionalProperties": false}}}}, "responses": {"204": {"description": "The siren was activated successfully."}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/sirens/{id}/stop": {"post": {"summary": "Stop siren", "description": "Stop an active siren.", "tags": ["Siren information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of siren", "schema": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "required": true}], "responses": {"204": {"description": "The siren was stopped successfully."}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/sirens/{id}/test-sound": {"post": {"summary": "Test siren sound", "description": "Test the siren sound for 5 seconds at the specified volume.", "tags": ["Siren information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of siren", "schema": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "required": true}], "requestBody": {"required": false, "content": {"application/json": {"schema": {"type": "object", "properties": {"volume": {"description": "The volume for testing the siren sound. Defaults to the configured device volume.", "type": "integer", "minimum": 1, "maximum": 100, "examples": [80, 50], "title": "sirenVolume"}}, "additionalProperties": false}}}}, "responses": {"204": {"description": "The siren sound test was initiated successfully."}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/fobs/{id}": {"get": {"summary": "Get fob details", "description": "Get detailed information about a specific fob", "tags": ["Fob information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of fob", "schema": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "awayState", "featureFlags", "wirelessConnectionState"], "title": "fob"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "patch": {"summary": "Patch fob settings", "description": "Patch the settings for a specific fob", "tags": ["Fob information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of fob", "schema": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}}, "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "awayState", "featureFlags", "wirelessConnectionState"], "title": "fob"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/fobs": {"get": {"summary": "Get all fobs", "description": "Get detailed information about all fobs", "tags": ["Fob information & management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "awayState", "featureFlags", "wirelessConnectionState"], "title": "fob"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/relays/{id}": {"get": {"summary": "Get relay details", "description": "Get detailed information about a specific relay", "tags": ["Relay information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of relay", "schema": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "ledSettings", "outputs", "inputs", "wirelessConnectionState"], "title": "relay"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "patch": {"summary": "Patch relay settings", "description": "Patch the settings for a specific relay", "tags": ["Relay information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of relay", "schema": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "description": "Status LED settings.", "title": "relayLedSettings"}}, "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "ledSettings", "outputs", "inputs", "wirelessConnectionState"], "title": "relay"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/relays": {"get": {"summary": "Get all relays", "description": "Get detailed information about all relays", "tags": ["Relay information & management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "ledSettings", "outputs", "inputs", "wirelessConnectionState"], "title": "relay"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/relays/{id}/outputs/{outputId}/activate": {"post": {"summary": "Activate relay output", "description": "Control a relay output state. Use \"state\" to set a specific state (on/off), or omit to toggle. When state is \"on\", you can optionally provide \"pulseDuration\" to auto-turn off after the specified milliseconds.", "tags": ["Relay information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of relay", "schema": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "required": true}, {"in": "path", "name": "outputId", "description": "Output channel ID (0 or 1)", "schema": {"type": "integer", "minimum": 0, "description": "Output channel ID (0 or 1)"}, "required": true}], "requestBody": {"required": false, "content": {"application/json": {"schema": {"type": "object", "properties": {"state": {"type": "string", "enum": ["on", "off"], "description": "Desired output state. If omitted, toggles the current state."}, "pulseDuration": {"type": "integer", "minimum": 0, "description": "Auto-off duration in milliseconds (only applies when state is \"on\"). If greater than 0, the output auto-turns off after the specified duration."}}, "additionalProperties": false}}}}, "responses": {"204": {"description": "The relay output activation was initiated successfully."}, "503": {"description": "The relay is offline or not reachable."}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/speakers/{id}": {"get": {"summary": "Get speaker details", "description": "Get detailed information about a specific speaker", "tags": ["Speaker information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of speaker", "schema": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "micVolume", "isMicEnabled", "speakerState", "featureFlags"], "title": "speaker"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "patch": {"summary": "Patch speaker settings", "description": "Patch the settings for a specific speaker", "tags": ["Speaker information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of speaker", "schema": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}}, "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "micVolume", "isMicEnabled", "speakerState", "featureFlags"], "title": "speaker"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/speakers": {"get": {"summary": "Get all speakers", "description": "Get detailed information about all speakers", "tags": ["Speaker information & management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "micVolume", "isMicEnabled", "speakerState", "featureFlags"], "title": "speaker"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/speakers/{id}/test-sound": {"post": {"summary": "Test speaker sound", "description": "Test the speaker sound at the specified volume.", "tags": ["Speaker information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of speaker", "schema": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "required": true}], "requestBody": {"required": false, "content": {"application/json": {"schema": {"type": "object", "properties": {"volume": {"description": "The volume for testing the speaker sound. Defaults to the configured device volume.", "type": "integer", "minimum": 0, "maximum": 100, "examples": [80], "title": "speakerVolume"}}, "additionalProperties": false}}}}, "responses": {"204": {"description": "The speaker sound test was initiated successfully."}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/bridges/{id}": {"get": {"summary": "Get bridge details", "description": "Get detailed information about a specific bridge", "tags": ["Bridge information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of bridge", "schema": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey", "state", "name", "mac", "platform", "clients", "maxClients"], "title": "bridge"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "patch": {"summary": "Patch bridge settings", "description": "Patch the settings for a specific bridge", "tags": ["Bridge information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of bridge", "schema": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}}, "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey", "state", "name", "mac", "platform", "clients", "maxClients"], "title": "bridge"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/bridges": {"get": {"summary": "Get all bridges", "description": "Get detailed information about all bridges", "tags": ["Bridge information & management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey", "state", "name", "mac", "platform", "clients", "maxClients"], "title": "bridge"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/link-stations/{id}": {"get": {"summary": "Get link station details", "description": "Get detailed information about a specific link station (non-alarm hub gateways)", "tags": ["Link station information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of linkStation", "schema": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "patch": {"summary": "Patch link station settings", "description": "Patch the settings for a specific link station", "tags": ["Link station information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of linkStation", "schema": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}}, "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/link-stations": {"get": {"summary": "Get all link stations", "description": "Get detailed information about all link stations (non-alarm hub gateways)", "tags": ["Link station information & management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/alarm-hubs/{id}": {"get": {"summary": "Get alarm hub details", "description": "Get detailed information about a specific alarm hub", "tags": ["Alarm hub information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of linkStation", "schema": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "patch": {"summary": "Patch alarm hub settings", "description": "Patch the settings for a specific alarm hub", "tags": ["Alarm hub information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of linkStation", "schema": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}}, "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/alarm-hubs": {"get": {"summary": "Get all alarm hubs", "description": "Get detailed information about all alarm hubs", "tags": ["Alarm hub information & management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/alarm-hubs/{id}/outputs/{outputId}/trigger": {"post": {"summary": "Trigger alarm hub output", "description": "Trigger an alarm hub output channel. Can be used to turn on/off connected devices like sirens, lights, or other actuators.", "tags": ["Alarm hub information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of linkStation", "schema": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "required": true}, {"in": "path", "name": "outputId", "description": "Output channel ID (0 or 1)", "schema": {"type": "integer", "minimum": 0, "description": "Output channel ID (0 or 1)"}, "required": true}], "requestBody": {"required": false, "content": {"application/json": {"schema": {"type": "object", "properties": {"enable": {"type": "boolean", "description": "Set to true to turn on, false to turn off. If omitted, toggles the current state.", "examples": [true]}, "delay": {"type": "integer", "minimum": 0, "description": "Delay in milliseconds before the output activates", "examples": [0]}, "duration": {"type": "integer", "minimum": 0, "description": "Duration in milliseconds to keep the output active. 0 means indefinite until manually turned off.", "examples": [5000]}}, "additionalProperties": false, "description": "Trigger output request body"}}}}, "responses": {"204": {"description": "The output trigger was initiated successfully."}, "503": {"description": "The alarm hub is offline or not reachable."}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/nvrs": {"get": {"summary": "Get NVR details", "description": "Get detailed information about the NVR", "tags": ["NVR information & management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey", "name", "doorbellSettings", "armMode"], "title": "nvr"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/files/{fileType}": {"post": {"summary": "Upload device asset file", "description": "Upload a new device asset file", "tags": ["Device asset file management"], "parameters": [{"in": "path", "name": "fileType", "description": "Device asset file type", "schema": {"type": "string", "enum": ["animations"], "description": "Device asset file type", "title": "assetFileType"}, "required": true}], "requestBody": {"content": {"multipart/form-data": {"schema": {"type": "string", "format": "binary", "description": "A binary file with one of these MIME types: image/gif, image/jpeg, image/png, audio/mpeg, audio/mp4, audio/wave, audio/x-caf}"}}}}, "responses": {"200": {"description": "Processed and persisted device asset", "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "Unique ID for the asset file", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"], "title": "fileName"}, "type": {"type": "string", "enum": ["animations"], "description": "Device asset file type", "title": "assetFileType"}, "originalName": {"type": "string", "description": "Original filename of the uploaded file", "examples": ["welcome-animation.png"], "title": "fileOriginalName"}, "path": {"type": "string", "description": "Path to the file on the filesystem", "examples": ["/data/animations/34225b30-fe6a-11af-1690-29424bd911c2.png"], "title": "filePath"}}, "required": ["name", "type", "path"], "title": "fileSchema"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "get": {"summary": "Get device asset files", "description": "Get a list of all device asset files", "tags": ["Device asset file management"], "parameters": [{"in": "path", "name": "fileType", "description": "Device asset file type", "schema": {"type": "string", "enum": ["animations"], "description": "Device asset file type", "title": "assetFileType"}, "required": true}], "responses": {"200": {"description": "Device asset list", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"name": {"type": "string", "description": "Unique ID for the asset file", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"], "title": "fileName"}, "type": {"type": "string", "enum": ["animations"], "description": "Device asset file type", "title": "assetFileType"}, "originalName": {"type": "string", "description": "Original filename of the uploaded file", "examples": ["welcome-animation.png"], "title": "fileOriginalName"}, "path": {"type": "string", "description": "Path to the file on the filesystem", "examples": ["/data/animations/34225b30-fe6a-11af-1690-29424bd911c2.png"], "title": "filePath"}}, "required": ["name", "type", "path"], "title": "fileSchema"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/chimes/{id}": {"get": {"summary": "Get chime details", "description": "Get detailed information about a specific chime", "tags": ["Chime information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of chime", "schema": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey", "state", "name", "mac", "cameraIds", "ringSettings"], "title": "chime"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}, "patch": {"summary": "Patch chime settings", "description": "Patch the settings for a specific chime", "tags": ["Chime information & management"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of chime", "schema": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "required": true}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the device."}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"allOf": [{"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}], "additionalProperties": false}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "additionalProperties": false}}}}, "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey", "state", "name", "mac", "cameraIds", "ringSettings"], "title": "chime"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/chimes": {"get": {"summary": "Get all chimes", "description": "Get detailed information about all chimes", "tags": ["Chime information & management"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey", "state", "name", "mac", "cameraIds", "ringSettings"], "title": "chime"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/users/{id}": {"get": {"summary": "Get user details", "description": "Get detailed information about a specific Protect user.", "tags": ["Protect User information"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of user", "schema": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "name": {"type": "string", "description": "The user name (first-name + last-name).", "examples": ["John Doe"]}, "firstName": {"type": ["string", "null"], "description": "The user first-name.", "examples": ["John"]}, "lastName": {"type": ["string", "null"], "description": "The user last-name.", "examples": ["Doe"]}, "email": {"type": ["string", "null"], "description": "The user email.", "examples": ["john.doe@example.com"]}, "ucoreUserId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890"]}, "modelKey": {"type": "string", "const": "user", "description": "The model key of the user", "title": "userModelKey"}}, "required": ["id", "name", "firstName", "lastName", "email", "ucoreUserId", "modelKey"], "title": "user"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/users": {"get": {"summary": "Get all users", "description": "Get all Protect users. Users are filtered based on access permissions.", "tags": ["Protect User information"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "name": {"type": "string", "description": "The user name (first-name + last-name).", "examples": ["John Doe"]}, "firstName": {"type": ["string", "null"], "description": "The user first-name.", "examples": ["John"]}, "lastName": {"type": ["string", "null"], "description": "The user last-name.", "examples": ["Doe"]}, "email": {"type": ["string", "null"], "description": "The user email.", "examples": ["john.doe@example.com"]}, "ucoreUserId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890"]}, "modelKey": {"type": "string", "const": "user", "description": "The model key of the user", "title": "userModelKey"}}, "required": ["id", "name", "firstName", "lastName", "email", "ucoreUserId", "modelKey"], "title": "user"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/ulp-users/{id}": {"get": {"summary": "Get identity user details", "description": "Get detailed information about a specific UniFi Identity user.", "tags": ["UniFi Identity User information"], "parameters": [{"in": "path", "name": "id", "description": "The primary key of ulpUser", "schema": {"type": "string", "description": "The primary key of ulpUser", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ulpUserId"}, "required": true}], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of ulpUser", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ulpUserId"}, "firstName": {"type": "string", "description": "The first name of ulp user", "examples": ["John"]}, "lastName": {"type": "string", "description": "The last name of ulp user", "examples": ["Doe"]}, "fullName": {"type": "string", "description": "Fullname of ulp user", "examples": ["John Doe"]}, "status": {"type": "string", "enum": ["ACTIVE", "DEACTIVATED"], "description": "Active status of ulp user", "examples": ["ACTIVE"]}, "modelKey": {"type": "string", "const": "ulpUser", "description": "The model key of the ulpUser", "title": "ulpUserModelKey"}}, "required": ["id", "firstName", "lastName", "fullName", "status", "modelKey"], "title": "ulpUser"}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}, "/v1/ulp-users": {"get": {"summary": "Get all identity users", "description": "Get all UniFi Identity users with enrolled credentials (NFC cards, fingerprints).", "tags": ["UniFi Identity User information"], "responses": {"200": {"description": "Success response", "content": {"application/json": {"schema": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of ulpUser", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ulpUserId"}, "firstName": {"type": "string", "description": "The first name of ulp user", "examples": ["John"]}, "lastName": {"type": "string", "description": "The last name of ulp user", "examples": ["Doe"]}, "fullName": {"type": "string", "description": "Fullname of ulp user", "examples": ["John Doe"]}, "status": {"type": "string", "enum": ["ACTIVE", "DEACTIVATED"], "description": "Active status of ulp user", "examples": ["ACTIVE"]}, "modelKey": {"type": "string", "const": "ulpUser", "description": "The model key of the ulpUser", "title": "ulpUserModelKey"}}, "required": ["id", "firstName", "lastName", "fullName", "status", "modelKey"], "title": "ulpUser"}}}}}, "default": {"description": "Error response", "content": {"application/json": {"schema": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}}}}}}}}, "components": {"schemas": {"protectVersion": {"type": "string", "description": "Software version.", "examples": ["1.0.0"], "title": "protectVersion"}, "genericError": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["Unexpected API error occurred"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["API_ERROR"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "genericError"}, "viewerId": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "viewer": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey", "state", "name", "mac", "liveview", "streamLimit"], "title": "viewer"}, "viewerModelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "deviceState": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveviewId": {"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}, "liveview": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, "modelKey": {"type": "string", "const": "liveview", "description": "The model key of the liveview", "title": "liveviewModelKey"}, "name": {"type": "string", "description": "The name of this live view."}, "isDefault": {"type": "boolean", "description": "Whether this live view is the default one for all viewers."}, "isGlobal": {"type": "boolean", "description": "Whether this live view is global and available system-wide to all users"}, "owner": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "layout": {"type": "number", "minimum": 1, "maximum": 26, "description": "The number of slots this live view contains. Which as a consequence also affects the layout of the live view.", "examples": [9, 4]}, "slots": {"type": "array", "items": {"type": "object", "properties": {"cameras": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}, "cycleMode": {"type": "string", "enum": ["motion", "time"], "description": "Whether to switch to next camera in slot based on motion events or a strict time interval"}, "cycleInterval": {"type": "number", "description": "How long should each camera stream be shown for in seconds until we cycle to the next camera", "examples": [10, 30]}}, "required": ["cameras", "cycleMode", "cycleInterval"], "description": "Which cameras will be visible in a given slot and how will they be cycled through"}, "description": "List of cameras visible in each given slot. And cycling settings for each slot if it has multiple cameras listed."}}, "required": ["id", "modelKey", "name", "isDefault", "isGlobal", "owner", "layout", "slots"], "title": "liveview"}, "liveviewModelKey": {"type": "string", "const": "liveview", "description": "The model key of the liveview", "title": "liveviewModelKey"}, "userId": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "cameraId": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "deviceEvent": {"anyOf": [{"oneOf": [{"type": "object", "properties": {"type": {"type": "string", "const": "add"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey", "name", "doorbellSettings", "armMode"], "title": "nvr"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey", "state", "name", "mac", "isMicEnabled", "osdSettings", "ledSettings", "lcdMessage", "micVolume", "activePatrolSlot", "videoMode", "hdrType", "featureFlags", "smartDetectSettings", "hasPackageCamera"], "title": "camera"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey", "state", "name", "mac", "cameraIds", "ringSettings"], "title": "chime"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey", "state", "name", "mac", "lightModeSettings", "lightDeviceSettings", "isDark", "isLightOn", "isLightForceEnabled", "lastMotion", "isPirMotionDetected", "camera"], "title": "light"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey", "state", "name", "mac", "liveview", "streamLimit"], "title": "viewer"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "micVolume", "isMicEnabled", "speakerState", "featureFlags"], "title": "speaker"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey", "state", "name", "mac", "platform", "clients", "maxClients"], "title": "bridge"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "mountType", "batteryStatus", "stats", "lightSettings", "humiditySettings", "temperatureSettings", "isOpened", "openStatusChangedAt", "isMotionDetected", "motionDetectedAt", "motionSettings", "alarmTriggeredAt", "alarmSettings", "leakDetectedAt", "externalLeakDetectedAt", "leakSettings", "tamperingDetectedAt", "wirelessConnectionState"], "title": "sensor"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "ledSettings", "sirenStatus", "connectionType", "wirelessConnectionState"], "title": "siren"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "awayState", "featureFlags", "wirelessConnectionState"], "title": "fob"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "ledSettings", "outputs", "inputs", "wirelessConnectionState"], "title": "relay"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiProcessor"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiPort"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}], "discriminator": {"propertyName": "modelKey", "mapping": {"nvr": "#/components/schemas/nvr", "camera": "#/components/schemas/camera", "chime": "#/components/schemas/chime", "light": "#/components/schemas/light", "viewer": "#/components/schemas/viewer", "speaker": "#/components/schemas/speaker", "bridge": "#/components/schemas/bridge", "sensor": "#/components/schemas/sensor", "siren": "#/components/schemas/siren", "fob": "#/components/schemas/fob", "relay": "#/components/schemas/relay", "aiprocessor": "#/components/schemas/aiProcessor", "aiport": "#/components/schemas/aiPort", "linkstation": "#/components/schemas/linkStation"}}, "title": "device"}}, "required": ["type", "item"], "title": "deviceAdd"}, {"type": "object", "properties": {"type": {"type": "string", "const": "update"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey"], "title": "nvrPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey"], "title": "cameraPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey"], "title": "chimePartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey"], "title": "lightPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey"], "title": "viewerPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey"], "title": "speakerPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey"], "title": "bridgePartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sensorPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sirenPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "fobPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "relayPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiProcessorPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiPortPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey"], "title": "linkStationPartialWithReference"}], "discriminator": {"propertyName": "modelKey", "mapping": {"nvr": "#/components/schemas/nvrPartialWithReference", "camera": "#/components/schemas/cameraPartialWithReference", "chime": "#/components/schemas/chimePartialWithReference", "light": "#/components/schemas/lightPartialWithReference", "viewer": "#/components/schemas/viewerPartialWithReference", "speaker": "#/components/schemas/speakerPartialWithReference", "bridge": "#/components/schemas/bridgePartialWithReference", "sensor": "#/components/schemas/sensorPartialWithReference", "siren": "#/components/schemas/sirenPartialWithReference", "fob": "#/components/schemas/fobPartialWithReference", "relay": "#/components/schemas/relayPartialWithReference", "aiprocessor": "#/components/schemas/aiProcessorPartialWithReference", "aiport": "#/components/schemas/aiPortPartialWithReference", "linkstation": "#/components/schemas/linkStationPartialWithReference"}}, "title": "devicePartialWithReference"}}, "required": ["type", "item"], "title": "deviceUpdate"}, {"type": "object", "properties": {"type": {"type": "string", "const": "remove"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}}, "required": ["id", "modelKey"], "title": "nvrReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}}, "required": ["id", "modelKey"], "title": "cameraReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}}, "required": ["id", "modelKey"], "title": "chimeReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}}, "required": ["id", "modelKey"], "title": "lightReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}}, "required": ["id", "modelKey"], "title": "viewerReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}}, "required": ["id", "modelKey"], "title": "speakerReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}}, "required": ["id", "modelKey"], "title": "bridgeReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}}, "required": ["id", "modelKey"], "title": "sensorReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}}, "required": ["id", "modelKey"], "title": "sirenReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}}, "required": ["id", "modelKey"], "title": "fobReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}}, "required": ["id", "modelKey"], "title": "relayReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}}, "required": ["id", "modelKey"], "title": "aiProcessorReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}}, "required": ["id", "modelKey"], "title": "aiPortReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}}, "required": ["id", "modelKey"], "title": "linkStationReference"}], "discriminator": {"propertyName": "modelKey", "mapping": {"nvr": "#/components/schemas/nvrReference", "camera": "#/components/schemas/cameraReference", "chime": "#/components/schemas/chimeReference", "light": "#/components/schemas/lightReference", "viewer": "#/components/schemas/viewerReference", "speaker": "#/components/schemas/speakerReference", "bridge": "#/components/schemas/bridgeReference", "sensor": "#/components/schemas/sensorReference", "siren": "#/components/schemas/sirenReference", "fob": "#/components/schemas/fobReference", "relay": "#/components/schemas/relayReference", "aiprocessor": "#/components/schemas/aiProcessorReference", "aiport": "#/components/schemas/aiPortReference", "linkstation": "#/components/schemas/linkStationReference"}}, "title": "deviceReference"}}, "required": ["type", "item"], "title": "deviceRemove"}], "discriminator": {"propertyName": "type", "mapping": {"add": "#/components/schemas/deviceAdd", "update": "#/components/schemas/deviceUpdate", "remove": "#/components/schemas/deviceRemove"}}, "description": "A device which was created, updated or deleted"}, {"oneOf": [{"type": "object", "properties": {"type": {"type": "string", "const": "add"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}}]}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey", "name", "doorbellSettings", "armMode"], "title": "nvr"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}]}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey", "state", "name", "mac", "isMicEnabled", "osdSettings", "ledSettings", "lcdMessage", "micVolume", "activePatrolSlot", "videoMode", "hdrType", "featureFlags", "smartDetectSettings", "hasPackageCamera"], "title": "camera"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}}]}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey", "state", "name", "mac", "cameraIds", "ringSettings"], "title": "chime"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}}]}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey", "state", "name", "mac", "lightModeSettings", "lightDeviceSettings", "isDark", "isLightOn", "isLightForceEnabled", "lastMotion", "isPirMotionDetected", "camera"], "title": "light"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}}]}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey", "state", "name", "mac", "liveview", "streamLimit"], "title": "viewer"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}}]}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "micVolume", "isMicEnabled", "speakerState", "featureFlags"], "title": "speaker"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}}]}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey", "state", "name", "mac", "platform", "clients", "maxClients"], "title": "bridge"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}}]}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "mountType", "batteryStatus", "stats", "lightSettings", "humiditySettings", "temperatureSettings", "isOpened", "openStatusChangedAt", "isMotionDetected", "motionDetectedAt", "motionSettings", "alarmTriggeredAt", "alarmSettings", "leakDetectedAt", "externalLeakDetectedAt", "leakSettings", "tamperingDetectedAt", "wirelessConnectionState"], "title": "sensor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}}]}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "ledSettings", "sirenStatus", "connectionType", "wirelessConnectionState"], "title": "siren"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}}]}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "awayState", "featureFlags", "wirelessConnectionState"], "title": "fob"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}}]}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "ledSettings", "outputs", "inputs", "wirelessConnectionState"], "title": "relay"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiProcessor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiPort"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}}]}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}], "title": "deviceBulk"}}, "required": ["type", "item"], "title": "devicesAdd"}, {"type": "object", "properties": {"type": {"type": "string", "const": "update"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}}]}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey"], "title": "nvr"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}]}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey"], "title": "camera"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}}]}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey"], "title": "chime"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}}]}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey"], "title": "light"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}}]}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey"], "title": "viewer"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}}]}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey"], "title": "speaker"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}}]}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey"], "title": "bridge"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}}]}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sensor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}}]}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "siren"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}}]}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "fob"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}}]}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "relay"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiProcessor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiPort"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}}]}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey"], "title": "linkStation"}], "title": "deviceBulkPartialWithReference"}}, "required": ["type", "item"], "title": "devicesBulkUpdate"}, {"type": "object", "properties": {"type": {"type": "string", "const": "remove"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}}]}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}]}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}}]}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}}]}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}}]}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}}]}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}}]}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}}]}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}}]}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}}]}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}}]}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}}]}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}}, "required": ["id", "modelKey"]}], "title": "deviceBulkReference"}}, "required": ["type", "item"], "title": "devicesBulkRemove"}], "discriminator": {"propertyName": "type", "mapping": {"add": "#/components/schemas/devicesAdd", "update": "#/components/schemas/devicesBulkUpdate", "remove": "#/components/schemas/devicesBulkRemove"}}, "description": "Devices which were created, updated or deleted"}], "description": "Device(s) which was created, updated or deleted"}, "deviceAdd": {"type": "object", "properties": {"type": {"type": "string", "const": "add"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey", "name", "doorbellSettings", "armMode"], "title": "nvr"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey", "state", "name", "mac", "isMicEnabled", "osdSettings", "ledSettings", "lcdMessage", "micVolume", "activePatrolSlot", "videoMode", "hdrType", "featureFlags", "smartDetectSettings", "hasPackageCamera"], "title": "camera"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey", "state", "name", "mac", "cameraIds", "ringSettings"], "title": "chime"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey", "state", "name", "mac", "lightModeSettings", "lightDeviceSettings", "isDark", "isLightOn", "isLightForceEnabled", "lastMotion", "isPirMotionDetected", "camera"], "title": "light"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey", "state", "name", "mac", "liveview", "streamLimit"], "title": "viewer"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "micVolume", "isMicEnabled", "speakerState", "featureFlags"], "title": "speaker"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey", "state", "name", "mac", "platform", "clients", "maxClients"], "title": "bridge"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "mountType", "batteryStatus", "stats", "lightSettings", "humiditySettings", "temperatureSettings", "isOpened", "openStatusChangedAt", "isMotionDetected", "motionDetectedAt", "motionSettings", "alarmTriggeredAt", "alarmSettings", "leakDetectedAt", "externalLeakDetectedAt", "leakSettings", "tamperingDetectedAt", "wirelessConnectionState"], "title": "sensor"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "ledSettings", "sirenStatus", "connectionType", "wirelessConnectionState"], "title": "siren"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "awayState", "featureFlags", "wirelessConnectionState"], "title": "fob"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "ledSettings", "outputs", "inputs", "wirelessConnectionState"], "title": "relay"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiProcessor"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiPort"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}], "discriminator": {"propertyName": "modelKey", "mapping": {"nvr": "#/components/schemas/nvr", "camera": "#/components/schemas/camera", "chime": "#/components/schemas/chime", "light": "#/components/schemas/light", "viewer": "#/components/schemas/viewer", "speaker": "#/components/schemas/speaker", "bridge": "#/components/schemas/bridge", "sensor": "#/components/schemas/sensor", "siren": "#/components/schemas/siren", "fob": "#/components/schemas/fob", "relay": "#/components/schemas/relay", "aiprocessor": "#/components/schemas/aiProcessor", "aiport": "#/components/schemas/aiPort", "linkstation": "#/components/schemas/linkStation"}}, "title": "device"}}, "required": ["type", "item"], "title": "deviceAdd"}, "device": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey", "name", "doorbellSettings", "armMode"], "title": "nvr"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey", "state", "name", "mac", "isMicEnabled", "osdSettings", "ledSettings", "lcdMessage", "micVolume", "activePatrolSlot", "videoMode", "hdrType", "featureFlags", "smartDetectSettings", "hasPackageCamera"], "title": "camera"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey", "state", "name", "mac", "cameraIds", "ringSettings"], "title": "chime"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey", "state", "name", "mac", "lightModeSettings", "lightDeviceSettings", "isDark", "isLightOn", "isLightForceEnabled", "lastMotion", "isPirMotionDetected", "camera"], "title": "light"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey", "state", "name", "mac", "liveview", "streamLimit"], "title": "viewer"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "micVolume", "isMicEnabled", "speakerState", "featureFlags"], "title": "speaker"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey", "state", "name", "mac", "platform", "clients", "maxClients"], "title": "bridge"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "mountType", "batteryStatus", "stats", "lightSettings", "humiditySettings", "temperatureSettings", "isOpened", "openStatusChangedAt", "isMotionDetected", "motionDetectedAt", "motionSettings", "alarmTriggeredAt", "alarmSettings", "leakDetectedAt", "externalLeakDetectedAt", "leakSettings", "tamperingDetectedAt", "wirelessConnectionState"], "title": "sensor"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "ledSettings", "sirenStatus", "connectionType", "wirelessConnectionState"], "title": "siren"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "awayState", "featureFlags", "wirelessConnectionState"], "title": "fob"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "ledSettings", "outputs", "inputs", "wirelessConnectionState"], "title": "relay"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiProcessor"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiPort"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}], "discriminator": {"propertyName": "modelKey", "mapping": {"nvr": "#/components/schemas/nvr", "camera": "#/components/schemas/camera", "chime": "#/components/schemas/chime", "light": "#/components/schemas/light", "viewer": "#/components/schemas/viewer", "speaker": "#/components/schemas/speaker", "bridge": "#/components/schemas/bridge", "sensor": "#/components/schemas/sensor", "siren": "#/components/schemas/siren", "fob": "#/components/schemas/fob", "relay": "#/components/schemas/relay", "aiprocessor": "#/components/schemas/aiProcessor", "aiport": "#/components/schemas/aiPort", "linkstation": "#/components/schemas/linkStation"}}}, "nvr": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey", "name", "doorbellSettings", "armMode"], "title": "nvr"}, "nvrId": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "nvrModelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "nvrArmMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}, "camera": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey", "state", "name", "mac", "isMicEnabled", "osdSettings", "ledSettings", "lcdMessage", "micVolume", "activePatrolSlot", "videoMode", "hdrType", "featureFlags", "smartDetectSettings", "hasPackageCamera"], "title": "camera"}, "cameraModelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "osdIsNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "osdIsDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "osdIsLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "osdIsDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "osdOverlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "ledIsEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "ledWelcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "ledFloodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}, "lcdMessageUnion": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "cameraFeatureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}, "chime": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey", "state", "name", "mac", "cameraIds", "ringSettings"], "title": "chime"}, "chimeId": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "chimeModelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "ringSettings": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "ringtoneId": {"type": "string", "description": "The primary key of ringtone", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "light": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey", "state", "name", "mac", "lightModeSettings", "lightDeviceSettings", "isDark", "isLightOn", "isLightForceEnabled", "lastMotion", "isPirMotionDetected", "camera"], "title": "light"}, "lightId": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "lightModelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightMode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "speaker": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "micVolume", "isMicEnabled", "speakerState", "featureFlags"], "title": "speaker"}, "speakerId": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "speakerModelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "speakerVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "speakerMicVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "speakerIsMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "speakerStateStatus": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "speakerStateMode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}, "speakerFeatureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}, "speakerFeatureFlagsHasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}, "bridge": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey", "state", "name", "mac", "platform", "clients", "maxClients"], "title": "bridge"}, "bridgeId": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "bridgeModelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "bridgePlatform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "bridgeClients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "bridgeMaxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}, "sensor": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "mountType", "batteryStatus", "stats", "lightSettings", "humiditySettings", "temperatureSettings", "isOpened", "openStatusChangedAt", "isMotionDetected", "motionDetectedAt", "motionSettings", "alarmTriggeredAt", "alarmSettings", "leakDetectedAt", "externalLeakDetectedAt", "leakSettings", "tamperingDetectedAt", "wirelessConnectionState"], "title": "sensor"}, "sensorId": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "sensorModelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "sensorMountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "sensorStats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "sensorValue": {"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, "sensorStatus": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "sensorIsOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "sensorOpenStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "sensorIsMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "sensorMotionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "sensorAlarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "sensorLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "sensorExternalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}, "signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}, "wirelessBatteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "wirelessBatteryPercentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "wirelessBatteryIsLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}, "wirelessBridgeId": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}, "siren": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "ledSettings", "sirenStatus", "connectionType", "wirelessConnectionState"], "title": "siren"}, "sirenId": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "sirenModelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "sirenVolume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "sirenLedSettingsExternal": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenLedIsEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "sirenStatusIsActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "sirenStatusActivatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "sirenStatusDuration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}, "sirenDuration": {"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, "sirenConnectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "fob": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "awayState", "featureFlags", "wirelessConnectionState"], "title": "fob"}, "fobId": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "fobModelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "fobAwayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "fobFeatureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "fobButtons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}, "relay": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "ledSettings", "outputs", "inputs", "wirelessConnectionState"], "title": "relay"}, "relayId": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "relayModelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "relayLedSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "relayLedIsEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}, "relayOutputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "relayOutput": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "relayOutputId": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "relayOutputName": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "relayOutputType": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "relayOutputDelay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "relayOutputPulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "relayOutputState": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "relayOutputRebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}, "relayInputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "relayInput": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "relayInputId": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "relayInputName": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "relayInputState": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "relayInputActionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "relayInputActionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "relayInputActionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}, "aiProcessor": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiProcessor"}, "deviceId": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "aiprocessorModelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "aiPort": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiPort"}, "aiportModelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "linkStation": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}, "linkStationId": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "linkstationModelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "linkStationIsAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "linkStationLedSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "linkStationLedIsEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}, "linkStationLastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHubStatus": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}, "deviceUpdate": {"type": "object", "properties": {"type": {"type": "string", "const": "update"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey"], "title": "nvrPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey"], "title": "cameraPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey"], "title": "chimePartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey"], "title": "lightPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey"], "title": "viewerPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey"], "title": "speakerPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey"], "title": "bridgePartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sensorPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sirenPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "fobPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "relayPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiProcessorPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiPortPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey"], "title": "linkStationPartialWithReference"}], "discriminator": {"propertyName": "modelKey", "mapping": {"nvr": "#/components/schemas/nvrPartialWithReference", "camera": "#/components/schemas/cameraPartialWithReference", "chime": "#/components/schemas/chimePartialWithReference", "light": "#/components/schemas/lightPartialWithReference", "viewer": "#/components/schemas/viewerPartialWithReference", "speaker": "#/components/schemas/speakerPartialWithReference", "bridge": "#/components/schemas/bridgePartialWithReference", "sensor": "#/components/schemas/sensorPartialWithReference", "siren": "#/components/schemas/sirenPartialWithReference", "fob": "#/components/schemas/fobPartialWithReference", "relay": "#/components/schemas/relayPartialWithReference", "aiprocessor": "#/components/schemas/aiProcessorPartialWithReference", "aiport": "#/components/schemas/aiPortPartialWithReference", "linkstation": "#/components/schemas/linkStationPartialWithReference"}}, "title": "devicePartialWithReference"}}, "required": ["type", "item"], "title": "deviceUpdate"}, "devicePartialWithReference": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey"], "title": "nvrPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey"], "title": "cameraPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey"], "title": "chimePartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey"], "title": "lightPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey"], "title": "viewerPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey"], "title": "speakerPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey"], "title": "bridgePartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sensorPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sirenPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "fobPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "relayPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiProcessorPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiPortPartialWithReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey"], "title": "linkStationPartialWithReference"}], "discriminator": {"propertyName": "modelKey", "mapping": {"nvr": "#/components/schemas/nvrPartialWithReference", "camera": "#/components/schemas/cameraPartialWithReference", "chime": "#/components/schemas/chimePartialWithReference", "light": "#/components/schemas/lightPartialWithReference", "viewer": "#/components/schemas/viewerPartialWithReference", "speaker": "#/components/schemas/speakerPartialWithReference", "bridge": "#/components/schemas/bridgePartialWithReference", "sensor": "#/components/schemas/sensorPartialWithReference", "siren": "#/components/schemas/sirenPartialWithReference", "fob": "#/components/schemas/fobPartialWithReference", "relay": "#/components/schemas/relayPartialWithReference", "aiprocessor": "#/components/schemas/aiProcessorPartialWithReference", "aiport": "#/components/schemas/aiPortPartialWithReference", "linkstation": "#/components/schemas/linkStationPartialWithReference"}}}, "nvrPartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey"], "title": "nvrPartialWithReference"}, "cameraPartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey"], "title": "cameraPartialWithReference"}, "chimePartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey"], "title": "chimePartialWithReference"}, "lightPartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey"], "title": "lightPartialWithReference"}, "viewerPartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey"], "title": "viewerPartialWithReference"}, "speakerPartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey"], "title": "speakerPartialWithReference"}, "bridgePartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey"], "title": "bridgePartialWithReference"}, "sensorPartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sensorPartialWithReference"}, "sirenPartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sirenPartialWithReference"}, "fobPartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "fobPartialWithReference"}, "relayPartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "relayPartialWithReference"}, "aiProcessorPartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiProcessorPartialWithReference"}, "aiPortPartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiPortPartialWithReference"}, "linkStationPartialWithReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey"], "title": "linkStationPartialWithReference"}, "deviceRemove": {"type": "object", "properties": {"type": {"type": "string", "const": "remove"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}}, "required": ["id", "modelKey"], "title": "nvrReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}}, "required": ["id", "modelKey"], "title": "cameraReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}}, "required": ["id", "modelKey"], "title": "chimeReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}}, "required": ["id", "modelKey"], "title": "lightReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}}, "required": ["id", "modelKey"], "title": "viewerReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}}, "required": ["id", "modelKey"], "title": "speakerReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}}, "required": ["id", "modelKey"], "title": "bridgeReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}}, "required": ["id", "modelKey"], "title": "sensorReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}}, "required": ["id", "modelKey"], "title": "sirenReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}}, "required": ["id", "modelKey"], "title": "fobReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}}, "required": ["id", "modelKey"], "title": "relayReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}}, "required": ["id", "modelKey"], "title": "aiProcessorReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}}, "required": ["id", "modelKey"], "title": "aiPortReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}}, "required": ["id", "modelKey"], "title": "linkStationReference"}], "discriminator": {"propertyName": "modelKey", "mapping": {"nvr": "#/components/schemas/nvrReference", "camera": "#/components/schemas/cameraReference", "chime": "#/components/schemas/chimeReference", "light": "#/components/schemas/lightReference", "viewer": "#/components/schemas/viewerReference", "speaker": "#/components/schemas/speakerReference", "bridge": "#/components/schemas/bridgeReference", "sensor": "#/components/schemas/sensorReference", "siren": "#/components/schemas/sirenReference", "fob": "#/components/schemas/fobReference", "relay": "#/components/schemas/relayReference", "aiprocessor": "#/components/schemas/aiProcessorReference", "aiport": "#/components/schemas/aiPortReference", "linkstation": "#/components/schemas/linkStationReference"}}, "title": "deviceReference"}}, "required": ["type", "item"], "title": "deviceRemove"}, "deviceReference": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}}, "required": ["id", "modelKey"], "title": "nvrReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}}, "required": ["id", "modelKey"], "title": "cameraReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}}, "required": ["id", "modelKey"], "title": "chimeReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}}, "required": ["id", "modelKey"], "title": "lightReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}}, "required": ["id", "modelKey"], "title": "viewerReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}}, "required": ["id", "modelKey"], "title": "speakerReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}}, "required": ["id", "modelKey"], "title": "bridgeReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}}, "required": ["id", "modelKey"], "title": "sensorReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}}, "required": ["id", "modelKey"], "title": "sirenReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}}, "required": ["id", "modelKey"], "title": "fobReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}}, "required": ["id", "modelKey"], "title": "relayReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}}, "required": ["id", "modelKey"], "title": "aiProcessorReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}}, "required": ["id", "modelKey"], "title": "aiPortReference"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}}, "required": ["id", "modelKey"], "title": "linkStationReference"}], "discriminator": {"propertyName": "modelKey", "mapping": {"nvr": "#/components/schemas/nvrReference", "camera": "#/components/schemas/cameraReference", "chime": "#/components/schemas/chimeReference", "light": "#/components/schemas/lightReference", "viewer": "#/components/schemas/viewerReference", "speaker": "#/components/schemas/speakerReference", "bridge": "#/components/schemas/bridgeReference", "sensor": "#/components/schemas/sensorReference", "siren": "#/components/schemas/sirenReference", "fob": "#/components/schemas/fobReference", "relay": "#/components/schemas/relayReference", "aiprocessor": "#/components/schemas/aiProcessorReference", "aiport": "#/components/schemas/aiPortReference", "linkstation": "#/components/schemas/linkStationReference"}}}, "nvrReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}}, "required": ["id", "modelKey"], "title": "nvrReference"}, "cameraReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}}, "required": ["id", "modelKey"], "title": "cameraReference"}, "chimeReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}}, "required": ["id", "modelKey"], "title": "chimeReference"}, "lightReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}}, "required": ["id", "modelKey"], "title": "lightReference"}, "viewerReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}}, "required": ["id", "modelKey"], "title": "viewerReference"}, "speakerReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}}, "required": ["id", "modelKey"], "title": "speakerReference"}, "bridgeReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}}, "required": ["id", "modelKey"], "title": "bridgeReference"}, "sensorReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}}, "required": ["id", "modelKey"], "title": "sensorReference"}, "sirenReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}}, "required": ["id", "modelKey"], "title": "sirenReference"}, "fobReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}}, "required": ["id", "modelKey"], "title": "fobReference"}, "relayReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}}, "required": ["id", "modelKey"], "title": "relayReference"}, "aiProcessorReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}}, "required": ["id", "modelKey"], "title": "aiProcessorReference"}, "aiPortReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}}, "required": ["id", "modelKey"], "title": "aiPortReference"}, "linkStationReference": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}}, "required": ["id", "modelKey"], "title": "linkStationReference"}, "devicesAdd": {"type": "object", "properties": {"type": {"type": "string", "const": "add"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}}]}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey", "name", "doorbellSettings", "armMode"], "title": "nvr"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}]}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey", "state", "name", "mac", "isMicEnabled", "osdSettings", "ledSettings", "lcdMessage", "micVolume", "activePatrolSlot", "videoMode", "hdrType", "featureFlags", "smartDetectSettings", "hasPackageCamera"], "title": "camera"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}}]}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey", "state", "name", "mac", "cameraIds", "ringSettings"], "title": "chime"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}}]}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey", "state", "name", "mac", "lightModeSettings", "lightDeviceSettings", "isDark", "isLightOn", "isLightForceEnabled", "lastMotion", "isPirMotionDetected", "camera"], "title": "light"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}}]}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey", "state", "name", "mac", "liveview", "streamLimit"], "title": "viewer"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}}]}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "micVolume", "isMicEnabled", "speakerState", "featureFlags"], "title": "speaker"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}}]}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey", "state", "name", "mac", "platform", "clients", "maxClients"], "title": "bridge"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}}]}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "mountType", "batteryStatus", "stats", "lightSettings", "humiditySettings", "temperatureSettings", "isOpened", "openStatusChangedAt", "isMotionDetected", "motionDetectedAt", "motionSettings", "alarmTriggeredAt", "alarmSettings", "leakDetectedAt", "externalLeakDetectedAt", "leakSettings", "tamperingDetectedAt", "wirelessConnectionState"], "title": "sensor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}}]}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "ledSettings", "sirenStatus", "connectionType", "wirelessConnectionState"], "title": "siren"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}}]}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "awayState", "featureFlags", "wirelessConnectionState"], "title": "fob"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}}]}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "ledSettings", "outputs", "inputs", "wirelessConnectionState"], "title": "relay"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiProcessor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiPort"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}}]}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}], "title": "deviceBulk"}}, "required": ["type", "item"], "title": "devicesAdd"}, "deviceBulk": {"oneOf": [{"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}}]}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey", "name", "doorbellSettings", "armMode"], "title": "nvr"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}]}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey", "state", "name", "mac", "isMicEnabled", "osdSettings", "ledSettings", "lcdMessage", "micVolume", "activePatrolSlot", "videoMode", "hdrType", "featureFlags", "smartDetectSettings", "hasPackageCamera"], "title": "camera"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}}]}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey", "state", "name", "mac", "cameraIds", "ringSettings"], "title": "chime"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}}]}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey", "state", "name", "mac", "lightModeSettings", "lightDeviceSettings", "isDark", "isLightOn", "isLightForceEnabled", "lastMotion", "isPirMotionDetected", "camera"], "title": "light"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}}]}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey", "state", "name", "mac", "liveview", "streamLimit"], "title": "viewer"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}}]}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "micVolume", "isMicEnabled", "speakerState", "featureFlags"], "title": "speaker"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}}]}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey", "state", "name", "mac", "platform", "clients", "maxClients"], "title": "bridge"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}}]}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "mountType", "batteryStatus", "stats", "lightSettings", "humiditySettings", "temperatureSettings", "isOpened", "openStatusChangedAt", "isMotionDetected", "motionDetectedAt", "motionSettings", "alarmTriggeredAt", "alarmSettings", "leakDetectedAt", "externalLeakDetectedAt", "leakSettings", "tamperingDetectedAt", "wirelessConnectionState"], "title": "sensor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}}]}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "volume", "ledSettings", "sirenStatus", "connectionType", "wirelessConnectionState"], "title": "siren"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}}]}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "awayState", "featureFlags", "wirelessConnectionState"], "title": "fob"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}}]}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey", "state", "name", "mac", "ledSettings", "outputs", "inputs", "wirelessConnectionState"], "title": "relay"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiProcessor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey", "state", "name", "mac"], "title": "aiPort"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}}]}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey", "state", "name", "mac", "isAlarmHub", "ledSettings", "lastEvent"], "title": "linkStation"}]}, "devicesBulkUpdate": {"type": "object", "properties": {"type": {"type": "string", "const": "update"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}}]}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey"], "title": "nvr"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}]}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey"], "title": "camera"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}}]}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey"], "title": "chime"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}}]}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey"], "title": "light"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}}]}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey"], "title": "viewer"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}}]}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey"], "title": "speaker"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}}]}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey"], "title": "bridge"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}}]}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sensor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}}]}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "siren"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}}]}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "fob"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}}]}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "relay"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiProcessor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiPort"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}}]}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey"], "title": "linkStation"}], "title": "deviceBulkPartialWithReference"}}, "required": ["type", "item"], "title": "devicesBulkUpdate"}, "deviceBulkPartialWithReference": {"oneOf": [{"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}}]}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "doorbellSettings": {"type": "object", "properties": {"defaultMessageText": {"type": "string", "description": "Default text to display on the LCD screen.", "examples": ["WELCOME"]}, "defaultMessageResetTimeoutMs": {"type": "number", "description": "Default timeout for resetting LCD screen to the default message.", "examples": [60000]}, "customMessages": {"type": "array", "items": {"type": "string"}, "description": "A list of custom doorbell messages.", "examples": [["Do Not Disturb", "Leave Package at Door"], []]}, "customImages": {"type": "array", "items": {"type": "object", "properties": {"preview": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png.gif"]}, "sprite": {"type": "string", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["preview", "sprite"]}, "description": "A list of custom doorbell images for client preview."}}, "title": "doorbellSettings"}, "armMode": {"type": "object", "properties": {"status": {"type": "string", "enum": ["arming", "armed", "breach", "disabled"]}, "armProfileId": {"type": ["string", "null"]}, "armedAt": {"type": ["number", "null"]}, "willBeArmedAt": {"type": ["number", "null"]}, "breachDetectedAt": {"type": ["number", "null"]}, "breachEventCount": {"type": "number"}, "breachTriggerEventId": {"type": ["string", "null"]}, "breachEventId": {"type": ["string", "null"]}}, "required": ["status", "armProfileId", "armedAt", "willBeArmedAt", "breachDetectedAt", "breachEventCount", "breachTriggerEventId", "breachEventId"], "title": "nvrArmMode"}}, "required": ["id", "modelKey"], "title": "nvr"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}]}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on camera is enabled", "title": "isMicEnabled"}, "osdSettings": {"type": "object", "properties": {"isNameEnabled": {"type": "boolean", "description": "Whether to show the name in the OSD.", "title": "osdIsNameEnabled"}, "isDateEnabled": {"type": "boolean", "description": "Whether to show the date in the OSD.", "title": "osdIsDateEnabled"}, "isLogoEnabled": {"type": "boolean", "description": "Whether to show the logo in the bottom right corner.", "title": "osdIsLogoEnabled"}, "isDebugEnabled": {"type": "boolean", "description": "Whether debug info is enabled.", "title": "osdIsDebugEnabled"}, "overlayLocation": {"type": "string", "enum": ["topLeft", "topMiddle", "topRight", "bottomLeft", "bottomMiddle", "bottomRight"], "description": "The location of the overlay on the screen.", "examples": ["bottomRight", "topLeft"], "title": "osdOverlayLocation"}}, "required": ["isNameEnabled", "isDateEnabled", "isLogoEnabled", "isDebugEnabled", "overlayLocation"], "description": "On Screen Display settings.", "title": "osdSettings"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Indicates whether the status LED is enabled.", "title": "ledIsEnabled"}, "welcomeLed": {"type": "boolean", "description": "Indicates whether the welcome LED is enabled.", "title": "ledWelcomeLed"}, "floodLed": {"type": "boolean", "description": "Indicates whether the flood LED is enabled.", "title": "ledFloodLed"}}, "required": ["isEnabled", "welcomeLed", "floodLed"], "description": "LED settings.", "title": "ledSettings"}, "lcdMessage": {"type": "object", "properties": {"type": {"type": "string", "enum": ["LEAVE_PACKAGE_AT_DOOR", "DO_NOT_DISTURB", "CUSTOM_MESSAGE", "IMAGE"]}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string"}}, "title": "lcdMessageUnion"}, "micVolume": {"type": "number", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [50, 100], "title": "micVolume"}, "activePatrolSlot": {"oneOf": [{"type": "number", "title": "activePatrolSlot", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": [0, 1, 2, 3, 4]}, {"type": "null"}]}, "videoMode": {"type": "string", "enum": ["default", "highFps", "sport", "slowShutter", "lprReflex", "lprNoneReflex"], "description": "Current video mode of the camera", "examples": ["highFps", "default"], "title": "videoMode"}, "hdrType": {"type": "string", "enum": ["auto", "on", "off"], "description": "High Dynamic Range (HDR) mode setting.", "examples": ["auto", "off"], "title": "hdrType"}, "featureFlags": {"type": "object", "properties": {"supportFullHdSnapshot": {"type": "boolean", "description": "Whether camera support full HD or higher resolution snapshot"}, "hasHdr": {"type": "boolean", "description": "Whether the camera supports High Dynamic Range mode"}, "smartDetectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "description": "What smart detection object types do the camera support."}, "smartDetectAudioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "description": "What smart detection audio types do the camera support."}, "videoModes": {"type": "array", "items": {"type": "string", "enum": ["default", "highFps", "homekit", "sport", "slowShutter", "lprReflex", "lprNoneReflex"]}, "description": "A list of supported video modes by the camera"}, "hasMic": {"type": "boolean", "description": "Whether the camera has a microphone"}, "hasLedStatus": {"type": "boolean", "description": "Whether the camera has LED status"}, "hasSpeaker": {"type": "boolean", "description": "Whether the camera has a speaker to support talkback"}}, "required": ["supportFullHdSnapshot", "hasHdr", "smartDetectTypes", "smartDetectAudioTypes", "videoModes", "hasMic", "hasLedStatus", "hasSpeaker"], "title": "cameraFeatureFlags"}, "smartDetectSettings": {"type": "object", "properties": {"objectTypes": {"type": "array", "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"]}, "title": "objectTypes"}, "audioTypes": {"type": "array", "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"]}, "title": "objectTypes"}}, "required": ["objectTypes", "audioTypes"], "description": "Smart detection settings for the camera.", "title": "smartDetectSettings"}, "hasPackageCamera": {"type": "boolean", "description": "Whether the camera has a package camera.", "title": "hasPackageCamera"}}, "required": ["id", "modelKey"], "title": "camera"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}}]}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "cameraIds": {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "description": "The list of (doorbell-only) cameras which this chime is paired to."}, "ringSettings": {"type": "array", "items": {"type": "object", "properties": {"cameraId": {"description": "Which paired (doorbell-only) camera do these settings refer to.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, "repeatTimes": {"type": "number", "minimum": 1, "maximum": 10, "description": "How many times should the ringtone be repeated", "examples": [3, 1]}, "ringtoneId": {"description": "The ID of the ringtone that should be played when the (doorbell-only) camera is rung.", "type": "string", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ringtoneId"}, "volume": {"type": "number", "minimum": 0, "maximum": 100, "description": "How loud should the ringtone be played. 0 being silent and 100 the loudest.", "examples": [100, 80]}}, "required": ["cameraId", "repeatTimes", "ringtoneId", "volume"], "title": "ringSettings"}, "description": "List of custom ringtone settings for (doorbell-only) cameras paired to this chime."}}, "required": ["id", "modelKey"], "title": "chime"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}}]}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "lightModeSettings": {"type": "object", "properties": {"mode": {"anyOf": [{"type": "string", "const": "always"}, {"type": "string", "const": "motion"}, {"type": "string", "const": "off"}], "description": "When will floodlight turn on.", "title": "lightMode"}, "enableAt": {"anyOf": [{"type": "string", "const": "fulltime"}, {"type": "string", "const": "dark"}], "description": "At what time is the lighting mode relevant and acted upon (this has no effect when mode is off).", "title": "enableAt"}}, "description": "Settings for when and how your light gets activated", "title": "lightModeSettings"}, "lightDeviceSettings": {"type": "object", "properties": {"isIndicatorEnabled": {"type": "boolean", "description": "Turn on/off floodlight status LED indicator."}, "pirDuration": {"type": "number", "minimum": 0, "description": "How long the light stays on after a motion event in milliseconds.", "examples": [30000, 15000]}, "pirSensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "How sensitive is the PIR to motion (0-100)%.", "examples": [50, 80]}, "ledLevel": {"type": "number", "minimum": 1, "maximum": 6, "description": "Brightness level of the main LED (1-6).", "examples": [6, 3]}}, "description": "Hardware settings for light device.", "title": "lightDeviceSettings"}, "isDark": {"type": "boolean", "description": "Whether the light is currently sensing that it's in a dark scene.", "title": "isDark"}, "isLightOn": {"type": "boolean", "description": "Whether the light has its main LED currently enabled.", "title": "isLightOn"}, "isLightForceEnabled": {"type": "boolean", "description": "Whether the light has its main LED currently force-enabled.", "title": "isLightForceEnabled"}, "lastMotion": {"type": ["number", "null"], "description": "Unix timestamp of the last time the PIR motion-detection was triggered.", "examples": [1445408038748], "title": "lastMotion"}, "isPirMotionDetected": {"type": "boolean", "description": "Whether the light PIR is currently detecting motion", "title": "isPirMotionDetected"}, "camera": {"oneOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "null"}], "description": "Which camera is configured to be paired to this light."}}, "required": ["id", "modelKey"], "title": "light"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}}]}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "liveview": {"oneOf": [{"type": "string", "description": "The primary key of liveview", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "liveviewId"}, {"type": "null"}]}, "streamLimit": {"type": "number", "description": "Count of maximum supported parallel live streams.", "examples": [1, 16], "title": "streamLimit"}}, "required": ["id", "modelKey"], "title": "viewer"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}}]}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Speaker volume: a number from 0-100.", "examples": [80], "title": "speakerVolume"}, "micVolume": {"type": "integer", "minimum": 0, "maximum": 100, "description": "Mic volume: a number from 0-100.", "examples": [80], "title": "speakerMicVolume"}, "isMicEnabled": {"type": "boolean", "description": "Whether or not the microphone on the speaker is enabled.", "examples": [true], "title": "speakerIsMicEnabled"}, "speakerState": {"type": "object", "properties": {"status": {"type": "string", "enum": ["idle", "streaming", "playing", "tts_playing", "uploading"], "description": "Current status of the speaker", "examples": ["idle"], "title": "speakerStateStatus"}, "mode": {"type": "string", "enum": ["listen", "talk"], "description": "Current mode of the speaker", "examples": ["listen"], "title": "speakerStateMode"}}, "required": ["status", "mode"], "description": "Real-time state of Speaker", "title": "speakerState"}, "featureFlags": {"type": "object", "properties": {"hasMic": {"type": "boolean", "description": "Whether the device has a microphone.", "examples": [true, false], "title": "speakerFeatureFlagsHasMic"}}, "required": ["hasMic"], "description": "Feature flags of the speaker", "title": "speakerFeatureFlags"}}, "required": ["id", "modelKey"], "title": "speaker"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}}]}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "platform": {"type": ["string", "null"], "description": "The bridge platform", "examples": ["mt7621", "mt7622"], "title": "bridgePlatform"}, "clients": {"type": "array", "items": {"type": "string"}, "description": "Array of IoT devices mac that bridge is reserving for", "examples": [["AABBCCDDEEFF", "112233445566"], []], "title": "bridgeClients"}, "maxClients": {"type": "number", "description": "The max acceptable client number of a V2 bridge. V1 bridge does not support this feature.", "examples": [7, 0], "title": "bridgeMaxClients"}}, "required": ["id", "modelKey"], "title": "bridge"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}}]}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "mountType": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50]}, "isLow": {"type": "boolean", "description": "Low battery charge level flag."}}, "description": "[DEPRECATED] Use wirelessConnectionState.batteryStatus instead. Battery status.", "title": "batteryStatus"}, "stats": {"type": "object", "properties": {"light": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "humidity": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}, "temperature": {"type": "object", "properties": {"value": {"oneOf": [{"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}, {"type": "null"}]}, "status": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "description": "Ambient light value (Lux)."}}, "description": "Sensor statistics.", "title": "sensorStats"}, "lightSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable ambient light sensor."}, "margin": {"type": "number", "description": "Ambient light threshold detection hysteresis margin (Lux). Read-only value decided by sensor implementation.", "examples": [10]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 503192, "description": "Ambient light interrupt threshold low level from 1 to 503192 (Lux).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Ambient light interrupt threshold high level from 1 to 503192 (Lux).", "examples": [100]}}, "description": "Ambient light sensor settings.", "title": "lightSettings"}, "humiditySettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable relative humidity sensor."}, "margin": {"type": "number", "description": "Humidity threshold detection hysteresis margin (%). Read-only value decided by sensor implementation.", "examples": [1]}, "lowThreshold": {"type": ["number", "null"], "minimum": 1, "maximum": 99, "description": "Humidity low level threshold from 1 to 99 (%).", "examples": [30]}, "highThreshold": {"type": ["number", "null"], "description": "Humidity high level threshold from 1 to 99 (%).", "examples": [80]}}, "description": "Relative humidity sensor settings.", "title": "humiditySettings"}, "temperatureSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable temperature sensor."}, "margin": {"type": "number", "description": "Temperature threshold detection hysteresis margin (C). Read-only value decided by sensor implementation.", "examples": [0.1]}, "lowThreshold": {"type": ["number", "null"], "minimum": -39, "maximum": 124, "description": "Temperature low level threshold from -39 to 124 (C).", "examples": [20]}, "highThreshold": {"type": ["number", "null"], "description": "Temperature high level threshold from -39 to 124 (C).", "examples": [25]}}, "description": "Temperature sensor settings.", "title": "temperatureSettings"}, "isOpened": {"type": ["boolean", "null"], "description": "Whether the door/window/garage is opened.", "title": "sensorIsOpened"}, "openStatusChangedAt": {"type": ["number", "null"], "description": "Unix timestamp when the door/window/garage was last opened or closed, nullable.", "examples": [1445408038748], "title": "sensorOpenStatusChangedAt"}, "isMotionDetected": {"type": "boolean", "description": "Whether sensor is currently detecting the motion.", "title": "sensorIsMotionDetected"}, "motionDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the last motion was detected.", "examples": [1445408038748], "title": "sensorMotionDetectedAt"}, "motionSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable motion sensor."}, "sensitivity": {"type": "number", "minimum": 0, "maximum": 100, "description": "Motion sensitivity (0-100).", "examples": [50, 100]}}, "description": "Motion sensor settings.", "title": "motionSettings"}, "alarmTriggeredAt": {"type": ["number", "null"], "description": "Unix timestamp when the smoke or carbon monoxide alarm was triggered, nullable.", "examples": [1445408038748], "title": "sensorAlarmTriggeredAt"}, "alarmSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable smoke and carbon monoxide alarm sensor."}}, "description": "Smoke and carbon monoxide alarm sensor settings.", "title": "alarmSettings"}, "leakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected a water leak, nullable.", "examples": [1445408038748], "title": "sensorLeakDetectedAt"}, "externalLeakDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected an external water leak, nullable.", "examples": [1445408038748], "title": "sensorExternalLeakDetectedAt"}, "leakSettings": {"type": "object", "properties": {"isInternalEnabled": {"type": "boolean", "description": "Enable internal water leak detection."}, "isExternalEnabled": {"type": "boolean", "description": "Enable external water leak detection."}}, "description": "Leak sensor settings.", "title": "leakSettings"}, "tamperingDetectedAt": {"type": ["number", "null"], "description": "Unix timestamp when the sensor detected tampering, nullable.", "examples": [1445408038748], "title": "tamperingDetectedAt"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "sensor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}}]}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "volume": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Volume: a number from 1-100.", "examples": [80, 50], "title": "sirenVolume"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "sirenLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "sirenLedSettingsExternal"}, "sirenStatus": {"type": "object", "properties": {"isActive": {"type": "boolean", "description": "Whether the siren is active.", "examples": [true, false], "title": "sirenStatusIsActive"}, "activatedAt": {"type": ["number", "null"], "description": "Timestamp when the siren was activated.", "examples": [1445408038748], "title": "sirenStatusActivatedAt"}, "duration": {"oneOf": [{"anyOf": [{"type": "number", "const": 5000}, {"type": "number", "const": 10000}, {"type": "number", "const": 20000}, {"type": "number", "const": 30000}], "description": "Duration of the siren activation in milliseconds.", "examples": [5000, 10000, 20000, 30000], "title": "sirenDuration"}, {"type": "null"}], "title": "sirenStatusDuration"}}, "required": ["isActive", "activatedAt", "duration"], "description": "Status of the siren", "title": "sirenStatus"}, "connectionType": {"type": "string", "enum": ["ucp4", "lora"], "description": "The connection type of the siren.", "examples": ["lora", "ucp4"], "title": "sirenConnectionType"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "siren"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}}]}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "awayState": {"type": "string", "enum": ["ONLINE", "RECENTLY_SEEN", "NO_RECENT_HEARTBEAT", "DEVICE_LOST"], "description": "Fob presence/away state.", "examples": ["ONLINE", "DEVICE_LOST"], "title": "fobAwayState"}, "featureFlags": {"type": "object", "properties": {"buttons": {"type": "array", "items": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}, "description": "Available button types on the fob.", "examples": [["arm", "disarm", "panic"]], "title": "fobButtons"}}, "required": ["buttons"], "description": "Feature flags for the fob.", "examples": [{"buttons": ["arm", "disarm", "panic"]}], "title": "fobFeatureFlags"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "fob"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}}]}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Enable status LED.", "examples": [true], "title": "relayLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "relayLedSettings"}, "outputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay output.", "examples": [0], "title": "relayOutputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay output.", "examples": ["Garage Door"], "title": "relayOutputName"}, "type": {"type": ["string", "null"], "enum": ["garageDoor", "gate", "valve", "siren", "custom"], "description": "The type of device connected to this relay output.", "examples": ["garageDoor"], "title": "relayOutputType"}, "delay": {"type": ["number", "null"], "description": "Server-side delay in milliseconds before activation (0 = no delay, null = use default).", "examples": [0], "title": "relayOutputDelay"}, "pulseDuration": {"type": ["number", "null"], "description": "Auto-off duration in milliseconds (0 = permanent on until manually turned off, null = use default).", "examples": [1000], "title": "relayOutputPulseDuration"}, "state": {"type": ["string", "null"], "enum": ["on", "off", "offOtp"], "description": "The current state of the relay output.", "examples": ["off"], "title": "relayOutputState"}, "rebootState": {"type": "string", "enum": ["restore", "on", "off"], "description": "The state the relay output should be set to after a reboot/power cycle.", "examples": ["off"], "title": "relayOutputRebootState"}}, "required": ["id", "name", "type", "delay", "pulseDuration", "state", "rebootState"], "description": "Relay output channels.", "title": "relayOutput"}, "title": "relayOutputs"}, "inputs": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "number", "description": "The channel index of the relay input.", "examples": [0], "title": "relayInputId"}, "name": {"type": ["string", "null"], "description": "User-friendly name for this relay input.", "examples": ["Door Sensor"], "title": "relayInputName"}, "state": {"type": ["string", "null"], "enum": ["on", "off"], "description": "The current state of the relay input.", "examples": ["off"], "title": "relayInputState"}, "actionTrigger": {"type": ["string", "null"], "enum": ["switchedOn", "switchedOff"], "description": "The trigger event that activates the action.", "examples": ["switchedOn"], "title": "relayInputActionTrigger"}, "actionType": {"type": ["string", "null"], "enum": ["setOutputOn", "setOutputOff", "toggleOutput", "followInput"], "description": "The type of action to perform when triggered.", "examples": ["toggleOutput"], "title": "relayInputActionType"}, "actionOutputId": {"type": ["number", "null"], "description": "The index of the output to control when triggered.", "examples": [0], "title": "relayInputActionOutputId"}}, "required": ["id", "name", "state", "actionTrigger", "actionType", "actionOutputId"], "description": "Relay input channels.", "title": "relayInput"}, "title": "relayInputs"}, "wirelessConnectionState": {"type": "object", "properties": {"signalState": {"type": "object", "properties": {"signalQuality": {"type": ["number", "null"], "description": "Percent representation of Bluetooth signal strength.", "examples": [85], "title": "signalQuality"}, "signalStrength": {"type": ["number", "null"], "description": "dBm value of Bluetooth signal strength.", "examples": [-45], "title": "signalStrength"}}, "required": ["signalQuality", "signalStrength"], "description": "Signal state.", "title": "signalState"}, "batteryStatus": {"type": "object", "properties": {"percentage": {"type": ["number", "null"], "description": "Battery charge level from 0 to 100 (%).", "examples": [95, 50], "title": "wirelessBatteryPercentage"}, "isLow": {"type": "boolean", "description": "Low battery charge level flag.", "title": "wirelessBatteryIsLow"}}, "required": ["percentage", "isLow"], "description": "Battery status.", "title": "wirelessBatteryStatus"}, "bridge": {"oneOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "null"}], "description": "The ID of the bridge this device is connected through.", "title": "wirelessBridgeId"}}, "required": ["signalState", "batteryStatus", "bridge"], "description": "Wireless connection state including signal quality, battery status, and bridge connection.", "title": "wirelessConnectionState"}}, "required": ["id", "modelKey"], "title": "relay"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiProcessor"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}}, "required": ["id", "modelKey"], "title": "aiPort"}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}}]}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}, "state": {"type": "string", "enum": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "description": "Connection state of the device.", "examples": ["CONNECTED", "CONNECTING", "DISCONNECTED"], "title": "deviceState"}, "name": {"oneOf": [{"type": "string", "description": "The name of the device.", "examples": ["Front Door", "Office Entrance", "Server Room"], "title": "name"}, {"type": "null"}]}, "mac": {"type": "string", "description": "The primary MAC address of the device.", "examples": ["24A43C3DFEB9", "D021F98B6AED"], "title": "mac"}, "isAlarmHub": {"type": "boolean", "description": "Whether the linkstation is an alarm hub.", "title": "linkStationIsAlarmHub"}, "ledSettings": {"type": "object", "properties": {"isEnabled": {"type": "boolean", "description": "Whether the status LED is enabled.", "title": "linkStationLedIsEnabled"}}, "required": ["isEnabled"], "description": "Status LED settings.", "title": "linkStationLedSettings"}, "lastEvent": {"type": ["number", "null"], "description": "Timestamp when any last event was detected.", "examples": [1445408038748], "title": "linkStationLastEvent"}, "alarmHub": {"type": "object", "properties": {"armed": {"type": "string", "enum": ["on", "off"]}, "battery": {"type": "object", "properties": {"charging": {"type": "string", "enum": ["on", "off"]}, "connection": {"type": "string", "enum": ["connected", "disconnected"]}, "voltage": {"type": "number"}, "batteryStatus": {"type": "string", "enum": ["ok", "low", "critical"]}}}, "buckboost": {"type": "string", "enum": ["on", "off"]}, "connector": {"type": "object", "properties": {"emergency": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}, "12v": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "relay": {"type": "object", "additionalProperties": {"type": "object", "properties": {"com": {"type": "string", "enum": ["connected", "disconnected"]}, "nc": {"type": "string", "enum": ["connected", "disconnected"]}, "no": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["com", "nc", "no"]}}, "tb": {"type": "object", "additionalProperties": {"type": "object", "properties": {"+": {"type": "string", "enum": ["connected", "disconnected"]}, "-": {"type": "string", "enum": ["connected", "disconnected"]}}, "required": ["+", "-"]}}, "battery": {"type": "string", "enum": ["connected", "disconnected"]}, "poeout": {"type": "string", "enum": ["connected", "disconnected"]}}}, "cover": {"type": "object", "properties": {"distance": {"type": "integer"}, "status": {"type": "string", "enum": ["open", "close"]}}}, "currentMeterChannelStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"criticalAlarm": {"type": "string", "enum": ["normal", "alert"]}, "criticalThreshold": {"type": "number"}, "value": {"type": "number"}, "warningAlarm": {"type": "string", "enum": ["normal", "alert"]}, "warningThreshold": {"type": "number"}}, "required": ["criticalAlarm", "criticalThreshold", "value", "warningAlarm", "warningThreshold"]}}, "currentMeterStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"critical": {"type": "string", "enum": ["normal", "alert"]}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "powerValid": {"type": "string", "enum": ["normal", "alert"]}, "timingControl": {"type": "string", "enum": ["normal", "alert"]}, "warning": {"type": "string", "enum": ["normal", "alert"]}}, "required": ["critical", "efuse", "enable", "powerValid", "timingControl", "warning"]}}, "inputPower": {"type": "object", "properties": {"bt": {"type": "string", "enum": ["low", "high"]}, "typ1": {"type": "string", "enum": ["low", "high"]}, "typ2": {"type": "string", "enum": ["low", "high"]}}}, "poeout": {"type": "object", "properties": {"connection": {"type": "string", "enum": ["connected", "disconnected"]}, "powerSupply": {"type": "string", "enum": ["on", "off"]}}}, "powerMeter": {"type": "object", "additionalProperties": {"type": "object", "properties": {"alarm": {"type": "string", "enum": ["normal", "alert"]}, "current": {"type": "number"}, "efuse": {"type": "string", "enum": ["normal", "warning", "fault"]}, "enable": {"type": "string", "enum": ["on", "off"]}, "power": {"type": "number"}, "powerThreshold": {"type": "number"}, "voltage": {"type": "number"}}, "required": ["alarm", "current", "efuse", "enable", "power", "powerThreshold", "voltage"]}}, "output": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "active": {"type": "string", "enum": ["on", "off"]}, "status": {"type": "string", "enum": ["wet", "dry"]}, "delay": {"type": "integer"}, "duration": {"type": "integer"}, "name": {"type": "string"}}, "required": ["enable", "active", "status"]}}, "input": {"type": "object", "additionalProperties": {"type": "object", "properties": {"enable": {"type": "string", "enum": ["on", "off"]}, "type": {"anyOf": [{"type": "string", "const": "no"}, {"type": "string", "const": "nc"}]}, "eolr": {"type": "integer", "minimum": 0, "maximum": 2}, "resistor": {"type": "number", "minimum": 0, "maximum": 10}, "status": {"type": "string", "enum": ["normal", "alarm", "fault", "short", "cut"]}, "trigger": {"type": "integer"}, "name": {"type": "string"}, "inputType": {"type": "string", "enum": ["MOTION", "ENTRY", "SMOKE", "GLASS_BREAK", "EMERGENCY_BUTTON"]}, "allowedArmingProfiles": {"type": "array", "items": {"type": "string"}}, "triggerWhenDisarmed": {"type": "string", "enum": ["on", "off"]}, "triggerOnCurrentArmingProfile": {"type": "string", "enum": ["on", "off"]}, "lastTriggeredAt": {"type": ["number", "null"]}, "cameraId": {"type": ["string", "null"]}, "powerReset": {"type": "boolean"}}, "required": ["enable", "type", "eolr", "resistor", "status", "trigger"]}}, "inputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}}, "outputTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"pins": {"type": "object", "properties": {"no": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "com": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "nc": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}}, "required": ["no", "com", "nc"]}, "statusLabel": {"type": "string", "enum": ["disabled", "off", "active"]}, "mode": {"type": "string", "enum": ["dry-contact", "powered-12v"]}, "efuseAlert": {"type": "string", "enum": ["none", "high-current", "over-current"]}, "wiredPins": {"type": "array", "items": {"type": "string", "enum": ["+", "-", "nc", "no", "com"]}}}, "required": ["pins", "statusLabel", "mode", "efuseAlert", "wiredPins"]}}, "emergencyTerminalStatus": {"type": ["object", "null"], "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "terminalStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short", "partially-connected"]}, "idleSubState": {"type": "string", "enum": ["open", "closed"]}}, "required": ["plusPinStatus", "minusPinStatus", "terminalStatus"]}, "auxiliaryPowerTerminalStatus": {"type": "object", "additionalProperties": {"type": "object", "properties": {"plusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "minusPinStatus": {"type": "string", "enum": ["disabled", "idle", "not-connected", "tamper", "triggered", "cut", "short"]}, "status": {"type": "string", "enum": ["not-connected", "partially-connected", "connected"]}, "currentMa": {"type": "number"}, "loadPercent": {"type": "number"}}, "required": ["plusPinStatus", "minusPinStatus", "status"]}}}, "required": ["armed", "buckboost", "currentMeterChannelStatus", "currentMeterStatus", "powerMeter", "output", "input"], "description": "Alarm hub status and configuration. Only present when isAlarmHub is true.", "title": "alarmHubStatus"}}, "required": ["id", "modelKey"], "title": "linkStation"}]}, "devicesBulkRemove": {"type": "object", "properties": {"type": {"type": "string", "const": "remove"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}}]}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}]}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}}]}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}}]}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}}]}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}}]}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}}]}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}}]}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}}]}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}}]}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}}]}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}}]}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}}, "required": ["id", "modelKey"]}], "title": "deviceBulkReference"}}, "required": ["type", "item"], "title": "devicesBulkRemove"}, "deviceBulkReference": {"oneOf": [{"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of nvr", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "nvrId"}}]}, "modelKey": {"type": "string", "const": "nvr", "description": "The model key of the nvr", "title": "nvrModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of camera", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "cameraId"}}]}, "modelKey": {"type": "string", "const": "camera", "description": "The model key of the camera", "title": "cameraModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of chime", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "chimeId"}}]}, "modelKey": {"type": "string", "const": "chime", "description": "The model key of the chime", "title": "chimeModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of light", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "lightId"}}]}, "modelKey": {"type": "string", "const": "light", "description": "The model key of the light", "title": "lightModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of viewer", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "viewerId"}}]}, "modelKey": {"type": "string", "const": "viewer", "description": "The model key of the viewer", "title": "viewerModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of speaker", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "speakerId"}}]}, "modelKey": {"type": "string", "const": "speaker", "description": "The model key of the speaker", "title": "speakerModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of bridge", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "bridgeId"}}]}, "modelKey": {"type": "string", "const": "bridge", "description": "The model key of the bridge", "title": "bridgeModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of sensor", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sensorId"}}]}, "modelKey": {"type": "string", "const": "sensor", "description": "The model key of the sensor", "title": "sensorModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of siren", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "sirenId"}}]}, "modelKey": {"type": "string", "const": "siren", "description": "The model key of the siren", "title": "sirenModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of fob", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "fobId"}}]}, "modelKey": {"type": "string", "const": "fob", "description": "The model key of the fob", "title": "fobModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of relay", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "relayId"}}]}, "modelKey": {"type": "string", "const": "relay", "description": "The model key of the relay", "title": "relayModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiprocessor", "description": "The model key of the aiprocessor", "title": "aiprocessorModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}]}, "modelKey": {"type": "string", "const": "aiport", "description": "The model key of the aiport", "title": "aiportModelKey"}}, "required": ["id", "modelKey"]}, {"type": "object", "properties": {"id": {"anyOf": [{"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}, {"type": "array", "items": {"type": "string", "description": "The primary key of linkStation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "linkStationId"}}]}, "modelKey": {"type": "string", "const": "linkstation", "description": "The model key of the linkstation", "title": "linkstationModelKey"}}, "required": ["id", "modelKey"]}]}, "eventAdd": {"type": "object", "properties": {"type": {"type": "string", "const": "add"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "ring"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "A device ring button has been pressed", "title": "ringEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorExtremeValues"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["temperature", "light", "humidity", "aqi", "vape", "tvoc", "pm1p0", "pm2p5", "pm4p0", "pm10p0", "co2", "voc"]}}, "required": ["text"], "description": "Name of the metric measured by the sensor", "examples": [{"text": "temperature"}]}, "sensorValue": {"type": "object", "properties": {"text": {"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}}, "required": ["text"]}, "status": {"type": "object", "properties": {"text": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "required": ["text"]}}, "required": ["sensorType", "sensorValue", "status"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "The value of a metric measured by a sensor has gone in or out of range", "title": "sensorExtremeValueEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorWaterLeak"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Water leak in the given mount point has started or ended", "title": "sensorWaterLeakEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorTamper"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Sensor has started or finished being tampered with", "title": "sensorTamperEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorBatteryPercentage": {"type": "object", "properties": {"number": {"type": "number"}}, "required": ["number"], "description": "Decimal value of the available sensor battery percentage", "examples": [{"number": 95}]}}, "required": ["sensorBatteryPercentage"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor battery level is getting low", "title": "sensorBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorAlarm"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}}, "required": ["alarmType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor has started or finished enduring an alarming state", "title": "sensorAlarmEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorOpened"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor in a given mount type has entered an open state", "title": "sensorOpenEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorClosed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor in a given mount type has entered a closed state", "title": "sensorClosedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeTest"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"source": {"type": "string", "enum": ["remote", "local"]}}}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Smoke detector test has been initiated", "title": "sensorSmokeTestEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke/CO detector internal battery is low (replacement required)", "title": "sensorSmokeBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeNeedsCleaning"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke sensor requires cleaning", "title": "sensorSmokeNeedsCleaningEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeFault"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke sensor fault detected", "title": "sensorSmokeFaultEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorCoFault"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "CO sensor fault detected", "title": "sensorCoFaultEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeEndOfLife"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke/CO detector has reached end of service life", "title": "sensorSmokeEndOfLifeEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Sensor has started or finished detecting motion", "title": "sensorMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorButtonPressed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"button": {"type": "object", "properties": {"text": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}}, "required": ["text"], "description": "The button that was pressed", "examples": [{"text": "alarmHubButton"}]}}, "required": ["button"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A sensor button has been pressed", "title": "sensorButtonPressedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "lightMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Floodlight has encountered motion", "title": "lightMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "motion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Camera has started or finished detecting motion", "title": "cameraMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartAudioDetect"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"], "description": "A type of smart detection based on the audio feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart audio-based detection", "title": "cameraSmartDetectAudioEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectZone"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based zone detection", "title": "cameraSmartDetectZoneEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectLine"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based line detection", "title": "cameraSmartDetectLineEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectLoiterZone"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based loiter detection", "title": "cameraSmartDetectLoiterEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "relayInputChanged"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"inputState": {"type": "object", "properties": {"text": {"type": "string", "enum": ["circuitClosed", "circuitOpen"]}}, "required": ["text"], "description": "The state of the relay input circuit", "examples": [{"text": "circuitOpen"}]}, "inputChannel": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The channel index of the relay input", "examples": [{"text": "0"}]}}, "required": ["inputState", "inputChannel"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A relay input has changed state (circuit opened or closed)", "title": "relayInputChangedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub motion input has been triggered", "title": "alarmHubMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubEntryOpened"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub entry sensor has opened", "title": "alarmHubEntryOpenedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubEntryClosed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub entry sensor has closed", "title": "alarmHubEntryClosedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubSmoke"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub smoke detector has been triggered", "title": "alarmHubSmokeEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubGlassBreak"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub glass break detector has been triggered", "title": "alarmHubGlassBreakEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubButtonPress"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "button": {"type": "object", "properties": {"text": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}}, "required": ["text"], "description": "The button that was pressed", "examples": [{"text": "alarmHubButton"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "button", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub emergency button has been pressed", "title": "alarmHubButtonPressEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubTamper"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub input has been tampered with", "title": "alarmHubTamperEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubRelaySwitched"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub relay output has been switched", "title": "alarmHubRelaySwitchedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub battery level is low", "title": "alarmHubBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubBatteryConnected"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub battery has been connected", "title": "alarmHubBatteryConnectedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "nfcCardScanned"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"nfc": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["nfc"], "title": "nfcMetadata"}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "An NFC card was scanned at a device", "title": "nfcCardScannedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "fingerprintIdentified"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"fingerprint": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["fingerprint"], "title": "fingerprintMetadata"}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A fingerprint was scanned at a device", "title": "fingerprintIdentifiedEvent"}], "discriminator": {"propertyName": "type", "mapping": {"ring": "#/components/schemas/ringEvent", "sensorExtremeValues": "#/components/schemas/sensorExtremeValueEvent", "sensorWaterLeak": "#/components/schemas/sensorWaterLeakEvent", "sensorTamper": "#/components/schemas/sensorTamperEvent", "sensorBatteryLow": "#/components/schemas/sensorBatteryLowEvent", "sensorAlarm": "#/components/schemas/sensorAlarmEvent", "sensorOpened": "#/components/schemas/sensorOpenEvent", "sensorClosed": "#/components/schemas/sensorClosedEvent", "sensorSmokeTest": "#/components/schemas/sensorSmokeTestEvent", "sensorSmokeBatteryLow": "#/components/schemas/sensorSmokeBatteryLowEvent", "sensorSmokeNeedsCleaning": "#/components/schemas/sensorSmokeNeedsCleaningEvent", "sensorSmokeFault": "#/components/schemas/sensorSmokeFaultEvent", "sensorCoFault": "#/components/schemas/sensorCoFaultEvent", "sensorSmokeEndOfLife": "#/components/schemas/sensorSmokeEndOfLifeEvent", "sensorMotion": "#/components/schemas/sensorMotionEvent", "sensorButtonPressed": "#/components/schemas/sensorButtonPressedEvent", "lightMotion": "#/components/schemas/lightMotionEvent", "motion": "#/components/schemas/cameraMotionEvent", "smartAudioDetect": "#/components/schemas/cameraSmartDetectAudioEvent", "smartDetectZone": "#/components/schemas/cameraSmartDetectZoneEvent", "smartDetectLine": "#/components/schemas/cameraSmartDetectLineEvent", "smartDetectLoiterZone": "#/components/schemas/cameraSmartDetectLoiterEvent", "relayInputChanged": "#/components/schemas/relayInputChangedEvent", "alarmHubMotion": "#/components/schemas/alarmHubMotionEvent", "alarmHubEntryOpened": "#/components/schemas/alarmHubEntryOpenedEvent", "alarmHubEntryClosed": "#/components/schemas/alarmHubEntryClosedEvent", "alarmHubSmoke": "#/components/schemas/alarmHubSmokeEvent", "alarmHubGlassBreak": "#/components/schemas/alarmHubGlassBreakEvent", "alarmHubButtonPress": "#/components/schemas/alarmHubButtonPressEvent", "alarmHubTamper": "#/components/schemas/alarmHubTamperEvent", "alarmHubRelaySwitched": "#/components/schemas/alarmHubRelaySwitchedEvent", "alarmHubBatteryLow": "#/components/schemas/alarmHubBatteryLowEvent", "alarmHubBatteryConnected": "#/components/schemas/alarmHubBatteryConnectedEvent", "nfcCardScanned": "#/components/schemas/nfcCardScannedEvent", "fingerprintIdentified": "#/components/schemas/fingerprintIdentifiedEvent"}}, "title": "event"}}, "required": ["type", "item"], "title": "eventAdd"}, "event": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "ring"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "A device ring button has been pressed", "title": "ringEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorExtremeValues"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["temperature", "light", "humidity", "aqi", "vape", "tvoc", "pm1p0", "pm2p5", "pm4p0", "pm10p0", "co2", "voc"]}}, "required": ["text"], "description": "Name of the metric measured by the sensor", "examples": [{"text": "temperature"}]}, "sensorValue": {"type": "object", "properties": {"text": {"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}}, "required": ["text"]}, "status": {"type": "object", "properties": {"text": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "required": ["text"]}}, "required": ["sensorType", "sensorValue", "status"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "The value of a metric measured by a sensor has gone in or out of range", "title": "sensorExtremeValueEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorWaterLeak"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Water leak in the given mount point has started or ended", "title": "sensorWaterLeakEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorTamper"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Sensor has started or finished being tampered with", "title": "sensorTamperEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorBatteryPercentage": {"type": "object", "properties": {"number": {"type": "number"}}, "required": ["number"], "description": "Decimal value of the available sensor battery percentage", "examples": [{"number": 95}]}}, "required": ["sensorBatteryPercentage"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor battery level is getting low", "title": "sensorBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorAlarm"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}}, "required": ["alarmType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor has started or finished enduring an alarming state", "title": "sensorAlarmEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorOpened"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor in a given mount type has entered an open state", "title": "sensorOpenEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorClosed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor in a given mount type has entered a closed state", "title": "sensorClosedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeTest"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"source": {"type": "string", "enum": ["remote", "local"]}}}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Smoke detector test has been initiated", "title": "sensorSmokeTestEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke/CO detector internal battery is low (replacement required)", "title": "sensorSmokeBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeNeedsCleaning"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke sensor requires cleaning", "title": "sensorSmokeNeedsCleaningEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeFault"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke sensor fault detected", "title": "sensorSmokeFaultEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorCoFault"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "CO sensor fault detected", "title": "sensorCoFaultEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeEndOfLife"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke/CO detector has reached end of service life", "title": "sensorSmokeEndOfLifeEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Sensor has started or finished detecting motion", "title": "sensorMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorButtonPressed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"button": {"type": "object", "properties": {"text": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}}, "required": ["text"], "description": "The button that was pressed", "examples": [{"text": "alarmHubButton"}]}}, "required": ["button"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A sensor button has been pressed", "title": "sensorButtonPressedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "lightMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Floodlight has encountered motion", "title": "lightMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "motion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Camera has started or finished detecting motion", "title": "cameraMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartAudioDetect"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"], "description": "A type of smart detection based on the audio feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart audio-based detection", "title": "cameraSmartDetectAudioEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectZone"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based zone detection", "title": "cameraSmartDetectZoneEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectLine"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based line detection", "title": "cameraSmartDetectLineEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectLoiterZone"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based loiter detection", "title": "cameraSmartDetectLoiterEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "relayInputChanged"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"inputState": {"type": "object", "properties": {"text": {"type": "string", "enum": ["circuitClosed", "circuitOpen"]}}, "required": ["text"], "description": "The state of the relay input circuit", "examples": [{"text": "circuitOpen"}]}, "inputChannel": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The channel index of the relay input", "examples": [{"text": "0"}]}}, "required": ["inputState", "inputChannel"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A relay input has changed state (circuit opened or closed)", "title": "relayInputChangedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub motion input has been triggered", "title": "alarmHubMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubEntryOpened"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub entry sensor has opened", "title": "alarmHubEntryOpenedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubEntryClosed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub entry sensor has closed", "title": "alarmHubEntryClosedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubSmoke"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub smoke detector has been triggered", "title": "alarmHubSmokeEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubGlassBreak"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub glass break detector has been triggered", "title": "alarmHubGlassBreakEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubButtonPress"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "button": {"type": "object", "properties": {"text": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}}, "required": ["text"], "description": "The button that was pressed", "examples": [{"text": "alarmHubButton"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "button", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub emergency button has been pressed", "title": "alarmHubButtonPressEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubTamper"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub input has been tampered with", "title": "alarmHubTamperEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubRelaySwitched"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub relay output has been switched", "title": "alarmHubRelaySwitchedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub battery level is low", "title": "alarmHubBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubBatteryConnected"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub battery has been connected", "title": "alarmHubBatteryConnectedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "nfcCardScanned"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"nfc": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["nfc"], "title": "nfcMetadata"}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "An NFC card was scanned at a device", "title": "nfcCardScannedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "fingerprintIdentified"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"fingerprint": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["fingerprint"], "title": "fingerprintMetadata"}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A fingerprint was scanned at a device", "title": "fingerprintIdentifiedEvent"}], "discriminator": {"propertyName": "type", "mapping": {"ring": "#/components/schemas/ringEvent", "sensorExtremeValues": "#/components/schemas/sensorExtremeValueEvent", "sensorWaterLeak": "#/components/schemas/sensorWaterLeakEvent", "sensorTamper": "#/components/schemas/sensorTamperEvent", "sensorBatteryLow": "#/components/schemas/sensorBatteryLowEvent", "sensorAlarm": "#/components/schemas/sensorAlarmEvent", "sensorOpened": "#/components/schemas/sensorOpenEvent", "sensorClosed": "#/components/schemas/sensorClosedEvent", "sensorSmokeTest": "#/components/schemas/sensorSmokeTestEvent", "sensorSmokeBatteryLow": "#/components/schemas/sensorSmokeBatteryLowEvent", "sensorSmokeNeedsCleaning": "#/components/schemas/sensorSmokeNeedsCleaningEvent", "sensorSmokeFault": "#/components/schemas/sensorSmokeFaultEvent", "sensorCoFault": "#/components/schemas/sensorCoFaultEvent", "sensorSmokeEndOfLife": "#/components/schemas/sensorSmokeEndOfLifeEvent", "sensorMotion": "#/components/schemas/sensorMotionEvent", "sensorButtonPressed": "#/components/schemas/sensorButtonPressedEvent", "lightMotion": "#/components/schemas/lightMotionEvent", "motion": "#/components/schemas/cameraMotionEvent", "smartAudioDetect": "#/components/schemas/cameraSmartDetectAudioEvent", "smartDetectZone": "#/components/schemas/cameraSmartDetectZoneEvent", "smartDetectLine": "#/components/schemas/cameraSmartDetectLineEvent", "smartDetectLoiterZone": "#/components/schemas/cameraSmartDetectLoiterEvent", "relayInputChanged": "#/components/schemas/relayInputChangedEvent", "alarmHubMotion": "#/components/schemas/alarmHubMotionEvent", "alarmHubEntryOpened": "#/components/schemas/alarmHubEntryOpenedEvent", "alarmHubEntryClosed": "#/components/schemas/alarmHubEntryClosedEvent", "alarmHubSmoke": "#/components/schemas/alarmHubSmokeEvent", "alarmHubGlassBreak": "#/components/schemas/alarmHubGlassBreakEvent", "alarmHubButtonPress": "#/components/schemas/alarmHubButtonPressEvent", "alarmHubTamper": "#/components/schemas/alarmHubTamperEvent", "alarmHubRelaySwitched": "#/components/schemas/alarmHubRelaySwitchedEvent", "alarmHubBatteryLow": "#/components/schemas/alarmHubBatteryLowEvent", "alarmHubBatteryConnected": "#/components/schemas/alarmHubBatteryConnectedEvent", "nfcCardScanned": "#/components/schemas/nfcCardScannedEvent", "fingerprintIdentified": "#/components/schemas/fingerprintIdentifiedEvent"}}}, "ringEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "ring"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "A device ring button has been pressed", "title": "ringEvent"}, "eventId": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "eventModelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "sensorExtremeValueEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorExtremeValues"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["temperature", "light", "humidity", "aqi", "vape", "tvoc", "pm1p0", "pm2p5", "pm4p0", "pm10p0", "co2", "voc"]}}, "required": ["text"], "description": "Name of the metric measured by the sensor", "examples": [{"text": "temperature"}]}, "sensorValue": {"type": "object", "properties": {"text": {"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}}, "required": ["text"]}, "status": {"type": "object", "properties": {"text": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "required": ["text"]}}, "required": ["sensorType", "sensorValue", "status"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "The value of a metric measured by a sensor has gone in or out of range", "title": "sensorExtremeValueEvent"}, "sensorWaterLeakEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorWaterLeak"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Water leak in the given mount point has started or ended", "title": "sensorWaterLeakEvent"}, "sensorTamperEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorTamper"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Sensor has started or finished being tampered with", "title": "sensorTamperEvent"}, "sensorBatteryLowEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorBatteryPercentage": {"type": "object", "properties": {"number": {"type": "number"}}, "required": ["number"], "description": "Decimal value of the available sensor battery percentage", "examples": [{"number": 95}]}}, "required": ["sensorBatteryPercentage"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor battery level is getting low", "title": "sensorBatteryLowEvent"}, "sensorAlarmEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorAlarm"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}}, "required": ["alarmType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor has started or finished enduring an alarming state", "title": "sensorAlarmEvent"}, "sensorOpenEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorOpened"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor in a given mount type has entered an open state", "title": "sensorOpenEvent"}, "sensorClosedEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorClosed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor in a given mount type has entered a closed state", "title": "sensorClosedEvent"}, "sensorSmokeTestEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeTest"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"source": {"type": "string", "enum": ["remote", "local"]}}}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Smoke detector test has been initiated", "title": "sensorSmokeTestEvent"}, "sensorSmokeBatteryLowEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke/CO detector internal battery is low (replacement required)", "title": "sensorSmokeBatteryLowEvent"}, "sensorSmokeNeedsCleaningEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeNeedsCleaning"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke sensor requires cleaning", "title": "sensorSmokeNeedsCleaningEvent"}, "sensorSmokeFaultEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeFault"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke sensor fault detected", "title": "sensorSmokeFaultEvent"}, "sensorCoFaultEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorCoFault"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "CO sensor fault detected", "title": "sensorCoFaultEvent"}, "sensorSmokeEndOfLifeEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeEndOfLife"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke/CO detector has reached end of service life", "title": "sensorSmokeEndOfLifeEvent"}, "sensorMotionEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Sensor has started or finished detecting motion", "title": "sensorMotionEvent"}, "sensorButtonPressedEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorButtonPressed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"button": {"type": "object", "properties": {"text": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}}, "required": ["text"], "description": "The button that was pressed", "examples": [{"text": "alarmHubButton"}]}}, "required": ["button"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A sensor button has been pressed", "title": "sensorButtonPressedEvent"}, "lightMotionEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "lightMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Floodlight has encountered motion", "title": "lightMotionEvent"}, "cameraMotionEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "motion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Camera has started or finished detecting motion", "title": "cameraMotionEvent"}, "cameraSmartDetectAudioEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartAudioDetect"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"], "description": "A type of smart detection based on the audio feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart audio-based detection", "title": "cameraSmartDetectAudioEvent"}, "cameraSmartDetectZoneEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectZone"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based zone detection", "title": "cameraSmartDetectZoneEvent"}, "cameraSmartDetectLineEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectLine"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based line detection", "title": "cameraSmartDetectLineEvent"}, "cameraSmartDetectLoiterEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectLoiterZone"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based loiter detection", "title": "cameraSmartDetectLoiterEvent"}, "relayInputChangedEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "relayInputChanged"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"inputState": {"type": "object", "properties": {"text": {"type": "string", "enum": ["circuitClosed", "circuitOpen"]}}, "required": ["text"], "description": "The state of the relay input circuit", "examples": [{"text": "circuitOpen"}]}, "inputChannel": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The channel index of the relay input", "examples": [{"text": "0"}]}}, "required": ["inputState", "inputChannel"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A relay input has changed state (circuit opened or closed)", "title": "relayInputChangedEvent"}, "alarmHubMotionEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub motion input has been triggered", "title": "alarmHubMotionEvent"}, "alarmHubEntryOpenedEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubEntryOpened"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub entry sensor has opened", "title": "alarmHubEntryOpenedEvent"}, "alarmHubEntryClosedEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubEntryClosed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub entry sensor has closed", "title": "alarmHubEntryClosedEvent"}, "alarmHubSmokeEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubSmoke"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub smoke detector has been triggered", "title": "alarmHubSmokeEvent"}, "alarmHubGlassBreakEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubGlassBreak"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub glass break detector has been triggered", "title": "alarmHubGlassBreakEvent"}, "alarmHubButtonPressEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubButtonPress"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "button": {"type": "object", "properties": {"text": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}}, "required": ["text"], "description": "The button that was pressed", "examples": [{"text": "alarmHubButton"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "button", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub emergency button has been pressed", "title": "alarmHubButtonPressEvent"}, "alarmHubTamperEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubTamper"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub input has been tampered with", "title": "alarmHubTamperEvent"}, "alarmHubRelaySwitchedEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubRelaySwitched"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub relay output has been switched", "title": "alarmHubRelaySwitchedEvent"}, "alarmHubBatteryLowEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub battery level is low", "title": "alarmHubBatteryLowEvent"}, "alarmHubBatteryConnectedEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubBatteryConnected"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub battery has been connected", "title": "alarmHubBatteryConnectedEvent"}, "nfcCardScannedEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "nfcCardScanned"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"nfc": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["nfc"], "title": "nfcMetadata"}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "An NFC card was scanned at a device", "title": "nfcCardScannedEvent"}, "nfcMetadata": {"type": "object", "properties": {"nfc": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["nfc"], "title": "nfcMetadata"}, "fingerprintIdentifiedEvent": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "fingerprintIdentified"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"fingerprint": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["fingerprint"], "title": "fingerprintMetadata"}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A fingerprint was scanned at a device", "title": "fingerprintIdentifiedEvent"}, "fingerprintMetadata": {"type": "object", "properties": {"fingerprint": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["fingerprint"], "title": "fingerprintMetadata"}, "eventUpdate": {"type": "object", "properties": {"type": {"type": "string", "const": "update"}, "item": {"oneOf": [{"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "ring"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "A device ring button has been pressed", "title": "ringEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorExtremeValues"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["temperature", "light", "humidity", "aqi", "vape", "tvoc", "pm1p0", "pm2p5", "pm4p0", "pm10p0", "co2", "voc"]}}, "required": ["text"], "description": "Name of the metric measured by the sensor", "examples": [{"text": "temperature"}]}, "sensorValue": {"type": "object", "properties": {"text": {"type": "number", "description": "Decimal value of the metric measured by the sensor", "examples": [22.5, 65], "title": "sensorValue"}}, "required": ["text"]}, "status": {"type": "object", "properties": {"text": {"type": "string", "enum": ["neutral", "low", "safe", "high", "unknown"], "description": "What range does the measured metric fall into", "title": "sensorStatus", "examples": ["high"]}}, "required": ["text"]}}, "required": ["sensorType", "sensorValue", "status"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "The value of a metric measured by a sensor has gone in or out of range", "title": "sensorExtremeValueEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorWaterLeak"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Water leak in the given mount point has started or ended", "title": "sensorWaterLeakEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorTamper"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Sensor has started or finished being tampered with", "title": "sensorTamperEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorBatteryPercentage": {"type": "object", "properties": {"number": {"type": "number"}}, "required": ["number"], "description": "Decimal value of the available sensor battery percentage", "examples": [{"number": 95}]}}, "required": ["sensorBatteryPercentage"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor battery level is getting low", "title": "sensorBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorAlarm"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}}, "required": ["alarmType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor has started or finished enduring an alarming state", "title": "sensorAlarmEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorOpened"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor in a given mount type has entered an open state", "title": "sensorOpenEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorClosed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"sensorMountType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["door", "window", "garage", "leak", "none"], "description": "Mounting type of the sensor.", "examples": ["door", "none"], "title": "sensorMountType"}}, "required": ["text"]}}, "required": ["sensorMountType"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Sensor in a given mount type has entered a closed state", "title": "sensorClosedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeTest"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"source": {"type": "string", "enum": ["remote", "local"]}}}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "Smoke detector test has been initiated", "title": "sensorSmokeTestEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke/CO detector internal battery is low (replacement required)", "title": "sensorSmokeBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeNeedsCleaning"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke sensor requires cleaning", "title": "sensorSmokeNeedsCleaningEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeFault"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke sensor fault detected", "title": "sensorSmokeFaultEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorCoFault"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "CO sensor fault detected", "title": "sensorCoFaultEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorSmokeEndOfLife"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Smoke/CO detector has reached end of service life", "title": "sensorSmokeEndOfLifeEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Sensor has started or finished detecting motion", "title": "sensorMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "sensorButtonPressed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"button": {"type": "object", "properties": {"text": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}}, "required": ["text"], "description": "The button that was pressed", "examples": [{"text": "alarmHubButton"}]}}, "required": ["button"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A sensor button has been pressed", "title": "sensorButtonPressedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "lightMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Floodlight has encountered motion", "title": "lightMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "motion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Camera has started or finished detecting motion", "title": "cameraMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartAudioDetect"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["alrmSmoke", "alrmCmonx", "alrmSiren", "alrmBabyCry", "alrmSpeak", "alrmBark", "alrmBurglar", "alrmCarHorn", "alrmGlassBreak"], "description": "A type of smart detection based on the audio feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart audio-based detection", "title": "cameraSmartDetectAudioEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectZone"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based zone detection", "title": "cameraSmartDetectZoneEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectLine"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based line detection", "title": "cameraSmartDetectLineEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "smartDetectLoiterZone"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "smartDetectTypes": {"type": ["array", "null"], "items": {"type": "string", "enum": ["person", "vehicle", "package", "licensePlate", "face", "animal"], "description": "A type of smart detection based on the video feed"}}}, "required": ["id", "modelKey", "type", "start", "device", "smartDetectTypes"], "description": "Camera has started or finished a smart video-based loiter detection", "title": "cameraSmartDetectLoiterEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "relayInputChanged"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"inputState": {"type": "object", "properties": {"text": {"type": "string", "enum": ["circuitClosed", "circuitOpen"]}}, "required": ["text"], "description": "The state of the relay input circuit", "examples": [{"text": "circuitOpen"}]}, "inputChannel": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The channel index of the relay input", "examples": [{"text": "0"}]}}, "required": ["inputState", "inputChannel"]}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A relay input has changed state (circuit opened or closed)", "title": "relayInputChangedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubMotion"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub motion input has been triggered", "title": "alarmHubMotionEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubEntryOpened"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub entry sensor has opened", "title": "alarmHubEntryOpenedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubEntryClosed"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub entry sensor has closed", "title": "alarmHubEntryClosedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubSmoke"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub smoke detector has been triggered", "title": "alarmHubSmokeEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubGlassBreak"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub glass break detector has been triggered", "title": "alarmHubGlassBreakEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubButtonPress"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "button": {"type": "object", "properties": {"text": {"type": "string", "enum": ["function", "alarmHubButton", "arm", "disarm", "night", "panic", "left", "right", "input1", "input2"]}}, "required": ["text"], "description": "The button that was pressed", "examples": [{"text": "alarmHubButton"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "button", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub emergency button has been pressed", "title": "alarmHubButtonPressEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubTamper"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"pin": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The alarm hub input pin channel", "examples": [{"text": "0"}]}, "status": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The status of the alarm hub input", "examples": [{"text": "alarm"}]}, "alarmType": {"type": "object", "properties": {"text": {"type": "string", "enum": ["smoke", "CO", "glassBreak", "sensorButtonPress", "tamper", "short", "cut"]}}, "required": ["text"], "description": "A type of sensor alarm", "examples": [{"text": "CO"}]}, "deviceId": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The device ID of the alarm hub", "examples": [{"text": "69a83414037dec03e4009a3c"}]}, "deviceName": {"type": "object", "properties": {"text": {"type": "string"}}, "required": ["text"], "description": "The configured name of the input", "examples": [{"text": "Front Door Sensor"}]}}, "required": ["pin", "status", "alarmType", "deviceId", "deviceName"]}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub input has been tampered with", "title": "alarmHubTamperEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubRelaySwitched"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub relay output has been switched", "title": "alarmHubRelaySwitchedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubBatteryLow"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub battery level is low", "title": "alarmHubBatteryLowEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "alarmHubBatteryConnected"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}}, "required": ["id", "modelKey", "type", "start", "device"], "description": "Alarm hub battery has been connected", "title": "alarmHubBatteryConnectedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "nfcCardScanned"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"nfc": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["nfc"], "title": "nfcMetadata"}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "An NFC card was scanned at a device", "title": "nfcCardScannedEvent"}, {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of event", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "eventId"}, "modelKey": {"type": "string", "const": "event", "description": "The model key of the event", "title": "eventModelKey"}, "type": {"type": "string", "const": "fingerprintIdentified"}, "start": {"type": "number", "exclusiveMinimum": 0, "description": "Unix timestamp of the start time of the event.", "examples": [1445408038748, 1741267544209]}, "end": {"type": ["number", "null"], "description": "Unix timestamp of the end time of the event.", "examples": [1445408048748, 1741267554209]}, "device": {"type": "string", "description": "The primary key of device", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "deviceId"}, "metadata": {"type": "object", "properties": {"fingerprint": {"type": "object", "properties": {"ulpId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser. Matches the ucoreUserId field of the corresponding Protect User. Null if the credential was not recognized.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890", null]}}, "required": ["ulpId"]}}, "required": ["fingerprint"], "title": "fingerprintMetadata"}}, "required": ["id", "modelKey", "type", "start", "device", "metadata"], "description": "A fingerprint was scanned at a device", "title": "fingerprintIdentifiedEvent"}], "discriminator": {"propertyName": "type", "mapping": {"ring": "#/components/schemas/ringEvent", "sensorExtremeValues": "#/components/schemas/sensorExtremeValueEvent", "sensorWaterLeak": "#/components/schemas/sensorWaterLeakEvent", "sensorTamper": "#/components/schemas/sensorTamperEvent", "sensorBatteryLow": "#/components/schemas/sensorBatteryLowEvent", "sensorAlarm": "#/components/schemas/sensorAlarmEvent", "sensorOpened": "#/components/schemas/sensorOpenEvent", "sensorClosed": "#/components/schemas/sensorClosedEvent", "sensorSmokeTest": "#/components/schemas/sensorSmokeTestEvent", "sensorSmokeBatteryLow": "#/components/schemas/sensorSmokeBatteryLowEvent", "sensorSmokeNeedsCleaning": "#/components/schemas/sensorSmokeNeedsCleaningEvent", "sensorSmokeFault": "#/components/schemas/sensorSmokeFaultEvent", "sensorCoFault": "#/components/schemas/sensorCoFaultEvent", "sensorSmokeEndOfLife": "#/components/schemas/sensorSmokeEndOfLifeEvent", "sensorMotion": "#/components/schemas/sensorMotionEvent", "sensorButtonPressed": "#/components/schemas/sensorButtonPressedEvent", "lightMotion": "#/components/schemas/lightMotionEvent", "motion": "#/components/schemas/cameraMotionEvent", "smartAudioDetect": "#/components/schemas/cameraSmartDetectAudioEvent", "smartDetectZone": "#/components/schemas/cameraSmartDetectZoneEvent", "smartDetectLine": "#/components/schemas/cameraSmartDetectLineEvent", "smartDetectLoiterZone": "#/components/schemas/cameraSmartDetectLoiterEvent", "relayInputChanged": "#/components/schemas/relayInputChangedEvent", "alarmHubMotion": "#/components/schemas/alarmHubMotionEvent", "alarmHubEntryOpened": "#/components/schemas/alarmHubEntryOpenedEvent", "alarmHubEntryClosed": "#/components/schemas/alarmHubEntryClosedEvent", "alarmHubSmoke": "#/components/schemas/alarmHubSmokeEvent", "alarmHubGlassBreak": "#/components/schemas/alarmHubGlassBreakEvent", "alarmHubButtonPress": "#/components/schemas/alarmHubButtonPressEvent", "alarmHubTamper": "#/components/schemas/alarmHubTamperEvent", "alarmHubRelaySwitched": "#/components/schemas/alarmHubRelaySwitchedEvent", "alarmHubBatteryLow": "#/components/schemas/alarmHubBatteryLowEvent", "alarmHubBatteryConnected": "#/components/schemas/alarmHubBatteryConnectedEvent", "nfcCardScanned": "#/components/schemas/nfcCardScannedEvent", "fingerprintIdentified": "#/components/schemas/fingerprintIdentifiedEvent"}}, "title": "event"}}, "required": ["type", "item"], "title": "eventUpdate"}, "activePatrolSlotString": {"type": "string", "title": "activePatrolSlotString", "description": "The slot number (0-4) of the patrol that is currently running, or null if no patrol is running", "examples": ["0", "1", "2", "3", "4"]}, "alarmTriggerId": {"type": "string", "description": "User defined string used to trigger only specific alarms. Alarm should be configured with the same ID to be triggered.", "examples": ["AnyRandomString"], "title": "alarmTriggerId"}, "idRequiredError": {"type": "object", "properties": {"error": {"type": "string", "description": "Error message", "examples": ["'id' is required"]}, "name": {"type": "string", "description": "Name of the error", "examples": ["BAD_REQUEST"]}, "cause": {"type": "object", "additionalProperties": {}, "description": "An optional nested cause for the parent error", "examples": [{"error": "Unexpected functionality error", "name": "UNKNOWN_ERROR"}]}}, "required": ["error", "name"], "title": "idRequiredError"}, "armProfile": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of armProfile", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "armProfileId"}, "name": {"type": "string", "minLength": 1, "maxLength": 255, "title": "armProfileName", "description": "Name of the arm profile.", "examples": ["Arm Profile"]}, "automations": {"type": "array", "items": {"type": "string", "description": "The primary key of automation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "automationId"}, "title": "automations", "description": "List of automation IDs associated with this arm profile."}, "creator": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "schedules": {"type": "array", "items": {"type": "object", "properties": {"start": {"type": "string", "title": "armScheduleStart", "description": "Cron expression for the start time.", "examples": ["0 0 * * *"]}, "end": {"type": "string", "title": "armScheduleEnd", "description": "Cron expression for the end time.", "examples": ["0 0 * * *"]}}, "required": ["start", "end"], "title": "armSchedule"}, "title": "schedules", "description": "List of arm schedules."}, "recordEverything": {"type": "boolean", "title": "recordEverything", "description": "Whether to record everything when this arm profile is active.", "examples": [true, false]}, "activationDelay": {"anyOf": [{"type": "number", "const": 0}, {"type": "number", "const": 60000}, {"type": "number", "const": 300000}, {"type": "number", "const": 600000}], "title": "activationDelay", "description": "Activation delay in milliseconds. Allowed values: 0 (none), 60000 (1 min), 300000 (5 min), 600000 (10 min)."}, "createdAt": {"type": "number", "title": "createdAt", "description": "Arm profile creation time."}, "updatedAt": {"type": "number", "title": "updatedAt", "description": "Arm profile update time."}}, "required": ["id", "name", "automations", "creator", "schedules", "recordEverything", "activationDelay", "createdAt", "updatedAt"], "title": "armProfile"}, "armProfileId": {"type": "string", "description": "The primary key of armProfile", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "armProfileId"}, "armProfileName": {"type": "string", "minLength": 1, "maxLength": 255, "title": "armProfileName", "description": "Name of the arm profile.", "examples": ["Arm Profile"]}, "automations": {"type": "array", "items": {"type": "string", "description": "The primary key of automation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "automationId"}, "title": "automations", "description": "List of automation IDs associated with this arm profile."}, "automationId": {"type": "string", "description": "The primary key of automation", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "automationId"}, "schedules": {"type": "array", "items": {"type": "object", "properties": {"start": {"type": "string", "title": "armScheduleStart", "description": "Cron expression for the start time.", "examples": ["0 0 * * *"]}, "end": {"type": "string", "title": "armScheduleEnd", "description": "Cron expression for the end time.", "examples": ["0 0 * * *"]}}, "required": ["start", "end"], "title": "armSchedule"}, "title": "schedules", "description": "List of arm schedules."}, "armSchedule": {"type": "object", "properties": {"start": {"type": "string", "title": "armScheduleStart", "description": "Cron expression for the start time.", "examples": ["0 0 * * *"]}, "end": {"type": "string", "title": "armScheduleEnd", "description": "Cron expression for the end time.", "examples": ["0 0 * * *"]}}, "required": ["start", "end"], "title": "armSchedule"}, "armScheduleStart": {"type": "string", "title": "armScheduleStart", "description": "Cron expression for the start time.", "examples": ["0 0 * * *"]}, "armScheduleEnd": {"type": "string", "title": "armScheduleEnd", "description": "Cron expression for the end time.", "examples": ["0 0 * * *"]}, "recordEverything": {"type": "boolean", "title": "recordEverything", "description": "Whether to record everything when this arm profile is active.", "examples": [true, false]}, "activationDelay": {"anyOf": [{"type": "number", "const": 0}, {"type": "number", "const": 60000}, {"type": "number", "const": 300000}, {"type": "number", "const": 600000}], "title": "activationDelay", "description": "Activation delay in milliseconds. Allowed values: 0 (none), 60000 (1 min), 300000 (5 min), 600000 (10 min)."}, "createdAt": {"type": "number", "title": "createdAt", "description": "Arm profile creation time."}, "updatedAt": {"type": "number", "title": "updatedAt", "description": "Arm profile update time."}, "lcdMessage": {"oneOf": [{"type": "object", "properties": {"type": {"type": "string", "const": "DO_NOT_DISTURB"}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}}, "required": ["type"], "description": "Show a pre-defined \"do not disturb\" message on the doorbell"}, {"type": "object", "properties": {"type": {"type": "string", "const": "LEAVE_PACKAGE_AT_DOOR"}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}}, "required": ["type"], "description": "Show a pre-defined \"leave package at door\" message on the doorbell"}, {"type": "object", "properties": {"type": {"type": "string", "const": "CUSTOM_MESSAGE"}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string", "description": "The custom text message to show on the doorbell", "examples": ["Hello world!"]}}, "required": ["type", "text"], "description": "Show a custom text message on the doorbell"}, {"type": "object", "properties": {"type": {"type": "string", "const": "IMAGE"}, "resetAt": {"type": ["number", "null"], "description": "UNIX timestamp when doorbell message should be removed (if not set then `nvr.doorbellSettings.defaultMessageResetTimeoutMs` is used, if set to `null` then interpreted as \"forever\")"}, "text": {"type": "string", "description": "The ID of the custom image to show on the doorbell", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"]}}, "required": ["type", "text"], "description": "Show a custom image on the doorbell"}], "title": "lcdMessage"}, "createdQualities": {"type": "array", "items": {"type": "string", "enum": ["high", "medium", "low", "package"], "title": "channelQuality"}, "minItems": 1, "description": "Array of quality levels of RTSPS streams. All qualities (high, medium, low) are available for all cameras. The package quality is only available for cameras with hasPackageCamera: true.", "examples": [["high", "medium"]], "title": "createdQualities"}, "channelQuality": {"type": "string", "enum": ["high", "medium", "low", "package"], "title": "channelQuality"}, "createdRtspsStreams": {"type": "object", "properties": {"high": {"type": "string", "format": "uri"}, "medium": {"type": "string", "format": "uri"}, "low": {"type": "string", "format": "uri"}, "package": {"type": "string", "format": "uri"}}, "additionalProperties": false, "description": "The RTSPS stream URLs for the camera", "examples": [{"high": "rtsps://192.168.1.1:7441/5nPr7RCmueGTKMP7?enableSrtp", "medium": "rtsps://192.168.1.1:7441/AbUgnDb5IqIEMidk?enableSrtp"}], "title": "createdRtspsStreams"}, "removedQualities": {"anyOf": [{"type": "array", "items": {"type": "string", "enum": ["high", "medium", "low", "package"], "title": "channelQuality"}, "minItems": 1}, {"type": "string", "enum": ["high", "medium", "low", "package"], "title": "channelQuality"}], "description": "The array of quality levels for the RTSPS streams to be removed. All qualities (high, medium, low) are available for all cameras. The package quality is only available for cameras with hasPackageCamera: true.", "examples": [["high", "medium"]], "title": "removedQualities"}, "existingRtspsStreams": {"type": "object", "properties": {"high": {"type": ["string", "null"], "format": "uri"}, "medium": {"type": ["string", "null"], "format": "uri"}, "low": {"type": ["string", "null"], "format": "uri"}, "package": {"type": ["string", "null"], "format": "uri"}}, "additionalProperties": false, "description": "The RTSPS stream URLs for the camera. All qualities (high, medium, low) are available for all cameras. The package quality is only available for cameras with hasPackageCamera: true.", "examples": [{"high": "rtsps://192.168.1.1:7441/5nPr7RCmueGTKMP7?enableSrtp", "medium": "rtsps://192.168.1.1:7441/AbUgnDb5IqIEMidk?enableSrtp", "low": null, "package": null}], "title": "existingRtspsStreams"}, "snapshotChannel": {"type": "string", "enum": ["main", "package"], "description": "Camera channel to capture snapshot from. Use \"package\" for cameras with a package camera (hasPackageCamera: true).", "title": "channel"}, "forceHighQuality": {"type": "string", "enum": ["true", "false"], "description": "Whether to force 1080P or higher resolution snapshot", "title": "forceHighQuality"}, "talkbackSession": {"type": "object", "properties": {"url": {"type": "string", "format": "uri", "description": "Talkback stream URL", "examples": ["rtp://192.168.1.123:7004"], "title": "talkbackStreamUrl"}, "codec": {"type": "string", "description": "Audio format to use.", "examples": ["opus", "aac"], "title": "talkbackStreamCodec"}, "samplingRate": {"type": "integer", "exclusiveMinimum": 0, "description": "Sampling Rate.", "examples": [24000, 22050], "title": "talkbackStreamSamplingRate"}, "bitsPerSample": {"type": "integer", "exclusiveMinimum": 0, "description": "Bits per sample.", "examples": [16], "title": "talkbackStreamBitsPerSample"}}, "required": ["url", "codec", "samplingRate", "bitsPerSample"], "description": "Talkback session information", "examples": [{"url": "rtp://192.168.1.123:7004", "codec": "opus", "samplingRate": 24000, "bitsPerSample": 16}], "title": "talkbackSession"}, "talkbackStreamUrl": {"type": "string", "format": "uri", "description": "Talkback stream URL", "examples": ["rtp://192.168.1.123:7004"], "title": "talkbackStreamUrl"}, "talkbackStreamCodec": {"type": "string", "description": "Audio format to use.", "examples": ["opus", "aac"], "title": "talkbackStreamCodec"}, "talkbackStreamSamplingRate": {"type": "integer", "exclusiveMinimum": 0, "description": "Sampling Rate.", "examples": [24000, 22050], "title": "talkbackStreamSamplingRate"}, "talkbackStreamBitsPerSample": {"type": "integer", "exclusiveMinimum": 0, "description": "Bits per sample.", "examples": [16], "title": "talkbackStreamBitsPerSample"}, "sirenDurationSeconds": {"anyOf": [{"type": "number", "const": 5}, {"type": "number", "const": 10}, {"type": "number", "const": 20}, {"type": "number", "const": 30}], "description": "Duration of the siren activation in seconds.", "examples": [5, 10, 20, 30], "title": "sirenDurationSeconds"}, "assetFileType": {"type": "string", "enum": ["animations"], "description": "Device asset file type", "title": "assetFileType"}, "fileSchema": {"type": "object", "properties": {"name": {"type": "string", "description": "Unique ID for the asset file", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"], "title": "fileName"}, "type": {"type": "string", "enum": ["animations"], "description": "Device asset file type", "title": "assetFileType"}, "originalName": {"type": "string", "description": "Original filename of the uploaded file", "examples": ["welcome-animation.png"], "title": "fileOriginalName"}, "path": {"type": "string", "description": "Path to the file on the filesystem", "examples": ["/data/animations/34225b30-fe6a-11af-1690-29424bd911c2.png"], "title": "filePath"}}, "required": ["name", "type", "path"], "title": "fileSchema"}, "fileName": {"type": "string", "description": "Unique ID for the asset file", "examples": ["34225b30-fe6a-11af-1690-29424bd911c2.png"], "title": "fileName"}, "fileOriginalName": {"type": "string", "description": "Original filename of the uploaded file", "examples": ["welcome-animation.png"], "title": "fileOriginalName"}, "filePath": {"type": "string", "description": "Path to the file on the filesystem", "examples": ["/data/animations/34225b30-fe6a-11af-1690-29424bd911c2.png"], "title": "filePath"}, "user": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of user", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "userId"}, "name": {"type": "string", "description": "The user name (first-name + last-name).", "examples": ["John Doe"]}, "firstName": {"type": ["string", "null"], "description": "The user first-name.", "examples": ["John"]}, "lastName": {"type": ["string", "null"], "description": "The user last-name.", "examples": ["Doe"]}, "email": {"type": ["string", "null"], "description": "The user email.", "examples": ["john.doe@example.com"]}, "ucoreUserId": {"type": ["string", "null"], "description": "The unique id of the UniFi Identity user. Matches the id field of the corresponding UlpUser.", "examples": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890"]}, "modelKey": {"type": "string", "const": "user", "description": "The model key of the user", "title": "userModelKey"}}, "required": ["id", "name", "firstName", "lastName", "email", "ucoreUserId", "modelKey"], "title": "user"}, "userModelKey": {"type": "string", "const": "user", "description": "The model key of the user", "title": "userModelKey"}, "ulpUserId": {"type": "string", "description": "The primary key of ulpUser", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ulpUserId"}, "ulpUser": {"type": "object", "properties": {"id": {"type": "string", "description": "The primary key of ulpUser", "examples": ["66d025b301ebc903e80003ea", "672094f900e26303e800062a"], "title": "ulpUserId"}, "firstName": {"type": "string", "description": "The first name of ulp user", "examples": ["John"]}, "lastName": {"type": "string", "description": "The last name of ulp user", "examples": ["Doe"]}, "fullName": {"type": "string", "description": "Fullname of ulp user", "examples": ["John Doe"]}, "status": {"type": "string", "enum": ["ACTIVE", "DEACTIVATED"], "description": "Active status of ulp user", "examples": ["ACTIVE"]}, "modelKey": {"type": "string", "const": "ulpUser", "description": "The model key of the ulpUser", "title": "ulpUserModelKey"}}, "required": ["id", "firstName", "lastName", "fullName", "status", "modelKey"], "title": "ulpUser"}, "ulpUserModelKey": {"type": "string", "const": "ulpUser", "description": "The model key of the ulpUser", "title": "ulpUserModelKey"}}}}