# Blender: Scale Model

> Blender: Scale Model is a paid API for AI agents from market.datapackvibe.com, paid per call via x402, $0.02/call, status unknown (last checked 2026-10-25).

Scales 3D mesh geometry by a bounded factor using Blender, accepting mesh JSON, GLB, or OBJ input and returning a processed scaled model.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/studio3d-process-scale-model?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-25
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/blender-scale-model-6942fc61
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_f4YXW0DiwmatgEpqI7R7U

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 blender-scale-model-6942fc61 -d '<json body>'
```

Example prompt: Scale my 3D model up by a factor of 2.5 — I'll provide the GLB file as base64, use 256 resolution, color #AA3344, roughness 0.4, and metallic 0.2.

## When to prefer this

Choose this endpoint when you need to programmatically scale 3D geometry using Blender as the processing backend, especially when working with GLB, OBJ, or raw mesh JSON inputs and needing a bounded, fast (<60s) transformation with material/render output. Prefer this over general 3D APIs when Blender-native processing fidelity matters or when you want integrated PBR material output alongside the geometry transform.

## Known failure modes

- Worker busy at request time — error returned before payment settlement
- Mesh exceeds vertex (10,000) or face (20,000) limits — rejected with validation error
- base64-encoded model exceeds 512 KiB decoded size limit
- model_base64 and mesh fields supplied simultaneously — mutually exclusive conflict
- Scale factor outside allowed range (0.1–5) — parameter validation failure
- Resolution outside allowed range (128–512) — parameter validation failure
- Invalid hex color format — rejected by pattern validation

## How this service works

Blender: Scale Model: Scale geometry by a bounded factor. Accepts mesh JSON, small GLB or OBJ; without input uses an explicitly labelled demo mesh. Runs locally in Blender. Bounded small-model processing, normally under 60 seconds; a busy worker returns an error before payment settlement.

## Output

Returns the processed scaled 3D geometry along with render output and material metadata. If no mesh is provided, uses the built-in demo mesh and labels the response accordingly. Processing typically completes within 60 seconds; if the worker is busy, an error is returned before any payment is settled.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "mesh": {
   "type": "object",
   "required": [
    "vertices",
    "faces"
   ],
   "properties": {
    "faces": {
     "type": "array",
     "items": {
      "type": "array",
      "items": {
       "type": "integer",
       "minimum": 0
      },
      "maxItems": 16,
      "minItems": 3
     },
     "maxItems": 20000
    },
    "vertices": {
     "type": "array",
     "items": {
      "type": "array",
      "items": {
       "type": "number"
      },
      "maxItems": 3,
      "minItems": 3
     },
     "maxItems": 10000
    }
   },
   "description": "Optional mesh in Blender Z-up coordinates. Max 10,000 vertices and 20,000 faces; each face has 3..16 indices.",
   "additionalProperties": false
  },
  "seed": {
   "type": "integer",
   "default": 42,
   "maximum": 2147483647,
   "minimum": 0
  },
  "angle": {
   "type": "number",
   "default": 45,
   "maximum": 180,
   "minimum": -180
  },
  "color": {
   "type": "string",
   "default": "#6688bb",
   "pattern": "^#[0-9a-fA-F]{6}$"
  },
  "count": {
   "type": "integer",
   "default": 3,
   "maximum": 8,
   "minimum": 2
  },
  "amount": {
   "type": "number",
   "default": 0.05,
   "maximum": 0.5,
   "minimum": 0.001
  },
  "factor": {
   "type": "number",
   "default": 1,
   "maximum": 5,
   "minimum": 0.1
  },
  "sample": {
   "enum": [
    "demo"
   ],
   "type": "string",
   "default": "demo",
   "description": "If no model is supplied, process the included demonstration mesh; response identifies this explicitly."
  },
  "metallic": {
   "type": "number",
   "default": 0,
   "maximum": 1,
   "minimum": 0
  },
  "roughness": {
   "type": "number",
   "default": 0.5,
   "maximum": 1,
   "minimum": 0
  },
  "resolution": {
   "type": "integer",
   "default": 256,
   "maximum": 512,
   "minimum": 128
  },
  "model_base64": {
   "type": "string",
   "maxLength": 699052,
   "description": "Optional base64 GLB (geometry and PBR values, without images/animations) or OBJ geometry, at most 512 KiB decoded. Mutually exclusive with mesh. No URLs or local paths."
  },
  "model_format": {
   "enum": [
    "glb",
    "obj"
   ],
   "type": "string",
   "default": "glb"
  },
  "target_faces": {
   "type": "integer",
   "default": 500,
   "maximum": 20000,
   "minimum": 20
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/blender-scale-model-6942fc61/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)
