⌘K

Tencent Hunyuan 3D Pro

tencent_hunyuan_3d_pro

Tencent Hunyuan 3D Pro generates textured, low-poly, geometry-only, and sketch-based 3D assets from text or images, with optional PBR materials, face count control, and multi-view image guidance.

API Notes

tencent_hunyuan_3d_pro uses upstream Hunyuan 3D Pro Model 3.1 automatically; do not pass a model parameter inside params

tencent_hunyuan_3d_pro requires exactly one primary input among prompt, image_url, and image_base64 when generate_type is Normal, LowPoly, or Geometry

tencent_hunyuan_3d_pro requires prompt together with image_url or image_base64 when generate_type is Sketch

tencent_hunyuan_3d_pro does not support multi_view_images when generate_type is Sketch

tencent_hunyuan_3d_pro expects each multi_view_images item to use ViewType with either ViewImageUrl or ViewImageBase64

tencent_hunyuan_3d_pro uses format instead of type to identify the actual asset format in output[].content[], and url typically returns a .zip package when format is obj

Authentication

authorization string required

All APIs require authentication via Bearer Token.

Get API Key:

Visit API Key Management Page to get your API Key.

Usage:

Add to request header:

Authorization: Bearer YOUR_API_KEY

Parameters

model string required

Model ID to use for the request

Value: tencent_hunyuan_3d_pro


prompt string

Text prompt for text-to-3D generation. In Normal, LowPoly, and Geometry modes, provide exactly one of prompt, image_url, or image_base64. In Sketch mode, prompt must be provided together with image_url or image_base64

Maximum length: 1024 UTF-8 characters


image_base64 string

Base64-encoded input image. In Normal, LowPoly, and Geometry modes, provide exactly one of prompt, image_url, or image_base64. In Sketch mode, image_base64 or image_url must be provided together with prompt

Supported formats: jpg, png, jpeg, webp
Image size: up to 8MB at the wrapper level
Resolution: each side must be between 128 and 5000 pixels


image_url string

Publicly accessible input image URL. In Normal, LowPoly, and Geometry modes, provide exactly one of prompt, image_url, or image_base64. In Sketch mode, image_url or image_base64 must be provided together with prompt

Supported formats: jpg, png, jpeg, webp
Image size: up to 8MB
Resolution: each side must be between 128 and 5000 pixels


face_count integer

Target face count for the generated 3D model. This parameter is ignored when generate_type is LowPoly

Default: 500000

Range: 3000 - 1500000


generate_type string

Generation mode that controls the model style and output behavior

Normal generates textured geometry
LowPoly generates topology-optimized assets and ignores face_count
Geometry generates geometry-only assets and ignores enable_pbr
Sketch accepts sketch or line-art style input and requires prompt plus image_url or image_base64

Default: Normal

Options: Normal, LowPoly, Geometry, Sketch


polygon_type string

Polygon topology mode. This parameter only takes effect when generate_type is LowPoly

triangle outputs triangle faces only
quadrilateral mixes quadrilateral and triangle faces

Default: triangle

Options: triangle, quadrilateral


enable_pbr boolean

Whether to enable PBR material generation. This parameter is ignored when generate_type is Geometry

Default: false

Options: true, false


multi_view_images array

Multi-view reference images used to improve geometry consistency. This parameter is supported for non-Sketch requests only. Each item must include ViewType and either ViewImageUrl or ViewImageBase64. Only one image is allowed for each view

Supported views: left, right, back
3.1-only views upstream: top, bottom, left_front, right_front
Total payload limit: combined image payload should stay within 8MB for URL input or about 6MB before Base64 expansion
Per-image resolution: each side must be between 128 and 5000 pixels
Supported formats: jpg, png

item object

A single multi-view image object

ViewType string required

View identifier for the reference image

Options: back, left, right, top, bottom, left_front, right_front

ViewImageUrl string

Publicly accessible image URL for the specified view

ViewImageBase64 string

Base64-encoded image content for the specified view


Polling

Since result generation takes time, you need to poll the task status after creating the task.

The initial response only returns information such as the task ID and initial status. The final result must be obtained by polling the task status endpoint using the task ID.

See the examples on the right for polling requests and responses.


Response Format

id string required

Task ID


created_at integer required

Task creation timestamp in milliseconds


status string required

Task status

Options: in_progress, completed, failed


model string required

Model ID


progress number

Task progress, only present when status is in_progress


error object

Error information, only present when status is failed

code string

Error code

message string

Detailed error message


output array

Generated results, only present when status is completed

content array

Downloadable model resources for the completed task

type string

Wrapper resource type. In current 3D responses this field may still return glb even when format is obj, so use format to determine the actual asset format

format string

Actual export format for the returned asset, such as obj or glb

url string

Download URL for the model asset. When format is obj, this URL usually points to a .zip package

preview_url string

Preview image URL for the current asset

jobId string

Upstream job ID. Multiple assets in the same task can share the same jobId


usage object

Billing and usage information, only present when status is completed

cost string

Total cost in USD. This field can be an empty string when billing data is not returned

extra_info object

Additional upstream billing details when provided

ResultCreditConsumed integer

Upstream credits consumed for the generated result

input_tokens number

Input token count. Current 3D tasks usually return null

output_tokens number

Output token count. Current 3D tasks usually return null

quantity integer

Billable quantity for the task

total_tokens number

Total token count. Current 3D tasks usually return null

unit_price string

Unit price in USD. This field can be an empty string when billing data is not returned

user_discount number

User discount value returned by the wrapper


metadata object

Timing metadata returned by the wrapper

completed_at number

Time to completion in seconds

in_queue_at number

Time spent in queue in seconds

upload_at number

Upload and preprocessing time in seconds


Error Codes

Error CodeDescription
13001095Upstream internal generation error
13001096Result parsing exception
13001097Upstream HTTP response error
13001098Task status polling exception
13001099Upstream task creation exception