lowpoly จะยุติการให้บริการในวันที่ 30 ต.ค. 2569 โปรดเปลี่ยนโมเดลก่อนวันที่เหล่านี้เพื่อหลีกเลี่ยงข้อผิดพลาดของคำขอ

Auto Split API

แยกโมเดล 3D ออกเป็นชิ้นส่วนที่พิมพ์แยกกันได้ — โดยอัตโนมัติ ตามชิ้นส่วนที่คุณตั้งชื่อ หรือตามพื้นที่สี — พร้อมตัวเชื่อมต่อแบบเลือกได้ โดยบริเวณที่บางลงจากการตัดจะได้รับการเสริมความแข็งแรงเสมอ เพื่อให้ทุกชิ้นส่วนพิมพ์ออกมาเป็นเนื้อแข็ง


POST/openapi/v1/print/split

Create an Auto Split Task

เอนด์พอยต์นี้สร้างงาน Auto Split ใหม่ งานนี้จะตัดโมเดลของงานก่อนหน้าออกเป็นชิ้นส่วนที่สามารถพิมพ์แยกกันได้ และส่งคืนโมเดลที่ถูกแบ่งส่วน โดยแต่ละชิ้นส่วนจะเป็นอ็อบเจกต์ของตัวเองภายในไฟล์

งานนี้ทำงานในเบื้องหลัง สำหรับระยะเวลาที่มักใช้ โปรดดูที่ Processing Times

พารามิเตอร์

  • Name
    input_task_id
    Type
    string
    จำเป็น
    Description

    ID ของงานที่สำเร็จแล้วซึ่งต้องการแบ่งโมเดล ประเภทงานที่รองรับ: Image to 3D, Multi-Image to 3D, Text to 3D (ตัวอย่าง), Remesh, Convert และ Resize งานนั้นต้องมีสถานะเป็น SUCCEEDED และโมเดลของงานนั้นต้องถูกสร้างด้วย Meshy 6 หรือ Meshy 7 (ai_model เป็น meshy-6, meshy-7, meshy-7.1 หรือ latest) โมเดลแบบโลว์โพลีและ Smart Topology (meshy-t2, meshy-t2.5) ไม่รองรับ โมเดลที่มีเท็กซ์เจอร์สามารถใช้ได้ แต่เท็กซ์เจอร์ของโมเดลนั้นจะไม่ถูกนำไปใช้กับผลลัพธ์

  • Name
    mode
    Type
    string
    ค่าเริ่มต้น auto
    Description

    วิธีการแบ่งโมเดลออกเป็นชิ้นส่วน

    ค่าที่ใช้ได้:

    • auto: Meshy เป็นผู้เลือกจุดตัดเอง prompt จะถูกละเว้น
    • by_parts: ตัดตามชิ้นส่วนโครงสร้างที่คุณระบุชื่อใน prompt เช่น หัว แขน และลำตัว
    • by_color: ตัดตามบริเวณสีที่คุณระบุชื่อใน prompt ต้องการอินพุตที่สร้างจากภาพที่อัปโหลด (Image to 3D หรือ Multi-Image to 3D) อินพุตอื่น ๆ จะถูกปฏิเสธด้วย 400 ขอบเขตของบริเวณสีมาจากภาพต้นฉบับ ไม่ใช่จากเท็กซ์เจอร์ของโมเดลอินพุต สำหรับ Multi-Image to 3D, Auto Split จะใช้ภาพต้นฉบับภาพแรก
ใช้เฉพาะเมื่อ mode = by_parts or by_color
  • Name
    prompt
    Type
    string
    จำเป็น
    Description

    อธิบายชิ้นส่วนที่จะแบ่ง ด้วยภาษาใดก็ได้ Meshy จะอ่านชื่อชิ้นส่วน 1 ถึง 10 ชื่อจากข้อความนี้ ดังนั้นให้ตั้งชื่อชิ้นส่วนแทนที่จะบรรยายตัวโมเดล เช่น split into the figure and the base หรือ head, torso, left arm, right arm, legs การตั้งชื่อชิ้นส่วนเดียวก็ใช้ได้: ทุกอย่างที่คุณไม่ได้ตั้งชื่อจะกลายเป็นชิ้นส่วนที่เหลือหนึ่งชิ้น ดังนั้น the head จะแบ่งโมเดลออกเป็นส่วนหัวและส่วนที่เหลือ เช่นเดียวกับในเว็บแอป สูงสุด 600 ตัวอักษร คำอธิบายที่ขอให้ไม่แบ่งเลย หรือระบุชื่อชิ้นส่วนมากกว่า 10 ชิ้น จะถูกปฏิเสธด้วย 400 และจะไม่มีการเรียกเก็บเงินใด ๆ หาก Meshy ไม่สามารถอ่านชื่อชิ้นส่วนใด ๆ จากคำอธิบายได้ ระบบจะแบ่งตามชิ้นส่วนที่ระบุได้จากภาพอ้างอิงของโมเดลแทน ตาม mode ที่คุณเลือก: งานยังคงทำงานและมีการเรียกเก็บเงินตามปกติ และจะมี prompt_ignored: true หากโมเดลไม่มีภาพอ้างอิง หรือ Meshy พบชิ้นส่วนน้อยกว่าสองชิ้นในภาพนั้น คำขอนั้นจะถูกปฏิเสธด้วย 400 แทน และจะไม่มีการเรียกเก็บเงินใด ๆ

  • Name
    target_formats
    Type
    array
    ค่าเริ่มต้น ["glb"]
    Description

    รูปแบบไฟล์ที่จะใช้ส่งออกโมเดลที่แบ่งแล้ว รูปแบบที่รองรับอ็อบเจกต์ในซีน (glb, obj, fbx, usdz, blend, 3mf) จะเก็บแต่ละชิ้นส่วนเป็นอ็อบเจกต์แยกกัน ส่วน stl ไม่มีแนวคิดเรื่องอ็อบเจกต์แยกกัน จึงหลอมรวมทุกชิ้นส่วนเข้าเป็นชิ้นเดียวที่จัดเรียงตาม layout (ขอรูปแบบ 3mf เพื่อให้ได้ชิ้นส่วนที่สามารถเลือกแยกกันได้ในสไลเซอร์) glb จะถูกสร้างและส่งคืนใน model_urls เสมอ ให้ระบุรูปแบบอื่น ๆ ที่ต้องการเพิ่มเติม

    ค่าที่ใช้ได้: glb, obj, fbx, stl, usdz, blend, 3mf

  • Name
    layout
    Type
    string
    ค่าเริ่มต้น assembled
    Description

    วิธีจัดเรียงชิ้นส่วนในทุกรูปแบบไฟล์ส่งออก และในภาพย่อ

    ค่าที่ใช้ได้:

    • assembled: ชิ้นส่วนยังคงอยู่ในตำแหน่งเดิมเหมือนในโมเดลต้นฉบับ
    • on_plate: ชิ้นส่วนจะถูกวางราบและกระจายออกบนแท่นพิมพ์ พร้อมสำหรับการสไลซ์ — เป็นการจัดเรียงแบบเดียวกับมุมมอง On Plate ในเว็บแอป

    ในทั้งสองรูปแบบการจัดเรียง ชิ้นส่วนที่ยุบตัวเป็นแผ่นบางหรือเป็นจุดที่เหลือจากการตัดจะถูกลบออกก่อนการส่งออก ดังนั้นทุกชิ้นส่วนที่คุณได้รับจะสามารถพิมพ์ได้ รูปแบบที่รองรับอ็อบเจกต์ในซีนจะเก็บหนึ่งอ็อบเจกต์ต่อหนึ่งชิ้นส่วน ส่วน stl จะหลอมรวมเข้าเป็นชิ้นเดียว

  • Name
    connectors
    Type
    boolean
    ค่าเริ่มต้น false
    Description

    เพิ่มตัวเชื่อมแบบเดือย-รูเดือย (mortise-and-tenon) ที่แต่ละจุดตัด เพื่อให้ชิ้นส่วนที่พิมพ์แล้วประกอบเข้าด้วยกันได้พอดี

ใช้เฉพาะเมื่อ connectors = true
  • Name
    connector_type
    Type
    string
    ค่าเริ่มต้น cube
    Description

    รูปทรงของตัวเชื่อมที่แต่ละพื้นผิวตัด

    ค่าที่ใช้ได้: cube, cylinder

  • Name
    connector_size
    Type
    number
    ค่าเริ่มต้น 0.5
    Description

    ขนาดตัวเชื่อมเมื่อเทียบกับพื้นผิวตัด

    ช่วงค่าที่ใช้ได้: 0.1 ถึง 0.8

  • Name
    connector_height
    Type
    number
    ค่าเริ่มต้น 0.1
    Description

    ระยะที่ตัวเชื่อมยื่นออกจากพื้นผิวตัด เมื่อเทียบกับพื้นผิวตัด

    ช่วงค่าที่ใช้ได้: 0.1 ถึง 0.8

ค่าที่ส่งคืน

พร็อพเพอร์ตี้ result ของการตอบกลับมี id ของงาน Auto Split ที่สร้างขึ้นใหม่

รูปแบบความล้มเหลว

  • Name
    400 - Bad Request
    Description

    คำขอนี้ไม่สามารถยอมรับได้ สาเหตุทั่วไป:

    • ไม่มี prompt: prompt จำเป็นต้องระบุเมื่อ mode เป็น by_parts หรือ by_color
    • prompt ไม่ได้อธิบายการแบ่งใด ๆ หรือระบุชิ้นส่วนมากเกินไป: by_parts / by_color รับชิ้นส่วนที่ตั้งชื่อได้ 1 ถึง 10 ชิ้น คำอธิบายที่ขอให้คงโมเดลไว้เป็นชิ้นเดียว หรือระบุชื่อชิ้นส่วนมากกว่า 10 ชิ้น จะถูกปฏิเสธ และจะไม่มีการเรียกเก็บเงินใด ๆ
    • งานอินพุตไม่รองรับ: input_task_id ต้องอ้างอิงถึงงานที่สำเร็จแล้วของประเภทที่รองรับ ซึ่งสร้างด้วย Meshy 6 หรือ Meshy 7
    • ไม่มีภาพอ้างอิง: by_color ต้องการอินพุตที่สร้างจากภาพที่อัปโหลด
    • ตัวเชื่อมอยู่นอกช่วงที่กำหนด: connector_size หรือ connector_height อยู่นอกช่วง 0.1 ถึง 0.8
  • Name
    401 - Unauthorized
    Description

    การยืนยันตัวตนล้มเหลว โปรดตรวจสอบ API คีย์ของคุณ

  • Name
    402 - Payment Required
    Description

    เครดิตไม่เพียงพอสำหรับการทำงานนี้

  • Name
    404 - Not Found
    Description

    input_task_id ไม่มีอยู่จริง หรือไม่ได้เป็นของบัญชีของคุณ

  • Name
    429 - Too Many Requests
    Description

    คุณใช้งานเกินการจำกัดอัตราที่กำหนดไว้ คำขอ by_parts และ by_color ยังมีขีดจำกัดการประมวลผล prompt ร่วมกันที่ 12 คำขอต่อนาทีต่อบัญชี

  • Name
    503 - Service Unavailable
    Description

    การแบ่งตาม prompt (by_parts และ by_color) ไม่สามารถใช้งานได้ชั่วคราว โปรดลองใหม่ภายหลัง หรือใช้ mode: "auto" ซึ่งไม่ได้รับผลกระทบ จะไม่มีการเรียกเก็บเงินใด ๆ

Request

POST
/openapi/v1/print/split
# Simple request: let Meshy choose the cuts
curl https://api.meshy.ai/openapi/v1/print/split \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
    "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578"
  }'

# Advanced request: name the parts, add connectors, export glb and obj
curl https://api.meshy.ai/openapi/v1/print/split \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
    "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "mode": "by_parts",
    "prompt": "split into the figure and the base",
    "target_formats": ["glb", "obj"],
    "layout": "on_plate",
    "connectors": true,
    "connector_type": "cylinder",
    "connector_size": 0.4
  }'

Response

{
  "result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}

GET/openapi/v1/print/split/:id

ดึงข้อมูลงาน Auto Split

เอนด์พอยต์นี้ใช้ดึงข้อมูลงาน Auto Split ตาม ID ของงานนั้น

พารามิเตอร์

  • Name
    id
    Type
    path
    Description

    ID ของงาน Auto Split ที่ต้องการดึงข้อมูล

ค่าที่ส่งกลับ

ออบเจ็กต์งาน Auto Split

Request

GET
/openapi/v1/print/split/a43b5c6d-7e8f-901a-234b-567c890d1e2f
curl https://api.meshy.ai/openapi/v1/print/split/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Response

{
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "type": "print-split",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.obj?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
  "part_count": 4,
  "progress": 100,
  "status": "SUCCEEDED",
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000082000,
  "task_error": null,
  "consumed_credits": 10
}

DELETE/openapi/v1/print/split/:id

ลบงาน Auto Split

เอนด์พอยต์นี้ใช้ลบงาน Auto Split อย่างถาวร รวมถึงโมเดลและข้อมูลที่เกี่ยวข้องทั้งหมด การกระทำนี้ไม่สามารถย้อนกลับได้

พารามิเตอร์ของ Path

  • Name
    id
    Type
    path
    Description

    ID ของงาน Auto Split ที่ต้องการลบ

สถานะของงาน

งานที่ยังอยู่ในสถานะ PENDING จะถูกลบ และเครดิตที่ถูกใช้ไปตอนสร้างงานจะได้รับการคืน

งานที่อยู่ในสถานะ IN_PROGRESS แล้วไม่สามารถลบได้ คำขอจะถูกปฏิเสธด้วย 409 Conflict และงานจะยังคงทำงานต่อไป เครดิตสำหรับงานที่ worker เริ่มดำเนินการไปแล้วจะไม่สามารถคืนได้ ดังนั้นการลบงานขณะกำลังทำงานอยู่จะทำให้คุณเสียทั้งเครดิตและผลลัพธ์ ให้รอจนกว่างานจะถึงสถานะ SUCCEEDED, FAILED หรือ CANCELED แล้วจึงค่อยลบ

งานที่อยู่ในสถานะสุดท้าย (SUCCEEDED, FAILED หรือ CANCELED) จะถูกลบโดยไม่มีการคืนเครดิต

ผลลัพธ์ที่ได้

คืนค่า 200 OK เมื่อสำเร็จ หรือ 409 Conflict เมื่องานอยู่ในสถานะ IN_PROGRESS

Request

DELETE
/openapi/v1/print/split/a43b5c6d-7e8f-901a-234b-567c890d1e2f
curl --request DELETE \
  --url https://api.meshy.ai/openapi/v1/print/split/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
  -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."
}

GET/openapi/v1/print/split

List Auto Split Tasks

เอนด์พอยต์นี้ช่วยให้คุณสามารถดึงรายการงาน Auto Split ได้

พารามิเตอร์

แอตทริบิวต์ที่เป็นตัวเลือก

  • Name
    page_num
    Type
    integer
    Description

    หมายเลขหน้าสำหรับการแบ่งหน้า เริ่มต้นและมีค่าเริ่มต้นเป็น 1

  • Name
    page_size
    Type
    integer
    Description

    จำนวนรายการต่อหน้า ค่าเริ่มต้นคือ 10 รายการ ค่าสูงสุดที่อนุญาตคือ 100 รายการ หากตั้งค่ามากกว่านี้จะถูกปรับให้เหลือ 100

  • Name
    sort_by
    Type
    string
    Description

    ฟิลด์ที่ใช้สำหรับเรียงลำดับ ค่าที่ใช้ได้มีดังนี้:

    • +created_at: เรียงลำดับตามเวลาที่สร้างจากน้อยไปมาก
    • -created_at: เรียงลำดับตามเวลาที่สร้างจากมากไปน้อย

ค่าที่ส่งกลับ

ส่งกลับรายการแบบแบ่งหน้าของ The Auto Split Task Objects

Request

GET
/openapi/v1/print/split
curl https://api.meshy.ai/openapi/v1/print/split?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Response

[
  {
    "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
    "type": "print-split",
    "model_urls": {
      "glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***"
    },
    "thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
    "part_count": 4,
    "progress": 100,
    "status": "SUCCEEDED",
    "preceding_tasks": 0,
    "created_at": 1699999999000,
    "started_at": 1700000000000,
    "finished_at": 1700000082000,
    "task_error": null,
    "consumed_credits": 10
  }
]

GET/openapi/v1/print/split/:id/stream

สตรีมงาน Auto Split

เอนด์พอยต์นี้สตรีมการอัปเดตแบบเรียลไทม์สำหรับงาน Auto Split โดยใช้ Server-Sent Events (SSE)

พารามิเตอร์

  • Name
    id
    Type
    path
    Description

    ตัวระบุเฉพาะสำหรับงาน Auto Split ที่ต้องการสตรีม

ค่าที่ส่งกลับ

ส่งกลับสตรีมของ The Auto Split Task Objects ในรูปแบบ Server-Sent Events

ทุกอีเวนต์ message จะมีข้อมูลออบเจ็กต์งานฉบับเต็มเช่นเดียวกับที่ส่งกลับโดย Retrieve an Auto Split Task รวมถึง consumed_credits, ไทม์สแตมป์ต่าง ๆ และ prompt_ignored; ในขณะที่งานอยู่ในสถานะ PENDING หรือ IN_PROGRESS ฟิลด์ที่เปลี่ยนแปลงระหว่างแต่ละเฟรมคือ progress, status, started_at และ preceding_tasks ส่วน model_urls, thumbnail_url และ part_count จะปรากฏขึ้นเมื่องานถึงสถานะ SUCCEEDED สำหรับอีเวนต์ error จะมีเพียง status_code และ message เท่านั้น ดังนั้นควรแยกตามชื่ออีเวนต์ก่อนที่จะอ่านค่า status

Request

GET
/openapi/v1/print/split/a43b5c6d-7e8f-901a-234b-567c890d1e2f/stream
curl -N https://api.meshy.ai/openapi/v1/print/split/a43b5c6d-7e8f-901a-234b-567c890d1e2f/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 (other task fields omitted here for brevity;
// each frame is the full task object).
event: message
data: {
  "id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
  "type": "print-split",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/preview.png?Expires=***",
  "part_count": 4,
  "progress": 100,
  "status": "SUCCEEDED",
  "preceding_tasks": 0,
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000082000,
  "task_error": null,
  "consumed_credits": 10
}

The Auto Split Task Object

งาน Auto Split จะมีเฉพาะพร็อพเพอร์ตี้ด้านล่างนี้เท่านั้น ฟิลด์ generation-prompt ที่ออบเจ็กต์งานอื่น ๆ มี (name, object_prompt, texture_prompt และอื่น ๆ), model_url เดี่ยว และ texture_urls จะไม่ถูกกำหนดค่าสำหรับการ split และจะไม่ถูกส่งกลับมา พร็อพเพอร์ตี้ที่จะถูกเติมค่าระหว่างที่งานทำงาน (thumbnail_url, model_urls, ไทม์สแตมป์ต่าง ๆ) จะปรากฏอยู่เสมอ โดยเป็นค่าว่างจนกว่าจะมีค่า ดังนั้นชุดของคีย์จะไม่เปลี่ยนแปลงระหว่าง PENDING และ SUCCEEDED

  • Name
    id
    Type
    string
    Description

    ตัวระบุที่ไม่ซ้ำกันสำหรับงาน แม้ว่าเราจะใช้ k-sortable UUID สำหรับ id ของงานในรายละเอียดการใช้งานจริง แต่คุณไม่ควรตั้งสมมติฐานใด ๆ เกี่ยวกับรูปแบบของ id

  • Name
    type
    Type
    string
    Description

    ประเภทของงาน ค่านี้คือ print-split

  • Name
    model_urls
    Type
    object
    Description

    URL สำหรับดาวน์โหลดโมเดลที่ถูก split แล้ว หนึ่งรายการต่อหนึ่งฟอร์แมตที่ร้องขอ ฟอร์แมตที่รองรับออบเจ็กต์ของซีนจะเก็บแต่ละชิ้นส่วนไว้เป็นออบเจ็กต์แยกกัน; stl จะหลอมรวมชิ้นส่วนทั้งหมดเข้าเป็นชิ้นเดียว พร็อพเพอร์ตี้สำหรับฟอร์แมตหนึ่ง ๆ จะถูกละไว้หากไม่ได้ร้องขอฟอร์แมตนั้น

    • Name
      glb
      Type
      string
      Description

      URL สำหรับดาวน์โหลดโมเดลที่ถูก split แล้วในฟอร์แมต GLB

    • Name
      obj
      Type
      string
      Description

      URL สำหรับดาวน์โหลดโมเดลที่ถูก split แล้วในฟอร์แมต OBJ

    • Name
      fbx
      Type
      string
      Description

      URL สำหรับดาวน์โหลดโมเดลที่ถูก split แล้วในฟอร์แมต FBX

    • Name
      stl
      Type
      string
      Description

      URL สำหรับดาวน์โหลดโมเดลที่ถูก split แล้วในฟอร์แมต STL ชิ้นส่วนทั้งหมดจะถูกหลอมรวมเข้าเป็นชิ้นเดียว หากต้องการชิ้นส่วนที่สามารถเลือกแยกกันได้ให้ร้องขอ 3mf

    • Name
      usdz
      Type
      string
      Description

      URL สำหรับดาวน์โหลดโมเดลที่ถูก split แล้วในฟอร์แมต USDZ

    • Name
      blend
      Type
      string
      Description

      URL สำหรับดาวน์โหลดโมเดลที่ถูก split แล้วในฟอร์แมต Blender

    • Name
      3mf
      Type
      string
      Description

      URL สำหรับดาวน์โหลดโมเดลที่ถูก split แล้วในฟอร์แมต 3MF

  • Name
    thumbnail_url
    Type
    string
    Description

    URL สำหรับดาวน์โหลดภาพตัวอย่างที่เรนเดอร์ของโมเดลที่ถูก split แล้ว โดยแต่ละชิ้นส่วนมีสีที่แตกต่างกัน ในรูปแบบ layout ที่ร้องขอ

  • Name
    prompt_ignored
    Type
    boolean
    Description

    true เมื่อ prompt ของคำขอ by_parts หรือ by_color ไม่ได้ระบุชื่อชิ้นส่วนใด ๆ ทำให้ Meshy ทำการ split โมเดลโดยอัตโนมัติแทน — ชื่อชิ้นส่วนในผลลัพธ์จึงเป็นชื่อที่ Meshy กำหนด ไม่ใช่ชื่อของคุณ มีค่าให้ตั้งแต่ PENDING เป็นต้นไป และจะถูกละไว้สำหรับงาน auto และเมื่อใดก็ตามที่มีการทำตาม prompt

  • Name
    part_count
    Type
    integer
    Description

    จำนวนชิ้นส่วนที่พิมพ์ได้ซึ่งการ split สร้างขึ้น ฟอร์แมตที่รองรับออบเจ็กต์ของซีนจะมีหนึ่งออบเจ็กต์ต่อหนึ่งชิ้นส่วน; stl จะหลอมรวมเข้าเป็นชิ้นเดียว แต่จำนวนนี้ยังคงรายงานจำนวนชิ้นส่วนอยู่ ชิ้นส่วนที่ยุบตัวจนเล็กเกินไปซึ่งการแบ่งส่วนไม่สามารถทำให้เป็นชิ้นที่พิมพ์ได้จะถูกเอาออกจากไฟล์ก่อนการ export และจะไม่ถูกนับรวม

  • Name
    progress
    Type
    integer
    Description

    ความคืบหน้าของงาน หากงานยังไม่เริ่มต้น พร็อพเพอร์ตี้นี้จะเป็น 0 เมื่องานสำเร็จแล้ว ค่านี้จะกลายเป็น 100

  • Name
    status
    Type
    string
    Description

    สถานะของงาน ค่าที่เป็นไปได้คือค่าใดค่าหนึ่งจาก PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED

  • Name
    preceding_tasks
    Type
    integer
    Description

    จำนวนงานที่อยู่ก่อนหน้า

  • Name
    created_at
    Type
    timestamp
    Description

    ไทม์สแตมป์ของเวลาที่สร้างงาน หน่วยเป็นมิลลิวินาที

  • Name
    started_at
    Type
    timestamp
    Description

    ไทม์สแตมป์ของเวลาที่งานเริ่มต้น หน่วยเป็นมิลลิวินาที หากงานยังไม่เริ่มต้น พร็อพเพอร์ตี้นี้จะเป็น 0

  • Name
    finished_at
    Type
    timestamp
    Description

    ไทม์สแตมป์ของเวลาที่งานเสร็จสิ้น หน่วยเป็นมิลลิวินาที หากงานยังไม่เสร็จสิ้น พร็อพเพอร์ตี้นี้จะเป็น 0

  • Name
    task_error
    Type
    object
    Description

    รายละเอียดข้อผิดพลาดสำหรับงานที่ล้มเหลว ดู ข้อผิดพลาด สำหรับการอ้างอิงออบเจ็กต์ task_error แบบเต็ม หากการตรวจสอบความปลอดภัยของผู้ให้บริการโมเดลปฏิเสธโมเดลที่นำเข้า งานจะล้มเหลวด้วย task_error.type เป็น invalid_input และ code เป็น provider_content_refused ดู ข้อผิดพลาด

  • Name
    consumed_credits
    Type
    integer
    Description

    จำนวนเครดิตที่ถูกใช้ไปโดยงานนี้ จะมีค่าปรากฏอยู่เสมอ: 10 เมื่องานได้รับการยอมรับแล้ว และ 0 สำหรับงานที่ FAILED เนื่องจากค่าใช้จ่ายจะถูกคืนเมื่อเกิดความล้มเหลว การลบงานขณะที่ยังอยู่ในสถานะ PENDING ก็จะทำการคืนเครดิตเช่นกัน

The Auto Split Task Object

{
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "type": "print-split",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.obj?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
  "part_count": 4,
  "progress": 100,
  "status": "SUCCEEDED",
  "preceding_tasks": 0,
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000082000,
  "task_error": null,
  "consumed_credits": 10
}