# Time Series Completeness — String Normalisation + Exact Row Deduplication

> Time Series Completeness — 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-28).

Normalises strings and deduplicates exact rows in time series completeness records (observed_points vs expected_points) for up to 200 rows, producing 2 independent analytical reports.

## Facts

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

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 time-series-completeness-string-normalisation-exact-row-deduplication-4a41db08 -d '<json body>'
```

Example prompt: Can you normalise the strings and remove any exact duplicate rows from my time series completeness records? I have 4 rows across two dataset groups — group-a and group-b — with dates from 2026-10-01 to 2026-10-04, and observed/expected point counts for each day.

## When to prefer this

Choose this endpoint when you need to clean and deduplicate time series completeness records (observed vs expected point counts) locally without any external API calls, live data lookups, or predictions. It is ideal for pre-processing small-to-medium batches (up to 200 rows) of completeness data before ingestion into dashboards, QA pipelines, or reporting systems. Prefer this over general-purpose deduplication tools when your data specifically follows the date/dataset_group/observed_points/expected_points schema and you need both string normalisation and exact deduplication in a single low-cost call.

## Known failure modes

- More than 200 rows submitted — request exceeds the maxItems limit and will be rejected
- Missing required fields (row_id, date, observed_points, expected_points) cause row-level validation errors
- Malformed date strings not matching YYYY-MM-DD pattern will fail schema validation
- Null values in observed_points or expected_points may affect deduplication logic depending on null handling
- Empty rows array (minItems: 1 not met) will be rejected

## How this service works

Time series completeness — String normalisation + Exact row deduplication: String normalisation + Exact row deduplication for supplied time series completeness records (observed_points, expected_points). 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 independent analytical reports covering the input rows: one addressing string normalisation (standardising casing, whitespace, and formatting in string fields like dataset_group and row_id), and one performing exact row deduplication (identifying and removing rows where all fields are identical). No live lookups, predictions, or external actions are performed — all processing is local and analytical.

## Request schema (JSON Schema)

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

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/time-series-completeness-string-normalisation-exact-row-deduplication-4a41db08/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)
