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
objectA single multi-view image object
ViewType
stringrequiredView identifier for the reference image
Options:
back,left,right,top,bottom,left_front,right_frontViewImageUrl
stringPublicly accessible image URL for the specified view
ViewImageBase64
stringBase64-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
stringError code
message
stringDetailed error message
output array
Generated results, only present when status is completed
content
arrayDownloadable model resources for the completed task
type
stringWrapper resource type. In current 3D responses this field may still return
glbeven whenformatisobj, so useformatto determine the actual asset formatformat
stringActual export format for the returned asset, such as
objorglburl
stringDownload URL for the model asset. When
formatisobj, this URL usually points to a.zippackagepreview_url
stringPreview image URL for the current asset
jobId
stringUpstream 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
stringTotal cost in USD. This field can be an empty string when billing data is not returned
extra_info
objectAdditional upstream billing details when provided
ResultCreditConsumed
integerUpstream credits consumed for the generated result
input_tokens
numberInput token count. Current 3D tasks usually return
nulloutput_tokens
numberOutput token count. Current 3D tasks usually return
nullquantity
integerBillable quantity for the task
total_tokens
numberTotal token count. Current 3D tasks usually return
nullunit_price
stringUnit price in USD. This field can be an empty string when billing data is not returned
user_discount
numberUser discount value returned by the wrapper
metadata object
Timing metadata returned by the wrapper
completed_at
numberTime to completion in seconds
in_queue_at
numberTime spent in queue in seconds
upload_at
numberUpload and preprocessing time in seconds
Error Codes
| Error Code | Description |
|---|---|
| 13001095 | Upstream internal generation error |
| 13001096 | Result parsing exception |
| 13001097 | Upstream HTTP response error |
| 13001098 | Task status polling exception |
| 13001099 | Upstream task creation exception |