New adaptor: AirQo for air quality monitoring data

:rocket: We’re excited to announce @openfn/language-airqo is now available!

:raising_hands: A huge thank you to @Dhieu for building this adaptor and contributing it to the community!

The AirQo adaptor connects OpenFn workflows to the AirQo API, which provides air quality data (PM2.5, PM10 and related pollutant readings) from low-cost sensor networks across African cities. You can now pull that data into your health, environment or reporting systems automatically.

Key features

  • getRecentMeasurements(entityType, entityId) fetches the latest readings for a site, device, grid or cohort
  • getHistoricalMeasurements(entityType, entityId, params) fetches past readings, optionally filtered by date range
  • http.get(), http.post() and http.request() give you authenticated access to any AirQo endpoint the helper functions don’t cover

Getting started

Create an AirQo credential with your API token. If your AirQo account has additional security controls enabled, add your clientSecret too (it’s sent as an X-Client-Secret header).

// Latest readings for a site
getRecentMeasurements('site', 'your-site-id');

// A week of historical readings for a device
getHistoricalMeasurements('device', 'your-device-id', {
  startTime: '2026-09-01T00:00:00Z',
  endTime: '2026-09-07T00:00:00Z',
});

Use cases

  • Public health surveillance: pull daily PM2.5 averages into DHIS2 alongside respiratory case data to spot correlations across districts
  • Community alerts: trigger a WhatsApp or SMS notification when readings at a site cross a safe threshold

:books: Full function reference in the AirQo adaptor docs

Have you worked with environmental or sensor data in your workflows? Share your experience or questions below.

Thank you so much for the support and the openfn community.
I’m excited to contribute to the OpenFn community and look forward to building more useful tools together.