# Tree Canopy Observations — Record Quality Audit + Numeric Interval Filter

> Tree Canopy Observations — Record Quality Audit + Numeric Interval Filter is a paid API for AI agents from market.datapackvibe.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-25).

Audits data quality and filters by numeric interval for up to 200 tree canopy observation records (canopy_m2, plot_m2), returning two independent analytical reports.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-weather-17-008?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-25
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/tree-canopy-observations-record-quality-audit-numeric-interval-filter-8eb57731
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_qwHBDadq1g6Q3rZwbPjpo

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 tree-canopy-observations-record-quality-audit-numeric-interval-filter-8eb57731 -d '<json body>'
```

Example prompt: Can you audit the quality of my tree canopy observation records and filter the canopy_m2 field to only keep values between 0 and 500? Here are my rows: row-1 (group-a, 2024-06-01, canopy_m2=450, plot_m2=1200), row-2 (group-b, 2024-06-02, canopy_m2=-10, plot_m2=800), row-3 (group-a, 2024-06-03, canopy_m2=620, plot_m2=950).

## When to prefer this

Choose this endpoint when you have up to 200 tree canopy or plot observation records that need both a data quality audit and a numeric range filter in a single call, without requiring any live data lookup, external database access, or predictive modeling. It is especially useful for environmental researchers or urban forestry teams who want to validate field-collected canopy data before downstream analysis or reporting.

## Known failure modes

- More than 200 rows submitted — exceeds maxItems limit
- Missing required row fields (row_id, date, canopy_m2, plot_m2, station_group) — validation error
- Invalid date format (must match YYYY-MM-DD pattern) — schema rejection
- Minimum value greater than maximum value — logically invalid interval
- Non-numeric values for canopy_m2 or plot_m2 where nulls are not intended — type error
- Payment not included or insufficient — x402 payment required error

## How this service works

Tree canopy observations — Record quality audit + Numeric interval filter: Record quality audit + Numeric interval filter for supplied tree canopy observations records (canopy_m2, plot_m2). Up to 200 rows; 2 independent reports using shared local analytical engines. No live lookup, prediction, professional assessment or external action. 0.01 USDC includes 2 supplied-data reports for up to 200 rows.

## Output

Returns two independent reports: (1) a record quality audit identifying missing, malformed, or suspect entries across the supplied rows, and (2) a numeric interval filter report listing which records fall within or outside the specified minimum/maximum range for the chosen field (canopy_m2 or plot_m2). No external data is fetched; all analysis is performed on the supplied rows only.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "rows": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "row_id",
     "station_group",
     "date",
     "canopy_m2",
     "plot_m2"
    ],
    "properties": {
     "date": {
      "type": "string",
      "default": "",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "maxLength": 10
     },
     "row_id": {
      "type": "string",
      "default": "",
      "maxLength": 80,
      "minLength": 1
     },
     "plot_m2": {
      "type": [
       "number",
       "null"
      ],
      "maximum": 1000000000000,
      "minimum": -1000000000000
     },
     "canopy_m2": {
      "type": [
       "number",
       "null"
      ],
      "maximum": 1000000000000,
      "minimum": -1000000000000
     },
     "station_group": {
      "type": "string",
      "default": "",
      "maxLength": 80
     }
    },
    "additionalProperties": false
   },
   "default": [
    {
     "date": "2026-10-01",
     "row_id": "row-1",
     "plot_m2": 1,
     "canopy_m2": 10,
     "station_group": "group-a"
    },
    {
     "date": "2026-10-02",
     "row_id": "row-2",
     "plot_m2": 2,
     "canopy_m2": 20,
     "station_group": "group-b"
    },
    {
     "date": "2026-10-03",
     "row_id": "row-3",
     "plot_m2": 3,
     "canopy_m2": 15,
     "station_group": "group-a"
    },
    {
     "date": "2026-10-04",
     "row_id": "row-4",
     "plot_m2": 4,
     "canopy_m2": 30,
     "station_group": "group-b"
    }
   ],
   "maxItems": 200,
   "minItems": 1
  },
  "field": {
   "enum": [
    "canopy_m2",
    "plot_m2"
   ],
   "type": "string",
   "default": "canopy_m2"
  },
  "maximum": {
   "type": "number",
   "default": 100,
   "maximum": 1000000000000,
   "minimum": -1000000000000
  },
  "minimum": {
   "type": "number",
   "default": 0,
   "maximum": 1000000000000,
   "minimum": -1000000000000
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/tree-canopy-observations-record-quality-audit-numeric-interval-filter-8eb57731/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from market.datapackvibe.com](https://www.zero.xyz/host/market.datapackvibe.com/llms.txt)
