# Locus Air Quality History

> Locus Air Quality History is a paid API for AI agents from api.locus.report, paid per call via x402, $0.05/call, status unknown (last checked 2026-09-14).

Retrieves historical air quality records for a geographic area around a property address or coordinates over a specified number of years.

## Facts

- Endpoint: POST https://api.locus.report/api/locus-air-quality-history
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/locus-air-quality-history-0e32315b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_uSoCqhIbK4OxcodMWDI_c

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 locus-air-quality-history-0e32315b -d '<json body>'
```

Example prompt: Pull the air quality history for 742 Evergreen Terrace, Springfield within a 20km radius going back 5 years — I want to know if there are any environmental risk signals before we make an offer on the property.

## When to prefer this

Use this endpoint when you need historical air quality data tied to a specific property address or geographic coordinate, particularly for real estate due diligence, environmental risk assessment, or property valuation analysis. Prefer this over general weather or AQI APIs when the use case is property-centric and requires multi-year historical records with local parcel context from Locus.

## Known failure modes

- Address not found or too vague — returns empty records with caveats
- Radius or yearsBack out of allowed range — validation error
- No historical data available for the specified region — empty records array
- Invalid coordinates (out of bounds) — request rejected
- Payment failure via x402 protocol — 402 response before data is returned

## How this service works

Historical location-specific air-quality evidence: nearby EPA AQS annual monitor summaries, exact-point NOAA HMS satellite smoke days, and clearly separated CDC county-level modeled PM2.5 only where a requested year lacks nearby AQS PM2.5. This is not wildfire hazard, source-fire attribution, medical advice, or a safe/unsafe property score. Missing mirror years are disclosed and never treated as clean air. npx @velinussage/locus-agent-skill add.

## Output

Returns a JSON object containing a unique scan ID, a list of historical air quality records for the specified area and time range, a timestamp indicating when the report was generated, and any relevant caveats or data limitations about the records returned.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "address": {
   "type": "string",
   "maxLength": 200,
   "minLength": 5
  },
  "latitude": {
   "type": "number",
   "maximum": 90,
   "minimum": -90
  },
  "radiusKm": {
   "type": "integer",
   "maximum": 150,
   "minimum": 5
  },
  "longitude": {
   "type": "number",
   "maximum": 180,
   "minimum": -180
  },
  "yearsBack": {
   "type": "integer",
   "maximum": 10,
   "minimum": 1
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "id": "locus_example",
  "caveats": [
   "Example artifact; not live data."
  ],
  "records": [],
  "generatedAt": "2026-01-01T00:00:00.000Z"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/locus-air-quality-history-0e32315b/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.locus.report](https://www.zero.xyz/host/api.locus.report/llms.txt)
