Astarte Interfaces
io.edgehog.devicemanager.BaseImage v0.1
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/fingerprintwithstringtype. OS bundle release identification code/namewithstringtype. Name of the bundle/versionwithstringtype. Version of the bundle/buildIdwithstringtype. Human readable build identifier. Examples are[date][time]or[date]-[time]-[git-commit]
/fingerprint
OS bundle release identification code
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
/name
Name of the bundle
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
/version
Version of the bundle
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
/buildId
Human readable build identifier. Examples are [date][time] or [date]-[time]-[git-commit]
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
io.edgehog.devicemanager.BatteryStatus v0.1
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/%{battery_slot}/levelPercentagewithdoubletype. Battery level estimated percentage [0.0%-100.0%]/%{battery_slot}/levelAbsoluteErrorwithdoubletype. Battery level measurement absolute error [0.0-100.0]/%{battery_slot}/statuswithstringtype. Battery status string, any of: Charging, Discharging, Idle, EitherIdleOrCharging, Failure, Removed, Unknown
/%{battery_slot}/levelPercentage
Battery level estimated percentage [0.0%-100.0%]
This endpoint accepts values of type double: a double-precision floating-point number as specified by binary64, by the IEEE 754 standard.
The endpoint is parametric and battery_slot can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{battery_slot}/levelAbsoluteError
Battery level measurement absolute error [0.0-100.0]
This endpoint accepts values of type double: a double-precision floating-point number as specified by binary64, by the IEEE 754 standard.
The endpoint is parametric and battery_slot can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{battery_slot}/status
Battery status string, any of: Charging, Discharging, Idle, EitherIdleOrCharging, Failure, Removed, Unknown
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and battery_slot can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
io.edgehog.devicemanager.CellularConnectionProperties v0.1
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/%{id}/apnwithstringtype. Operator apn address./%{id}/imeiwithstringtype. The modem IMEI code of the device./%{id}/imsiwithstringtype. The SIM IMSI code of the device.
/%{id}/apn
Operator apn address.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.
/%{id}/imei
The modem IMEI code of the device.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.
/%{id}/imsi
The SIM IMSI code of the device.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.
io.edgehog.devicemanager.CellularConnectionStatus v0.1
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/%{id}/carrierwithstringtype. Connectivity carrier operator name./%{id}/cellIdwithlongintegertype. The Cell ID in hexadecimal format, either 16 bit for 2G or 28 bit for 3G or 4G./%{id}/mobileCountryCodewithintegertype. The mobile country code (MCC) for the device's home network. Valid range: 0–999./%{id}/mobileNetworkCodewithintegertype. The Mobile Network Code for the device's home network. This is the MNC for GSM, WCDMA, LTE and NR. CDMA uses the System ID (SID). Valid range for MNC: 0–999. Valid range for SID: 0–32767./%{id}/localAreaCodewithintegertype. Two byte location area code in hexadecimal format./%{id}/registrationStatuswithstringtype. GSM/LTE registration status. Possible values: [NotRegistered, Registered, SearchingOperator, RegistrationDenied, Unknown, RegisteredRoaming]/%{id}/rssiwithdoubletype. Signal strenght of the device in dBm./%{id}/technologywithstringtype. Access Technology. Possible values [GSM, GSMCompact, UTRAN, GSMwEGPRS, UTRANwHSDPA, UTRANwHSUPA, UTRANwHSDPAandHSUPA, EUTRAN]
/%{id}/carrier
Connectivity carrier operator name.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{id}/cellId
The Cell ID in hexadecimal format, either 16 bit for 2G or 28 bit for 3G or 4G.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{id}/mobileCountryCode
The mobile country code (MCC) for the device's home network. Valid range: 0–999.
This endpoint accepts values of type integer: a signed 32 bit integer.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{id}/mobileNetworkCode
The Mobile Network Code for the device's home network. This is the MNC for GSM, WCDMA, LTE and NR. CDMA uses the System ID (SID). Valid range for MNC: 0–999. Valid range for SID: 0–32767.
This endpoint accepts values of type integer: a signed 32 bit integer.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{id}/localAreaCode
Two byte location area code in hexadecimal format.
This endpoint accepts values of type integer: a signed 32 bit integer.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{id}/registrationStatus
GSM/LTE registration status. Possible values: [NotRegistered, Registered, SearchingOperator, RegistrationDenied, Unknown, RegisteredRoaming]
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{id}/rssi
Signal strenght of the device in dBm.
This endpoint accepts values of type double: a double-precision floating-point number as specified by binary64, by the IEEE 754 standard.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{id}/technology
Access Technology. Possible values [GSM, GSMCompact, UTRAN, GSMwEGPRS, UTRANwHSDPA, UTRANwHSUPA, UTRANwHSDPAandHSUPA, EUTRAN]
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
io.edgehog.devicemanager.Commands v0.1
About
This interface is of type datastream and is owned by the server, meaning that it is the server which initiates the data flow.
Thanks to this type of interface, the server can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an individual aggregation.
Each mapping is treated as an independent value and is managed individually.
Mappings
The interface has the following mappings:
/requestwithstringtype. Command request. Possible values ['Reboot']
/request
Command request. Possible values ['Reboot']
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when it has been received exactly once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it.
io.edgehog.devicemanager.ForwarderSessionRequest v0.1
Configuration to open a session with the Edgehog Forwarder from a device to a certain host.
About
This interface is of type datastream and is owned by the server, meaning that it is the server which initiates the data flow.
Thanks to this type of interface, the server can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/request/session_tokenwithstringtype. The session token thanks to which the device can authenticates itself through Edgehog./request/portwithintegertype. The host port the device must connect to./request/hostwithstringtype. The IP address or host name the device must connect to./request/securewithbooleantype. Indicates whether the connection should use TLS, i.e. 'ws' or 'wss' scheme.
/request/session_token
The session token thanks to which the device can authenticates itself through Edgehog.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/request/port
The host port the device must connect to.
This endpoint accepts values of type integer: a signed 32 bit integer.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/request/host
The IP address or host name the device must connect to.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/request/secure
Indicates whether the connection should use TLS, i.e. 'ws' or 'wss' scheme.
This endpoint accepts values of type boolean: either true or false, adhering to JSON boolean type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
io.edgehog.devicemanager.ForwarderSessionState v0.1
Information provided by the device about the status of a forwarder session.
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/%{session_token}/statuswithstringtype. Indicates if the device is connecting, or connected to a forwarder session.
/%{session_token}/status
Indicates if the device is connecting, or connected to a forwarder session.
An enum with the following possible values: Connecting | Connected.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and session_token can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.
io.edgehog.devicemanager.Geolocation v0.1
Generic Geolocation sampled data.
Geolocation allows geolocation sensors to stream location data, such as GPS data. Values availability depends on what sensors are present on devices and what measurement systems are in use. The id represents a unique identifier for an individual sensor.
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/%{id}/latitudewithdoubletype. Sampled latitude value./%{id}/longitudewithdoubletype. Sampled longitude value./%{id}/altitudewithdoubletype. Sampled altitude value./%{id}/accuracywithdoubletype. Sampled accuracy of the latitude and longitude properties./%{id}/altitudeAccuracywithdoubletype. Sampled accuracy of the altitude property./%{id}/headingwithdoubletype. Sampled value representing the direction towards which the device is facing./%{id}/speedwithdoubletype. Sampled value representing the velocity of the device.
/%{id}/latitude
Sampled latitude value.
This endpoint accepts values of type double: a double-precision floating-point number as specified by binary64, by the IEEE 754 standard.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{id}/longitude
Sampled longitude value.
This endpoint accepts values of type double: a double-precision floating-point number as specified by binary64, by the IEEE 754 standard.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{id}/altitude
Sampled altitude value.
This endpoint accepts values of type double: a double-precision floating-point number as specified by binary64, by the IEEE 754 standard.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{id}/accuracy
Sampled accuracy of the latitude and longitude properties.
This endpoint accepts values of type double: a double-precision floating-point number as specified by binary64, by the IEEE 754 standard.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{id}/altitudeAccuracy
Sampled accuracy of the altitude property.
This endpoint accepts values of type double: a double-precision floating-point number as specified by binary64, by the IEEE 754 standard.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{id}/heading
Sampled value representing the direction towards which the device is facing.
This endpoint accepts values of type double: a double-precision floating-point number as specified by binary64, by the IEEE 754 standard.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{id}/speed
Sampled value representing the velocity of the device.
This endpoint accepts values of type double: a double-precision floating-point number as specified by binary64, by the IEEE 754 standard.
The endpoint is parametric and id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
io.edgehog.devicemanager.HardwareInfo v0.1
General hardware capabilities
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/cpu/architecturewithstringtype. CPU Architecture/cpu/modelwithstringtype. CPU Model Code/cpu/modelNamewithstringtype. CPU Model Display Name/cpu/vendorwithstringtype. CPU Vendor/mem/totalByteswithlongintegertype. Total RAM quantity (Bytes)
/cpu/architecture
CPU Architecture
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
/cpu/model
CPU Model Code
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
/cpu/modelName
CPU Model Display Name
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
/cpu/vendor
CPU Vendor
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
/mem/totalBytes
Total RAM quantity (Bytes)
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The value of the property cannot be unset.
io.edgehog.devicemanager.LedBehavior v0.1
About
This interface is of type datastream and is owned by the server, meaning that it is the server which initiates the data flow.
Thanks to this type of interface, the server can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an individual aggregation.
Each mapping is treated as an independent value and is managed individually.
Mappings
The interface has the following mappings:
/%{led_id}/behaviorwithstringtype. Enum describing the behavior of the given led. Possible values: [Blink60Seconds | DoubleBlink60Seconds | SlowBlink60Seconds]
/%{led_id}/behavior
Enum describing the behavior of the given led. Possible values: [Blink60Seconds | DoubleBlink60Seconds | SlowBlink60Seconds]
Blink60Seconds: Blinking DoubleBlink60Seconds: Double blinking SlowBlink60Seconds: Slow blinking
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and led_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received exactly once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
io.edgehog.devicemanager.NetworkInterfaceProperties v0.1
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/%{iface_name}/macAddresswithstringtype. Normalized physical address. Example value is "00:aa:bb:cc:dd:ee" (always lower case)/%{iface_name}/technologyTypewithstringtype. Connection technology. Possible values: [Ethernet, Bluetooth, Cellular, WiFi]
/%{iface_name}/macAddress
Normalized physical address. Example value is "00:aa:bb:cc:dd:ee" (always lower case)
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and iface_name can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.
/%{iface_name}/technologyType
Connection technology. Possible values: [Ethernet, Bluetooth, Cellular, WiFi]
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and iface_name can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.
io.edgehog.devicemanager.OSInfo v0.1
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/osNamewithstringtype. Name of the Operating System/osVersionwithstringtype. Version of the Operating System
/osName
Name of the Operating System
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
/osVersion
Version of the Operating System
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
io.edgehog.devicemanager.OTAEvent v0.1
OTA Events sampled data.
Allows to stream OTA Events data, including OTA Update status, its progress, code and internal message.
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/event/requestUUIDwithstringtype. OTA Request identifier./event/statuswithstringtype. OTA Update status./event/statusProgresswithintegertype. Current OTA Update status progress percentage [0%-100%]./event/statusCodewithstringtype. Status code expands OTA Update status with additional information./event/messagewithstringtype. Contains internal message for status code or empty string otherwise.
/event/requestUUID
OTA Request identifier.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when it has been received exactly once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/event/status
OTA Update status.
Value is one of the following strings:
Acknowledged: the device received an OTA Request.Downloading: an update is in the process of downloading.Deploying: an update is in the process of deploying.Deployed: an update deployed on the device.Rebooting: the device is in the process of rebooting.Success: an update succeeded. This is a final status of OTA Update.Error: an error happened during the update. Also this status can be used to notify about handled errors.Failure: an update failed. This is a final status of OTA Update.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when it has been received exactly once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/event/statusProgress
Current OTA Update status progress percentage [0%-100%].
Every OTA Update status has own progress that starts from 0 and ends at 100, for example (pairs of "status, progress"): "Downloading, 0", "Downloading, 50", "Downloading, 100", "Deploying, 10", etc.
This endpoint accepts values of type integer: a signed 32 bit integer.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when it has been received exactly once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/event/statusCode
Status code expands OTA Update status with additional information.
Some common status codes are:
InvalidRequest: an update request contains incorrect data.UpdateAlreadyInProgress: another update is currently in progress.NetworkError: a network error happened during the update.IOError: a filesystem error happened during the update.InternalError: an internal error happened during the update.InvalidBaseImage: an update failed to apply due to an invalid base image.SystemRollback: a system rollback has occurred.Canceled: an update was canceled.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when it has been received exactly once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/event/message
Contains internal message for status code or empty string otherwise.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when it has been received exactly once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
io.edgehog.devicemanager.OTARequest v1.0
About
This interface is of type datastream and is owned by the server, meaning that it is the server which initiates the data flow.
Thanks to this type of interface, the server can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/request/operationwithstringtype. OTA Request operation/request/urlwithstringtype. File URL/request/uuidwithstringtype. Request identifier
/request/operation
OTA Request operation
Value is one of the following strings:
Update: push an OTA update operation.Cancel: cancel an OTA update if it can still be cancelled.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/request/url
File URL
If the operation is Update, this will contain the URL that can be used to download the Update. If the operation is Cancel, this will be an empty string. Note that the URL will be valid only until the OTA update is active (i.e. it didn't reach a Failure or Success state), after that it's possible that the URL can become invalid.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/request/uuid
Request identifier
A UUID that uniquely identifies the OTA request. It must be stored when receiving an Update operation so that it can be matched against in case a Cancel operation is received.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
io.edgehog.devicemanager.RuntimeInfo v0.1
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/namewithstringtype. Name of the Edgehog runtime. Example value:edgehog-esp32-device/urlwithstringtype. URL that uniquely identifies the Edgehog Edgehog runtime implementation. Example value:https://github.com/edgehog-device-manager/edgehog-esp32-device./versionwithstringtype. Version of the Edgehog runtime. Example value:0.5/environmentwithstringtype. Environment of the Edgehog runtime. Example value:esp-idf VERSION,Rust 1.58orJava 8
/name
Name of the Edgehog runtime. Example value: edgehog-esp32-device
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
/url
URL that uniquely identifies the Edgehog Edgehog runtime implementation. Example value: https://github.com/edgehog-device-manager/edgehog-esp32-device.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
/version
Version of the Edgehog runtime. Example value: 0.5
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
/environment
Environment of the Edgehog runtime. Example value: esp-idf VERSION, Rust 1.58 or Java 8
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
io.edgehog.devicemanager.StorageUsage v0.1
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/%{label}/totalByteswithlongintegertype. Total storage size in bytes/%{label}/freeByteswithlongintegertype. Available storage bytes
/%{label}/totalBytes
Total storage size in bytes
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and label can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/%{label}/freeBytes
Available storage bytes
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and label can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
io.edgehog.devicemanager.SystemInfo v0.1
Information about the system
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/serialNumberwithstringtype. The serial number of the system/partNumberwithstringtype. The part number of the system
/serialNumber
The serial number of the system
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
/partNumber
The part number of the system
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The value of the property cannot be unset.
io.edgehog.devicemanager.SystemStatus v0.1
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/systemStatus/availMemoryByteswithlongintegertype. Available memory (Bytes)/systemStatus/bootIdwithstringtype. UUID representing the Boot Id/systemStatus/taskCountwithintegertype. Number of running tasks or processes/systemStatus/uptimeMilliswithlongintegertype. Get time in milliseconds since boot
/systemStatus/availMemoryBytes
Available memory (Bytes)
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/systemStatus/bootId
UUID representing the Boot Id
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/systemStatus/taskCount
Number of running tasks or processes
This endpoint accepts values of type integer: a signed 32 bit integer.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/systemStatus/uptimeMillis
Get time in milliseconds since boot
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
io.edgehog.devicemanager.WiFiScanResults v0.2
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/ap/channelwithintegertype. The channel over which the client is communicating with the access point./ap/connectedwithbooleantype. Identifies if the device is connected to this Access Point/ap/essidwithstringtype. Extended Service Set Identification of the current AP, empty string if the AP is hidden./ap/macAddresswithstringtype. Lower case mac address string formatted likede:ad:be:ff:11:22./ap/rssiwithintegertype. The current signal strength measured in dBm.
/ap/channel
The channel over which the client is communicating with the access point.
The channel represents one of the ranges into which the reference frequency is divided and it's identified by an integer number in the range 1 - 165, depending on the frequency itself and the region.
This endpoint accepts values of type integer: a signed 32 bit integer.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/ap/connected
Identifies if the device is connected to this Access Point
This endpoint accepts values of type boolean: either true or false, adhering to JSON boolean type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/ap/essid
Extended Service Set Identification of the current AP, empty string if the AP is hidden.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/ap/macAddress
Lower case mac address string formatted like de:ad:be:ff:11:22.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
/ap/rssi
The current signal strength measured in dBm.
This endpoint accepts values of type integer: a signed 32 bit integer.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 5184000 seconds before it is erased from the database.
io.edgehog.devicemanager.apps.AvailableContainers v0.1
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/%{container_id}/statuswithstringtype. Container status
/%{container_id}/status
Container status
Possible values [Received, Created, Running, Stopped]
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.
io.edgehog.devicemanager.apps.AvailableDeployments v0.1
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/%{deployment_id}/statuswithstringtype. Status of the deployment
/%{deployment_id}/status
Status of the deployment
Possible values: [Stopped, Started]
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and deployment_id can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.
io.edgehog.devicemanager.apps.AvailableDeviceMappings v0.1
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/%{device_mapping_id}/presentwithbooleantype. The device is present on the host
/%{device_mapping_id}/present
The device is present on the host
This endpoint accepts values of type boolean: either true or false, adhering to JSON boolean type.
The endpoint is parametric and device_mapping_id can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.
io.edgehog.devicemanager.apps.AvailableImages v0.1
Properties available for a specific Docker image on the device
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/%{image_id}/pulledwithbooleantype. Pulled image
/%{image_id}/pulled
Pulled image
This endpoint accepts values of type boolean: either true or false, adhering to JSON boolean type.
The endpoint is parametric and image_id can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.
io.edgehog.devicemanager.apps.AvailableNetworks v0.1
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/%{network_id}/createdwithbooleantype. Network was created
/%{network_id}/created
Network was created
This endpoint accepts values of type boolean: either true or false, adhering to JSON boolean type.
The endpoint is parametric and network_id can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.
io.edgehog.devicemanager.apps.AvailableVolumes v0.1
About
This interface is of type properties and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/%{volume_id}/createdwithbooleantype. Volume created
/%{volume_id}/created
Volume created
This endpoint accepts values of type boolean: either true or false, adhering to JSON boolean type.
The endpoint is parametric and volume_id can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.
io.edgehog.devicemanager.apps.CreateContainerRequest v0.1
About
This interface is of type datastream and is owned by the server, meaning that it is the server which initiates the data flow.
Thanks to this type of interface, the server can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/container/idwithstringtype. Create Container Request id/container/deploymentIdwithstringtype. Reference to a Deployment using the container/container/imageIdwithstringtype. Container image id/container/networkIdswithstringarraytype. Container network ids/container/volumeIdswithstringarraytype. Container volume ids/container/deviceMappingIdswithstringarraytype. Container device mappings ids/container/hostnamewithstringtype. Container hostname/container/restartPolicywithstringtype. Container restart policy/container/envwithstringarraytype. Container environment/container/bindswithstringarraytype. Container binds/container/networkModewithstringtype. Network mode used for this container./container/portBindingswithstringarraytype. Container port bindings/container/extraHostswithstringarraytype. List of hostname/IP to add to the container's /etc/hosts/container/capAddwithstringarraytype. A list of kernel capabilities to add to the container./container/capDropwithstringarraytype. A list of kernel capabilities to drop from the container./container/cpuPeriodwithlongintegertype. The length of a CPU period in microseconds./container/cpuQuotawithlongintegertype. Microseconds of CPU time that the container can get in a CPU period./container/cpuRealtimePeriodwithlongintegertype. The length of a CPU real-time period in microseconds./container/cpuRealtimeRuntimewithlongintegertype. The length of a CPU real-time runtime in microseconds./container/memorywithlongintegertype. Memory limit in bytes./container/memoryReservationwithlongintegertype. Memory soft limit in bytes. Default to 0 for unlimited. Unset if the value is -1 (or negative)./container/memorySwapwithlongintegertype. Total memory limit (memory + swap)./container/memorySwappinesswithintegertype. Memory swappiness/container/volumeDriverwithstringtype. Driver that this container uses to mount volumes./container/storageOptwithstringarraytype. Storage driver options for this container./container/readOnlyRootfswithbooleantype. Mount the container's root filesystem as read only./container/tmpfswithstringarraytype. A map of container directories which should be replaced by tmpfs mounts./container/privilegedwithbooleantype. Run privileged
/container/id
Create Container Request id
Unique id for the container.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/deploymentId
Reference to a Deployment using the container
The deployment in which the container is used, so the device can send deployment events to Astarte for the create request
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/imageId
Container image id
The id of the image to use when creating the container.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/networkIds
Container network ids
The ids of the network to connect with the container.
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/volumeIds
Container volume ids
The ids of the volumes to mount on the container.
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/deviceMappingIds
Container device mappings ids
The ids of the device mappings to mount on the container.
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/hostname
Container hostname
The hostname to use for the container, as a valid RFC 1123 hostname.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/restartPolicy
Container restart policy
The behavior to apply when the container exits. Possible values are: ['', 'no', 'always' 'unless-stopped', 'on-failure']
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/env
Container environment
Array of key=value environment variables. The key cannot contain =.
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/binds
Container binds
A list of volume bindings for this container. Each volume binding is a string in one of these forms: host-src:container-dest[:options], or volume-name:container-dest[:options]. The container-dest must be an absolute path.
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/networkMode
Network mode used for this container.
Supported standard values are: bridge, host, none, and container:<name|id>. Any other value is taken as a custom network's name to which this container should connect to. If you are using a different container engine than docker, there could be other values.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/portBindings
Container port bindings
Array of ip:[host_port:]container_port[/protocol] | [hostPort:]containerPort[/protocol]. Protocol is TCP by default
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/extraHosts
List of hostname/IP to add to the container's /etc/hosts
A list of hostnames/IP mappings to add to the container's /etc/hosts file. Specified in the form ["hostname:IP"]. You can use the host-gateway to connect to the host IP
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/capAdd
A list of kernel capabilities to add to the container.
A list of kernel capabilities to add to the container.
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/capDrop
A list of kernel capabilities to drop from the container.
A list of kernel capabilities to drop from the container.
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/cpuPeriod
The length of a CPU period in microseconds.
Unset if the value is -1 (or negative) and the cpuQuota must also be unset.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/cpuQuota
Microseconds of CPU time that the container can get in a CPU period.
Unset if the value is -1 (or negative) and the cpuPeriod must also be unset.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/cpuRealtimePeriod
The length of a CPU real-time period in microseconds.
The length of a CPU real-time period in microseconds. Set to 0 to allocate no time allocated to real-time tasks. Unset if the value is -1 (or negative).
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/cpuRealtimeRuntime
The length of a CPU real-time runtime in microseconds.
The length of a CPU real-time runtime in microseconds. Set to 0 to allocate no time allocated to real-time tasks. Unset if the value is -1 (or negative).
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/memory
Memory limit in bytes.
Memory limit in bytes. Default to 0 for unlimited. Unset if the value is -1 (or negative).
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/memoryReservation
Memory soft limit in bytes. Default to 0 for unlimited. Unset if the value is -1 (or negative).
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/memorySwap
Total memory limit (memory + swap).
Total memory limit (memory + swap). Set as -1 to enable unlimited swap. Unset if the value is -2 (or more negative).
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/memorySwappiness
Memory swappiness
Tune a container's memory swappiness behavior. Accepts an integer between 0 and 100. Unset if the value is -1 (or negative).
This endpoint accepts values of type integer: a signed 32 bit integer.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/volumeDriver
Driver that this container uses to mount volumes.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/storageOpt
Storage driver options for this container.
Storage driver options for this container, in the form "size=120G".
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/readOnlyRootfs
Mount the container's root filesystem as read only.
This endpoint accepts values of type boolean: either true or false, adhering to JSON boolean type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/tmpfs
A map of container directories which should be replaced by tmpfs mounts.
A map of container directories which should be replaced by tmpfs mounts, and their corresponding mount options. For example: "/run=rw,noexec,nosuid,size=65536k"
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/container/privileged
Run privileged
Runs the exec process with extended privileges.
This endpoint accepts values of type boolean: either true or false, adhering to JSON boolean type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
io.edgehog.devicemanager.apps.CreateDeploymentRequest v0.1
About
This interface is of type datastream and is owned by the server, meaning that it is the server which initiates the data flow.
Thanks to this type of interface, the server can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/deployment/idwithstringtype. Create Deployment Request id/deployment/containerswithstringarraytype. Deployment containers
/deployment/id
Create Deployment Request id
Unique id for the deployment.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/deployment/containers
Deployment containers
Containers used by the deployment.
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
io.edgehog.devicemanager.apps.CreateDeviceMappingRequest v0.1
About
This interface is of type datastream and is owned by the server, meaning that it is the server which initiates the data flow.
Thanks to this type of interface, the server can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/deviceMapping/idwithstringtype. Create Device Mapping Request id/deviceMapping/deploymentIdwithstringtype. Reference to a Deployment using the device mapping/deviceMapping/pathOnHostwithstringtype. Path on host for the device/deviceMapping/pathInContainerwithstringtype. Path in the container for the device/deviceMapping/cGroupPermissionswithstringtype. Permissions on the device.
/deviceMapping/id
Create Device Mapping Request id
Unique id for the container.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/deviceMapping/deploymentId
Reference to a Deployment using the device mapping
The deployment in which the device mapping is used, so the device can send deployment events to Astarte for the create request
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/deviceMapping/pathOnHost
Path on host for the device
Path on host for the device, for example '/dev/deviceName'
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/deviceMapping/pathInContainer
Path in the container for the device
Path in the container for the device, for example '/dev/deviceName'
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/deviceMapping/cGroupPermissions
Permissions on the device.
Permissions on the device, for example 'mrw'
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
io.edgehog.devicemanager.apps.CreateImageRequest v0.1
Request to pull and create a container image.
The ttl of this datastream is short to keep the sensitive fields private.
About
This interface is of type datastream and is owned by the server, meaning that it is the server which initiates the data flow.
Thanks to this type of interface, the server can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/image/idwithstringtype. Create Image Request id/image/deploymentIdwithstringtype. Reference to a Deployment using the image/image/referencewithstringtype. Image reference to be pulled/image/registryAuthwithstringtype. Image registry authentication header
/image/id
Create Image Request id
Unique id for the container image.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 600 seconds before it is erased from the database.
/image/deploymentId
Reference to a Deployment using the image
The deployment in which the image is used, so the device can send deployment events to Astarte for the create request
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 600 seconds before it is erased from the database.
/image/reference
Image reference to be pulled
Name of the image to pull. It should be in the form [regitry-host[:port]/][image-repo/]image-name[:(tag|digest)]
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 600 seconds before it is erased from the database.
/image/registryAuth
Image registry authentication header
Optional base64url-encoded JSON for the auth configuration to the registry. An empty string means the image is public and doesn't require authentication. See https://docs.docker.com/reference/api/engine/version/v1.43/#section/Authentication for more information.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 600 seconds before it is erased from the database.
io.edgehog.devicemanager.apps.CreateNetworkRequest v0.1
About
This interface is of type datastream and is owned by the server, meaning that it is the server which initiates the data flow.
Thanks to this type of interface, the server can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/network/idwithstringtype. Create Network Request id/network/deploymentIdwithstringtype. Reference to a Deployment using the network/network/driverwithstringtype. Network driver/network/internalwithbooleantype. Internal network/network/enableIpv6withbooleantype. Enable IPv6/network/optionswithstringarraytype. Network driver options
/network/id
Create Network Request id
Unique id for the container network.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/network/deploymentId
Reference to a Deployment using the network
The deployment in which the network is used, so the device can send deployment events to Astarte for the create request
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/network/driver
Network driver
Name of the network driver plugin to use.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/network/internal
Internal network
Restrict external access to the network.
This endpoint accepts values of type boolean: either true or false, adhering to JSON boolean type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/network/enableIpv6
Enable IPv6
Enable IPv6 on the network.
This endpoint accepts values of type boolean: either true or false, adhering to JSON boolean type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/network/options
Network driver options
An array of key=value options to set for the driver. The key cannot contain an =.
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
io.edgehog.devicemanager.apps.CreateVolumeRequest v0.1
About
This interface is of type datastream and is owned by the server, meaning that it is the server which initiates the data flow.
Thanks to this type of interface, the server can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/volume/idwithstringtype. Create Volume Request id/volume/deploymentIdwithstringtype. Reference to a Deployment using the volume/volume/driverwithstringtype. Volume driver name/volume/optionswithstringarraytype. Volume driver options
/volume/id
Create Volume Request id
Unique id for the volume.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/volume/deploymentId
Reference to a Deployment using the volume
The deployment in which the volume is used, so the device can send deployment events to Astarte for the create request
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/volume/driver
Volume driver name
Name of the volume driver to use.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/volume/options
Volume driver options
An array of key=value options to set for the driver. The key cannot contain an =.
This endpoint accepts values of type stringarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when it has been received at least once by the recipient. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
io.edgehog.devicemanager.apps.DeploymentCommand v0.1
About
This interface is of type datastream and is owned by the server, meaning that it is the server which initiates the data flow.
Thanks to this type of interface, the server can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an individual aggregation.
Each mapping is treated as an independent value and is managed individually.
Mappings
The interface has the following mappings:
/%{deployment_id}/commandwithstringtype. Deployment command
/%{deployment_id}/command
Deployment command
Possible values [Start, Stop, Delete]
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and deployment_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
io.edgehog.devicemanager.apps.DeploymentEvent v0.1
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/%{deployment_id}/statuswithstringtype. Deployment status/%{deployment_id}/messagewithstringtype. Optional message for the event
/%{deployment_id}/status
Deployment status
Possible values: [Starting, Started, Stopping, Stopped, Updating, Deleting, Error]
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and deployment_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/%{deployment_id}/message
Optional message for the event
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and deployment_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
io.edgehog.devicemanager.apps.DeploymentUpdate v0.1
About
This interface is of type datastream and is owned by the server, meaning that it is the server which initiates the data flow.
Thanks to this type of interface, the server can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/deployment/fromwithstringtype. Id of the deployment to update from/deployment/towithstringtype. Id of the deployment to update to
/deployment/from
Id of the deployment to update from
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
/deployment/to
Id of the deployment to update to
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it. Delivered data is kept for 31556952 seconds before it is erased from the database.
io.edgehog.devicemanager.apps.stats.ContainerBlkio v0.1
BlkioStats stores all IO service stats for data read and write.
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/%{container_id}/namewithstringtype./%{container_id}/majorwithlongintegertype./%{container_id}/minorwithlongintegertype./%{container_id}/opwithstringtype./%{container_id}/valuewithlongintegertype.
/%{container_id}/name
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/major
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/minor
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/op
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/value
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
io.edgehog.devicemanager.apps.stats.ContainerCpu v0.1
The precpu stats is the CPU statistic of the previous read, and is used to calculate the CPU usage percentage. It is not an exact copy of the cpu_stats field.
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/%{container_id}/cpuUsageTotalUsagewithlongintegertype. Total CPU time consumed in nanoseconds/%{container_id}/cpuUsagePercpuUsagewithlongintegerarraytype. Total CPU time (in nanoseconds) consumed per core/%{container_id}/cpuUsageUsageInKernelmodewithlongintegertype. Time (in nanoseconds) spent by tasks of the cgroup in kernel mode/%{container_id}/cpuUsageUsageInUsermodewithlongintegertype. Time (in nanoseconds) spent by tasks of the cgroup in user mode/%{container_id}/systemCpuUsagewithlongintegertype. System Usage./%{container_id}/onlineCpuswithintegertype. Number of online CPUs./%{container_id}/throttlingDataPeriodswithlongintegertype. Number of periods with throttling active./%{container_id}/throttlingDataThrottledPeriodswithlongintegertype. Number of periods when the container hit its throttling limit./%{container_id}/throttlingDataThrottledTimewithlongintegertype. Aggregated time (in nanoseconds) the container was throttled for./%{container_id}/preCpuUsageTotalUsagewithlongintegertype. Total CPU time consumed in nanoseconds/%{container_id}/preCpuUsagePercpuUsagewithlongintegerarraytype. Total CPU time (in nanoseconds) consumed per core/%{container_id}/preCpuUsageUsageInKernelmodewithlongintegertype. Time (in nanoseconds) spent by tasks of the cgroup in kernel mode/%{container_id}/preCpuUsageUsageInUsermodewithlongintegertype. Time (in nanoseconds) spent by tasks of the cgroup in user mode/%{container_id}/preSystemCpuUsagewithlongintegertype. System Usage./%{container_id}/preOnlineCpuswithintegertype. Number of online CPUs./%{container_id}/preThrottlingDataPeriodswithlongintegertype. Number of periods with throttling active./%{container_id}/preThrottlingDataThrottledPeriodswithlongintegertype. Number of periods when the container hit its throttling limit./%{container_id}/preThrottlingDataThrottledTimewithlongintegertype. Aggregated time (in nanoseconds) the container was throttled for.
/%{container_id}/cpuUsageTotalUsage
Total CPU time consumed in nanoseconds
Total CPU time consumed by the container, in nanoseconds.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/cpuUsagePercpuUsage
Total CPU time (in nanoseconds) consumed per core
This field is Linux-specific when using cgroups v1.
This endpoint accepts values of type longintegerarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/cpuUsageUsageInKernelmode
Time (in nanoseconds) spent by tasks of the cgroup in kernel mode
CPU time spent in kernel mode by the container's tasks, in nanoseconds.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/cpuUsageUsageInUsermode
Time (in nanoseconds) spent by tasks of the cgroup in user mode
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/systemCpuUsage
System Usage.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/onlineCpus
Number of online CPUs.
This endpoint accepts values of type integer: a signed 32 bit integer.
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/throttlingDataPeriods
Number of periods with throttling active.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/throttlingDataThrottledPeriods
Number of periods when the container hit its throttling limit.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/throttlingDataThrottledTime
Aggregated time (in nanoseconds) the container was throttled for.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/preCpuUsageTotalUsage
Total CPU time consumed in nanoseconds
Total CPU time consumed by the container, in nanoseconds.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/preCpuUsagePercpuUsage
Total CPU time (in nanoseconds) consumed per core
This field is Linux-specific when using cgroups v1.
This endpoint accepts values of type longintegerarray: a list of values, represented as a JSON Array. Arrays can have up to 1024 items and each item must respect the limits of its scalar type.
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/preCpuUsageUsageInKernelmode
Time (in nanoseconds) spent by tasks of the cgroup in kernel mode
CPU time spent in kernel mode by the container's tasks, in nanoseconds.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/preCpuUsageUsageInUsermode
Time (in nanoseconds) spent by tasks of the cgroup in user mode
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/preSystemCpuUsage
System Usage.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/preOnlineCpus
Number of online CPUs.
This endpoint accepts values of type integer: a signed 32 bit integer.
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/preThrottlingDataPeriods
Number of periods with throttling active.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/preThrottlingDataThrottledPeriods
Number of periods when the container hit its throttling limit.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/preThrottlingDataThrottledTime
Aggregated time (in nanoseconds) the container was throttled for.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
io.edgehog.devicemanager.apps.stats.ContainerMemory v0.1
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/%{container_id}/usagewithlongintegertype. Current res_counter usage for memory./%{container_id}/maxUsagewithlongintegertype. Maximum usage ever recorded./%{container_id}/failcntwithlongintegertype. Number of times memory usage hits limits./%{container_id}/limitwithlongintegertype. Memory usage limit
/%{container_id}/usage
Current res_counter usage for memory.
Current total memory usage (RAM + swap) of the container, in bytes.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/maxUsage
Maximum usage ever recorded.
The maximum memory usage recorded since the container's start, in bytes.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/failcnt
Number of times memory usage hits limits.
The number of times the memory limit has been reached.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/limit
Memory usage limit
The memory usage limit for the container
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
io.edgehog.devicemanager.apps.stats.ContainerMemoryStats v0.1
All the stats exported via memory.stat. when using cgroups v2.
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/%{container_id}/namewithstringtype. Name of the stat/%{container_id}/valuewithlongintegertype. Value of the stat
/%{container_id}/name
Name of the stat
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/value
Value of the stat
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
io.edgehog.devicemanager.apps.stats.ContainerNetworks v0.1
Network statistics for the container per interface.
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/%{container_id}/interfacewithstringtype. Network interface name/%{container_id}/rxByteswithlongintegertype. Bytes received./%{container_id}/rxPacketswithlongintegertype. Packets received./%{container_id}/rxDroppedwithlongintegertype. Incoming packets dropped./%{container_id}/rxErrorswithlongintegertype. Received errors./%{container_id}/txByteswithlongintegertype. Bytes sent./%{container_id}/txPacketswithlongintegertype. Packets sent./%{container_id}/txErrorswithlongintegertype. Sent errors./%{container_id}/txDroppedwithlongintegertype. Outgoing packets dropped.
/%{container_id}/interface
Network interface name
Name of the network for which the statistics are provided.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/rxBytes
Bytes received.
Total number of bytes received on the interface.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/rxPackets
Packets received.
Total number of packets successfully received on the interface.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/rxDropped
Incoming packets dropped.
Total number of incoming packets that were dropped.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/rxErrors
Received errors.
Total number of errors that occurred while receiving.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/txBytes
Bytes sent.
Total number of bytes transmitted on the interface.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/txPackets
Packets sent.
Total number of packets successfully transmitted on the interface.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/txErrors
Sent errors.
Total number of errors that occurred while transmitting.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/txDropped
Outgoing packets dropped.
Total number of outgoing packets that were dropped.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
io.edgehog.devicemanager.apps.stats.ContainerProcesses v0.1
PidsStats contains Linux-specific stats of a container's process-IDs (PIDs).
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/%{container_id}/currentwithlongintegertype. Current is the number of PIDs in the cgroup./%{container_id}/limitwithlongintegertype. Limit is the hard limit on the number of pids in the cgroup.
/%{container_id}/current
Current is the number of PIDs in the cgroup.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{container_id}/limit
Limit is the hard limit on the number of pids in the cgroup.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and container_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
io.edgehog.devicemanager.apps.stats.VolumeUsage v0.1
Statistics on the volumes
About
This interface is of type datastream and is owned by the device, meaning that it is the device which initiates the data flow.
Thanks to this type of interface, the device can send a mutable, ordered stream of data, with no concept of persistent state or synchronization.
Data gets sent with an object aggregation.
Astarte expects the owner to send all of the interface's mappings at the same time, packed in a single message.
Mappings
The interface has the following mappings:
/%{volume_id}/driverwithstringtype. Name of the volume driver used by the volume./%{volume_id}/mountpointwithstringtype. Mount path of the volume on the host./%{volume_id}/createdAtwithdatetimetype. Date/Time the volume was created./%{volume_id}/usageDataSizewithlongintegertype. Amount of disk space used by the volume (in bytes)./%{volume_id}/usageDataRefCountwithlongintegertype. The number of containers referencing this volume.
/%{volume_id}/driver
Name of the volume driver used by the volume.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and volume_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{volume_id}/mountpoint
Mount path of the volume on the host.
This endpoint accepts values of type string: an UTF-8 string, at most 65536 bytes long.
The endpoint is parametric and volume_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{volume_id}/createdAt
Date/Time the volume was created.
This endpoint accepts values of type datetime: a UTC timestamp, internally represented as milliseconds since 1st Jan 1970 using a signed 64 bits integer. (datetime is represented as an ISO 8601 string by default in JSON based APIs.)
The endpoint is parametric and volume_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{volume_id}/usageDataSize
Amount of disk space used by the volume (in bytes).
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and volume_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
/%{volume_id}/usageDataRefCount
The number of containers referencing this volume.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and volume_id can be replaced with any valid string to send data on specialized paths.
The endpoint has a specific configuration for how data is stored, transferred and indexed. Astarte expects a valid timestamp to be attached each time data is produced. Data is considered delivered when the transport successfully sends the data regardless of the outcome. Data is discarded if the transport is temporarily uncapable of delivering it.
io.edgehog.devicemanager.config.Telemetry v0.1
About
This interface is of type properties and is owned by the server, meaning that it is the server which initiates the data flow.
Thanks to this type of interface, the server can set a persistent, stateful, synchronized state with no concept of history or timestamping.
Mappings
The interface has the following mappings:
/request/%{interface_name}/enablewithbooleantype. Enable/Disable telemetry update. Unset returns to the previous state configured in the device./request/%{interface_name}/periodSecondswithlongintegertype. Set interval of period seconds between the end of the previous update and the start of the next one. Unset returns to the previous state configured in the device.
/request/%{interface_name}/enable
Enable/Disable telemetry update. Unset returns to the previous state configured in the device.
This endpoint accepts values of type boolean: either true or false, adhering to JSON boolean type.
The endpoint is parametric and interface_name can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.
/request/%{interface_name}/periodSeconds
Set interval of period seconds between the end of the previous update and the start of the next one. Unset returns to the previous state configured in the device.
This endpoint accepts values of type longinteger: a signed 64 bit integer (please note that longinteger is represented as a string by default in JSON-based APIs.).
The endpoint is parametric and interface_name can be replaced with any valid string to send data on specialized paths.
The value of the property can be unset.