# Data Catalog Coverage — String Normalisation + Adjacent Row Changes

> Data Catalog Coverage — String Normalisation + Adjacent Row Changes 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-23).

Runs two local analytical reports on data catalog coverage records: string normalisation and adjacent row change detection for up to 200 rows of documented_fields or total_fields data.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-analytics-21-029?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-23
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/data-catalog-coverage-string-normalisation-adjacent-row-changes-78da4d25
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_079xnRH42R-o97oxjp99t

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 data-catalog-coverage-string-normalisation-adjacent-row-changes-78da4d25 -d '<json body>'
```

Example prompt: Can you run string normalisation and adjacent row change detection on these 4 catalog coverage records — row-1 through row-4 dated 2026-10-01 to 2026-10-04, groups group-a and group-b, and analyse the documented_fields column?

## When to prefer this

Choose this endpoint when you need lightweight, local string normalisation and adjacent-row change detection on small-to-medium data catalog coverage datasets (up to 200 rows) without any external data lookup, prediction, or live enrichment. It is ideal for data governance workflows where you want to audit catalog completeness metrics and clean string inconsistencies in a single low-cost call.

## Known failure modes

- Fewer than 1 row supplied — request rejected (minItems: 1)
- More than 200 rows supplied — request rejected (maxItems: 200)
- Missing required fields (row_id, dataset_group, date, documented_fields, total_fields) — validation error
- Invalid date format (must match YYYY-MM-DD pattern) — schema validation failure
- Numeric field values outside allowed range (-1e12 to 1e12) — validation error
- Invalid field enum value (must be documented_fields or total_fields) — rejected

## How this service works

Data catalog coverage — String normalisation + Adjacent row changes: String normalisation + Adjacent row changes for supplied data catalog coverage records (documented_fields, total_fields). 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

Two analytical reports: (1) a string normalisation output showing standardised/cleaned string values for the selected field across supplied rows, and (2) an adjacent row change report showing differences between consecutive rows for the chosen numeric field (documented_fields or total_fields), all computed locally without external lookups.

## Request schema (JSON Schema)

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

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/data-catalog-coverage-string-normalisation-adjacent-row-changes-78da4d25/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)
