# Exchange Quote Observations — Duplicate Key Report + Numeric Row Ordering

> Exchange Quote Observations — Duplicate Key Report + 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-23).

Analyzes up to 200 exchange quote rows (bid_price/ask_price) to produce a duplicate key report and numeric row ordering, using local analytical engines with no external lookups.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-finance-04-058?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/exchange-quote-observations-duplicate-key-report-numeric-row-ordering-5039f08b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_r-HM1AxRfiXck5oGML8kA

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 exchange-quote-observations-duplicate-key-report-numeric-row-ordering-5039f08b -d '<json body>'
```

Example prompt: Check my exchange quote observations for duplicate keys and give me a numeric row ordering for the bid_price field — here are my rows: [{"row_id":"q-1","instrument_group":"FX","date":"2024-01-15","bid_price":1.082,"ask_price":1.084},{"row_id":"q-2","instrument_group":"FX","date":"2024-01-16","bid_price":1.079,"ask_price":1.081}].

## When to prefer this

Choose this endpoint when you need fast, local duplicate-key detection and numeric ordering of exchange quote observation datasets of up to 200 rows, with no external data dependencies. It bundles two analytical reports in a single $0.01 USDC call, making it cost-efficient for data quality checks on bid/ask price records before ingestion or downstream processing.

## Known failure modes

- Exceeding 200 rows returns a validation error
- Missing required fields (row_id, instrument_group, date, bid_price, ask_price) causes rejection
- Invalid date format (non-YYYY-MM-DD) fails schema validation
- Price values outside ±1,000,000,000,000 range rejected
- Empty rows array not accepted (minimum 1 item required)
- Invalid field enum value (must be bid_price or ask_price)

## How this service works

Exchange quote observations — Duplicate key report + Numeric row ordering: Duplicate key report + Numeric row ordering for supplied exchange quote observations records (bid_price, ask_price). 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 duplicate key report identifying rows with repeated key values within the supplied exchange quote observations, and (2) a numeric row ordering ranking rows by the selected field (bid_price or ask_price). Both reports are computed locally from the supplied data with no external lookups.

## Request schema (JSON Schema)

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

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/exchange-quote-observations-duplicate-key-report-numeric-row-ordering-5039f08b/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)
