{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/DeviceDetails", "title": "DeviceDetails", "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the device generated by the device itself." }, "clientId": { "type": "string", "description": "Optional trusted client identifier for the device." }, "formFactor": { "type": "string", "description": "Form factor of the push device.", "enum": [ "phone", "tablet", "desktop", "tv", "watch", "car", "embedded" ] }, "metadata": { "type": "object", "description": "Optional metadata object for this device. The metadata for a device may only be set by clients with push-admin privileges and will be used more extensively in the future with smart notifications." }, "platform": { "type": "string", "description": "Platform of the push device.", "enum": [ "ios", "android", "browser" ] }, "deviceSecret": { "type": "string", "description": "Secret value for the device." }, "push.recipient": { "$ref": "#/components/schemas/Recipient" }, "push.state": { "type": "string", "description": "the current state of the push device.", "enum": [ "Active", "Failing", "Failed" ], "readOnly": true } } }