एक सोर्स फोटो को दो चरणों में एक चिबी-स्टाइल कलेक्टिबल 3D फिगर में बदलें:
प्रोटोटाइप आपकी इनपुट फोटो से एक स्टाइल्ड कॉन्सेप्ट इमेज जनरेट करता है, फिर
बिल्ड उस कॉन्सेप्ट इमेज को एक टेक्सचर्ड 3D मॉडल में बदल देता है। दोनों चरण
input_task_id के माध्यम से आपस में जुड़े हुए हैं।
सोर्स फोटो से एक सिंगल chibi-style कॉन्सेप्ट इमेज जनरेट करें। रिटर्न की गई
टास्क ID वही है जिसे आप build एंडपॉइंट को input_task_id के रूप में पास
करते हैं। रिस्पॉन्स शेप के लिए
The Figure Prototype Task Object
देखें।
पैरामीटर
Name
image_url
Type
string
आवश्यक
Description
सोर्स फोटो जिसे Meshy chibi फिगर के रूप में स्टाइलाइज़ करेगा। हम फिलहाल .jpg, .jpeg, .png, और .webp फॉर्मेट सपोर्ट करते हैं।
इमेज प्रदान करने के दो तरीके हैं:
पब्लिकली एक्सेसिबल URL: एक ऐसा URL जो पब्लिक इंटरनेट से एक्सेस किया जा सकता है।
Data URI: इमेज का एक base64-एन्कोडेड data URI। data URI का उदाहरण: data:image/jpeg;base64,<your base64-encoded image data>.
Name
name
Type
string
Description
डिस्प्ले उद्देश्यों के लिए वैकल्पिक टास्क नाम। अधिकतम 100 कैरेक्टर।
Name
remove_background
Type
boolean
डिफ़ॉल्ट false
Description
जब true पर सेट किया जाता है, तो प्रोटोटाइप इमेज को बैकग्राउंड हटाकर एक ट्रांसपेरेंट RGBA PNG के रूप में लौटाया जाता है, ताकि आप सब्जेक्ट को किसी भी बैकग्राउंड पर कंपोज़िट कर सकें।
Returns
रिस्पॉन्स की result प्रॉपर्टी में नई बनाई गई फिगर प्रोटोटाइप टास्क की टास्क id होती है। Get a Task एंडपॉइंट को पोल करें या stream को सब्सक्राइब करें जब तक टास्क SUCCEEDED तक नहीं पहुँच जाता, फिर उस ID को build endpoint में input_task_id के रूप में पास करें।
Failure Modes
Name
400 - Bad Request
Description
रिक्वेस्ट स्वीकार्य नहीं थी। सामान्य कारण:
पैरामीटर गायब: image_url आवश्यक है।
अमान्य इमेज फॉर्मेट: दिया गया image_url एक सपोर्टेड फॉर्मेट (.jpg, .jpeg, .png, .webp) में नहीं है।
इमेज डाइमेंशन रेंज से बाहर: इमेज बहुत छोटी है, अधिकतम फ़ाइल आकार से अधिक है, या अधिकतम पिक्सेल काउंट से अधिक है।
अप्राप्य URL: image_url डाउनलोड नहीं किया जा सका (404 या timeout)।
अमान्य Data URI: base64 स्ट्रिंग गलत फॉर्मेट में है।
कंटेंट फ्लैग किया गया: इनपुट इमेज को NSFW या इंटेलेक्चुअल प्रॉपर्टी moderation द्वारा फ्लैग किया गया था।
Name
401 - Unauthorized
Description
प्रमाणीकरण विफल रहा। कृपया अपनी API की जाँच करें।
Name
402 - Payment Required
Description
यह टास्क करने के लिए अपर्याप्त क्रेडिट।
Name
429 - Too Many Requests
Description
आपने अपनी रेट लिमिट पार कर ली है।
Request
POST
/openapi/creative-lab/figure/v1/prototype
# Stage 1: generate a chibi-style concept imagecurlhttps://api.meshy.ai/openapi/creative-lab/figure/v1/prototype \-XPOST \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "image_url": "<your publicly accessible image url or base64-encoded data URI>" }'
Response
{"result":"018a210d-8ba4-705c-b111-1f1776f7f578"}
Prototype example
Start with a source portrait, then generate the prototype image used by the build stage.
किसी सफल हुए prototype task से फाइनल टेक्स्चर्ड 3D फिगर जनरेट करें।
यह build वही image-to-3D pipeline चलाता है जो
इमेज से 3D उपयोग करता है, इसलिए रिस्पॉन्स ऑब्जेक्ट का फॉर्मेट और
आउटपुट URL की लिस्ट बिल्कुल मेल खाती है। रिस्पॉन्स शेप के लिए
The Figure Build Task Object देखें।
पैरामीटर
Name
input_task_id
Type
string
आवश्यक
Description
इसी OpenAPI एंडपॉइंट के माध्यम से बनाए गए किसी prototype task की task ID। prototype उसी API की से बनाया गया होना चाहिए, उसे SUCCEEDED तक पहुँचना चाहिए था, और उसने बिल्कुल एक candidate image प्रोड्यूस की होनी चाहिए।
webapp के जरिए बनाए गए prototype tasks को स्वीकार नहीं किया जाता — build एंडपॉइंट केवल POST /openapi/creative-lab/figure/v1/prototype द्वारा प्रोड्यूस किए गए prototype tasks को स्वीकार करता है और किसी भी अन्य सोर्स को 404 के साथ अस्वीकार कर देता है।
Name
name
Type
string
Description
डिस्प्ले उद्देश्यों के लिए ऑप्शनल task नाम। अधिकतम 100 अक्षर।
रिटर्न
रिस्पॉन्स की result प्रॉपर्टी में नए बनाए गए figure build task की task id होती है। Get a Task एंडपॉइंट को पोल करें या stream को सब्सक्राइब करें जब तक task SUCCEEDED तक न पहुँच जाए, फिर model_urls.glb से टेक्स्चर्ड GLB डाउनलोड करें (या यदि आपका डाउनस्ट्रीम pipeline OBJ पसंद करता है तो model_urls.obj और model_urls.mtl से OBJ + MTL पेयर डाउनलोड करें)।
विफलता की स्थितियाँ
Name
400 - Bad Request
Description
रिक्वेस्ट अस्वीकार्य थी। सामान्य कारण:
पैरामीटर गायब: input_task_id आवश्यक है।
अमान्य UUID: input_task_id एक वैध UUID नहीं है।
Parent सफल नहीं हुआ: संदर्भित prototype task अभी तक SUCCEEDED तक नहीं पहुँचा है।
कोई candidate नहीं: prototype task सफल हुआ लेकिन उसने कोई candidate image प्रोड्यूस नहीं की।
Name
401 - Unauthorized
Description
प्रमाणीकरण विफल रहा। कृपया अपनी API की जाँचें।
Name
402 - Payment Required
Description
इस task को करने के लिए अपर्याप्त क्रेडिट।
Name
404 - Not Found
Description
संदर्भित prototype task मौजूद नहीं है, किसी अन्य यूज़र का है, या webapp के माध्यम से बनाया गया था (केवल API-mode prototype tasks ही build में chain होते हैं)।
Name
429 - Too Many Requests
Description
आपने अपनी रेट लिमिट पार कर ली है।
Request
POST
/openapi/creative-lab/figure/v1/build
# Stage 2: chain build off a succeeded prototype taskcurlhttps://api.meshy.ai/openapi/creative-lab/figure/v1/build \-XPOST \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578" }'
Response
{"result":"019c320e-9a8f-7a1c-9c11-2a1876f8a9bb"}
Build example
build task, चुनी गई prototype image को डाउनलोड करने योग्य टेक्स्चर्ड 3D मॉडल में बदल देता है।
किसी वैध टास्क id के आधार पर प्रोटोटाइप या बिल्ड टास्क प्राप्त करें। URL पथ
टास्क के चरण से मेल खाना चाहिए — /prototype/:id के माध्यम से फ़ेच किया गया कोई बिल्ड टास्क
404 लौटाता है, और इसका उल्टा भी सही है।
एक फिगर टास्क को कैंसल करें। यदि टास्क अभी भी PENDING है, तो
क्रिएट-टाइम पर उपयोग किए गए क्रेडिट रिफंड कर दिए जाते हैं। जो टास्क पहले से
IN_PROGRESS हैं, उन्हें बिना रिफंड के कैंसल किया जाता है (हो सकता है कि वर्कर पहले से ही
रिसोर्सेज़ खर्च कर रहा हो)। जो टास्क पहले ही किसी अंतिम स्थिति
(SUCCEEDED, FAILED, CANCELED) तक पहुँच चुके हैं, उन्हें कैंसल नहीं किया जा सकता।
URL पथ को टास्क के चरण से मेल खाना चाहिए — DELETE को
/prototype/:buildId पर करने से 404 रिटर्न होता है।
पथ पैरामीटर्स
Name
id
Type
path
Description
कैंसल करने वाले फिगर टास्क के लिए यूनीक आइडेंटिफ़ायर।
रिटर्न
सफलता पर खाली बॉडी के साथ 204 No Content रिटर्न करता है।
फेल्योर मोड्स
Name
400 - Bad Request
Description
टास्क पहले से ही एक अंतिम स्थिति में है और इसे कैंसल नहीं किया जा सकता।
Name
404 - Not Found
Description
टास्क मौजूद नहीं है, किसी अन्य यूज़र से संबंधित है, या इसका चरण URL पथ से मेल नहीं खाता है।
Server-Sent Events (SSE) के माध्यम से एक फिगर टास्क के लिए रीयल-टाइम अपडेट स्ट्रीम करें।
URL पथ को टास्क के स्टेज से मेल खाना चाहिए — /prototype/:buildId/stream
पर स्ट्रीम खोलने पर status_code: 404 के साथ एक एकल event: error
पेलोड उत्सर्जित होता है और स्ट्रीम बंद हो जाती है।
पैरामीटर
Name
id
Type
path
Description
स्ट्रीम करने के लिए फिगर टास्क का यूनीक पहचानकर्ता।
रिटर्न वैल्यू
यह Server-Sent Events के रूप में Figure Prototype
या Figure Build टास्क ऑब्जेक्ट्स की एक स्ट्रीम रिटर्न करता है।
हर फ्रेम उस स्टेज के लिए पूरा टास्क ऑब्जेक्ट लेकर आता है — वही आकार जो
Get एंडपॉइंट रिटर्न करता है — इसलिए जब तक टास्क PENDING या IN_PROGRESS
होता है, आउटपुट फ़ील्ड्स बस अभी तक भरे नहीं होते (null, [] या {}) और
finished_atnull होता है।
किसी एक स्टेज के लिए अपने फिगर टास्क की पेजिनेटेड सूची प्राप्त करें। URL
पथ स्टेज को चुनता है — /prototype प्रोटोटाइप टास्क लौटाता है; /build
बिल्ड टास्क लौटाता है। दूसरे स्टेज के टास्क किसी भी
रिस्पॉन्स में शामिल नहीं होते।
पथ पैरामीटर
Name
stage
Type
path
आवश्यक
Description
या तो prototype या build। कलेक्शन केवल उन्हीं टास्क को लौटाता है
जिनका स्टेज URL से मेल खाता है — /prototype फ़ेच करने पर कभी
बिल्ड टास्क नहीं मिलते और इसका उल्टा भी सही है।
क्वेरी पैरामीटर
Name
page_num
Type
integer
डिफ़ॉल्ट 1
Description
पेजिनेशन के लिए पेज नंबर।
Name
page_size
Type
integer
डिफ़ॉल्ट 10
Description
पेज साइज़ लिमिट। अधिकतम अनुमत मान 100 आइटम है।
Name
sort_by
Type
string
डिफ़ॉल्ट -created_at
Description
सॉर्ट करने के लिए फ़ील्ड। उपलब्ध मान:
+created_at: निर्माण समय के आधार पर आरोही क्रम में सॉर्ट करें।
-created_at: निर्माण समय के आधार पर अवरोही क्रम में सॉर्ट करें।
Figure Prototype Task ऑब्जेक्ट एक कार्य इकाई (work unit) है जिसे Meshy एक सोर्स फोटो से chibi-style कॉन्सेप्ट इमेज जनरेट करने के लिए ट्रैक करता है। इस चरण का आउटपुट input_task_id के माध्यम से बिल्ड चरण में chain किया जाता है।
Properties
Name
id
Type
string
Description
टास्क के लिए यूनीक आइडेंटिफायर। जबकि हम इम्प्लीमेंटेशन डिटेल के रूप में टास्क ids के लिए k-sortable UUID का उपयोग करते हैं, आपको id के फॉर्मेट के बारे में कोई भी अनुमान नहीं लगाना चाहिए।
Name
type
Type
string
Description
टास्क का प्रकार। इसका मान creative-lab-figure-prototype है।
Name
name
Type
string
Description
टास्क बनाते समय दिया गया टास्क नाम। यदि कोई नाम प्रदान नहीं किया गया था तो यह एक खाली स्ट्रिंग होगी।
Name
status
Type
string
Description
टास्क की स्थिति। संभावित मान PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED में से एक हैं।
Name
progress
Type
integer
Description
टास्क की progress। अगर टास्क अभी शुरू नहीं हुआ है, तो यह प्रॉपर्टी 0 होगी। एक बार टास्क सफल हो जाने पर, यह 100 हो जाएगी।
Name
created_at
Type
timestamp
Description
टास्क बनाए जाने का टाइमस्टैंप, मिलीसेकंड में।
एक टाइमस्टैंप 1 जनवरी, 1970 UTC से बीते मिलीसेकंड की संख्या को दर्शाता है, जो
RFC 3339 स्टैंडर्ड का पालन करता है।
उदाहरण के लिए, शुक्रवार, 1 सितंबर, 2023 12:00:00 PM GMT को 1693569600000 के रूप में दर्शाया जाता है। यह
Meshy API में सभी टाइमस्टैंप्स पर लागू होता है।
Name
started_at
Type
timestamp
Description
टास्क शुरू होने का टाइमस्टैंप, मिलीसेकंड में। अगर टास्क अभी शुरू नहीं हुआ है, तो यह प्रॉपर्टी 0 होगी।
Name
finished_at
Type
timestamp
Description
टास्क समाप्त होने का टाइमस्टैंप, मिलीसेकंड में। अगर टास्क अभी समाप्त नहीं हुआ है, तो यह प्रॉपर्टी 0 होगी।
Name
expires_at
Type
timestamp
Description
टास्क का परिणाम समाप्त (expire) होने का टाइमस्टैंप, मिलीसेकंड में।
Name
preceding_tasks
Type
integer
Description
पूर्ववर्ती टास्क्स की संख्या।
इस फील्ड का मान केवल तभी सार्थक है जब टास्क की स्थिति PENDING हो।
Name
task_error
Type
object
Description
विफल टास्क्स के लिए एरर विवरण। पूर्ण task_error ऑब्जेक्ट रेफरेंस के लिए एरर देखें।
Name
consumed_credits
Type
integer
Description
इस टास्क द्वारा उपभोग किए गए क्रेडिट की संख्या। यह तब मौजूद होता है जब टास्क की स्थिति PENDING, IN_PROGRESS, या SUCCEEDED हो। FAILED टास्क्स के लिए 0 रिटर्न करता है (विफलता पर क्रेडिट रिफंड कर दिए जाते हैं)।
Name
image_urls
Type
array of strings
Description
इस प्रोटोटाइप टास्क द्वारा जनरेट किए गए कॉन्सेप्ट इमेज उम्मीदवारों (candidates) के लिए डाउनलोड करने योग्य URLs। वर्तमान में API हमेशा ठीक एक उम्मीदवार लौटाता है; यह फील्ड एक array है ताकि भविष्य के रिवीज़न बिना कोई ब्रेकिंग चेंज किए कई उम्मीदवार दिखा सकें।
फिगर बिल्ड टास्क ऑब्जेक्ट एक कार्य इकाई है जिसे Meshy एक सफल प्रोटोटाइप टास्क से टेक्सचर्ड
3D फिगर जनरेट करने के लिए ट्रैक करता है। यह वही image-to-3D पाइपलाइन चलाता है जिसका उपयोग इमेज से 3D
करता है, इसलिए आउटपुट फ़ील्ड उस एंडपॉइंट के टास्क ऑब्जेक्ट को प्रतिबिंबित करती हैं।
प्रॉपर्टीज़
Name
id
Type
string
Description
टास्क के लिए यूनीक आइडेंटिफ़ायर।
Name
type
Type
string
Description
टास्क का प्रकार। मान creative-lab-figure-build है।
Name
name
Type
string
Description
टास्क बनाते समय दिया गया टास्क नाम। यदि कोई नाम नहीं दिया गया है तो खाली स्ट्रिंग।
Name
status
Type
string
Description
टास्क की स्थिति। संभावित मान इनमें से एक हैं: PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED।
Name
progress
Type
integer
Description
टास्क की progress। यदि टास्क अभी शुरू नहीं हुआ है, तो यह प्रॉपर्टी 0 होगी। एक बार टास्क सफल हो जाने पर, यह 100 हो जाएगी।
Name
created_at
Type
timestamp
Description
टास्क बनाए जाने का टाइमस्टैंप, मिलीसेकंड में।
Name
started_at
Type
timestamp
Description
टास्क शुरू होने का टाइमस्टैंप, मिलीसेकंड में।
Name
finished_at
Type
timestamp
Description
टास्क समाप्त होने का टाइमस्टैंप, मिलीसेकंड में।
Name
expires_at
Type
timestamp
Description
टास्क परिणाम के expire होने का टाइमस्टैंप, मिलीसेकंड में।
Name
preceding_tasks
Type
integer
Description
पूर्ववर्ती टास्क की गिनती। यह केवल तभी सार्थक है जब स्थिति PENDING हो।
Name
task_error
Type
object
Description
विफल टास्क के लिए एरर विवरण। पूर्ण task_error ऑब्जेक्ट संदर्भ के लिए एरर देखें।
Name
consumed_credits
Type
integer
Description
इस टास्क द्वारा खपत किए गए क्रेडिट की संख्या। FAILED टास्क के लिए 0 रिटर्न करता है (विफलता पर क्रेडिट रिफंड कर दिए जाते हैं)।
Name
prompt
Type
string
Description
फिगर बिल्ड के लिए हमेशा खाली। इमेज से 3D द्वारा उपयोग किए जाने वाले साझा V2ImageTo3DTaskResponse शेप के साथ क्रॉस-एंडपॉइंट संगतता के लिए मौजूद है।
Name
negative_prompt
Type
string
Description
फिगर बिल्ड के लिए हमेशा खाली। क्रॉस-एंडपॉइंट संगतता के लिए मौजूद है।
Name
texture_prompt
Type
string
Description
फिगर बिल्ड के लिए हमेशा खाली। क्रॉस-एंडपॉइंट संगतता के लिए मौजूद है।
Name
texture_image_url
Type
string
Description
फिगर बिल्ड के लिए हमेशा खाली। क्रॉस-एंडपॉइंट संगतता के लिए मौजूद है।
Name
model_urls
Type
object
Description
जनरेट किए गए 3D मॉडल के लिए डाउनलोड करने योग्य URL। फिगर बिल्ड एक टेक्सचर्ड GLB के साथ-साथ उन पाइपलाइनों के लिए OBJ + MTL जोड़ी उत्पन्न करता है जो Wavefront OBJ को प्राथमिकता देती हैं। यह फ़ील्ड शेप इमेज से 3D model_urls ऑब्जेक्ट से मेल खाती है ताकि भविष्य में फ़ॉर्मैट जोड़ने पर कोई ब्रेकिंग बदलाव न हो।
Name
glb
Type
string
Description
टेक्सचर्ड GLB फ़ाइल का डाउनलोड करने योग्य URL।
Name
obj
Type
string
Description
Wavefront OBJ फ़ाइल (ज्यामिति + UV) का डाउनलोड करने योग्य URL।
Name
mtl
Type
string
Description
OBJ के साथी MTL मटेरियल फ़ाइल का डाउनलोड करने योग्य URL। इसे obj और texture_urls[0].base_color की एंट्री के साथ जोड़ें।
Name
thumbnail_url
Type
string
Description
मॉडल फ़ाइल की थंबनेल इमेज का डाउनलोड करने योग्य URL।
Name
texture_urls
Type
array
Description
इस टास्क द्वारा जनरेट किए गए टेक्सचर URL ऑब्जेक्ट्स का एक ऐरे। वर्तमान में इसमें बेस कलर मैप के साथ एक ही ऑब्जेक्ट है।