# 3D Print Estimates — String Normalisation + Numeric Row Ordering

> 3D Print Estimates — String Normalisation + Numeric Row Ordering 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 orders rows numerically for up to 200 3D print estimate records (material_grams, print_hours), producing 2 analytical reports per call.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/assistant-ib26-creative-23-025?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/3d-print-estimates-string-normalisation-numeric-row-ordering-fd176f9e
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_9QE8Xk8wYJqHFUdu29nFq

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 3d-print-estimates-string-normalisation-numeric-row-ordering-fd176f9e -d '<json body>'
```

Example prompt: Can you normalise the string fields and order these 3D print estimate rows numerically by material_grams? I have 4 jobs: row-1 group-a 2026-10-01 10g 1hr, row-2 group-b 2026-10-02 20g 2hr, row-3 group-a 2026-10-03 15g 3hr, row-4 group-b 2026-10-04 30g 4hr — give me both reports.

## When to prefer this

Choose this endpoint when you have a batch of up to 200 3D print estimate records and need both string normalisation (cleaning asset group names) and numeric row ordering (by material_grams or print_hours) in a single low-cost call. It is purpose-built for 3D print estimation data with the exact required schema fields (row_id, asset_group, date, material_grams, print_hours). It produces two independent reports from shared local analytical engines with no external lookups or predictions, making it deterministic and fast.

## Known failure modes

- Empty rows array — minimum 1 row required
- Rows array exceeds 200 items — request will be rejected
- Missing required fields (row_id, asset_group, date, material_grams, print_hours) on any row
- Invalid date format — must match YYYY-MM-DD pattern
- Invalid field enum value — must be 'material_grams' or 'print_hours'
- Payment not fulfilled via x402 protocol — call blocked
- Numeric values out of supported range (±1,000,000,000,000)

## How this service works

3D print estimates — String normalisation + Numeric row ordering: String normalisation + Numeric row ordering for supplied 3d print estimates records (material_grams, print_hours). 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 per call: (1) a string-normalised view of the asset_group and text fields across the submitted rows, and (2) a numerically ordered ranking of the rows by the selected field (material_grams or print_hours). Covers up to 200 input rows per request.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "rows": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "row_id",
     "asset_group",
     "date",
     "material_grams",
     "print_hours"
    ],
    "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
     },
     "print_hours": {
      "type": [
       "number",
       "null"
      ],
      "maximum": 1000000000000,
      "minimum": -1000000000000
     },
     "material_grams": {
      "type": [
       "number",
       "null"
      ],
      "maximum": 1000000000000,
      "minimum": -1000000000000
     }
    },
    "additionalProperties": false
   },
   "default": [
    {
     "date": "2026-10-01",
     "row_id": "row-1",
     "asset_group": "group-a",
     "print_hours": 1,
     "material_grams": 10
    },
    {
     "date": "2026-10-02",
     "row_id": "row-2",
     "asset_group": "group-b",
     "print_hours": 2,
     "material_grams": 20
    },
    {
     "date": "2026-10-03",
     "row_id": "row-3",
     "asset_group": "group-a",
     "print_hours": 3,
     "material_grams": 15
    },
    {
     "date": "2026-10-04",
     "row_id": "row-4",
     "asset_group": "group-b",
     "print_hours": 4,
     "material_grams": 30
    }
   ],
   "maxItems": 200,
   "minItems": 1
  },
  "field": {
   "enum": [
    "material_grams",
    "print_hours"
   ],
   "type": "string",
   "default": "material_grams"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/3d-print-estimates-string-normalisation-numeric-row-ordering-fd176f9e/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)
