Overview
The Authentication Method defines how end customers will be able to claim devices they own. There are a number of options to authenticate ownership of a device, each with different security levels and user comfort.
Authentication Method is the way End Customers authenticate their ownership of a device, NOT the way devices authenticate with the server.
Authentication Methods
When creating a new model in the portal, you’ll be asked to select the desired authentication method. The developers will then need to implement the relevant authentication flow.
The options are :
- Mac & Serial number - Uses the MAC address and serial number of the specific device.
- Cloud ID (Recommended!) - Uses a GUID consisting of a unique string for each device. See Generating a Cloud ID for instructions on creating Cloud IDs.
- Public Key - Coming soon
- X.509 Certificate - Coming soon
All device registration requests must include the appropriate values for the selected authentication method. Below are the examples for each authentication method.
Mac & Serial number
{
"hardware_key": "",
"mac": "",
"sn": "",
"firmware_version": "",
}
Cloud ID
{
"hardware_key": "",
"cloud_id": "",
"sn": "",
"firmware_version": "",
}
The response returned from the server will include the device_id and access_key of the device. Each request a registered device sends to Xyte's API must contain an HTTP Authorization header whose value is the device's access_key, and the device_id is used in the URL:
curl --location --request POST 'https://hub.xyte.io/v1/devices/{device_id}/telemetry' \
--header 'Content-Type: application/json' \
--header 'Authorization: xxx-xx...' \