# Aggregation Checks — String Normalisation + Numeric Row Ordering

> Aggregation Checks — String Normalisation + Numeric Row Ordering 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-24).

Normalises string fields and orders rows numerically for up to 200 supplied aggregation check records containing source_sum and aggregate_sum values, producing 2 independent analytical reports.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-analytics-17-025?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-24
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/aggregation-checks-string-normalisation-numeric-row-ordering-afa49110
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_eWQ7pw8XWPOp87VJXMGf4

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 aggregation-checks-string-normalisation-numeric-row-ordering-afa49110 -d '<json body>'
```

Example prompt: Run string normalisation and numeric row ordering on my aggregation check data — I have 4 rows with dataset groups 'group-a' and 'group-b', dates from 2026-10-01 to 2026-10-04, source_sums of 10, 20, 15, 30 and aggregate_sums of 1, 2, 3, 4. Use source_sum as the field and give me both reports.

## When to prefer this

Choose this endpoint when you need lightweight, local string normalisation and numeric row ordering on batch aggregation check data (up to 200 rows) without any external lookups or live data — particularly for data reconciliation workflows comparing source_sum against aggregate_sum across dataset groups. It covers two analytical angles in a single $0.01 call, making it cost-efficient for routine data quality checks.

## Known failure modes

- More than 200 rows submitted — request rejected or truncated
- Missing required fields (row_id, dataset_group, date, source_sum, aggregate_sum) — validation error
- Date field not matching YYYY-MM-DD pattern — schema validation failure
- Numeric values outside ±1,000,000,000,000 range — schema rejection
- Invalid field enum value (not 'source_sum' or 'aggregate_sum') — bad request
- Payment of 0.01 USDC not received — 402 Payment Required response

## How this service works

Aggregation checks — String normalisation + Numeric row ordering: String normalisation + Numeric row ordering for supplied aggregation checks records (source_sum, aggregate_sum). 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 independent analytical reports covering (1) string normalisation of the supplied row fields and (2) numeric ordering of the rows, applied to up to 200 input records each containing row_id, dataset_group, date, source_sum, and aggregate_sum.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "rows": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "row_id",
     "dataset_group",
     "date",
     "source_sum",
     "aggregate_sum"
    ],
    "properties": {
     "date": {
      "type": "string",
      "default": "",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "maxLength": 10
     },
     "row_id": {
      "type": "string",
      "default": "",
      "maxLength": 80,
      "minLength": 1
     },
     "source_sum": {
      "type": [
       "number",
       "null"
      ],
      "maximum": 1000000000000,
      "minimum": -1000000000000
     },
     "aggregate_sum": {
      "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_sum": 10,
     "aggregate_sum": 1,
     "dataset_group": "group-a"
    },
    {
     "date": "2026-10-02",
     "row_id": "row-2",
     "source_sum": 20,
     "aggregate_sum": 2,
     "dataset_group": "group-b"
    },
    {
     "date": "2026-10-03",
     "row_id": "row-3",
     "source_sum": 15,
     "aggregate_sum": 3,
     "dataset_group": "group-a"
    },
    {
     "date": "2026-10-04",
     "row_id": "row-4",
     "source_sum": 30,
     "aggregate_sum": 4,
     "dataset_group": "group-b"
    }
   ],
   "maxItems": 200,
   "minItems": 1
  },
  "field": {
   "enum": [
    "source_sum",
    "aggregate_sum"
   ],
   "type": "string",
   "default": "source_sum"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/aggregation-checks-string-normalisation-numeric-row-ordering-afa49110/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)
