# UV Layouts — String Normalisation + Numeric Interval Filter

> UV Layouts — 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-21).

Normalises string fields and filters UV layout records (island_count, occupied_percent) by a numeric interval, returning two analytical reports for up to 200 rows.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-creative-06-026?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-21
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/uv-layouts-string-normalisation-numeric-interval-filter-48fd87bc
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_vrw4DH7lZ7buIgzwsAfhk

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 uv-layouts-string-normalisation-numeric-interval-filter-48fd87bc -d '<json body>'
```

Example prompt: I have UV layout records with island_count and occupied_percent values — can you normalise the asset_group strings and filter to only keep rows where island_count is between 5 and 50? Here are my rows: [{"row_id":"r1","asset_group":"  Group A ","date":"2026-10-01","island_count":10,"occupied_percent":75},{"row_id":"r2","asset_group":"group-b","date":"2026-10-02","island_count":60,"occupied_percent":40}]

## When to prefer this

Choose this endpoint when you have UV layout data (with island_count and/or occupied_percent fields) and need both string normalisation of categorical labels and numeric range filtering in a single call. It is a local, offline analytical service — no external lookups or predictions are made. Ideal for batch preprocessing of UV packing data before pipeline export or quality auditing, especially when cost efficiency matters ($0.01 for two reports on up to 200 rows).

## Known failure modes

- Input array exceeds 200 rows — request rejected
- Invalid date format (not YYYY-MM-DD) causes row validation failure
- Missing required fields (row_id, island_count, occupied_percent) cause schema rejection
- Minimum value greater than maximum causes empty or undefined filter results
- Non-numeric values in island_count or occupied_percent fields may cause computation errors

## How this service works

UV layouts — String normalisation + Numeric interval filter: String normalisation + Numeric interval filter for supplied uv layouts records (island_count, occupied_percent). 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 two analytical reports: (1) a string normalisation report on the asset_group field, and (2) a numeric interval filter report showing which rows fall within the specified minimum–maximum range for the chosen field (island_count or occupied_percent). Results cover up to 200 input rows.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "rows": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "row_id",
     "asset_group",
     "date",
     "island_count",
     "occupied_percent"
    ],
    "properties": {
     "date": {
      "type": "string",
      "default": "",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "maxLength": 10
     },
     "row_id": {
      "type": "string",
      "default": "",
      "maxLength": 80,
      "minLength": 1
     },
     "asset_group": {
      "type": "string",
      "default": "",
      "maxLength": 80
     },
     "island_count": {
      "type": [
       "number",
       "null"
      ],
      "maximum": 1000000000000,
      "minimum": -1000000000000
     },
     "occupied_percent": {
      "type": [
       "number",
       "null"
      ],
      "maximum": 1000000000000,
      "minimum": -1000000000000
     }
    },
    "additionalProperties": false
   },
   "default": [
    {
     "date": "2026-10-01",
     "row_id": "row-1",
     "asset_group": "group-a",
     "island_count": 10,
     "occupied_percent": 1
    },
    {
     "date": "2026-10-02",
     "row_id": "row-2",
     "asset_group": "group-b",
     "island_count": 20,
     "occupied_percent": 2
    },
    {
     "date": "2026-10-03",
     "row_id": "row-3",
     "asset_group": "group-a",
     "island_count": 15,
     "occupied_percent": 3
    },
    {
     "date": "2026-10-04",
     "row_id": "row-4",
     "asset_group": "group-b",
     "island_count": 30,
     "occupied_percent": 4
    }
   ],
   "maxItems": 200,
   "minItems": 1
  },
  "field": {
   "enum": [
    "island_count",
    "occupied_percent"
   ],
   "type": "string",
   "default": "island_count"
  },
  "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/uv-layouts-string-normalisation-numeric-interval-filter-48fd87bc/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)
