Generate

Text → 3D

POST/v1/models/from-text

Describe an asset in plain text and get a textured mesh.

Async returns an id — poll or webhookTypical ~60–120sCost ≈60–80 credits

Parameters

ParameterDescription
promptREQUIRED
string
What to generate. Up to 1,024 characters (the Tripo engine limit).
engineOPTIONAL
string
Which 3D engine to use — e.g. tripo, tripo-v3.1, hunyuan-3.1. Omit for the default. Authoritative list: GET /v1/models?category=3d.
polycountOPTIONAL
integer
Target polygon count, 1002,000,000. Out-of-range values are clamped to the model's range (e.g. tripo 500–20,000) — see each model's polygonConfig in GET /v1/models.
textureOPTIONALdefault true
boolean
Generate PBR textures. Set false for a faster, untextured mesh.
licenseOPTIONAL
string
Usage rights for the result. Defaults to private (all-rights-reserved).
callbackUrlOPTIONAL
string
Push the finished asset to your server instead of polling — see Webhooks.

Request

request
curl -X POST https://api.picoberry.ai/v1/models/from-text \
  -H "Authorization: Bearer pb_live_xxx" -H "Content-Type: application/json" \
  -d '{"prompt":"a stylized treasure chest","engine":"tripo","polycount":10000}'
requests.post("https://api.picoberry.ai/v1/models/from-text", headers=headers,
    json={"prompt": "a stylized treasure chest", "engine": "tripo", "polycount": 10000})
await fetch(`${BASE}/v1/models/from-text`, { method: "POST",
  headers: { ...headers, "Content-Type": "application/json" },
  body: JSON.stringify({ prompt: "a stylized treasure chest", engine: "tripo", polycount: 10000 }) });

Response

response · 200
{ "success": true, "data": { "id": "019…", "taskStatus": 0, "type": "model_3d" } }

That's the create response — the job is now running. Poll GET /v1/assets/{id} until taskStatus is 2, then files.model is a signed GLB. See the Quickstart for the full create → poll → download loop.

Refine the same asset Feed the returned id straight into remesh, re-texture, or auto-rig — no re-upload, no format juggling. That id-based pipeline is the whole reason to route through PicoBerry.