# Price Basket Observations — String Normalisation + Duplicate Key Report

> Price Basket Observations — String Normalisation + Duplicate Key Report 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 string normalisation and duplicate key detection reports on up to 200 price basket observation records containing item_price and quantity_weight fields.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-economics-07-021?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-duplicate-key-report-3bf6c38f
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_OPSVkgBXx_oSDVZPeSlbv

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-duplicate-key-report-3bf6c38f -d '<json body>'
```

Example prompt: Can you check my price basket observations for string normalisation issues and duplicate keys? I have 4 rows: row-1 in group-a on 2026-10-01 with item_price 10 and quantity_weight 1, row-2 in group-b on 2026-10-02 with item_price 20 and quantity_weight 2, row-3 in group-a on 2026-10-03 with item_price 15 and quantity_weight 3, and row-4 in group-b on 2026-10-04 with item_price 30 and quantity_weight 4.

## When to prefer this

Choose this endpoint when you need to simultaneously audit string normalisation quality and detect duplicate keys in price basket observation data (item_price, quantity_weight) in a single low-cost call. Ideal for pre-import validation, pipeline data quality gates, or economics research data preparation when working with up to 200 rows. Not suitable for live price lookups, forecasting, or datasets larger than 200 rows.

## Known failure modes

- Exceeding 200 rows returns a validation error
- Missing required fields (row_id, region, date, item_price, quantity_weight) cause rejection
- Invalid date format (non YYYY-MM-DD) fails schema validation
- item_price or quantity_weight values outside ±1,000,000,000,000 are rejected
- Empty rows array (minItems:1 not met) returns an error

## How this service works

Price basket observations — String normalisation + Duplicate key report: String normalisation + Duplicate key report 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 reports: (1) a string normalisation report identifying string formatting inconsistencies across the supplied fields, and (2) a duplicate key report flagging rows with repeated or conflicting key combinations — both applied to the submitted price basket observation records (up to 200 rows).

## 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-duplicate-key-report-3bf6c38f/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)
