# Forecast Verification Inputs — String Normalisation + Numeric Interval Filter

> Forecast Verification Inputs — String Normalisation + Numeric Interval Filter 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).

Normalises string fields and filters rows by numeric interval for forecast verification data (forecast_value, observed_value) across up to 200 rows, returning two analytical reports.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-weather-24-026?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/forecast-verification-inputs-string-normalisation-numeric-interval-5dee20bc
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_vyTxcua9Pe7-oIres8K_Q

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 forecast-verification-inputs-string-normalisation-numeric-interval-5dee20bc -d '<json body>'
```

Example prompt: Can you normalise the station group strings and filter by forecast_value between 0 and 100 for these 4 rows of forecast verification data: row-1/group-a/2026-10-01 forecast=10 observed=1, row-2/group-b/2026-10-02 forecast=20 observed=2, row-3/group-a/2026-10-03 forecast=15 observed=3, row-4/group-b/2026-10-04 forecast=30 observed=4? I need both analytical reports.

## When to prefer this

Choose this endpoint when you have tabular forecast verification data (paired forecast and observed values with station and date metadata) and need both string normalisation and numeric interval filtering in a single cheap call ($0.01 USDC for two reports, up to 200 rows). Prefer it over general-purpose data cleaning tools when your data conforms to the forecast_value/observed_value schema and you want local analytical processing with no external API dependencies or live lookups.

## Known failure modes

- Row count exceeds 200 — request rejected
- Invalid date format not matching YYYY-MM-DD pattern
- minimum greater than maximum — interval filter returns empty set
- row_id missing or empty — validation error
- field enum value not 'forecast_value' or 'observed_value' — schema rejection
- Numeric values outside ±1,000,000,000,000 bounds — rejected

## How this service works

Forecast verification inputs — String normalisation + Numeric interval filter: String normalisation + Numeric interval filter for supplied forecast verification inputs records (forecast_value, observed_value). 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 covering: (1) normalised string output for the station_group and related string fields, and (2) rows filtered to the specified numeric interval on the chosen field (forecast_value or observed_value), all computed locally with no external lookups.

## Request schema (JSON Schema)

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

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/forecast-verification-inputs-string-normalisation-numeric-interval-5dee20bc/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)
