ข้อความเป็น 3D API
ข้อความเป็น 3D API เป็นฟีเจอร์ที่ช่วยให้คุณสามารถผนวกความสามารถด้านข้อความเป็น 3D ของ Meshy เข้ากับแอปพลิเคชันของคุณเองได้ ในส่วนนี้ คุณจะพบข้อมูลทั้งหมด ที่จำเป็นต่อการเริ่มต้นใช้งาน API นี้
ข้อความเป็น 3D ใช้เวิร์กโฟลว์แบบสองขั้นตอน ขั้นแรก ให้สร้างงาน preview (mode: "preview") เพื่อสร้างเมช 3D โดยไม่มีเท็กซ์เจอร์ เพื่อให้คุณสามารถประเมินรูปทรงได้ จากนั้น ส่ง task ID ของ preview ที่เสร็จสมบูรณ์แล้วไปยังงาน refine (mode: "refine") เพื่อนำเท็กซ์เจอร์มาใส่ในเมช ทั้งสองขั้นตอนใช้เอนด์พอยต์เดียวกัน
สร้างงาน Text to 3D Preview
เอนด์พอยต์นี้สร้างงาน Text to 3D preview ซึ่งสร้างเมช 3D ที่ยังไม่มีพื้นผิว (จีออเมทรีเท่านั้น) จาก prompt ที่เป็นข้อความ นี่เป็นขั้นตอนแรกของเวิร์กโฟลว์สองขั้นตอน เมื่อ preview สำเร็จแล้ว ให้ใช้ task ID ที่ได้รับคืนมาเพื่อสร้างงาน refine สำหรับการใส่พื้นผิว อ้างอิง The Text to 3D Task Object สำหรับ response schema แบบเต็ม
งานนี้ทำงานในพื้นหลัง สำหรับระยะเวลาที่มักใช้ ดูที่ Processing Times
พารามิเตอร์
- Name
- mode
- Type
- string
- จำเป็น
- Description
ฟิลด์นี้ควรตั้งเป็น "preview" เมื่อสร้างงาน preview
- Name
- prompt
- Type
- string
- จำเป็น
- Description
อธิบายว่าโมเดล 3D เป็นวัตถุชนิดใด สูงสุด 800 ตัวอักษร
- Name
- model_type
- Type
- string
- ค่าเริ่มต้น standard
- Description
ระบุประเภทของการสร้างเมช 3D
ค่าที่ใช้ได้:
standard: การสร้างเมช 3D แบบรายละเอียดสูงทั่วไปsmart-topology: เลือกโมเดล Smart Topology ด้วยai_model(meshy-t2)lowpoly(เลิกใช้ และจะถูกยกเลิกในวันที่ 30 ตุลาคม 2026): สร้างเมชแบบโลว์โพลีที่ปรับให้เหมาะกับโพลิกอนที่สะอาดขึ้น เราแนะนำให้ใช้ Meshy T2 แทน:smart-topologyกับmeshy-t2
เมื่อเลือก
smart-topologyแล้วshould_remeshและdecimation_modeจะถูกละเว้น และรับเฉพาะtopology: triangleเท่านั้นlowpolyจะถูกยกเลิกในวันที่ 30 ตุลาคม 2026 หลังจากวันดังกล่าว คำขอที่มีmodel_type: "lowpoly"จะได้รับข้อผิดพลาดกลับมา เราแนะนำให้เปลี่ยนไปใช้ Meshy T2 (model_type: "smart-topology"ร่วมกับai_model: "meshy-t2") เมื่อเลือกlowpolyแล้วai_model,topology,target_polycountและshould_remeshจะถูกละเว้น
- Name
- ai_model
- Type
- string
- ค่าเริ่มต้น latest
- Description
ID ของโมเดลที่จะใช้ ค่าที่ใช้ได้ขึ้นอยู่กับ
model_typeการสร้างแบบ Standard (
model_type: standard):meshy-6-lite,meshy-6,meshy-7.1,latest(Meshy 7.1)meshy-7(เลิกใช้): ใช้meshy-7.1แทน
การสร้างแบบ Smart Topology (
model_type: smart-topology):meshy-t2(ค่าเริ่มต้น): โมเดล Smart Topology — topology ที่สะอาดขึ้น มีการแยกชิ้นส่วนตามธรรมชาติ ผลลัพธ์เป็นสามเหลี่ยม และสามารถกำหนดจำนวนหน้าได้ด้วยtarget_polycount
- Name
- geometry_resolution
- Type
- string
- ค่าเริ่มต้น standard
- Description
รอบการสร้างจีออเมทรี
2kจะรัน Ultra pass ที่ 2048³;4kจะรันที่ 4096³ เพื่อ รายละเอียดพื้นผิวที่ละเอียดที่สุดค่าที่ใช้ได้:
standard,2k,4kรองรับเฉพาะใน mode
previewเท่านั้น ต้องใช้meshy-7.1หรือlatest
- Name
- ultra_mode
- Type
- boolean
- ⚠ เลิกใช้แล้ว
- ค่าเริ่มต้น false
- Description
ใช้
geometry_resolutionแทนultra_mode: trueเทียบเท่ากับgeometry_resolution: "2k"
- Name
- should_remesh
- Type
- boolean
- ค่าเริ่มต้น false (Meshy 6 and Meshy 7 models), true (others)
- Description
ควบคุมว่าจะเปิดใช้งานขั้นตอน remesh หรือไม่ สำหรับโมเดลคุณภาพสูงสุด เราแนะนำให้ตั้งค่า
should_remeshเป็นfalse
should_remesh = true- Name
- topology
- Type
- string
- ค่าเริ่มต้น triangle
- Description
ระบุ topology ของโมเดลที่สร้างขึ้น
ค่าที่ใช้ได้:
quad: สร้างเมชที่ส่วนใหญ่เป็นรูปสี่เหลี่ยมtriangle: สร้างเมชสามเหลี่ยมแบบลดจำนวนโพลิกอน
ผลลัพธ์ของ Smart Topology เป็นสามเหลี่ยมเท่านั้น การร้องขอ
quadร่วมกับai_model: meshy-t2จะได้รับข้อผิดพลาดกลับมา
- Name
- decimation_mode
- Type
- integer
- Description
เปิดใช้งานการลดจำนวนโพลิกอนแบบปรับตัวโดยการตั้งค่าระดับจำนวนโพลิกอน เมื่อตั้งค่านี้
target_polycountจะถูกละเว้นค่าที่ใช้ได้:
1: แบบปรับตัว — จำนวนโพลิกอนสูงสุด2: แบบปรับตัว — จำนวนโพลิกอนสูง3: แบบปรับตัว — จำนวนโพลิกอนปานกลาง4: แบบปรับตัว — จำนวนโพลิกอนต่ำ
- Name
- target_polycount
- Type
- integer
- Description
จำนวนโพลิกอน (หน้า) เป้าหมายในผลลัพธ์ จำนวนจริงอาจเบี่ยงเบนจากเป้าหมายขึ้นอยู่กับจีออเมทรี
target_polycountมีผลใน 2 กรณีที่เป็นอิสระต่อกัน:- Remesh — กับ
should_remesh: trueบนโมเดลstandardเมชจะถูกรีเมช (ลดจำนวนโพลิกอน) ให้ใกล้เคียงกับจำนวนนี้ ช่วงตั้งแต่ 100 ถึง 300,000 ค่าเริ่มต้น 30,000 หากตั้งค่าdecimation_modeไว้ จะมีลำดับความสำคัญเหนือกว่า และtarget_polycountจะถูกละเว้น - Smart Topology — กับ
model_type: smart-topologyและai_model: meshy-t2โมเดลจะถูกสร้างขึ้นโดยตรงด้วยจำนวนหน้านี้ โดยไม่มีการรัน remesh และไม่จำเป็นต้องใช้should_remeshช่วงตั้งแต่ 100 ถึง 15,000 ค่าเริ่มต้น 4,000
- Remesh — กับ
- 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
- art_style
- Type
- string
- ⚠ เลิกใช้แล้ว
- ค่าเริ่มต้น realistic
- Description
ไม่รองรับ Meshy-6 คำขอที่ใช้ Meshy-6 จะละเว้น
art_styleและบางชุดค่าผสมอาจทำให้เกิดข้อผิดพลาด ค่าที่ใช้ได้:realistic,sculptureenable_pbrควรตั้งค่าเป็นfalseเมื่อใช้สไตล์ Sculpture เนื่องจากสไตล์ Sculpture จะสร้างชุด PBR แมปของตัวเอง
- Name
- moderation
- Type
- boolean
- ค่าเริ่มต้น false
- Description
เมื่อตั้งค่าเป็น
trueเนื้อหาอินพุตจะถูกตรวจสอบโดยอัตโนมัติเพื่อหาเนื้อหาที่อาจเป็นอันตราย หากตรวจพบเนื้อหาที่เป็นอันตราย งานจะไม่ดำเนินการต่อไปยังการสร้างข้อความจาก
promptจะถูกตรวจสอบ
- Name
- target_formats
- Type
- string[]
- Description
ระบุรูปแบบไฟล์ 3D ที่จะรวมอยู่ในผลลัพธ์ จะมีการสร้างและส่งคืนเฉพาะรูปแบบที่ร้องขอเท่านั้น ซึ่งสามารถลดเวลาที่ใช้ในการทำงานให้เสร็จสมบูรณ์ได้ เมื่อไม่ระบุ จะรวมรูปแบบที่รองรับทั้งหมด
ค่าที่ใช้ได้:
glb,obj,fbx,stl,usdz,3mfเมื่อไม่ระบุ จะมีการสร้างรูปแบบทั้งหมดยกเว้น
3mfโดย3mfจะรวมอยู่ด้วยก็ต่อเมื่อมีการระบุอย่างชัดเจนเท่านั้น
- Name
- alpha_thumbnail
- Type
- boolean
- ค่าเริ่มต้น false
- Description
เมื่อตั้งค่าเป็น
trueงานจะเรนเดอร์เวอร์ชันพื้นหลังโปร่งใส (RGBA) ของ preview เพิ่มเติม และส่งคืนเป็นalpha_thumbnail_urlใน response ของ GET ฟิลด์thumbnail_urlที่มีอยู่เดิมจะไม่เปลี่ยนแปลง
- Name
- auto_size
- Type
- boolean
- ค่าเริ่มต้น false
- Description
เมื่อตั้งค่าเป็น
trueบริการจะใช้ AI vision เพื่อประมาณความสูงของวัตถุในโลกจริงโดยอัตโนมัติ และปรับขนาดโมเดลให้สอดคล้องกัน จุดกำเนิดจะเป็นbottomโดยค่าเริ่มต้น เว้นแต่จะตั้งค่าorigin_atไว้อย่างชัดเจน
auto_size = true- Name
- origin_at
- Type
- string
- ค่าเริ่มต้น bottom
- Description
ตำแหน่งของจุดกำเนิดเมื่อเปิดใช้งาน
auto_sizeค่าที่ใช้ได้:
bottom,center
ค่าที่ส่งกลับ
คุณสมบัติ result ของ response จะมี id ของงาน Text to 3D ที่สร้างขึ้นใหม่
รูปแบบความล้มเหลว
- Name
400 - Bad Request- Description
คำขอไม่สามารถยอมรับได้ สาเหตุทั่วไป:
- ขาดพารามิเตอร์: พารามิเตอร์ที่จำเป็น (เช่น
prompt,mode) ขาดหายไป - พารามิเตอร์ไม่ถูกต้อง:
art_styleไม่ใช่หนึ่งในค่าที่อนุญาต - prompt ยาวเกินไป:
promptเกินขีดจำกัดจำนวนตัวอักษร - โมเดลไม่รองรับ low poly:
ai_model: "meshy-6-lite"ไม่รองรับmodel_type: "lowpoly" - โมเดลไม่รองรับ Ultra:
geometry_resolutionต้องใช้meshy-7.1หรือlatest
- ขาดพารามิเตอร์: พารามิเตอร์ที่จำเป็น (เช่น
- Name
401 - Unauthorized- Description
การยืนยันตัวตนล้มเหลว กรุณาตรวจสอบ API คีย์ของคุณ
- Name
402 - Payment Required- Description
เครดิตไม่เพียงพอสำหรับการดำเนินงานนี้
- Name
429 - Too Many Requests- Description
คุณเกินขีดจำกัดอัตราการใช้งานแล้ว
Request
# Simple preview with required params only
curl https://api.meshy.ai/openapi/v2/text-to-3d \
-H 'Authorization: Bearer ${YOUR_API_KEY}' \
-H 'Content-Type: application/json' \
-d '{
"mode": "preview",
"prompt": "a monster mask"
}'
# Preview with Ultra 4K geometry, remesh and A-pose
curl https://api.meshy.ai/openapi/v2/text-to-3d \
-H 'Authorization: Bearer ${YOUR_API_KEY}' \
-H 'Content-Type: application/json' \
-d '{
"mode": "preview",
"prompt": "a futuristic robot warrior",
"ai_model": "meshy-7.1",
"geometry_resolution": "4k",
"should_remesh": true,
"target_polycount": 100000,
"pose_mode": "a-pose",
"target_formats": ["glb"]
}'
Response
{
"result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}
สร้าง Task Refine สำหรับข้อความเป็น 3D
เอนด์พอยต์นี้สร้าง task refine สำหรับข้อความเป็น 3D ซึ่งจะใส่เท็กซ์เจอร์ให้กับเมชพรีวิวที่เสร็จสมบูรณ์แล้ว คุณต้องระบุ preview_task_id จากtask พรีวิวที่สำเร็จ นี่คือขั้นตอนที่สองของกระบวนการทำงานสองขั้นตอน
task นี้ทำงานอยู่เบื้องหลัง สำหรับระยะเวลาที่มักใช้ โปรดดูที่ Processing Times
พารามิเตอร์
- Name
- mode
- Type
- string
- จำเป็น
- Description
ฟิลด์นี้ควรตั้งค่าเป็น "refine" เมื่อสร้าง refine task
- Name
- preview_task_id
- Type
- string
- จำเป็น
- Description
id ของ preview task ที่เกี่ยวข้อง
สถานะของ preview task ที่ระบุต้องเป็น
SUCCEEDED
- Name
- enable_pbr
- Type
- boolean
- ค่าเริ่มต้น false
- Description
สร้าง PBR แมป (metallic, roughness, normal) เพิ่มเติมจาก base color นอกจากนี้ยังมี emission map รวมอยู่ด้วยเมื่อ
ai_modelเป็นmeshy-6ยกเว้นที่texture_resolution: 8k(จะไม่มีการสร้าง emission map)meshy-6-lite,meshy-7.1และlatestจะไม่สร้าง emission map และการ refine ของพรีวิวmeshy-t2ที่ไม่ได้ตั้งค่าai_modelก็เช่นกัน
- Name
- texture_resolution
- Type
- string
- ค่าเริ่มต้น 2k
- Description
ความละเอียดของเท็กซ์เจอร์ base color หนึ่งในค่า
2k(2048×2048),4k(4096×4096) หรือ8k(8192×8192) ความละเอียดที่สูงขึ้นจะจับรายละเอียดพื้นผิวได้มากขึ้น ใช้ได้เฉพาะกับrefinemode เท่านั้น4kและ8kต้องใช้ai_modelเป็นmeshy-6,meshy-7.1หรือlatestที่8kจะไม่มีการสร้าง emission map
- 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และ.webpขนาดไฟล์สูงสุด: 20 MB
มีสองวิธีในการระบุรูปภาพ:
- 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
- ai_model
- Type
- string
- ค่าเริ่มต้น inherited from the preview task
- Description
ID ของโมเดลที่จะใช้สำหรับการ refine
ค่าที่ใช้ได้:
meshy-6-lite,meshy-6,meshy-7.1,latest(Meshy 7.1)meshy-7(เลิกใช้): ใช้meshy-7.1แทน
ละเว้นพารามิเตอร์นี้เพื่อสืบทอดโมเดลที่ใช้โดย preview task ซึ่งจะทำให้พรีวิวและ refine ของมันใช้โมเดลเดียวกันตลอดกระบวนการ ระบุค่าอย่างชัดเจนเพื่อแทนที่การสืบทอดนั้น
การระบุ
latestอย่างชัดเจนจะถูกตีความที่นี่เหมือนกับที่เกิดขึ้นใน preview task (ปัจจุบันคือ Meshy 7.1) ดังนั้นพรีวิวlatestและ refinelatestของมันจะใช้โมเดลเท็กซ์เจอร์เดียวกันเสมอ
- Name
- moderation
- Type
- boolean
- ค่าเริ่มต้น false
- Description
เมื่อตั้งค่าเป็น
trueเนื้อหาที่ป้อนเข้ามาจะถูกตรวจสอบโดยอัตโนมัติเพื่อหาเนื้อหาที่อาจเป็นอันตราย หากตรวจพบเนื้อหาที่เป็นอันตราย task จะไม่ดำเนินการต่อไปยังขั้นตอนการสร้างทั้งข้อความจาก
texture_promptและรูปภาพจากtexture_image_urlจะถูกตรวจสอบ
- Name
- remove_lighting
- Type
- boolean
- ค่าเริ่มต้น true
- Description
ลบแสงไฮไลต์และเงาออกจากเท็กซ์เจอร์ base color ทำให้ได้ผลลัพธ์ที่สะอาดขึ้นและใช้งานได้ดีกว่าภายใต้การตั้งค่าแสงแบบกำหนดเอง
มีผลเฉพาะเมื่อ
ai_modelเป็นmeshy-6เท่านั้นmeshy-7.1และlatestจะยอมรับค่านี้แต่ไม่นำไปใช้งาน เช่นเดียวกับการ refine ของพรีวิวmeshy-t2ที่ไม่ได้ตั้งค่าai_modelการตั้งค่านี้กับmeshy-6-liteจะส่งคืนข้อผิดพลาด
- Name
- target_formats
- Type
- string[]
- Description
ระบุรูปแบบไฟล์ 3D ที่จะรวมอยู่ในผลลัพธ์ เฉพาะรูปแบบที่ร้องขอเท่านั้นที่จะถูกสร้างและส่งคืน ซึ่งสามารถลดเวลาการทำงานของ task ได้ หากละเว้นพารามิเตอร์นี้ จะรวมรูปแบบที่รองรับทั้งหมด
ค่าที่ใช้ได้:
glb,obj,fbx,stl,usdz,3mfหากละเว้นพารามิเตอร์นี้ จะมีการสร้างรูปแบบทั้งหมดยกเว้น
3mfโดย3mfจะรวมอยู่ด้วยก็ต่อเมื่อมีการระบุอย่างชัดเจนเท่านั้น
- Name
- alpha_thumbnail
- Type
- boolean
- ค่าเริ่มต้น false
- Description
เมื่อตั้งค่าเป็น
truetask จะเรนเดอร์เวอร์ชันพรีวิวแบบพื้นหลังโปร่งใส (RGBA) เพิ่มเติม และส่งคืนเป็นalpha_thumbnail_urlในการตอบกลับ GET ฟิลด์thumbnail_urlที่มีอยู่เดิมจะไม่เปลี่ยนแปลง
- Name
- auto_size
- Type
- boolean
- ค่าเริ่มต้น false
- Description
เมื่อตั้งค่าเป็น
trueบริการจะใช้ AI vision เพื่อประมาณความสูงของวัตถุในโลกจริงโดยอัตโนมัติ และปรับขนาดโมเดลให้สอดคล้องกัน จุดกำเนิดจะเป็นbottomโดยค่าเริ่มต้น เว้นแต่จะมีการตั้งค่าorigin_atอย่างชัดเจน
auto_size = true- Name
- origin_at
- Type
- string
- ค่าเริ่มต้น bottom
- Description
ตำแหน่งของจุดกำเนิดเมื่อเปิดใช้งาน
auto_sizeค่าที่ใช้ได้:
bottom,center
ผลลัพธ์ที่ส่งคืน
พร็อพเพอร์ตี้ result ของการตอบกลับจะมี id ของ task ข้อความเป็น 3D ที่สร้างขึ้นใหม่
รูปแบบความล้มเหลว
- Name
400 - Bad Request- Description
คำขอไม่สามารถยอมรับได้ สาเหตุที่พบบ่อย:
- task ID ไม่ถูกต้อง:
preview_task_idไม่ถูกต้องหรือไม่มีอยู่ - task ยังไม่พร้อม: preview task ยังไม่สำเร็จ
- โมเดลไม่ตรงกัน: โมเดล AI ของ preview task ไม่เข้ากันกับโมเดล refine ที่ร้องขอ
- โมเดลไม่รองรับ remove_lighting: มีการตั้งค่า
remove_lightingร่วมกับai_model: "meshy-6-lite"
- task ID ไม่ถูกต้อง:
- Name
401 - Unauthorized- Description
การยืนยันตัวตนล้มเหลว โปรดตรวจสอบ API คีย์ของคุณ
- Name
402 - Payment Required- Description
เครดิตไม่เพียงพอสำหรับการทำงานนี้
- Name
404 - Not Found- Description
ไม่พบ preview task ที่ระบุโดย
preview_task_id
- Name
429 - Too Many Requests- Description
คุณเกินขีดจำกัดการจำกัดอัตราของคุณแล้ว
Request
# Basic refine task
curl https://api.meshy.ai/openapi/v2/text-to-3d \
-H 'Authorization: Bearer ${YOUR_API_KEY}' \
-H 'Content-Type: application/json' \
-d '{
"mode": "refine",
"preview_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"enable_pbr": true
}'
# Refine with auto-size and GLB format
curl https://api.meshy.ai/openapi/v2/text-to-3d \
-H 'Authorization: Bearer ${YOUR_API_KEY}' \
-H 'Content-Type: application/json' \
-d '{
"mode": "refine",
"preview_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"target_formats": ["glb"],
"auto_size": true
}'
Response
{
"result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}
ดึงข้อมูลงานข้อความเป็น 3D
เอนด์พอยต์นี้ช่วยให้คุณสามารถดึงข้อมูลงานข้อความเป็น 3D โดยใช้ id ของงานที่ถูกต้อง
ดูรายละเอียดเพิ่มเติมได้ที่ The Text to 3D Task Object เพื่อดูว่า
มีพร็อพเพอร์ตี้ใดบ้างที่รวมอยู่ในอ็อบเจ็กต์งานข้อความเป็น 3D
เอนด์พอยต์นี้ใช้งานได้กับทั้งงาน preview และงาน refine
พารามิเตอร์
- Name
- id
- Type
- path
- Description
ตัวระบุเฉพาะสำหรับงานข้อความเป็น 3D ที่ต้องการดึงข้อมูล
ค่าที่ส่งกลับ
การตอบกลับประกอบด้วยอ็อบเจ็กต์งานข้อความเป็น 3D ดูรายละเอียดเพิ่มเติมได้ที่ส่วน The Text to 3D Task Object
ตัวอย่าง
| Mode | Sample Model |
|---|---|
| Preview | ![]() |
| Refine | ![]() |
Request
curl https://api.meshy.ai/openapi/v2/text-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "text-to-3d-preview",
"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=***",
"mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?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=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"prompt": "a monster mask",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"finished_at": 1692771669037,
"status": "SUCCEEDED",
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***"
}
],
"preceding_tasks": 0,
"task_error": {
"message": ""
},
"consumed_credits": 20
}
ลบงานข้อความเป็น 3D
เอนด์พอยต์นี้ใช้ลบงานข้อความเป็น 3D อย่างถาวร รวมถึงโมเดลและข้อมูลทั้งหมดที่เกี่ยวข้อง การดำเนินการนี้ไม่สามารถย้อนกลับได้
พารามิเตอร์ของพาธ
- 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/v2/text-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."
}
List Text to 3D Tasks
เอนด์พอยต์นี้ช่วยให้คุณสามารถดึงรายการงาน ข้อความเป็น 3D ได้
พารามิเตอร์
- Name
- page_num
- Type
- integer
- ค่าเริ่มต้น 1
- Description
หมายเลขหน้าสำหรับการแบ่งหน้า
- Name
- page_size
- Type
- integer
- ค่าเริ่มต้น 10
- Description
จำนวนจำกัดต่อหน้า สูงสุดที่อนุญาตคือ
100รายการ
- Name
- sort_by
- Type
- string
- Description
ฟิลด์ที่ใช้ในการเรียงลำดับ
ค่าที่ใช้ได้:
+created_at: เรียงลำดับตามเวลาที่สร้างจากน้อยไปมาก-created_at: เรียงลำดับตามเวลาที่สร้างจากมากไปน้อย
ค่าที่ส่งกลับ
ส่งกลับรายการแบบแบ่งหน้าของ The Text to 3D Task Objects
Request
curl https://api.meshy.ai/openapi/v2/text-to-3d?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
[
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "text-to-3d-preview",
"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=***",
"mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?Expires=***",
"usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"prompt": "a monster mask",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"finished_at": 1692771669037,
"status": "SUCCEEDED",
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***"
}
],
"preceding_tasks": 0,
"task_error": {
"message": ""
},
"consumed_credits": 20
}
]
Stream a Text to 3D Task
เอนด์พอยต์นี้สตรีมข้อมูลอัปเดตแบบเรียลไทม์สำหรับงาน Text to 3D โดยใช้ Server-Sent Events (SSE)
พารามิเตอร์
- Name
- id
- Type
- path
- Description
ตัวระบุเฉพาะสำหรับงาน Text to 3D ที่ต้องการสตรีม
ค่าที่ส่งกลับ
ส่งกลับสตรีมของ อ็อบเจกต์งาน Text to 3D ในรูปแบบ Server-Sent Events
สำหรับงานที่มีสถานะ PENDING หรือ IN_PROGRESS สตรีมการตอบกลับจะมีเฉพาะฟิลด์ progress และ status ที่จำเป็นเท่านั้น
Request
curl -N https://api.meshy.ai/openapi/v2/text-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",
"progress": 50,
"status": "IN_PROGRESS"
}
event: message
data: {
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "text-to-3d-preview",
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1692771650657,
"started_at": 1692771667037,
"finished_at": 1692771669037,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
},
"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": 20
}
The Text to 3D Task Object
Text to 3D Task object เป็นหน่วยงานที่ Meshy ใช้ติดตามเพื่อสร้างโมเดล 3D จากอินพุตที่เป็น ข้อความ มีสองขั้นตอนใน Text to 3D API คือ preview และ refine ขั้นตอน preview ใช้สำหรับสร้างโมเดล 3D ที่มีเฉพาะเมชเท่านั้น และขั้นตอน refine ใช้สำหรับสร้างโมเดล 3D ที่มีเท็กซ์เจอร์โดยอิงจากผลลัพธ์ของขั้นตอน preview
ออบเจ็กต์นี้มีคุณสมบัติดังต่อไปนี้:
Properties
- Name
- id
- Type
- string
- Description
ตัวระบุเฉพาะสำหรับ task แม้ว่าเราจะใช้ k-sortable UUID สำหรับ task id เป็นรายละเอียดการใช้งานจริง แต่คุณ ไม่ควร ตั้งสมมติฐานใดๆ เกี่ยวกับรูปแบบของ id
- Name
- type
- Type
- string
- Description
ประเภทของ Text to 3D task ค่าที่เป็นไปได้คือ
text-to-3d-previewสำหรับ task ในขั้นตอน preview และtext-to-3d-refineสำหรับ task ในขั้นตอน refine
- Name
- model_urls
- Type
- object
- Description
URL สำหรับดาวน์โหลดไฟล์โมเดล 3D ที่มีเท็กซ์เจอร์ซึ่งสร้างโดย Meshy คุณสมบัติสำหรับรูปแบบใดรูปแบบหนึ่งจะถูกละไว้หากไม่มีการสร้างรูปแบบนั้น แทนที่จะคืนค่าเป็นสตริงว่าง
- Name
glb- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ GLB
- Name
fbx- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ FBX
- Name
usdz- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ USDZ
- Name
obj- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ OBJ
- Name
mtl- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ MTL
- Name
stl- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ STL
- Name
3mf- Type
- string
- Description
URL สำหรับดาวน์โหลดไฟล์ 3MF จะปรากฏเฉพาะเมื่อมีการร้องขอ
3mfผ่านtarget_formats
- Name
- prompt
- Type
- string
- Description
นี่คือ
promptที่ไม่ถูกแก้ไขซึ่งใช้ในการสร้าง task
- Name
- negative_prompt
- Type
- string
- ⚠ เลิกใช้แล้ว
- Description
คงไว้เพื่อความเข้ากันได้ย้อนหลัง ฟิลด์นี้ไม่มีผลต่อการทำงานของโมเดลที่สร้างขึ้น
- Name
- art_style
- Type
- string
- ⚠ เลิกใช้แล้ว
- Description
art_styleที่ไม่ถูกแก้ไขซึ่งใช้ในการสร้าง preview task ไม่รองรับใน Meshy-6
- Name
- texture_richness
- Type
- string
- ⚠ เลิกใช้แล้ว
- Description
คงไว้เพื่อความเข้ากันได้ย้อนหลัง ฟิลด์นี้ไม่มีผลต่อการทำงานของโมเดลที่สร้างขึ้น
- Name
- texture_prompt
- Type
- string
- Description
ข้อความ prompt เพิ่มเติมที่ให้มาเพื่อแนะแนวทางกระบวนการสร้างเท็กซ์เจอร์ในระหว่างขั้นตอน refine
- Name
- ultra_mode
- Type
- boolean
- ⚠ เลิกใช้แล้ว
- Description
เลิกใช้แล้ว โปรดอ่าน
geometry_resolutionแทน
- Name
- geometry_resolution
- Type
- string
- Description
ระดับ Ultra ที่ preview task ทำงาน (
2kหรือ4k) จะถูกละไว้สำหรับstandard
- Name
- texture_image_url
- Type
- string
- Description
URL สำหรับดาวน์โหลดภาพเท็กซ์เจอร์ที่ใช้เพื่อแนะแนวทางกระบวนการสร้างเท็กซ์เจอร์
- Name
- thumbnail_url
- Type
- string
- Description
URL สำหรับดาวน์โหลดภาพย่อของไฟล์โมเดล
- Name
- alpha_thumbnail_url
- Type
- string
- Description
URL สำหรับดาวน์โหลดเวอร์ชันพื้นหลังโปร่งใส (RGBA) ของ
thumbnail_urlจะปรากฏเฉพาะเมื่อ task ถูกสร้างด้วยalpha_thumbnail: trueและการพรีวิวแบบโปร่งใสถูกเรนเดอร์สำเร็จ มิฉะนั้นฟิลด์นี้จะถูกละไว้
- Name
- video_url
- Type
- string
- ⚠ เลิกใช้แล้ว
- Description
URL สำหรับดาวน์โหลดวิดีโอพรีวิว จะถูกลบออกในรุ่นถัดไปในอนาคต
- Name
- progress
- Type
- integer
- Description
ความคืบหน้าของ 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
- 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 สำหรับดาวน์โหลดภาพแมปสีพื้นฐาน
- Name
metallic- Type
- string
- Description
URL สำหรับดาวน์โหลดภาพแมปความเป็นโลหะ
หาก task ถูกสร้างด้วย
enable_pbr: falseคุณสมบัตินี้จะถูกละไว้
- Name
normal- Type
- string
- Description
URL สำหรับดาวน์โหลดภาพนอร์มัลแมป
หาก task ถูกสร้างด้วย
enable_pbr: falseคุณสมบัตินี้จะถูกละไว้
- Name
roughness- Type
- string
- Description
URL สำหรับดาวน์โหลดภาพแมปความขรุขระ
หาก task ถูกสร้างด้วย
enable_pbr: falseคุณสมบัตินี้จะถูกละไว้
- Name
emission- Type
- string
- Description
URL สำหรับดาวน์โหลดภาพแมปการเปล่งแสง
หาก task ถูกสร้างด้วย
enable_pbr: false, หากai_modelเป็นmeshy-6-lite,meshy-7.1, หรือlatest, หรือหาก task เป็นการ refine ของmeshy-t2preview โดยไม่ได้กำหนดai_modelคุณสมบัตินี้จะถูกละไว้
- 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 Text to 3D Task Object
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "text-to-3d-preview",
"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=***",
"usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
"obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
"mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?Expires=***",
"stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***"
},
"prompt": "a monster mask",
"texture_prompt": "green slimy skin with scales and warts",
"texture_image_url": "",
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"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": 20
}

