# Reservoir Observations — String Normalisation + Numeric Distribution

> Reservoir Observations — String Normalisation + Numeric Distribution 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-24).

Runs string normalisation and numeric distribution analysis on up to 200 reservoir observation records (stored_m3, capacity_m3), returning two independent analytical reports.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-weather-19-022?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-24
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/reservoir-observations-string-normalisation-numeric-distribution-60f325f9
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_88hbWkFXgCElU-llePsAa

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 reservoir-observations-string-normalisation-numeric-distribution-60f325f9 -d '<json body>'
```

Example prompt: Can you run string normalisation and numeric distribution reports on my reservoir observation data? I have up to 50 rows with station_group names, dates, stored_m3, and capacity_m3 values — I'd like to analyse the distribution of stored_m3 across all stations.

## When to prefer this

Choose this endpoint when you need both string normalisation of categorical station labels and a numeric distribution profile of reservoir volume data in a single call, without requiring any live data lookup, external API, or predictive modelling. Ideal for preprocessing or auditing batches of up to 200 reservoir observation records before downstream analysis or reporting.

## Known failure modes

- More than 200 rows submitted — request will be rejected or truncated
- Missing required fields (row_id, station_group, date, stored_m3, capacity_m3) cause validation errors
- Invalid date format (not YYYY-MM-DD) triggers schema validation failure
- Numeric values outside allowed range (±1,000,000,000,000) rejected
- Empty rows array (minItems: 1 not met) causes error
- Invalid field enum value (not stored_m3 or capacity_m3) rejected

## How this service works

Reservoir observations — String normalisation + Numeric distribution: String normalisation + Numeric distribution for supplied reservoir observations records (stored_m3, capacity_m3). 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 analytical reports: (1) a string normalisation report covering the station_group text field, and (2) a numeric distribution report for the selected numeric field (stored_m3 or capacity_m3), covering statistical spread, counts, and distribution characteristics across up to 200 input rows.

## Request schema (JSON Schema)

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

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/reservoir-observations-string-normalisation-numeric-distribution-60f325f9/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)
