API reference · Meshy
meshy/meshy-v6/multi-image-to-3d
Integrate this model through SandBase's unified API, with production-ready schemas and examples.
Production endpoint
Send your first request
OpenAI-compatible endpoint with unified authentication and usage tracking.
POST
https://api.sandbase.ai/v1/runModel ID
meshy/meshy-v6/multi-image-to-3d01
Input Schema
15 parameters · 0 required · 15 optional
| Parameter | Type | Required | Description |
|---|---|---|---|
images | string[] | Optional | 1 to 4 images for 3D model creation. All images should depict the same object from different angles. Supports .jpg, .jpeg, .png formats, and AVIF/HEIF which will be automatically converted. If more than 4 images are provided, only the first 4 will be used. |
topology | string | Optional | Specify the topology of the generated model. Quad for smooth surfaces, Triangle for detailed geometry. · Options: quad, triangle · Default: "triangle" quadtriangle |
pose_mode | string | Optional | Pose mode for the generated model. 'a-pose' generates an A-pose, 't-pose' generates a T-pose, empty string for no specific pose. · Options: a-pose, t-pose, · Default: "" a-poset-pose |
enable_pbr | boolean | Optional | Generate PBR Maps (metallic, roughness, normal) in addition to base color. Requires should_texture to be true. · Default: false |
is_a_t_pose | boolean | Optional | Deprecated: use pose_mode instead. When true, generates a T-pose model. · Default: false |
should_remesh | boolean | Optional | Whether to enable the remesh phase. When false, returns triangular mesh ignoring topology and target_polycount. · Default: true |
symmetry_mode | string | Optional | Controls symmetry behavior during model generation. · Options: off, auto, on · Default: "auto" offautoon |
enable_rigging | boolean | Optional | Automatically rig the generated model as a humanoid character. Includes basic walking and running animations. Best results with humanoid characters that have clearly defined limbs. · Default: false |
should_texture | boolean | Optional | Whether to generate textures. False provides mesh without textures for 5 credits, True adds texture generation for additional 10 credits. · Default: true |
texture_prompt | string | Optional | Text prompt to guide the texturing process. Requires should_texture to be true. · Max length: 600 |
enable_animation | boolean | Optional | Apply an animation preset to the rigged model. Requires enable_rigging to be true. · Default: false |
target_polycount | integer | Optional | Target number of polygons in the generated model · Min: 100 · Max: 300000 · Default: 30000 |
texture_image_url | string | Optional | 2D image to guide the texturing process. Requires should_texture to be true. |
animation_action_id | integer | Optional | Animation preset ID from Meshy's library (500+ presets). Only used when enable_animation is true. See https://docs.meshy.ai/en/api/animation-library for available action IDs. · Default: 1001 |
rigging_height_meters | number | Optional | Approximate height of the character in meters. Only used when enable_rigging is true. · Default: 1.7 |
02
Output Schema
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier for the generation task |
status | string | Task status: pending, running, completed, failed, timeout |
model | string | Model used for the generation |
outputs | array | Array of output items |
outputs[].url | string | URL of the generated artifact |
outputs[].content_type | string | MIME type (e.g. image/png, video/mp4) |
error | object | null | Error details if failed, null on success |
error.type | string | Machine-readable error type code |
error.message | string | Human-readable error description |
Async Workflow
This model uses asynchronous execution. Submit a request and poll for the result.
- Submit — POST to /v1/run, receive an
id - Poll — GET /v1/run/{id} until status is
completed,failed, ortimeout - Retrieve — Read
outputsfrom the completed response
03
Code Examples
Ready-to-run snippets
# Step 1: Submit
curl -X POST https://api.sandbase.ai/v1/run \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "meshy/meshy-v6/multi-image-to-3d",
"images": [
"https://static.sandbase.ai/examples/meshy/meshy-v6/multi-image-to-3d/input_images_0.png",
"https://static.sandbase.ai/examples/meshy/meshy-v6/multi-image-to-3d/input_images_1.png",
"https://static.sandbase.ai/examples/meshy/meshy-v6/multi-image-to-3d/input_images_2.png"
],
"topology": "triangle",
"pose_mode": "",
"enable_pbr": false,
"is_a_t_pose": false,
"should_remesh": true,
"symmetry_mode": "auto",
"enable_rigging": false,
"should_texture": true,
"enable_animation": false,
"target_polycount": 30000,
"animation_action_id": 1001,
"rigging_height_meters": 1.7,
"prompt": "a beautiful sunset over mountains"
}'
# Step 2: Poll result (replace <id>)
curl https://api.sandbase.ai/v1/run/<id> \
-H "Authorization: Bearer YOUR_API_KEY"
