प्रिंट-योग्यता मरम्मत API
FDM प्रिंट-योग्यता के लिए किसी 3D मॉडल की मरम्मत करें — नॉन-मैनिफोल्ड किनारे, डिजेनरेट फेस, छेद, और अन्य topology समस्याओं को ठीक करें ताकि मेश प्रिंट के लिए तैयार हो।
प्रिंट-योग्यता मरम्मत टास्क बनाएँ
यह एंडपॉइंट एक नया रीपेयर-प्रिंटेबिलिटी टास्क बनाता है। यह टास्क किसी 3D मॉडल पर topology मरम्मत चलाता है और एक वॉटरटाइट, प्रिंट-रेडी संस्करण लौटाता है।
आउटपुट फ़ॉर्मैट इनपुट फ़ॉर्मैट से मेल खाता है। यदि आप model_url के माध्यम से .stl सबमिट करते हैं, तो रिस्पॉन्स का model_urls.stl मरम्मत किए गए मेश को रखेगा और बाकी फ़ॉर्मैट फ़ील्ड खाली रहेंगे। input_task_id पाथ हमेशा सोर्स टास्क का GLB पढ़ता है, इसलिए आउटपुट .glb होता है।
पैरामीटर
input_task_id या model_url में से केवल एक ही आवश्यक है। यदि दोनों दिए जाते हैं, तो input_task_id को प्राथमिकता मिलती है।
ज्यामिति में बदलाव के कारण मरम्मत के दौरान मौजूदा टेक्स्चर हटा दिए जाते हैं। टेक्स्चर वापस जोड़ने के लिए, मरम्मत किए गए मॉडल पर रीटेक्सचर API का उपयोग करें।
- Name
- input_task_id
- Type
- string
- आवश्यक
- Description
आपके स्वामित्व वाले किसी सफल टास्क का ID। समर्थित टास्क प्रकार: इमेज से 3D, मल्टी-इमेज से 3D, टेक्स्ट से 3D, रीमेश, और रीटेक्सचर। टास्क का स्टेटस
SUCCEEDEDहोना चाहिए और उसने एक GLB असेट तैयार किया होना चाहिए।
- Name
- model_url
- Type
- string
- आवश्यक
- Description
मरम्मत के लिए किसी 3D मॉडल का URL। समर्थित फ़ॉर्मैट:
.glb,.gltf,.obj,.fbx,.stl। अधिकतम फ़ाइल आकार: 100 MB।http,https, याdata:URL का उपयोग होना चाहिए (data URLs एक्सटेंशन जाँच को बायपास करते हैं)।
- Name
- alpha_thumbnail
- Type
- boolean
- डिफ़ॉल्ट false
- Description
जब
trueसेट किया जाता है, तो टास्क प्रिव्यू का एक पारदर्शी-बैकग्राउंड (RGBA) संस्करण भी रेंडर करता है और इसे GET रिस्पॉन्स परalpha_thumbnail_urlके रूप में लौटाता है। मौजूदाthumbnail_urlफ़ील्ड में कोई बदलाव नहीं होता।
रिटर्न
रिस्पॉन्स की result प्रॉपर्टी में नए बनाए गए रीपेयर-प्रिंटेबिलिटी टास्क का id होता है।
विफलता के तरीके
- Name
400 - Bad Request- Description
अनुरोध स्वीकार्य नहीं था। सामान्य कारण:
- गायब पैरामीटर: न तो
input_task_idऔर न हीmodel_urlदिया गया था। - अमान्य UUID:
input_task_idएक मान्य UUID नहीं है। - अमान्य मॉडल URL:
model_urlगलत तरीके से बना है, किसी असमर्थित स्कीम का उपयोग करता है, या इसमें असमर्थित फ़ाइल एक्सटेंशन है। - मॉडल फ़ाइल बहुत बड़ी है:
model_urlबॉडी 100 MB से अधिक थी। - टास्क सफल नहीं हुआ: संदर्भित टास्क अभी भी pending, प्रगति में, या विफल है।
- GLB गायब है: संदर्भित टास्क में मरम्मत के लिए कोई GLB असेट नहीं है।
- गायब पैरामीटर: न तो
- Name
401 - Unauthorized- Description
प्रमाणीकरण विफल रहा। कृपया अपनी API की जाँच करें।
- Name
402 - Payment Required- Description
सामान्य कारण:
- फ्री प्लान: टास्क बनाने के लिए पेड प्लान आवश्यक है। सब्सक्रिप्शन पेज पर अपग्रेड करें।
- अपर्याप्त क्रेडिट: वर्कस्पेस क्रेडिट सीमा पूरी हो गई थी।
- Name
404 - Not Found- Description
संदर्भित टास्क मौजूद नहीं है या किसी अन्य उपयोगकर्ता के स्वामित्व में है।
- Name
429 - Too Many Requests- Description
आपने अपनी pending-task कोटा या रेट लिमिट पार कर ली है।
Request
# Repair an existing task
curl https://api.meshy.ai/openapi/v1/print/repair \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578"
}'
# Or repair a model URL directly
curl https://api.meshy.ai/openapi/v1/print/repair \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"model_url": "https://example.com/model.stl"
}'
Response
{
"result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}
प्रिंट-योग्यता मरम्मत टास्क प्राप्त करें
यह एंडपॉइंट किसी प्रिंट-योग्यता मरम्मत टास्क को उसकी ID से प्राप्त करता है।
पैरामीटर
- Name
- id
- Type
- path
- Description
प्राप्त करने के लिए प्रिंट-योग्यता मरम्मत टास्क की ID।
रिटर्न वैल्यू
प्रिंट-योग्यता मरम्मत टास्क ऑब्जेक्ट। जब तक टास्क SUCCEEDED स्थिति तक नहीं पहुँच जाता, model_urls ब्लॉक खाली रहता है। केवल इनपुट फ़ॉर्मेट से मेल खाने वाला model_urls फ़ील्ड ही भरा जाता है।
Request
curl https://api.meshy.ai/openapi/v1/print/repair/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.stl?Expires=***",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}
प्रिंट-योग्यता मरम्मत कार्य हटाएँ
यह एंडपॉइंट किसी प्रिंट-योग्यता मरम्मत कार्य और उसके मरम्मत किए गए आउटपुट को स्थायी रूप से हटा देता है। यह क्रिया अपरिवर्तनीय है।
पथ पैरामीटर
- Name
- id
- Type
- path
- Description
हटाए जाने वाले प्रिंट-योग्यता मरम्मत कार्य की ID।
कार्य की स्थिति
जो कार्य अभी भी PENDING है, उसे हटा दिया जाता है और बनाते समय खर्च
हुए क्रेडिट वापस कर दिए जाते हैं।
जो कार्य पहले से IN_PROGRESS है, उसे हटाया नहीं जा सकता: अनुरोध को
409 Conflict के साथ अस्वीकार कर दिया जाता है और कार्य चलता रहता है। जिस
कार्य को वर्कर पहले ही शुरू कर चुका है, उसके क्रेडिट वापसी योग्य नहीं
होते, इसलिए बीच में उसे हटाने से आपको क्रेडिट और परिणाम दोनों गँवाने
पड़ेंगे। इसके SUCCEEDED, FAILED या CANCELED तक पहुँचने की प्रतीक्षा
करें, फिर उसे हटाएँ।
किसी अंतिम स्थिति (SUCCEEDED, FAILED या CANCELED) में मौजूद कार्य को
बिना किसी वापसी के हटा दिया जाता है।
रिटर्न
सफल होने पर 200 OK लौटाता है, या जब कार्य IN_PROGRESS हो तो
409 Conflict लौटाता है।
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/print/repair/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."
}
प्रिंट-योग्यता मरम्मत कार्यों की सूची
यह एंडपॉइंट आपको प्रिंट-योग्यता मरम्मत कार्यों की एक सूची प्राप्त करने की अनुमति देता है।
पैरामीटर
वैकल्पिक विशेषताएँ
- 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: निर्माण समय के अनुसार अवरोही क्रम में क्रमबद्ध करें।
रिटर्न
प्रिंट-योग्यता मरम्मत कार्य ऑब्जेक्ट्स की एक पेजिनेटेड सूची लौटाता है।
Request
curl https://api.meshy.ai/openapi/v1/print/repair?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
[
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}
]
प्रिंट-योग्यता मरम्मत टास्क को स्ट्रीम करें
यह एंडपॉइंट Server-Sent Events (SSE) का उपयोग करते हुए किसी रिपेयर-प्रिंटेबिलिटी टास्क के लिए रीयल-टाइम अपडेट स्ट्रीम करता है।
पैरामीटर
- Name
- id
- Type
- path
- Description
जिस रिपेयर-प्रिंटेबिलिटी टास्क को स्ट्रीम करना है, उसका यूनीक पहचानकर्ता।
रिटर्न
Repair Printability Task Objects की एक स्ट्रीम को Server-Sent Events के रूप में लौटाता है।
प्रत्येक फ्रेम उस चरण के लिए पूरा टास्क ऑब्जेक्ट लेकर आता है — बिल्कुल वैसा ही स्वरूप जो
Get एंडपॉइंट लौटाता है — इसलिए जब तक टास्क PENDING या IN_PROGRESS में है
आउटपुट फ़ील्ड्स बस अभी भरे नहीं गए होते (null, [] या {}) और
finished_at का मान null होता है। model_urls ब्लॉक तभी भेजा जाता है जब टास्क SUCCEEDED स्थिति तक पहुँच जाता है।
Request
curl -N https://api.meshy.ai/openapi/v1/print/repair/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.
// Every frame is the full task object; fields not yet populated are null / empty.
// The PENDING frame below is abbreviated to the fields that change.
event: message
data: {
"id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/model.glb?Expires=***",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}
प्रिंट-योग्यता मरम्मत टास्क ऑब्जेक्ट
- Name
- id
- Type
- string
- Description
टास्क के लिए यूनीक पहचानकर्ता। हालांकि हम टास्क आईडी के लिए इम्प्लीमेंटेशन डिटेल के रूप में k-sortable UUID का उपयोग करते हैं, आपको आईडी के फॉर्मेट के बारे में कोई धारणा नहीं बनानी चाहिए।
- Name
- type
- Type
- string
- Description
प्रिंट-योग्यता मरम्मत टास्क का प्रकार। इसका मान
print-repairहै।
- Name
- status
- Type
- string
- Description
टास्क की स्थिति। संभावित मान
PENDING,IN_PROGRESS,SUCCEEDED,FAILED,CANCELEDमें से एक हैं।
- Name
- progress
- Type
- integer
- Description
टास्क की प्रगति। यदि टास्क अभी शुरू नहीं हुआ है, तो यह प्रॉपर्टी
0होगी। एक बार टास्क सफल हो जाने पर, यह100हो जाएगी।
- Name
- preceding_tasks
- Type
- integer
- Description
पूर्ववर्ती टास्क की संख्या।
यह फ़ील्ड का मान केवल तभी सार्थक है जब टास्क की स्थिति
PENDINGहो।
- Name
- created_at
- Type
- timestamp
- Description
टास्क कब बनाया गया था, उसका टाइमस्टैंप, मिलीसेकंड में।
- Name
- started_at
- Type
- timestamp
- Description
टास्क कब शुरू हुआ था, उसका टाइमस्टैंप, मिलीसेकंड में। यदि टास्क अभी शुरू नहीं हुआ है, तो यह प्रॉपर्टी
0होगी।
- Name
- finished_at
- Type
- timestamp
- Description
टास्क कब समाप्त हुआ था, उसका टाइमस्टैंप, मिलीसेकंड में। यदि टास्क अभी समाप्त नहीं हुआ है, तो यह प्रॉपर्टी
0होगी।
- Name
- expires_at
- Type
- timestamp
- Description
टास्क का परिणाम सिस्टम से कब समाप्त (expire) होगा, उसका टाइमस्टैंप, मिलीसेकंड में। यदि टास्क अभी समाप्त नहीं हुआ है तो
0।
- Name
- task_error
- Type
- object
- Description
यदि टास्क विफल हो गया है तो एरर की जानकारी। यदि टास्क विफल नहीं हुआ है तो यह प्रॉपर्टी
nullहै। अधिक जानकारी के लिए एरर देखें।- Name
message- Type
- string
- Description
एरर संदेश जो बताता है कि क्या गलत हुआ।
- Name
- model_urls
- Type
- object
- Description
मरम्मत किए गए 3D मॉडल के डाउनलोड करने योग्य URL। केवल इनपुट फॉर्मेट से मेल खाने वाली फ़ील्ड ही भरी जाती है; अन्य फॉर्मेट फ़ील्ड खाली स्ट्रिंग होती हैं।
- Name
glb- Type
- string
- Description
मरम्मत किए गए GLB का डाउनलोड करने योग्य URL। यह तब भरा जाता है जब इनपुट GLB था या जब
input_task_idका उपयोग किया गया था।
- Name
gltf- Type
- string
- Description
मरम्मत किए गए GLTF का डाउनलोड करने योग्य URL। यह तब भरा जाता है जब इनपुट एक GLTF अपलोड था।
- Name
fbx- Type
- string
- Description
मरम्मत किए गए FBX का डाउनलोड करने योग्य URL। यह तब भरा जाता है जब इनपुट एक FBX अपलोड था।
- Name
obj- Type
- string
- Description
मरम्मत किए गए OBJ का डाउनलोड करने योग्य URL। यह तब भरा जाता है जब इनपुट एक OBJ अपलोड था।
- Name
stl- Type
- string
- Description
मरम्मत किए गए STL का डाउनलोड करने योग्य URL। यह तब भरा जाता है जब इनपुट एक STL अपलोड था।
- Name
usdz- Type
- string
- Description
USDZ आउटपुट के लिए आरक्षित। प्रिंट-योग्यता मरम्मत टास्क के लिए हमेशा एक खाली स्ट्रिंग।
- Name
3mf- Type
- string
- Description
3MF आउटपुट के लिए आरक्षित। प्रिंट-योग्यता मरम्मत टास्क के लिए हमेशा एक खाली स्ट्रिंग।
- Name
mtl- Type
- string
- Description
MTL आउटपुट के लिए आरक्षित। प्रिंट-योग्यता मरम्मत टास्क के लिए हमेशा एक खाली स्ट्रिंग।
- Name
- thumbnail_url
- Type
- string
- Description
मरम्मत किए गए मॉडल से रेंडर की गई प्रीव्यू इमेज का URL।
- Name
- alpha_thumbnail_url
- Type
- string
- Description
thumbnail_urlके पारदर्शी-बैकग्राउंड (RGBA) संस्करण का डाउनलोड करने योग्य URL। यह केवल तभी मौजूद होता है जब टास्कalpha_thumbnail: trueके साथ बनाया गया था और पारदर्शी प्रीव्यू सफलतापूर्वक रेंडर हुआ था; अन्यथा यह फ़ील्ड छोड़ दी जाती है।
- Name
- texture_urls
- Type
- array
- Description
हमेशा एक खाली array। मरम्मत केवल इनपुट ज्यामिति को संरक्षित रखती है और टेक्सचर को दोबारा बेक नहीं करती।
- Name
- consumed_credits
- Type
- integer
- Description
इस टास्क द्वारा उपयोग किए गए क्रेडिट की संख्या। टास्क के
SUCCEEDEDतक पहुंचने पर10।FAILEDटास्क के लिए0लौटाता है (विफलता पर क्रेडिट वापस कर दिए जाते हैं)।
The Repair Printability Task Object
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}