✨ Improvements
Webhook Latest Event Object
The "content"
field has been removed from the "mostRecentEvents"
object returned from requests to webhooks-related endpoints. We identified that the field did not offer any valuable information, while it was also causing unnecessary data transfer. The latest event object now only includes the following fields:
{
"hookId": "string",
"correlationId": "string",
"url": "string",
"createdAt": "string",
"completedAt": "string",
"updatedAt": "string",
"statusCode": 0,
}
✨ Improvements
Cubic feet per minute (CFM) is now supported for segment samples history - ventilation endpoint.
Conversion is done by setting lengthUnit
query parameter to ft
when calling the endpoint.
🐛 Fixes
Battery History Before Provided Time Range
When using the GET /devices/{serialNumber}/battery
endpoint with both query parameters start
and end
provided, the response could include battery history before the provided time range. This has now been fixed.
The issue was present only when using the start
and end
parameters together and with relatively low-time ranges (e.g., 10 hours). It was a fallback mechanism to ensure that the response always includes the latest battery status. The fallback mechanism has now been removed. You can increase the time range or use the latest battery endpoint to fetch the latest battery status.
💥 Breaking change
As a part of improving and introducing a major update on our Webhook service, we've updated the payload format for hub-meta-data-feed events. The main change is that the value of the "data" key is now an array instead of an object. The reason for this change is to;
- Improve consistency between the event types, as all other events follow this format
- Allow more data to be sent in one Webhook, to reduce the amount of events you receive.
Here, is the updated the payload posted from the new webhook system.
{
"id": "cca4e4c8-da9d-4e82-98e0-d997adff5f8a",
"type": "airthings-webhook-cloudevent-hub-meta-data-feed",
"source": "https://dashboard.airthings.com/integrations/webhooks/3ae27258-314e-41ae-98ca-ae1702eea68d?version=v2",
"dataContentType": "application/json",
"labels": {},
"data": [
{
"serialNumber": "2820006349",
"recorded": "2023-07-05T13:09:43",
"lastSeenDevices": [
"2969013284",
"3110004513",
"2920016285",
"2930117404"
],
"devices": {
"2930117404": {
"lastSeen": 1688562583,
"rssi": -46,
"type": "wavePlus"
},
"3110004513": {
"lastSeen": 1688562583,
"rssi": -51,
"type": "spaceCo2Mini"
},
"2969013284": {
"lastSeen": 1688562583,
"rssi": -81,
"type": "viewPlusBusiness"
},
"2920016285": {
"lastSeen": 1688562583,
"rssi": -76,
"type": "waveMini"
}
},
"connectionType": "cellular"
}
],
"time": "2023-07-05T13:09:43.673535",
"specVersion": "0.2"
}
📝 Documentation
We have updated the documentation of Webhook Event Types with the latest payload change (see above) regarding Hub Metadata feed.
✨ Improvements
We migrated the Airly feed to the new webhook system. Besides existing measurement system changes, the payload looks the same as before:
{
"id": "00000000-0000-0000-0000-0000000000",
"type": "airthings-webhook-cloudevent-airly-sample-feed",
"source": "https://dashboard.airthings.com/integrations/webhooks/00000000-0000-0000-0000-0000000000?version=v2",
"dataContentType": "application/json",
"labels": {},
"data": [
{
"serialNumber": "ARL0000000",
"recorded": "2023-11-30T10:00:00Z",
"outdoorHumidity": 73,
"outdoorPm10": 28,
"outdoorPm1": 13,
"outdoorPm25": 22,
"outdoorPressure": 1002.8,
"outdoorTemp": -2.5,
"ratings": {
"outdoorPm25": "FAIR",
"outdoorPm1": "FAIR",
"outdoorPm10": "FAIR",
"outdoorPressure": "GOOD"
},
"sensorUnits": {
"outdoorPm25": "mgpc",
"outdoorPm1": "mgpc",
"outdoorPm10": "mgpc",
"outdoorHumidity": "pct",
"outdoorTemp": "c",
"outdoorPressure": "hpa"
}
}
],
"time": "2023-11-30T10:00:00.0Z",
"specVersion": "0.2"
}
🐛 Fixes
- Airly sample feed now respects unit preferences in the webhook settings.
📝 Documentation
We have updated the documentation of Webhook Event Types with the latest payload
change (see above) regarding mold feed.
🚀 Feature release
We added "ventilation rate" samples to the latest-samples endpoints:
... and new endpoints for historical samples:
Now, there are two new properties in the response:
airflow
- cubic meters per hour (m³/h)airExchangeRate
- air changes per hour (ACH)
The availability of the virtual sensors will depend on your device type, and if the feature is enabled for the device in
the Dashboard. airflow
is only available for devices where room size information has been entered.
✨ Improvements
We migrated the mold feed to the new webhook system. Besides existing measurement system changes, the payload looks the same as before:
{
"id": "00000000-0000-0000-0000-0000000000",
"type": "airthings-webhook-cloudevent-mold-sample-feed",
"source": "https://dashboard.airthings.com/integrations/webhooks/00000000-0000-0000-0000-0000000000?version=v2",
"dataContentType": "application/json",
"labels": {},
"data": [
{
"serialNumber": "0000000000",
"recorded": "2023-10-02T20:00:00Z",
"mold": 1,
"ratings": {
"mold": "GOOD"
},
"sensorUnits": {
"mold": "riskIndex"
}
}
],
"time": "2023-10-02T20:00:00.0Z",
"specVersion": "0.2"
}
📝 Documentation
We have updated the documentation of Webhook Event Types with the latest payload change (see above) regarding mold feed.