API สำหรับหลายรูปเป็น 3D
API สำหรับหลายรูปเป็น 3D เป็นฟีเจอร์ที่ช่วยให้คุณสามารถผสานความสามารถด้านหลายรูปเป็น 3D ของ Meshy เข้ากับแอปพลิเคชันของคุณเองได้ ในส่วนนี้ คุณจะพบข้อมูลทั้งหมด ที่จำเป็นสำหรับการเริ่มต้นใช้งาน API นี้
สร้างงาน Multi-Image to 3D
เอนด์พอยต์นี้ช่วยให้คุณสามารถสร้างงาน หลายรูปเป็น 3D ใหม่ได้ ดูข้อมูลเพิ่มเติมได้ที่ The Multi-Image to 3D Task Object เพื่อดูว่ามีพร็อพเพอร์ตี้ใดบ้าง ที่รวมอยู่ใน object ของงานหลายรูปเป็น 3D
พารามิเตอร์
ต้องระบุอย่างใดอย่างหนึ่งระหว่าง input_task_id หรือ image_urls เท่านั้น หากระบุทั้งสองอย่าง input_task_id จะมีความสำคัญเหนือกว่า
- Name
- input_task_id
- Type
- string
- จำเป็น
- Description
ID ของงานสร้างรูปภาพที่เสร็จสมบูรณ์แล้ว ซึ่งผลลัพธ์ (1-4 รูปภาพ) ของงานนั้นจะถูกนำมาใช้เป็นอินพุต งานนี้ต้องเป็นหนึ่งในงานต่อไปนี้: ข้อความเป็นรูปภาพ, รูปภาพเป็นรูปภาพ, Text to Image Multi-View หรือ Image to Image Multi-View นอกจากนี้ยังต้องเป็นงานที่รันผ่าน API และมีสถานะ
SUCCEEDED
- Name
- image_urls
- Type
- array
- จำเป็น
- Description
ระบุรูปภาพ 1 ถึง 4 รูปให้ Meshy ใช้ในการสร้างโมเดล ปัจจุบันเรารองรับรูปแบบ
.jpg,.jpeg, และ.pngรูปภาพทั้งหมดควรแสดงวัตถุเดียวกันจากมุมที่แตกต่างกันเพื่อผลลัพธ์ที่ดีที่สุดมีสองวิธีในการระบุรูปภาพแต่ละรูป:
- URL ที่เข้าถึงได้แบบสาธารณะ: URL ที่สามารถเข้าถึงได้จากอินเทอร์เน็ตสาธารณะ
- Data URI: data URI ของรูปภาพที่เข้ารหัสแบบ base64 ตัวอย่างของ Data URI:
data:image/jpeg;base64,<your base64-encoded image data>
สำหรับ
meshy-7.1(หรือlatest) รูปภาพแรกจะถูกใช้เป็นมุมมองหลัก (ด้านหน้า) ลำดับของรูปภาพที่เหลือไม่มีผลใด ๆ
- Name
- ai_model
- Type
- string
- ค่าเริ่มต้น latest
- Description
ID ของโมเดลที่จะใช้
ค่าที่ใช้ได้:
meshy-6-lite,meshy-6,meshy-7.1,latest(Meshy 7.1)meshy-7(เลิกใช้): ใช้meshy-7.1แทน
- Name
- geometry_resolution
- Type
- string
- ค่าเริ่มต้น standard
- Description
รอบการสร้างจีออเมทรี
2kจะรันการประมวลผลระดับ Ultra ที่ความละเอียด 2048³ ต้องใช้meshy-7.1หรือlatestค่าที่ใช้ได้:
standard,2k
- Name
- ultra_mode
- Type
- boolean
- ⚠ เลิกใช้แล้ว
- ค่าเริ่มต้น false
- Description
ใช้
geometry_resolutionแทนultra_mode: trueมีค่าเทียบเท่ากับgeometry_resolution: "2k"
- Name
- should_texture
- Type
- boolean
- ค่าเริ่มต้น true
- Description
กำหนดว่าจะสร้างเท็กซ์เจอร์หรือไม่ การตั้งค่าเป็น
falseจะข้ามขั้นตอนการทำเท็กซ์เจอร์ ทำให้ได้เมชที่ไม่มีเท็กซ์เจอร์
should_texture = true- Name
- enable_pbr
- Type
- boolean
- ค่าเริ่มต้น false
- Description
สร้าง PBR แมป (metallic, roughness, normal) เพิ่มเติมจากสีพื้นฐาน แมปการเปล่งแสง (emission map) จะถูกรวมไว้ด้วยเมื่อ
ai_modelเป็นmeshy-6ยกเว้นที่texture_resolution: 8kโดยmeshy-6-lite,meshy-7.1และlatestจะไม่สร้างแมปการเปล่งแสง
- Name
- texture_resolution
- Type
- string
- ค่าเริ่มต้น 2k
- Description
ความละเอียดเท็กซ์เจอร์สีพื้นฐาน หนึ่งใน
2k(2048×2048),4k(4096×4096), หรือ8k(8192×8192) ความละเอียดที่สูงขึ้นจะจับรายละเอียดพื้นผิวได้มากขึ้น4kและ8kต้องใช้ai_modelเป็นmeshy-6,meshy-7.1หรือlatestที่8kจะไม่มีการสร้างแมปการเปล่งแสง
- Name
- hd_texture
- Type
- boolean
- ⚠ เลิกใช้แล้ว
- ค่าเริ่มต้น false
- Description
ใช้
texture_resolutionแทน — เทียบเท่ากับtexture_resolution: "4k"เมื่อตั้งค่าทั้งสองอย่างtexture_resolutionจะมีความสำคัญเหนือกว่า
- Name
- texture_prompt
- Type
- string
- Description
ระบุ prompt ข้อความเพื่อกำหนดทิศทางกระบวนการทำเท็กซ์เจอร์ สูงสุด 800 ตัวอักษร
- Name
- texture_image_url
- Type
- string
- Description
ระบุรูปภาพ 2 มิติเพื่อกำหนดทิศทางกระบวนการทำเท็กซ์เจอร์ ปัจจุบันเรารองรับรูปแบบ
.jpg,.jpeg, และ.pngมีสองวิธีในการระบุรูปภาพ:
- URL ที่เข้าถึงได้แบบสาธารณะ: URL ที่สามารถเข้าถึงได้จากอินเทอร์เน็ตสาธารณะ
- Data URI: data URI ของรูปภาพที่เข้ารหัสแบบ base64 ตัวอย่างของ Data URI:
data:image/jpeg;base64,<your base64-encoded image data>
การทำเท็กซ์เจอร์ด้วยรูปภาพอาจไม่ทำงานได้อย่างเหมาะสมที่สุด หากมีความแตกต่างของจีออเมทรีอย่างมากระหว่างแอสเซ็ตดั้งเดิมและรูปภาพที่อัปโหลด สามารถใช้ได้เพียงอย่างใดอย่างหนึ่งระหว่าง
texture_image_urlหรือtexture_promptเพื่อกำหนดทิศทางกระบวนการทำเท็กซ์เจอร์ หากระบุทั้งสองพารามิเตอร์ ระบบจะใช้texture_promptเป็นค่าเริ่มต้นในการทำเท็กซ์เจอร์โมเดล
- Name
- texture_image_urls
- Type
- string[]
- Description
ระบุรูปภาพ 1 ถึง 4 รูปที่แสดงวัตถุเดียวกันจากมุมมองที่แตกต่างกันเพื่อกำหนดทิศทางการทำเท็กซ์เจอร์ รูปภาพแรกเป็นมุมมองหลัก (ด้านหน้า) ส่วนลำดับของมุมมองที่เหลือ (ซ้าย หลัง ขวา) ไม่มีผลใด ๆ
แต่ละองค์ประกอบยอมรับรูปแบบเดียวกันกับ
texture_image_url(URL ที่เข้าถึงได้แบบสาธารณะ หรือ data URI แบบ base64,.jpg/.jpeg/.png)รูปภาพเหล่านี้จะกำหนดทิศทางเฉพาะเท็กซ์เจอร์เท่านั้น และไม่ขึ้นกับ
image_urls— ทั้งสองรายการนี้อาจมีรูปภาพที่แตกต่างกันและจำนวนรูปภาพที่ต่างกันได้ต้องใช้
ai_modelเป็นmeshy-7.1หรือlatestไม่สามารถใช้ร่วมกับtexture_image_urlหรือtexture_promptได้
- Name
- should_remesh
- Type
- boolean
- ค่าเริ่มต้น false (Meshy 6 and Meshy 7 models), true (others)
- Description
ควบคุมว่าจะเปิดใช้งานขั้นตอนรีเมชหรือไม่ สำหรับโมเดลที่มีคุณภาพสูงสุด เราขอแนะนำให้ตั้งค่า
should_remeshเป็นfalse
should_remesh = true- Name
- topology
- Type
- string
- ค่าเริ่มต้น triangle
- Description
ระบุ topology ของโมเดลที่สร้างขึ้น
ค่าที่ใช้ได้:
quad: สร้างเมชที่ประกอบด้วยรูปสี่เหลี่ยมเป็นส่วนใหญ่triangle: สร้างเมชสามเหลี่ยมที่ลดจำนวนโพลิกอนแล้ว
- Name
- target_polycount
- Type
- integer
- ค่าเริ่มต้น 30,000
- Description
ระบุจำนวนโพลิกอนเป้าหมายในโมเดลที่สร้างขึ้น จำนวนโพลิกอนจริงอาจแตกต่างไปจากค่าเป้าหมายขึ้นอยู่กับความซับซ้อนของจีออเมทรี
ช่วงค่าที่ใช้ได้จะแตกต่างกันไปตามระดับผู้ใช้:
- 100 ถึง 300,000 (รวมค่าขอบเขต)
- Name
- decimation_mode
- Type
- integer
- Description
เปิดใช้งานการลดจำนวนโพลิกอนแบบปรับตัวได้โดยการตั้งค่าระดับจำนวนโพลิกอน เมื่อตั้งค่านี้
target_polycountจะถูกละเว้นค่าที่ใช้ได้:
1: ปรับตัวได้ — จำนวนโพลิกอนระดับสูงสุด2: ปรับตัวได้ — จำนวนโพลิกอนระดับสูง3: ปรับตัวได้ — จำนวนโพลิกอนระดับกลาง4: ปรับตัวได้ — จำนวนโพลิกอนระดับต่ำ
- Name
- save_pre_remeshed_model
- Type
- boolean
- ค่าเริ่มต้น false
- Description
เมื่อตั้งค่าเป็น
trueMeshy จะจัดเก็บไฟล์ GLB เพิ่มเติมก่อนที่ขั้นตอนรีเมชจะเสร็จสมบูรณ์
- Name
- symmetry_mode
- Type
- string
- ⚠ เลิกใช้แล้ว
- ค่าเริ่มต้น auto
- Description
เลิกใช้ พารามิเตอร์นี้ไม่มีผลต่อผลลัพธ์อีกต่อไป
ฟิลด์
symmetry_modeควบคุมพฤติกรรมความสมมาตรระหว่างกระบวนการสร้างโมเดลค่าที่ใช้ได้:
off: ปิดใช้งานความสมมาตรauto: กำหนดและใช้ความสมมาตรโดยอัตโนมัติตามจีออเมทรีของอินพุตon: บังคับใช้ความสมมาตรระหว่างการสร้าง
- Name
- pose_mode
- Type
- string
- ค่าเริ่มต้น ""
- Description
ระบุ pose mode สำหรับโมเดลที่สร้างขึ้น
ค่าที่ใช้ได้:
a-pose: สร้างโมเดลในท่า At-pose: สร้างโมเดลในท่า T""(สตริงว่าง): ไม่มีการกำหนดท่าเฉพาะ
- Name
- is_a_t_pose
- Type
- boolean
- ⚠ เลิกใช้แล้ว
- ค่าเริ่มต้น false
- Description
ใช้
pose_modeแทน กำหนดว่าจะสร้างโมเดลในท่า A/T หรือไม่
- Name
- image_enhancement
- Type
- boolean
- ค่าเริ่มต้น true
- Description
ปรับปรุงรูปภาพอินพุตเพื่อผลลัพธ์ที่ดีขึ้น ตั้งค่าเป็น
falseเพื่อคงลักษณะที่ปรากฏของรูปภาพอินพุตไว้ตามเดิมโดยไม่มีการประมวลผลสไตล์ใด ๆรองรับเฉพาะเมื่อ
ai_modelเป็นmeshy-6,meshy-7.1หรือlatest
- Name
- remove_lighting
- Type
- boolean
- ค่าเริ่มต้น true
- Description
ลบไฮไลต์และเงาออกจากเท็กซ์เจอร์สีพื้นฐาน ทำให้ได้ผลลัพธ์ที่สะอาดขึ้นซึ่งทำงานได้ดีขึ้นภายใต้การจัดแสงที่กำหนดเอง
รองรับเฉพาะเมื่อ
ai_modelเป็นmeshy-6,meshy-7.1หรือlatest
- Name
- moderation
- Type
- boolean
- ค่าเริ่มต้น false
- Description
เมื่อตั้งค่าเป็น
trueเนื้อหาอินพุตจะถูกคัดกรองโดยอัตโนมัติเพื่อหาเนื้อหาที่อาจเป็นอันตราย หากตรวจพบเนื้อหาที่เป็นอันตราย งานจะไม่ดำเนินการต่อไปยังขั้นตอนการสร้างรูปภาพแต่ละรูปจาก
image_urlsและข้อความจากtexture_promptจะถูกคัดกรอง
- Name
- target_formats
- Type
- string[]
- Description
ระบุรูปแบบไฟล์ 3D ที่จะรวมอยู่ในผลลัพธ์ จะสร้างและส่งกลับเฉพาะรูปแบบที่ระบุไว้เท่านั้น ซึ่งสามารถลดเวลาที่ใช้ในการทำงานให้เสร็จสมบูรณ์ได้
ค่าที่ใช้ได้:
glb,obj,fbx,stl,usdz,3mfเมื่อไม่ระบุ ระบบจะสร้างทุกรูปแบบยกเว้น
3mfโดย3mfจะถูกรวมไว้เมื่อระบุอย่างชัดเจนเท่านั้น
- Name
- auto_size
- Type
- boolean
- ค่าเริ่มต้น false
- Description
เมื่อตั้งค่าเป็น
trueบริการจะใช้ AI vision เพื่อประมาณความสูงของวัตถุในโลกจริงโดยอัตโนมัติ และปรับขนาดโมเดลให้เหมาะสม จุดกำเนิดจะเป็นbottomโดยค่าเริ่มต้น เว้นแต่จะมีการตั้งค่าorigin_atอย่างชัดเจน
- Name
- alpha_thumbnail
- Type
- boolean
- ค่าเริ่มต้น false
- Description
เมื่อตั้งค่าเป็น
trueงานจะแสดงผลภาพตัวอย่างพื้นหลังโปร่งใส (RGBA) เพิ่มเติม และส่งกลับเป็นalpha_thumbnail_urlในการตอบสนอง GET ฟิลด์thumbnail_urlที่มีอยู่เดิมจะไม่เปลี่ยนแปลง
- Name
- multi_view_thumbnails
- Type
- boolean
- ค่าเริ่มต้น false
- Description
เมื่อตั้งค่าเป็น
trueงานจะแสดงผลภาพตัวอย่างสี่มุมมองหลัก (หน้า ขวา หลัง ซ้าย) เพิ่มเติม และส่งกลับภายใต้thumbnail_urlsในการตอบสนอง GET ฟิลด์thumbnail_urlที่มีอยู่เดิมจะไม่เปลี่ยนแปลง และยังคงชี้ไปยังมุมมองด้านหน้าเช่นเดิม จึงไม่ส่งผลกระทบต่อไคลเอนต์ที่มีอยู่เพิ่มเวลาในการทำงานของงานประมาณ 3 วินาที
auto_size = true- Name
- origin_at
- Type
- string
- ค่าเริ่มต้น bottom
- Description
ตำแหน่งของจุดกำเนิดเมื่อเปิดใช้งาน
auto_sizeค่าที่ใช้ได้:bottom,center
ค่าที่ส่งกลับ
พร็อพเพอร์ตี้ result ของการตอบสนองประกอบด้วย id ของงานหลายรูปเป็น 3D ที่สร้างขึ้นใหม่
รูปแบบความล้มเหลว
- Name
400 - Bad Request- Description
คำขอไม่สามารถยอมรับได้ สาเหตุที่พบบ่อย:
- พารามิเตอร์ที่ขาดหายไป: ต้องระบุ
image_urlsหรือinput_task_idอย่างใดอย่างหนึ่ง - งานอินพุตไม่ถูกต้อง:
input_task_idต้องอ้างอิงถึงงาน ข้อความเป็นรูปภาพ, รูปภาพเป็นรูปภาพ หรืองานแบบมุมมองหลายด้านที่มีสถานะSUCCEEDED - จำนวนรูปภาพไม่ถูกต้อง:
image_urlsต้องมีรูปภาพระหว่าง 1 ถึง 4 รูป และtexture_image_urlsระหว่าง 1 ถึง 4 รูป - รูปแบบรูปภาพไม่ถูกต้อง: มีรูปภาพหนึ่งรูปหรือมากกว่าใน
image_urlsที่ไม่รองรับรูปแบบดังกล่าว - อินพุตเท็กซ์เจอร์ที่ขัดแย้งกัน:
texture_image_urlsไม่สามารถใช้ร่วมกับtexture_image_urlหรือtexture_promptได้ และต้องมีshould_texture: true - โมเดลไม่รองรับสำหรับเท็กซ์เจอร์แบบมุมมองหลายด้าน:
texture_image_urlsต้องใช้ai_modelเป็นmeshy-7.1หรือlatest - URL ที่ไม่สามารถเข้าถึงได้: ไม่สามารถดาวน์โหลดองค์ประกอบหนึ่งหรือมากกว่าใน
image_urlsหรือtexture_image_urlsได้ - ความละเอียดไม่รองรับสำหรับอินพุตหลายรูปภาพ:
geometry_resolution: "4k"ไม่สามารถใช้ได้กับเอนด์พอยต์นี้ ให้ใช้2kหรือstandardแทน
- พารามิเตอร์ที่ขาดหายไป: ต้องระบุ
- Name
401 - Unauthorized- Description
การยืนยันตัวตนล้มเหลว โปรดตรวจสอบ API คีย์ของคุณ
- Name
402 - Payment Required- Description
เครดิตไม่เพียงพอสำหรับการทำงานนี้
- Name
429 - Too Many Requests- Description
คุณได้เกินขีดจำกัดอัตราการใช้งานแล้ว
Request
# Simple request
curl https://api.meshy.ai/openapi/v1/multi-image-to-3d \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"image_urls": [
"<your publicly accessible image url or base64-encoded data URI>",
"<your second publicly accessible image url or base64-encoded data URI>"
]
}'
# With Ultra 2K geometry, PBR texturing and GLB format
curl https://api.meshy.ai/openapi/v1/multi-image-to-3d \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"image_urls": [
"<your publicly accessible image url or base64-encoded data URI>",
"<your second publicly accessible image url or base64-encoded data URI>"
],
"ai_model": "meshy-7.1",
"geometry_resolution": "2k",
"should_texture": true,
"enable_pbr": true,
"target_formats": ["glb"]
}'
Response
{
"result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}
ดึงข้อมูล Task หลายรูปเป็น 3D
เอนด์พอยต์นี้ช่วยให้คุณสามารถดึงข้อมูล task หลายรูปเป็น 3D โดยใช้ id ของ task ที่ถูกต้อง
โปรดดู The Multi-Image to 3D Task Object เพื่อดูว่ามีคุณสมบัติใดบ้างที่รวมอยู่ใน
ออบเจ็กต์ task หลายรูปเป็น 3D
พารามิเตอร์
- Name
- id
- Type
- path
- Description
ตัวระบุเฉพาะ (unique identifier) สำหรับ task หลายรูปเป็น 3D ที่ต้องการดึงข้อมูล
ค่าที่ส่งกลับ
การตอบกลับจะมีออบเจ็กต์ task หลายรูปเป็น 3D อยู่ด้วย โปรดดูรายละเอียดที่ส่วน The Multi-Image to 3D Task Object
Request
curl https://api.meshy.ai/openapi/v1/multi-image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "multi-image-to-3d",
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
"fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
"obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
"usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
"stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***",
"pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"thumbnail_urls": {
"front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
"right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
"back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
"left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
},
"texture_prompt": "",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"expires_at": 1692771679037,
"finished_at": 1692771669037,
"status": "SUCCEEDED",
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
"metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
"normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
"roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
"emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
}
],
"preceding_tasks": 0,
"task_error": {
"message": ""
},
"consumed_credits": 30
}
ลบงานหลายรูปเป็น 3D
เอนด์พอยต์นี้จะลบงานหลายรูปเป็น 3D อย่างถาวร รวมถึงโมเดลและข้อมูลทั้งหมดที่เกี่ยวข้อง การกระทำนี้ไม่สามารถย้อนกลับได้
Path Parameters
- Name
- id
- Type
- path
- Description
ID ของงานหลายรูปเป็น 3D ที่ต้องการลบ
สถานะของงาน
งานที่ยังคงอยู่ในสถานะ PENDING จะถูกลบและเครดิตที่ถูกใช้ไปตอนสร้าง
จะได้รับการคืนกลับ
งานที่อยู่ในสถานะ IN_PROGRESS แล้วไม่สามารถลบได้: คำขอจะถูกปฏิเสธ
ด้วย 409 Conflict และงานจะยังคงทำงานต่อไป เครดิตสำหรับงานที่ worker
ได้เริ่มดำเนินการไปแล้วจะไม่สามารถขอคืนได้ ดังนั้นการลบงานระหว่างที่กำลังทำงานอยู่
จะทำให้คุณเสียทั้งเครดิตและผลลัพธ์ไปพร้อมกัน ให้รอจนกว่างานจะถึงสถานะ
SUCCEEDED, FAILED หรือ CANCELED แล้วจึงค่อยลบ
งานที่อยู่ในสถานะสุดท้าย (SUCCEEDED, FAILED หรือ CANCELED) จะถูกลบ
โดยไม่มีการคืนเครดิต
ค่าที่ส่งกลับ
ส่งกลับ 200 OK เมื่อสำเร็จ หรือ 409 Conflict เมื่องานอยู่ในสถานะ
IN_PROGRESS
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/multi-image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
// 200 OK on success, with an empty body.
//
// 409 Conflict when the task is IN_PROGRESS — the task is left running:
{
"message": "Task is IN_PROGRESS and cannot be deleted. Credits for a task the worker has already started are not refundable; wait for it to reach SUCCEEDED, FAILED or CANCELED, then delete it."
}
แสดงรายการงาน Multi-Image to 3D
เอนด์พอยต์นี้ช่วยให้คุณสามารถดึงรายการงาน หลายรูปเป็น 3D ได้
พารามิเตอร์
แอตทริบิวต์ที่ไม่บังคับ
- Name
- page_num
- Type
- integer
- Description
หมายเลขหน้าสำหรับการแบ่งหน้า เริ่มต้นและมีค่าเริ่มต้นเป็น
1
- Name
- page_size
- Type
- integer
- Description
จำนวนรายการต่อหน้า ค่าเริ่มต้นคือ
10รายการ สูงสุดที่อนุญาตคือ100รายการ
- Name
- sort_by
- Type
- string
- Description
ฟิลด์ที่ใช้สำหรับจัดเรียง ค่าที่ใช้ได้:
+created_at: จัดเรียงตามเวลาที่สร้างจากน้อยไปมาก-created_at: จัดเรียงตามเวลาที่สร้างจากมากไปน้อย
ผลลัพธ์ที่ส่งกลับ
ส่งกลับรายการแบบแบ่งหน้าของ The Multi-Image to 3D Task Objects
Request
curl https://api.meshy.ai/openapi/v1/multi-image-to-3d?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
[
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "multi-image-to-3d",
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
"fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
"obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
"usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
"pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"thumbnail_urls": {
"front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
"right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
"back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
"left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
},
"texture_prompt": "",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"expires_at": 1692771679037,
"finished_at": 1692771669037,
"status": "SUCCEEDED",
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
"metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
"normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
"roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
"emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
}
],
"preceding_tasks": 0,
"task_error": {
"message": ""
},
"consumed_credits": 30
}
]
สตรีมงานหลายรูปเป็น 3D
เอนด์พอยต์นี้จะสตรีมข้อมูลอัปเดตแบบเรียลไทม์สำหรับงานหลายรูปเป็น 3D โดยใช้ Server-Sent Events (SSE)
พารามิเตอร์
- Name
- id
- Type
- path
- Description
ตัวระบุที่ไม่ซ้ำกันของงานหลายรูปเป็น 3D ที่ต้องการสตรีม
ค่าที่ส่งกลับ
ส่งกลับสตรีมของ The Multi-Image to 3D Task Objects ในรูปแบบ Server-Sent Events
สำหรับงานที่มีสถานะ PENDING หรือ IN_PROGRESS สตรีมการตอบกลับจะมีเฉพาะฟิลด์ progress และ status ที่จำเป็นเท่านั้น
Request
curl -N https://api.meshy.ai/openapi/v1/multi-image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response Stream
// Error event example
event: error
data: {
"status_code": 404,
"message": "Task not found"
}
// Message event examples illustrate task progress.
// For PENDING or IN_PROGRESS tasks, the response stream will not include all fields.
event: message
data: {
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "multi-image-to-3d",
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
"fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
"obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
"usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
"stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***",
"pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"thumbnail_urls": {
"front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
"right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
"back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
"left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
},
"texture_prompt": "",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"expires_at": 1692771679037,
"finished_at": 1692771669037,
"status": "SUCCEEDED",
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
"metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
"normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
"roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
"emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
}
],
"preceding_tasks": 0,
"task_error": {
"message": ""
},
"consumed_credits": 30
}
The Multi-Image to 3D Task Object
Multi-Image to 3D Task object เป็นหน่วยงานที่ Meshy ใช้ติดตามเพื่อสร้างโมเดล 3D จากภาพหลายภาพ (ระหว่าง 1 ถึง 4 ภาพ) ภาพเหล่านี้ควรเป็นวัตถุชิ้นเดียวกัน โดยควรมาจากมุมมองหรือมุมที่แตกต่างกัน อ็อบเจกต์นี้มีคุณสมบัติดังต่อไปนี้:
Properties
- Name
- id
- Type
- string
- Description
รหัสเฉพาะสำหรับ task แม้ว่าเราจะใช้ k-sortable UUID สำหรับ task id ในรายละเอียดการดำเนินการ แต่คุณ ไม่ควร ตั้งสมมติฐานใด ๆ เกี่ยวกับรูปแบบของ id
- Name
- type
- Type
- string
- Description
ประเภทของ Multi-Image to 3D task ค่านี้คือ
multi-image-to-3d
- Name
- model_urls
- Type
- object
- Description
URL สำหรับดาวน์โหลดไฟล์โมเดล 3D ที่มีเท็กซ์เจอร์ซึ่งสร้างโดย Meshy คุณสมบัติสำหรับรูปแบบใดรูปแบบหนึ่งจะถูกละไว้หากไม่ได้สร้างรูปแบบนั้น แทนที่จะส่งค่าเป็นสตริงว่าง
- Name
glb- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ GLB
- Name
fbx- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ FBX
- Name
obj- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ OBJ
- Name
usdz- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ USDZ
- Name
mtl- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ MTL ซึ่งจะส่งมาพร้อมกับการส่งออก OBJ เมื่อมีเท็กซ์เจอร์
- Name
stl- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ STL
- Name
3mf- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ 3MF จะปรากฏเฉพาะเมื่อมีการขอ
3mfผ่านtarget_formats
- Name
pre_remeshed_glb- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ GLB ต้นฉบับก่อนการ remesh
มีให้ใช้งานเฉพาะเมื่อ task ถูกสร้างขึ้นโดยมีทั้ง
should_remesh: trueและsave_pre_remeshed_model: true
- Name
- thumbnail_url
- Type
- string
- Description
URL สำหรับดาวน์โหลดภาพย่อของไฟล์โมเดล เทียบเท่ากับ
thumbnail_urls.frontเมื่อมีอยู่ เก็บไว้เพื่อความเข้ากันได้ย้อนหลัง
- Name
- alpha_thumbnail_url
- Type
- string
- Description
URL สำหรับดาวน์โหลดเวอร์ชันพื้นหลังโปร่งใส (RGBA) ของ
thumbnail_urlจะปรากฏเฉพาะเมื่อ task ถูกสร้างขึ้นด้วยalpha_thumbnail: trueและการแสดงตัวอย่างแบบโปร่งใสถูกเรนเดอร์สำเร็จ ไม่เช่นนั้นฟิลด์นี้จะถูกละไว้
- Name
- thumbnail_urls
- Type
- object
- Description
URL สำหรับดาวน์โหลดภาพย่อทั้งสี่มุมมองหลักของโมเดล 3D ที่สร้างขึ้น แต่ละค่าคือ URL ที่มีการเซ็นชื่อไปยังภาพ PNG ขนาด 512×512 ที่เรนเดอร์ด้วยวัสดุและแสงเดียวกันกับ
thumbnail_urlมีประโยชน์สำหรับการดูตัวอย่างโมเดลจากหลายมุมในไปป์ไลน์แบบแบตช์โดยไม่ต้องดาวน์โหลดไฟล์ GLBจะปรากฏเฉพาะเมื่อ task ถูกสร้างขึ้นด้วย
multi_view_thumbnails: trueและมีสถานะถึงSUCCEEDEDแล้ว task ที่เก่ากว่าและ task ที่สร้างขึ้นโดยไม่ได้เปิดใช้ตัวเลือกนี้จะไม่มีฟิลด์นี้- Name
- front
- Type
- string
- Description
มุมมองด้านหน้า หมุน 0° รอบแกนแนวตั้ง (ตรงกับ
thumbnail_url)
- Name
- right
- Type
- string
- Description
มุมมองด้านขวา หมุน 90°
- Name
- back
- Type
- string
- Description
มุมมองด้านหลัง หมุน 180°
- Name
- left
- Type
- string
- Description
มุมมองด้านซ้าย หมุน 270°
- Name
- texture_prompt
- Type
- string
- Description
ข้อความ prompt ที่ใช้เพื่อชี้นำกระบวนการทำเท็กซ์เจอร์
- Name
- texture_image_urls
- Type
- string[]
- Description
URL สำหรับดาวน์โหลดภาพอ้างอิงเท็กซ์เจอร์ที่ใช้สร้าง task ตามลำดับที่ให้มา จะปรากฏเฉพาะเมื่อ task ถูกสร้างขึ้นด้วย
texture_image_urls
- Name
- ultra_mode
- Type
- boolean
- ⚠ เลิกใช้แล้ว
- Description
เลิกใช้แล้ว ให้อ่าน
geometry_resolutionแทน
- Name
- geometry_resolution
- Type
- string
- Description
ระดับ Ultra ที่ task ทำงาน (
2k) จะถูกละไว้สำหรับstandard
- Name
- progress
- Type
- integer
- Description
progress ของ task หากยังไม่เริ่ม task คุณสมบัตินี้จะเป็น
0เมื่อ task สำเร็จแล้ว ค่านี้จะกลายเป็น100
- Name
- started_at
- Type
- timestamp
- Description
ไทม์สแตมป์ของเวลาที่ task เริ่มทำงาน หน่วยเป็นมิลลิวินาที หากยังไม่เริ่ม task คุณสมบัตินี้จะเป็น
0ไทม์สแตมป์แสดงจำนวนมิลลิวินาทีที่ผ่านไปตั้งแต่วันที่ 1 มกราคม 1970 UTC ตามมาตรฐาน RFC 3339
ตัวอย่างเช่น วันศุกร์ที่ 1 กันยายน 2023 เวลา 12:00:00 น. GMT จะแสดงเป็น1693569600000สิ่งนี้ใช้กับ ไทม์สแตมป์ ทั้งหมด ใน Meshy API
- Name
- created_at
- Type
- timestamp
- Description
ไทม์สแตมป์ของเวลาที่สร้าง task หน่วยเป็นมิลลิวินาที
- Name
- expires_at
- Type
- timestamp
- Description
ไทม์สแตมป์ของเวลาที่ผลลัพธ์ของ task จะหมดอายุ หน่วยเป็นมิลลิวินาที
- Name
- finished_at
- Type
- timestamp
- Description
ไทม์สแตมป์ของเวลาที่ task เสร็จสิ้น หน่วยเป็นมิลลิวินาที หากยังไม่เสร็จสิ้น task คุณสมบัตินี้จะเป็น
0
- Name
- status
- Type
- string
- Description
สถานะของ task ค่าที่เป็นไปได้คือหนึ่งใน
PENDING,IN_PROGRESS,SUCCEEDED,FAILED,CANCELED
- Name
- texture_urls
- Type
- array
- Description
อาร์เรย์ของอ็อบเจกต์ URL เท็กซ์เจอร์ที่สร้างขึ้นจาก task โดยปกติจะมีอ็อบเจกต์ URL เท็กซ์เจอร์เพียง หนึ่ง รายการเท่านั้น URL เท็กซ์เจอร์แต่ละรายการมีคุณสมบัติดังต่อไปนี้:
- Name
base_color- Type
- string
- Description
URL สำหรับดาวน์โหลดภาพแมปสีพื้นฐาน (base color)
- Name
metallic- Type
- string
- Description
URL สำหรับดาวน์โหลดภาพแมปโลหะ (metallic)
หาก task ถูกสร้างขึ้นด้วย
enable_pbr: falseคุณสมบัตินี้จะถูกละไว้
- Name
normal- Type
- string
- Description
URL สำหรับดาวน์โหลดภาพนอร์มัลแมป
หาก task ถูกสร้างขึ้นด้วย
enable_pbr: falseคุณสมบัตินี้จะถูกละไว้
- Name
roughness- Type
- string
- Description
URL สำหรับดาวน์โหลดภาพแมปความหยาบ (roughness)
หาก task ถูกสร้างขึ้นด้วย
enable_pbr: falseคุณสมบัตินี้จะถูกละไว้
- Name
emission- Type
- string
- Description
URL สำหรับดาวน์โหลดภาพแมปการเปล่งแสง (emission)
หาก task ถูกสร้างขึ้นด้วย
enable_pbr: falseหรือai_modelเป็นmeshy-6-liteคุณสมบัตินี้จะถูกละไว้
- Name
- preceding_tasks
- Type
- integer
- Description
จำนวน task ที่อยู่ก่อนหน้า
ค่าของฟิลด์นี้มีความหมายเฉพาะเมื่อสถานะของ task เป็น
PENDING
- Name
- task_error
- Type
- object
- Description
รายละเอียดข้อผิดพลาดสำหรับ task ที่ล้มเหลว ดูข้อมูลอ้างอิงอ็อบเจกต์
task_errorแบบเต็มได้ที่ ข้อผิดพลาด
- Name
- consumed_credits
- Type
- integer
- Description
จำนวนเครดิตที่ใช้ไปสำหรับ task นี้ จะปรากฏเมื่อสถานะของ task เป็น
PENDING,IN_PROGRESS, หรือSUCCEEDEDจะคืนค่า0สำหรับ task ที่FAILED(เครดิตจะได้รับคืนเมื่อเกิดความล้มเหลว)
Example Multi-Image to 3D Task Object
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "multi-image-to-3d",
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
"fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
"obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
"usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
"stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***",
"pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"thumbnail_urls": {
"front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
"right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
"back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
"left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
},
"texture_prompt": "",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"expires_at": 1692771679037,
"finished_at": 1692771669037,
"status": "SUCCEEDED",
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
"metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
"normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
"roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
"emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
}
],
"preceding_tasks": 0,
"task_error": {
"message": ""
},
"consumed_credits": 30,
}