# Sampling Observations — String Normalisation + Exact Row Deduplication

> Sampling 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-15).

Normalises strings and deduplicates exact rows in supplied sampling observation records (sample_value, sample_weight) for up to 200 rows, producing 2 analytical reports.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-analytics-15-020?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/sampling-observations-string-normalisation-exact-row-deduplication-c3c82d71
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_XJ8fmGBzGJvHKy8wTft7c

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 sampling-observations-string-normalisation-exact-row-deduplication-c3c82d71 -d '<json body>'
```

Example prompt: Can you clean up my sampling observations dataset — I have up to 50 rows with row_id, dataset_group, date, sample_value, and sample_weight fields — and run string normalisation plus exact row deduplication to get 2 clean reports back?

## When to prefer this

Choose this endpoint when you have sampling observation records (with sample_value and sample_weight fields) that need string field normalisation and exact duplicate row detection in a single call. It is best suited for pre-analysis data cleaning pipelines where you want two focused reports (normalisation + deduplication) without any external API calls, predictions, or live lookups. Prefer this over general-purpose ETL tools when you need a lightweight, pay-per-use ($0.01 USDC) analytical pass on up to 200 rows of structured sampling data.

## Known failure modes

- Input array exceeds 200 rows — request rejected
- Missing required fields (row_id, dataset_group, date, sample_value, sample_weight) — validation error
- Invalid date format (must match YYYY-MM-DD pattern) — schema validation failure
- row_id empty or exceeds 80 characters — rejected
- sample_value or sample_weight outside allowed range (-1e12 to 1e12) — rejected
- Empty rows array (minItems: 1 not met) — error

## How this service works

Sampling observations — String normalisation + Exact row deduplication: String normalisation + Exact row deduplication for supplied sampling observations records (sample_value, sample_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

Returns 2 analytical reports covering: (1) string normalisation findings for text fields in the supplied rows, and (2) exact row deduplication results identifying and flagging fully duplicate records across up to 200 input rows. No external lookups or predictions are made — all analysis is performed locally on the supplied data.

## Request schema (JSON Schema)

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

## More

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