Generate 3D Model from Multiple Images
meshy_multi_image_to_3dGenerate a textured 3D model from 1–4 photos or image URLs of the same object, using multiple views to improve reconstruction.
Instructions
Generate a 3D model from 1–4 views of the same object (better reconstruction), textured by default. Cost: meshy-7.1 / latest / meshy-6 20 mesh only, 30 textured, 35 at 8K; meshy-6-lite 5 / 15; Ultra geometry +5.
IMAGE INPUT (exactly ONE):
file_paths: 1–4 local images (never base64-encode them yourself)
image_urls: 1–4 public URLs
input_task_id: a SUCCEEDED meshy_text_to_image / meshy_image_to_image task (multi-view included); its images are the input
Example: { file_paths: ["/path/front.jpg", "/path/side.jpg"] }
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ai_model | No | 'latest' (default, = Meshy 7.1) or 'meshy-7.1' (best), 'meshy-6', 'meshy-6-lite' (fast, cheap, 2K textures only); 'meshy-7' is deprecated. No Smart Topology here. | latest |
| topology | No | quad or triangle (default). | |
| auto_size | No | AI-estimate the real-world height and resize to it (default false). | |
| origin_at | No | 'bottom' or 'center' (default bottom with auto_size). | |
| pose_mode | No | 'a-pose' or 't-pose'; use 't-pose' when the model will be rigged or animated. | |
| enable_pbr | No | Also make metallic/roughness/normal maps. | |
| file_paths | No | 1–4 absolute paths to local .jpg/.jpeg/.png/.webp images; the server encodes them. | |
| hd_texture | No | Deprecated: use texture_resolution '4k'. | |
| image_urls | No | 1–4 public image URLs. | |
| model_type | No | Deprecated; ignored (this endpoint has no model_type). | |
| ultra_mode | No | Deprecated: use geometry_resolution '2k'. | |
| input_task_id | No | A SUCCEEDED text-to-image / image-to-image task (multi-view included) whose images are the input. | |
| should_remesh | No | Remesh to target_polycount / topology (default false). | |
| symmetry_mode | No | Deprecated: has no effect. | |
| should_texture | No | Generate textures (default true); false gives a cheaper untextured mesh. | |
| target_formats | No | Formats to produce (default: all but 3mf; list '3mf' to get it). Fewer formats finish faster. | |
| texture_prompt | No | Text to guide texturing (max 800 characters). | |
| alpha_thumbnail | No | Also return a transparent-background preview (alpha_thumbnail_url). | |
| decimation_mode | No | Adaptive decimation 1 (ultra) – 4 (low); overrides target_polycount. | |
| remove_lighting | No | Remove highlights/shadows from the base color (meshy-6/7.1/latest; API default true). | |
| response_format | No | markdown (default) or json | markdown |
| target_polycount | No | Remesh target 100–300,000, needs should_remesh true. | |
| image_enhancement | No | Optimize the input image (meshy-6/7.1/latest); false keeps deliberate styling. | |
| texture_image_url | No | Image URL to guide texturing. | |
| texture_image_urls | No | 1–4 views (URLs or data URIs) of the SAME object to drive the texture; element 0 is the front. meshy-7.1/latest only; not with texture_prompt / texture_image_url. | |
| texture_resolution | No | Base color texture: 2k (default), 4k or 8k (+5 credits; PBR maps stay 4K, no emission map). 4k/8k not on meshy-6-lite. | |
| geometry_resolution | No | Ultra geometry pass: standard (default) or 2k (+5 credits); meshy-7.1/latest only. No 4k here. | |
| multi_view_thumbnails | No | Also return front/back/left/right thumbnails. | |
| save_pre_remeshed_model | No | Also keep the GLB from before remeshing (with should_remesh). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | ||
| message | Yes | ||
| task_id | Yes | ||
| estimated_time | Yes |