Markdown · OpenAPI

Text to 3D API

One textured 3D model from a description: a picture model paints the object, then a 3D model builds it. One object, never a scene.

Tool id text-to-3d on the REST API (POST https://3dvalley.com/api/v1/jobs); MCP tool generate_model on https://3dvalley.com/mcp. Paid in credits (1 credit = $0.01), taken when the job starts and given back if it fails. The general rules (keys, idempotency, waiting, webhooks) are in the API docs.

The free CC0 library holds thousands of models: GET /api/v1/assets?q=barrel (MCP: search_assets) before paying for one.

Models and prices

ModelNamePriceTimeWhat it is
trellis-2 (default)TRELLIS.2 Standard5 creditsabout 60 sA detailed, textured mesh with PBR materials. The strongest open 3D model.
trellis-2-proTRELLIS.2 Pro15 creditsabout 110 sThe same model at its highest settings: the finest geometry it can make, a million triangles and 4K PBR textures.
hunyuan-3d-3-1-proHunyuan3D 3.1 Pro90 creditsabout 220 sTencent's newest model at full quality: clean, closed meshes that print well, with fine geometry and sharp PBR materials.
tripo-3-1Tripo 3.1 Standard50 creditsabout 125 sClean, game-ready topology and detailed PBR textures.
tripo-3-1-detailedTripo 3.1 Detailed100 creditsabout 240 sThe same model at its detailed settings: finer geometry and sharper textures, for a longer wait.

Input

FieldRequired
promptyesWhat the object is, up to 1000 characters: "a weathered wooden barrel with iron bands".

Options

OptionTypeValues
seedintegerfrom 0 to 2147483647Fixes the randomness, so the same input makes the same result.
max_facesintegerfrom 5000 to 1000000The most triangles the model may have, made by the model itself at no extra cost: 5,000 to 20,000 for a game or the web, 50,000 to 100,000 for a detailed prop. Without it: 200,000 (trellis-2), 1,000,000 (trellis-2-pro) or the model's own choice.
stylestringrealistic, lowpoly, stylizedHow the picture stage draws the object: realistic, lowpoly (flat-shaded, a few flat colours, to sit beside Kenney or KayKit kits; pair with max_faces) or stylized (hand-painted look). Default realistic.
image_modelstringflux-2-klein, muse-image, gpt-image-2-5The picture model of the first stage. Default flux-2-klein.

Output

Files: glb, image.

Example

curl -X POST https://3dvalley.com/api/v1/jobs \
  -H "Authorization: Bearer $THREEDVALLEY_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Prefer: wait=50" \
  -H "Content-Type: application/json" \
  -d '{"tool":"text-to-3d","input":{"prompt":"a weathered wooden barrel with iron bands"},"options":{"style":"lowpoly","max_faces":10000}}'

From an MCP client:

generate_model({"prompt":"a weathered wooden barrel with iron bands","style":"lowpoly","max_faces":10000})

Limits

  • max_image_bytes: 10,485,760
  • max_mesh_bytes: 62,914,560
  • max_prompt: 1,000