# x402-datashop Air Quality (CAMS/Open-Meteo)

> x402-datashop Air Quality (CAMS/Open-Meteo) is a paid API for AI agents from x402-datashop-production.up.railway.app, paid per call via x402, $0.002/call, status unknown (last checked 2026-09-15).

Returns hourly air quality data (PM2.5, PM10, ozone, NO2, AQI) for any lat/lon coordinate using Copernicus CAMS model via Open-Meteo, for up to 7 forecast days

## Facts

- Endpoint: GET https://x402-datashop-production.up.railway.app/v1/air/quality
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/x402-datashop-air-quality-cams-open-meteo-fdf2f6a7
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_6hwET0OnJ5ms2NWiEysUX

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability x402-datashop-air-quality-cams-open-meteo-fdf2f6a7
```

Example prompt: What will the air quality look like in Paris (48.8566°N, 2.3522°E) over the next 3 days — specifically PM2.5, PM10, and European AQI levels, hour by hour?

## When to prefer this

Choose this endpoint when you need structured, hourly air quality forecasts (PM2.5, PM10, ozone, NO2, AQI) for any global coordinate. It is ideal for environmental monitoring, health advisories, or applications needing European or US AQI values. Prefer it over general weather APIs when air pollution variables are the primary need, and over direct Open-Meteo calls when a pay-per-call x402 model suits your usage pattern.

## Known failure modes

- Missing latitude or longitude returns a 400-level error
- Invalid variable name in 'hourly' parameter causes parsing error
- forecast_days outside 1–7 range rejected
- No data available for extreme or ocean coordinates
- Upstream CAMS/Open-Meteo outage causes 502 or timeout
- Payment not fulfilled results in 402 Payment Required

## How this service works

Hourly air-quality data (PM2.5, PM10, ozone, NO2, European/US AQI) for any lat/lon, from the Copernicus CAMS model served by Open-Meteo (CC-BY 4.0), updated hourly. Query: ?latitude=48.8566&longitude=2.3522&hourly=pm2_5,pm10,european_aqi&forecast_days=2 (1..7 days). Returns parallel time/value arrays with units; cached 1h.

## Output

Parallel time-series arrays of hourly air quality values for the requested variables (e.g. pm2_5, pm10, european_aqi), along with units metadata and WMO codes, covering up to 7 forecast days. Data is sourced from Copernicus CAMS via Open-Meteo and cached up to 1 hour.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "latitude",
      "longitude"
     ],
     "properties": {
      "hourly": {
       "type": "string",
       "default": "pm2_5,pm10,european_aqi",
       "description": "Comma-separated variables among pm2_5, pm10, ozone, nitrogen_dioxide, sulphur_dioxide, carbon_monoxide, european_aqi, us_aqi, uv_index, dust, aerosol_optical_depth"
      },
      "latitude": {
       "type": "number",
       "description": "Latitude WGS84 (-90..90)"
      },
      "longitude": {
       "type": "number",
       "description": "Longitude WGS84 (-180..180)"
      },
      "forecast_days": {
       "type": "integer",
       "default": 2,
       "maximum": 7,
       "minimum": 1
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/x402-datashop-air-quality-cams-open-meteo-fdf2f6a7/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402-datashop-production.up.railway.app](https://www.zero.xyz/host/x402-datashop-production.up.railway.app/llms.txt)
