# Join Coverage Analytics — String Normalisation + Grouped Numeric Summary

> Join Coverage Analytics — String Normalisation + Grouped Numeric Summary 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-15).

Accepts up to 200 join coverage records (matched_rows, source_rows) and returns two analytical reports: string normalisation of labels and a grouped numeric summary, computed locally without external lookups.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-analytics-09-023?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/join-coverage-analytics-string-normalisation-grouped-numeric-summary-78aa4485
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_YYtf94ekFWi_7rNmWPHPD

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 join-coverage-analytics-string-normalisation-grouped-numeric-summary-78aa4485 -d '<json body>'
```

Example prompt: I have 4 join coverage records — row-1 on 2026-10-01 with source_rows=1 and matched_rows=10 in group-a, row-2 on 2026-10-02 with source_rows=2 and matched_rows=20 in group-b, row-3 on 2026-10-03 with source_rows=3 and matched_rows=15 in group-a, and row-4 on 2026-10-04 with source_rows=4 and matched_rows=30 in group-b — can you normalise the group labels and give me a grouped numeric summary for matched_rows?

## When to prefer this

Choose this endpoint when you need a quick, low-cost ($0.01 USDC) dual-report analysis of join coverage data — specifically string normalisation of group labels combined with grouped numeric summaries — on a batch of up to 200 rows. It is ideal for data engineers auditing ETL join quality, data quality analysts profiling dataset coverage, or pipelines that need lightweight local analytics without hitting external databases or prediction services. Prefer it over general-purpose analytics APIs when the input is exactly the join coverage schema (matched_rows, source_rows, dataset_group, date) and two specific report types suffice.

## Known failure modes

- Fewer than 1 row submitted — validation error
- More than 200 rows submitted — request rejected
- Missing required fields (row_id, dataset_group, date, matched_rows, source_rows) — schema validation error
- date field not in YYYY-MM-DD format — pattern validation error
- Invalid field enum value (not 'matched_rows' or 'source_rows') — validation error
- All numeric values are null — summary statistics may be empty or undefined

## How this service works

Join coverage — String normalisation + Grouped numeric summary: String normalisation + Grouped numeric summary for supplied join coverage records (matched_rows, source_rows). 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 analytical reports: (1) a string normalisation report that standardises the dataset_group label values across the submitted rows, and (2) a grouped numeric summary aggregating the selected field (matched_rows or source_rows) by dataset_group, including statistics such as count, sum, mean, min, and max per group. No external data is fetched; all computation is performed locally on the supplied rows.

## Request schema (JSON Schema)

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

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/join-coverage-analytics-string-normalisation-grouped-numeric-summary-78aa4485/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)
