# Tree Canopy Observations — Duplicate Key Report + Two-Measure Correlation

> Tree Canopy Observations — Duplicate Key Report + Two-Measure Correlation 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-26).

Runs a duplicate key report and a two-measure Pearson/correlation analysis on user-supplied tree canopy observation records (canopy_m2 vs plot_m2) for up to 200 rows.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-weather-17-066?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-26
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/tree-canopy-observations-duplicate-key-report-two-measure-correlation-79bc2e98
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_sJXmKzV-Pg8xCMECK_jVI

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-duplicate-key-report-two-measure-correlation-79bc2e98 -d '<json body>'
```

Example prompt: Check my tree canopy observation records for duplicate row IDs and tell me how correlated the canopy_m2 and plot_m2 measurements are — here are my rows: row-1 (group-a, 2026-10-01, canopy 150, plot 400), row-2 (group-b, 2026-10-02, canopy 200, plot 600), row-3 (group-a, 2026-10-03, canopy 180, plot 500), row-4 (group-b, 2026-10-04, canopy 200, plot 600).

## When to prefer this

Choose this endpoint when you have user-supplied tree canopy observation records (up to 200 rows) and need both a duplicate key audit and a two-measure correlation between canopy_m2 and plot_m2 in a single low-cost call. It is ideal for data quality workflows in forestry, ecology, or environmental monitoring pipelines where no external data lookup or live sensor feed is needed — just fast, local statistical analysis of your own records.

## Known failure modes

- Empty rows array or fewer than 1 row returns a validation error
- More than 200 rows submitted causes a rejection with a max-items error
- Missing required fields (row_id, date, canopy_m2, plot_m2, station_group) cause schema validation failure
- Invalid date format (not YYYY-MM-DD) causes pattern validation error
- Insufficient numeric variance in canopy_m2 or plot_m2 may yield undefined/NaN correlation
- Payment failure or insufficient USDC balance returns a 402 payment required response

## How this service works

Tree canopy observations — Duplicate key report + Two-measure correlation: Duplicate key report + Two-measure correlation 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 analytical reports: (1) a duplicate key report identifying any row_ids that appear more than once in the submitted dataset, and (2) a two-measure correlation report quantifying the statistical relationship between canopy_m2 and plot_m2 values across all submitted rows. No external data is fetched; all computation is performed on the user-supplied rows.

## 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
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/tree-canopy-observations-duplicate-key-report-two-measure-correlation-79bc2e98/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)
