# Price Basket Observations — String Normalisation + Exact Row Deduplication

> Price Basket Observations — String Normalisation + Exact Row Deduplication 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).

Normalises strings and removes exact duplicate rows from price basket observation records containing item_price and quantity_weight fields, returning two analytical reports for up to 200 rows.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-economics-07-020?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/price-basket-observations-string-normalisation-exact-row-deduplication-3ad66f46
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_9t_a5pEOAXam9j5d9NJg2

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 price-basket-observations-string-normalisation-exact-row-deduplication-3ad66f46 -d '<json body>'
```

Example prompt: I have up to 200 rows of price basket observations with item_price and quantity_weight values — can you run string normalisation and exact row deduplication on them and give me the two analytical reports?

## When to prefer this

Choose this endpoint when you need lightweight, local-engine data cleaning specifically for price basket observation records with item_price and quantity_weight fields, and you want both string normalisation and exact row deduplication delivered as two reports in a single call for a flat fee of $0.01 USDC. Prefer this over general-purpose data cleaning services when your dataset is ≤200 rows, you do not need live lookups or predictions, and cost predictability matters.

## Known failure modes

- More than 200 rows submitted — request exceeds maxItems limit and will be rejected
- Missing required fields (row_id, region, date, item_price, or quantity_weight) cause row-level validation failure
- Invalid date format (not YYYY-MM-DD pattern) causes schema rejection
- item_price or quantity_weight values outside ±1,000,000,000,000 range cause validation error
- Empty rows array (minItems: 1 not met) causes request rejection
- Payment of 0.01 USDC not attached causes x402 payment-required response

## How this service works

Price basket observations — String normalisation + Exact row deduplication: String normalisation + Exact row deduplication for supplied price basket observations records (item_price, quantity_weight). 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 results showing standardised text fields across region and date columns, and (2) exact row deduplication results identifying and removing fully duplicate records from the supplied price basket observations (item_price, quantity_weight). Reports cover up to 200 input rows. No external lookups or predictions are included.

## Request schema (JSON Schema)

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

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/price-basket-observations-string-normalisation-exact-row-deduplication-3ad66f46/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)
