by Tripo

Image to 3D

tripo/h3.1/text-to-3d
  • Image to 3D
  • Image to 3D

About Tripo H3.1

Accurate 3D shapes and true colors from one product photo.

Call it with the model name tripo/h3.1/text-to-3d on POST /jobs/createTask, from $0.288.

Introduction

Tripo H3.1 Text to 3D turns a written object description into a 3D asset, normally a GLB with textures. It first creates a reference picture, then builds the object from that picture. The additional image_seed belongs to that first visual step, while the geometry and texture stages have their own seeds.

tripo/h3.1/text-to-3d

Request parameters

ParameterRequiredDescription
seedNoUse the same seed and settings for more controlled comparisons. ≥ 0 · ≤ 2147483647
promptYesDescribe what you want to make.
low_polyNoBuild a low-poly mesh with clean, hand-modelled-style topology instead of a dense scan-like one. Best for simple objects; keep face_limit at 20,000 or below with it. Default: false
auto_sizeNoScale the mesh to estimated real-world dimensions. Off by default. Default: false
quad_meshNoReturn four-sided (quad) polygons instead of triangles, for editing in modelling tools; the file then comes back as FBX instead of GLB. Off by default; adds to the price. Default: false
uv_unwrapNoUnwrap UV coordinates during generation. On by default; turning it off is faster and gives a smaller file, but the mesh then has no UVs for texturing later. Default: true
face_limitNoTarget face count, 1,000 to 2,000,000. Leave empty to let the model decide (often over a million faces). ≥ 1000 · ≤ 2000000
image_seedNoSeed for the first step, which draws a reference picture from the prompt. Keep it fixed to keep the same starting picture. ≥ 0 · ≤ 2147483647
generate_pbrNoAdd PBR material maps (metal-roughness and normal). On by default and switches texturing on. Default: true
texture_seedNoSeed for the texture step. Keep seed fixed and change this to try new textures on the same shape. ≥ 0 · ≤ 2147483647
generate_partsNoReturn the model split into separate, editable parts. Parts are untextured triangle meshes, so the texture options and quad_mesh are ignored and not charged. Default: false
negative_promptNoThings you don't want to see.
remove_lightingNoRemove the lighting and shadows baked into the picture before texturing, so the texture reacts cleanly to scene lights. On by default; only takes effect with the v3.5 texture model. Default: true
texture_qualityNoTexture resolution: standard (the default) or detailed. detailed costs more and only applies to textured meshes. standard · detailed · extreme · fast · Default: standard
texture_versionNoTexture model version: v3.0-20250812 (the default) or the newer v3.5-20260815. texture_quality fast and remove_lighting use v3.5. v3.0-20250812 · v3.5-20260815 · Default: v3.0-20250812
generate_textureNoPaint a texture onto the mesh. On by default; turning it off only removes texturing if generate_pbr is off too. Default: true
geometry_qualityNoGeometry detail: standard (the default) or detailed. detailed builds finer surface detail and costs more. standard · detailed · Default: standard

Pricing

Prices are in USD. The API uses a separate USD balance. Website credits cannot be used or transferred to it, and API funds cannot be transferred to website credits. When a task is accepted, we reserve the maximum quoted amount from your API balance. On completion, we charge for actual usage, never more than the hold, and release the remainder. If the task fails, the hold is released.

OptionUSD per run
Standard$0.288

Send the same request body to POST /jobs/quote to see the estimated and maximum USD charge before running. A quote does not run the task or charge your balance.

API quick start

Call the Tripo H3.1 API in three steps

  1. Create an API key. Sign in to PopNow and create a key in the API console. Keys start with sk-popnow-. API calls use your separate USD balance.
  2. Send the request. POST /jobs/createTask with model tripo/h3.1/text-to-3d and an input object that follows the parameter table. The response returns a task ID straight away.
  3. Get the result. Poll GET /jobs/recordInfo with the task ID, or pass a callBackUrl and we post the result to it. Download the output links when the task succeeds.
# 1. Create the task. Keep the Idempotency-Key if you retry after a network error.
export IDEMPOTENCY_KEY="$(uuidgen)"
curl -X POST https://api.popnow.ai/api/v1/jobs/createTask \
  -H "Authorization: Bearer $POPNOW_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $IDEMPOTENCY_KEY" \
  -d '{
  "model": "tripo/h3.1/text-to-3d",
  "input": {
    "prompt": "A ceramic teapot on a linen cloth, soft window light, muted palette",
    "generate_texture": true,
    "generate_pbr": true,
    "texture_quality": "standard",
    "texture_version": "v3.0-20250812",
    "geometry_quality": "standard"
  }
}'

# 2. Copy data.taskId from the response, then poll until state is succeeded, failed, canceled or expired.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.popnow.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
  -H "Authorization: Bearer $POPNOW_API_KEY"

Replace the prompt and any links with your own. The API tab has the response, polling and callback reference.

Tripo H3.1 API questions

How much does the Tripo H3.1 API cost?

Tripo H3.1 costs $0.288 per run. The API uses a separate USD balance. When a task is accepted, we reserve the maximum quoted amount from your API balance. On completion, we charge for actual usage, never more than the hold, and release the remainder. If the task fails, the hold is released.

What are the limits of the Tripo H3.1 · Image to 3D API?

Prompt length (characters): 1,024. Requests outside these limits are rejected before anything is charged.

More about Tripo H3.1