# Backup Exercises — String Normalisation + Exact Row Deduplication

> Backup Exercises — 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-25).

Normalises strings and deduplicates exact rows in backup exercise records (restore_minutes, restored_gb), producing 2 analytical reports for up to 200 rows.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-security-05-020?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-25
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/backup-exercises-string-normalisation-exact-row-deduplication-c773386b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_PNADdV7Wq-suZg8kuewgR

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 backup-exercises-string-normalisation-exact-row-deduplication-c773386b -d '<json body>'
```

Example prompt: Can you clean up my backup exercise records by normalising all the string fields and removing exact duplicate rows? I have about 50 rows with columns for row_id, control_group, date, restore_minutes, and restored_gb — I need 2 reports covering both operations.

## When to prefer this

Choose this endpoint when you have backup exercise or restore performance data (with restore_minutes and restored_gb fields) that needs both string normalisation and exact duplicate row removal in a single cheap call. It is ideal for pre-analysis data cleaning pipelines where you want two standardised reports from one submission of up to 200 rows, without needing live lookups, predictions, or external data enrichment.

## Known failure modes

- More than 200 rows submitted — request rejected due to maxItems limit
- Missing required fields (row_id, control_group, date, restore_minutes, restored_gb) — validation error
- Invalid date format (not YYYY-MM-DD) — schema validation failure
- Numeric values outside allowed range — rejected by schema constraints
- Empty rows array — minItems constraint violation
- Payment not provided or insufficient — x402 payment required error

## How this service works

Backup exercises — String normalisation + Exact row deduplication: String normalisation + Exact row deduplication for supplied backup exercises records (restore_minutes, restored_gb). 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 per call: (1) a string normalisation report showing cleaned/standardised string field values across the submitted rows, and (2) an exact row deduplication report identifying and removing identical rows from the backup exercise dataset. Results cover up to 200 input rows processed locally with no external lookups.

## Request schema (JSON Schema)

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

## More

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