IoT-Ignite Cloud API
Ignite Service provides information, management and rule setting for their devices and sensors that connected to these devices for developers on IoT-Ignite infrastructure. Server application operates these processes with REST API’s. All IoT-Ignite REST APIs documented in API Docs page.
All API calls uses OAuth authentication therefore developers need an access token. Getting access token is explained in IoT-Ignite Service Authentication document.
Basic REST APIs
1) Device Information
To gather information about device like label, presence or IMEI; this API can be used:
- [Device Summary API Doc]
- Request URL: https://api.ardich.com/api/v3/device/summary?page=0&size=10&device={deviceId}
- Request Type: GET
- Parameters
- device: Part or full deviceId of Queried Device. (Optional)
- page: Page number of query (Optional)
- size: Page size of the query (Optional)
- deviceModel: Use this parameter for querying by device model. (Optional)
- label: Use this parameter for querying by device label. (Optional)
If no parameters given all devices’ information will be returned from IoT-Ignite.
If deeper informations like battery level or location is needed then developer must use device code information obtained from API call above. API call for deeper information:
- [Device Details API Doc]
- Request URL: https://api.ardich.com/api/v3/device/{deviceId}
- Request Type: GET
- Parameters:
- deviceId: Device Id of requested device.
2) Node-Sensor List
API for collecting information about sensors that connected to device are below. This API will provide node and sensor information of specified device:
- [Node Sensor Inventory API Doc]
- Request URL: https://api.ardich.com/api/v3/device/{deviceId}/device-node-inventory
- Request Type: GET
- Parameters
- deviceId: Device Id of requested device.
3) Sensor Configuration
Sensor informations are sent to cloud periodically by default. This period can be configured to increase period or totally close this information sending. API for this process:
- [Node Sensor Config API Doc]
- Request URL: https://api.ardich.com/api/v3/device-config/inventory
- Request Type: POST
- Content Type: application/json
- Request Body:
{
"config": {
"dataReadingFrequency":60000,
"dataSendingFrequency":60000,
"thresholdType":"quantity"|"percentage"
"dataThreshold":"1",
"offlinedata" :600000,
},
"deviceId":"{deviceId}",
"nodeId":"{nodeId}",
"sensorId":"{sensorId}"
}
- Parameters
- dataReadingFrequency: Sensor data reading frequency (ms)
- dataSendingFrequency: Send data to IoT-Ignite frequency (ms)
- dataThreshold: Send data immediately if data change threshold exceeded (percentage or quantity; configured in thresholdType)
- thresholdType: Immediate data sending decision type
- offlineData: Data keeping window if device offline (ms)
Sensor configurations will be received by devices when device refreshes its profile.
4) Sensor Data
The API for collecting the latest data sent from sensors:
- [Sensor Data API Doc]
- Request URL: https://api.ardich.com/api/v3/device/{deviceId}/sensor-data?nodeId={nodeId}&sensorId={sensorId}
- Request Type: GET
- Parameters
- deviceId: Device Id of requested device
- nodeId: Node Id of requested device
- sensorId: Sensor Id of requested device
The API for collecting data sent from sensors in the selected date range or all data:
- [Sensor Data History API Doc]
- Request URL: https://api.ardich.com/api/v3/device/{deviceId}/sensor-data-history?nodeId={nodeId}&sensorId={sensorId}&startDate={startDate}&endDate={enddate}&pageSize={pageSize}
- Request Type: GET
- Parameters
- deviceId: Device Id of requested device
- nodeId: Node Id of requested device
- sensorId: Sensor Id of requested device
- startDate: Start date of history in epoch format (Optional)
- endDate: End date of history in epoch format
- pageSize: How many records to get