# UV Layouts — String Normalisation + Date by Category Pivot

> UV Layouts — String Normalisation + Date by Category Pivot 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).

Performs string normalisation and date-by-category pivot analysis on supplied UV layout records (island_count, occupied_percent) for up to 200 rows, returning two analytical reports.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-creative-06-035?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-date-by-category-pivot-3699b644
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_yz1YI2b7Gg5FqY1bvdaym

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-date-by-category-pivot-3699b644 -d '<json body>'
```

Example prompt: Can you run string normalisation and a date-by-category pivot on these UV layout records? I have 4 rows with island_count and occupied_percent values across asset groups group-a and group-b, and I want to analyze island_count.

## When to prefer this

Choose this endpoint when you need both string normalisation and a date-by-category pivot on UV layout data (island_count or occupied_percent) in a single low-cost call. It is ideal for 3D asset pipeline analytics where you want to summarize texture atlas utilisation across asset groups over time without building custom ETL. Prefer this over generic analytics tools when your data already conforms to the UV layout schema (row_id, asset_group, date, numeric metrics).

## Known failure modes

- Fewer than 1 row supplied — validation error
- More than 200 rows submitted — request rejected or truncated
- Invalid date format (not YYYY-MM-DD) — schema validation failure
- field enum value other than island_count or occupied_percent — rejected
- row_id missing or empty — required field validation error
- Numeric values outside the allowed range cause schema rejection

## How this service works

UV layouts — String normalisation + Date by category pivot: String normalisation + Date by category pivot 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 that cleans and standardises the asset_group and other string fields in the supplied rows, and (2) a date-by-category pivot table showing the selected numeric field (island_count or occupied_percent) aggregated by date and asset_group category. Up to 200 rows of UV layout data are processed using local analytical engines with no external lookups.

## 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"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/uv-layouts-string-normalisation-date-by-category-pivot-3699b644/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)
