{ "$id": "login.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "Reolink Login", "description": "Authentication request and response structures for the Login command, which returns a session token for subsequent API calls.", "type": "object", "properties": { "request": { "type": "object", "description": "Login request payload", "properties": { "cmd": { "type": "string", "const": "Login" }, "action": { "type": "integer", "const": 0 }, "param": { "type": "object", "properties": { "User": { "type": "object", "properties": { "userName": { "type": "string", "description": "Account username" }, "password": { "type": "string", "description": "Account password" } }, "required": ["userName", "password"] } }, "required": ["User"] } }, "required": ["cmd", "action", "param"] }, "response": { "type": "object", "description": "Login response containing the session token", "properties": { "cmd": { "type": "string", "const": "Login" }, "code": { "type": "integer" }, "value": { "type": "object", "properties": { "Token": { "type": "object", "properties": { "leaseTime": { "type": "integer", "description": "Token validity period in seconds" }, "name": { "type": "string", "description": "Authentication token to use in subsequent requests" } }, "required": ["leaseTime", "name"] } }, "required": ["Token"] } }, "required": ["cmd", "code", "value"] } } }