Creative Lab — लैंप API

किसी सोर्स फ़ोटो को दो चरणों में एक 3D-प्रिंट करने योग्य लैंपशेड में बदलें: प्रोटोटाइप एक स्टाइलाइज़्ड मैट-व्हाइट कॉन्सेप्ट इमेज जनरेट करता है और इसे एक खोखले 3D मॉडल (GLB) में बदल देता है, फिर बिल्ड उस मॉडल पर लैंप प्रोसेसर चलाकर प्रिंट करने योग्य STL पार्ट्स तैयार करता है — एक ओपन-बॉटम लैंपशेड जिसमें लाइट-सोर्स फिक्सचर के लिए एक बेस प्लेट हो, साथ ही फिक्सचर माउंट भी शामिल हो। दोनों चरण input_task_id के माध्यम से आपस में जुड़े होते हैं।

  • POST /openapi/creative-lab/lamp/v1/prototype
  • POST /openapi/creative-lab/lamp/v1/build

POST/openapi/creative-lab/lamp/v1/prototype

Lamp Prototype टास्क बनाएँ

रेफरेंस फोटो से एक सिंगल matte-white कॉन्सेप्ट इमेज जनरेट करें और इसे एक खोखले 3D लैंपशेड मॉडल में कन्वर्ट करें। रिस्पॉन्स में कॉन्सेप्ट इमेज (image_urls) और 3D मॉडल (thumbnail_url के साथ model_urls.glb) दोनों शामिल होते हैं। रिटर्न किया गया टास्क ID वही है जिसे आप बिल्ड एंडपॉइंट को input_task_id के रूप में पास करते हैं। रिस्पॉन्स के शेप के लिए The Lamp Prototype Task Object देखें।

पैरामीटर

  • Name
    image_url
    Type
    string
    आवश्यक
    Description

    सोर्स फोटो जिसे Meshy लैंपशेड के लिए विज़ुअल रेफरेंस के रूप में इस्तेमाल करता है। हम फ़िलहाल .jpg, .jpeg, .png, और .webp फॉर्मेट सपोर्ट करते हैं।

    इमेज देने के दो तरीके हैं:

    • सार्वजनिक रूप से एक्सेस योग्य URL: एक URL जो पब्लिक इंटरनेट से एक्सेस किया जा सकता है।
    • Data URI: इमेज का बेस64-एन्कोडेड डेटा URI। Data URI का उदाहरण: data:image/jpeg;base64,<your base64-encoded image data>।
  • Name
    image_subject
    Type
    string
    डिफ़ॉल्ट character
    Description

    सब्जेक्ट कैटेगरी हिंट जो stylization prompt को चुनता है। उपलब्ध वैल्यूज़:

    • character (डिफ़ॉल्ट) — सिंगल कैरेक्टर / ऑब्जेक्ट सब्जेक्ट (फिगरीन, एनिमल, मैस्कट, आदि)।
    • landscape — आउटडोर सीन / पैनोरमा सब्जेक्ट (पहाड़, सिटीस्केप, जंगल, आदि)।
  • Name
    name
    Type
    string
    Description

    डिस्प्ले उद्देश्यों के लिए वैकल्पिक टास्क नाम। अधिकतम 100 वर्ण।

  • Name
    remove_background
    Type
    boolean
    डिफ़ॉल्ट false
    Description

    जब true पर सेट किया जाता है, तो प्रोटोटाइप इमेज बैकग्राउंड हटाकर एक ट्रांसपेरेंट RGBA PNG के रूप में रिटर्न की जाती है, ताकि आप सब्जेक्ट को किसी भी बैकग्राउंड पर कंपोज़िट कर सकें।

रिटर्न वैल्यू

रिस्पॉन्स की result प्रॉपर्टी में नए बनाए गए lamp prototype टास्क का टास्क id होता है। Get a Task एंडपॉइंट को पोल करें या stream को सब्सक्राइब करें जब तक टास्क SUCCEEDED तक न पहुंच जाए, फिर उस ID को build endpoint को input_task_id के रूप में पास करें।

फेल्योर मोड्स

  • Name
    400 - Bad Request
    Description

    रिक्वेस्ट स्वीकार्य नहीं थी। सामान्य कारण:

    • पैरामीटर गायब: image_url आवश्यक है।
    • अमान्य इमेज फॉर्मेट: दिया गया image_url किसी सपोर्टेड फॉर्मेट (.jpg, .jpeg, .png, .webp) में नहीं है।
    • इमेज डाइमेंशन रेंज से बाहर: इमेज बहुत छोटी है, अधिकतम फ़ाइल आकार से अधिक है, या अधिकतम पिक्सेल काउंट से अधिक है।
    • अनरीचेबल URL: image_url को डाउनलोड नहीं किया जा सका (404 या timeout)।
    • अमान्य Data URI: बेस64 स्ट्रिंग सही ढंग से फॉर्मेट नहीं है।
    • कंटेंट फ़्लैग किया गया: इनपुट इमेज को NSFW या इंटेलेक्चुअल प्रॉपर्टी moderation द्वारा फ़्लैग किया गया था।
    • अमान्य image_subject: character / landscape में से कोई एक नहीं है।
  • Name
    401 - Unauthorized
    Description

    प्रमाणीकरण विफल रहा। कृपया अपनी API की जांचें।

  • Name
    402 - Payment Required
    Description

    यह टास्क करने के लिए पर्याप्त क्रेडिट नहीं हैं।

  • Name
    429 - Too Many Requests
    Description

    आपने अपनी रेट लिमिट पार कर ली है।

Request

POST
/openapi/creative-lab/lamp/v1/prototype
# Stage 1: concept image + hollow 3D lampshade model from a source photo
curl https://api.meshy.ai/openapi/creative-lab/lamp/v1/prototype \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "image_url": "<your publicly accessible image url or base64-encoded data URI>",
    "image_subject": "character"
  }'

Response

{
  "result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}
Prototype example
Start with a source photo; the prototype returns the concept image and a hollow 3D model that the build stage processes.
Source cat photo used as the Creative Lab Lamp input
Prototype input
Creative Lab Lamp prototype output generated from the source photo
Prototype output

POST/openapi/creative-lab/lamp/v1/build

एक Lamp Build टास्क बनाएं

एक सफल prototype टास्क से अंतिम 3D-प्रिंट करने योग्य पार्ट्स जनरेट करें। build, prototype के 3D मॉडल पर lamp processor चलाता है: यह मॉडल को diameter_mm में स्केल करता है, cut_amount_percent द्वारा नीचे के हिस्से को फ्लैट करता है, इसे thickness_mm तक खोखला करता है, नीचे को खोलता है, और — जब कोई fixture preset चुना जाता है — तो fixture hole वाली एक बेस प्लेट और प्रकाश स्रोत के लिए एक अलग माउंट जोड़ता है। प्रतिक्रिया के आकार के लिए The Lamp Build Task Object देखें।

पैरामीटर

  • Name
    input_task_id
    Type
    string
    आवश्यक
    Description

    इसी OpenAPI एंडपॉइंट के माध्यम से बनाए गए किसी prototype टास्क की टास्क ID। prototype उसी API की के साथ बनाया गया होना चाहिए, उसे SUCCEEDED तक पहुँचा होना चाहिए, और उसने एक 3D मॉडल तैयार किया होना चाहिए।

    webapp के माध्यम से बनाए गए prototype टास्क स्वीकार नहीं किए जाते — build एंडपॉइंट केवल POST /openapi/creative-lab/lamp/v1/prototype द्वारा तैयार किए गए prototype टास्क स्वीकार करता है और किसी अन्य स्रोत को 404 के साथ अस्वीकार करता है।

  • Name
    name
    Type
    string
    Description

    प्रदर्शन उद्देश्यों के लिए वैकल्पिक टास्क नाम। अधिकतम 100 वर्ण।

options

lampshade ज्यामिति के लिए वैकल्पिक ट्यूनिंग पैरामीटर। हर फ़ील्ड का एक उचित डिफ़ॉल्ट मान होता है — केवल वे भेजें जिन्हें आप ओवरराइड करना चाहते हैं।

  • Name
    diameter_mm
    Type
    number
    डिफ़ॉल्ट 150
    Description

    लैंपशेड बाउंडिंग बॉक्स का लक्षित अधिकतम आयाम, मिलीमीटर में। मेश को फिट करने के लिए समान रूप से स्केल किया जाता है। रेंज: [50, 400]।

  • Name
    thickness_mm
    Type
    number
    डिफ़ॉल्ट 1
    Description

    खोखले लैंपशेड की दीवार की मोटाई, मिलीमीटर में। रेंज: (0, 10]।

  • Name
    cut_amount_percent
    Type
    number
    डिफ़ॉल्ट 1
    Description

    नीचे की तरफ़ फ्लैट काटी जाने वाली मॉडल ऊँचाई का प्रतिशत, ताकि लैंपशेड प्रिंट बेड पर टिक सके और fixture के लिए एक खुलाव हो। रेंज: [1, 100]।

  • Name
    light_source_preset
    Type
    string
    डिफ़ॉल्ट bambu_mh001_60mm
    Description

    प्रकाश-स्रोत fixture preset जो यह निर्धारित करता है कि नीचे का हिस्सा कैसे बनाया जाए। उपलब्ध मान:

    • bambu_mh001_60mm (डिफ़ॉल्ट) — 60 mm fixture hole वाली एक बेस प्लेट सहित खुले-तले वाला लैंपशेड, दोनों model_urls.lamp_stl में, और fixture माउंट model_urls.base_stl के रूप में।
    • none — model_urls.lamp_stl में एक ही सील किया हुआ लैंपशेड; model_urls.base_stl को शामिल नहीं किया जाता।
  • Name
    fixture_offset_x_mm
    Type
    number
    डिफ़ॉल्ट 0
    Description

    बेस प्लेट पर fixture hole का X-अक्ष ऑफ़सेट, लैंपशेड केंद्र के सापेक्ष, मिलीमीटर में। केवल तभी सार्थक जब light_source_preset ≠ none हो। रेंज: [-80, 80]।

  • Name
    fixture_offset_z_mm
    Type
    number
    डिफ़ॉल्ट 0
    Description

    बेस प्लेट पर fixture hole का Z-अक्ष (गहराई) ऑफ़सेट, लैंपशेड केंद्र के सापेक्ष, मिलीमीटर में। केवल तभी सार्थक जब light_source_preset ≠ none हो। रेंज: [-80, 80]।

  • Name
    rotate_x_deg
    Type
    number
    डिफ़ॉल्ट 0
    Description

    प्रोसेसिंग से पहले मॉडल पर लागू X अक्ष के चारों ओर रोटेशन, डिग्री में। तीनों रोटेशन मॉडल के केंद्र के चारों ओर XYZ यूलर कोणों के रूप में लागू किए जाते हैं। रेंज: [-360, 360]।

  • Name
    rotate_y_deg
    Type
    number
    डिफ़ॉल्ट 0
    Description

    प्रोसेसिंग से पहले इंपोर्ट किए गए मेश पर लागू Y अक्ष के चारों ओर रोटेशन, डिग्री में। रेंज: [-360, 360]।

  • Name
    rotate_z_deg
    Type
    number
    डिफ़ॉल्ट 0
    Description

    प्रोसेसिंग से पहले इंपोर्ट किए गए मेश पर लागू Z अक्ष के चारों ओर रोटेशन, डिग्री में। रेंज: [-360, 360]।

  • Name
    include_result_json
    Type
    boolean
    डिफ़ॉल्ट false
    Description

    जब true हो और output.format, zip हो, तो बंडल के अंदर lamp processor की result.json (pipeline का नाम, चेतावनियाँ, और artifact पथ) शामिल करता है। जब output.format, stl हो तो इसे नज़रअंदाज़ किया जाता है।

output

वैकल्पिक wire-format चयनकर्ता। डिफ़ॉल्ट रूप से stl।

  • Name
    format
    Type
    string
    डिफ़ॉल्ट stl
    Description

    build द्वारा लौटाया गया artifact बंडल। उपलब्ध मान:

    • stl (डिफ़ॉल्ट) — model_urls.lamp_stl लौटाता है (लैंपशेड, जब कोई fixture preset सेट हो तो बेस प्लेट सहित), साथ ही जब light_source_preset ≠ none हो तो model_urls.base_stl।
    • zip — processor द्वारा उत्पन्न प्रत्येक artifact (lamp.stl, वैकल्पिक base.stl, वैकल्पिक result.json) को एक ही zip में पैकेज करता है और इसे model_urls.bundle_zip के अंतर्गत लौटाता है।

रिटर्न

प्रतिक्रिया की result प्रॉपर्टी में नए बनाए गए lamp build टास्क का टास्क id होता है। Get a Task एंडपॉइंट को पोल करें या stream को सब्सक्राइब करें जब तक टास्क SUCCEEDED तक न पहुँच जाए, फिर model_urls से artifacts डाउनलोड करें।

विफलता के तरीके

  • Name
    400 - Bad Request
    Description

    अनुरोध स्वीकार्य नहीं था। सामान्य कारण:

    • पैरामीटर गुम है: input_task_id आवश्यक है।
    • अमान्य UUID: input_task_id एक मान्य UUID नहीं है।
    • Parent सफल नहीं हुआ: संदर्भित prototype टास्क अभी तक SUCCEEDED तक नहीं पहुँचा है।
    • कोई मॉडल नहीं: prototype टास्क सफल रहा लेकिन इसने कोई 3D मॉडल नहीं तैयार किया।
    • Options रेंज से बाहर हैं: options में से किसी फ़ील्ड का मान इसकी अनुमत रेंज या enum सेट से बाहर था।
  • Name
    401 - Unauthorized
    Description

    प्रमाणीकरण विफल रहा। कृपया अपनी API की जाँचें।

  • Name
    402 - Payment Required
    Description

    इस टास्क को करने के लिए अपर्याप्त क्रेडिट।

  • Name
    404 - Not Found
    Description

    संदर्भित prototype टास्क मौजूद नहीं है, किसी अन्य उपयोगकर्ता का है, या webapp के माध्यम से बनाया गया था (केवल API-mode prototype टास्क ही build में chain होते हैं)।

  • Name
    429 - Too Many Requests
    Description

    आपने अपनी रेट लिमिट पार कर ली है।

Request

POST
/openapi/creative-lab/lamp/v1/build
# Stage 2: chain build off a succeeded prototype task
curl https://api.meshy.ai/openapi/creative-lab/lamp/v1/build \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "options": {
      "diameter_mm": 120,
      "thickness_mm": 2,
      "light_source_preset": "bambu_mh001_60mm",
      "cut_amount_percent": 30
    },
    "output": {
      "format": "stl"
    }
  }'

Response

{
  "result": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb"
}
Build उदाहरण
build टास्क prototype के 3D मॉडल को प्रिंट करने योग्य लैंपशेड पार्ट्स में बदलता है।
Creative Lab Lamp build model preview
Build model preview

GET/openapi/creative-lab/lamp/v1/(prototype|build)/:id

एक लैंप Task प्राप्त करें

किसी मान्य task id के लिए प्रोटोटाइप या बिल्ड task प्राप्त करें। URL पथ task के चरण से मेल खाना चाहिए — यदि कोई बिल्ड task /prototype/:id के माध्यम से फ़ेच किया जाता है तो वह 404 लौटाता है, और इसके विपरीत भी।

रिस्पॉन्स आकृतियों के लिए The Lamp Prototype Task Object और The Lamp Build Task Object देखें।

पैरामीटर

  • Name
    id
    Type
    path
    Description

    प्राप्त किए जाने वाले लैंप task के लिए यूनीक आइडेंटिफ़ायर।

रिटर्न

रिस्पॉन्स में लैंप task ऑब्जेक्ट होता है। आकृति इस पर निर्भर करती है कि कौन-सा चरण रिक्वेस्ट किया गया था।

Request

GET
/openapi/creative-lab/lamp/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578
# Prototype
curl https://api.meshy.ai/openapi/creative-lab/lamp/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

# Build
curl https://api.meshy.ai/openapi/creative-lab/lamp/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Prototype Response

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-lamp-prototype",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123456000,
  "started_at": 1729123460000,
  "finished_at": 1729123486000,
  "expires_at": 1729382686000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 30,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "image_urls": [
    "https://assets.meshy.ai/***/concept.png?Expires=***"
  ]
}

Build Response

{
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-lamp-build",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123500000,
  "started_at": 1729123510000,
  "finished_at": 1729123535000,
  "expires_at": 1729382735000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 6,
  "model_urls": {
    "lamp_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/lamp.stl?Expires=***",
    "base_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/base.stl?Expires=***"
  }
}

DELETE/openapi/creative-lab/lamp/v1/(prototype|build)/:id

Delete a Lamp Task

एक लैंप टास्क को कैंसल करें। यदि टास्क अभी भी PENDING है, तो क्रिएट-टाइम पर उपयोग किए गए क्रेडिट रिफंड कर दिए जाते हैं। जो टास्क पहले से IN_PROGRESS हैं, उन्हें बिना रिफंड के कैंसल कर दिया जाता है (हो सकता है कि वर्कर पहले से ही रिसोर्सेज़ खर्च कर रहा हो)। जो टास्क पहले से ही किसी टर्मिनल स्टेट (SUCCEEDED, FAILED, CANCELED) पर पहुँच चुके हैं, उन्हें कैंसल नहीं किया जा सकता।

URL पथ को टास्क के स्टेज से मेल खाना चाहिए — /prototype/:buildId पर DELETE 404 लौटाता है।

Path Parameters

  • Name
    id
    Type
    path
    Description

    कैंसल करने के लिए लैंप टास्क का यूनीक आइडेंटिफ़ायर।

Returns

सफलता पर 204 No Content को खाली बॉडी के साथ लौटाता है।

Failure Modes

  • Name
    400 - Bad Request
    Description

    टास्क पहले से ही एक टर्मिनल स्टेट में है और इसे कैंसल नहीं किया जा सकता।

  • Name
    404 - Not Found
    Description

    टास्क मौजूद नहीं है, किसी दूसरे यूज़र का है, या इसका स्टेज URL पथ से मेल नहीं खाता।

Request

DELETE
/openapi/creative-lab/lamp/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578
curl --request DELETE \
  --url https://api.meshy.ai/openapi/creative-lab/lamp/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Response

// Returns 204 No Content on success (empty body).

GET/openapi/creative-lab/lamp/v1/(prototype|build)/:id/stream

एक लैंप टास्क को स्ट्रीम करें

Server-Sent Events (SSE) के माध्यम से एक लैंप टास्क के लिए रीयल-टाइम अपडेट स्ट्रीम करें। URL पाथ को टास्क के स्टेज से मेल खाना चाहिए — /prototype/:buildId/stream पर स्ट्रीम खोलने से status_code: 404 वाला एक अकेला event: error पेलोड जारी होता है और स्ट्रीम बंद हो जाती है।

पैरामीटर

  • Name
    id
    Type
    path
    Description

    स्ट्रीम करने के लिए लैंप टास्क का यूनीक आइडेंटिफायर।

रिटर्न्स

Server-Sent Events के रूप में लैंप प्रोटोटाइप या लैंप बिल्ड टास्क ऑब्जेक्ट्स की एक स्ट्रीम रिटर्न करता है। हर फ़्रेम उस स्टेज के लिए पूरा टास्क ऑब्जेक्ट ले जाता है — वही शेप जो Get एंडपॉइंट रिटर्न करता है — इसलिए जब तक टास्क PENDING या IN_PROGRESS है, तब तक आउटपुट फ़ील्ड्स बस अभी तक भरे नहीं गए हैं (null, [] या {}) और finished_at null है।

Request

GET
/openapi/creative-lab/lamp/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/stream
curl -N https://api.meshy.ai/openapi/creative-lab/lamp/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Response Stream

// Error event example (wrong stage or task not found)
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": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-lamp-build",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123500000,
  "started_at": 1729123510000,
  "finished_at": 1729123535000,
  "expires_at": 1729382735000,
  "task_error": null,
  "consumed_credits": 6,
  "model_urls": {
    "lamp_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/lamp.stl?Expires=***",
    "base_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/base.stl?Expires=***"
  }
}

GET/openapi/creative-lab/lamp/v1/(prototype|build)

लैंप टास्क की सूची

किसी एक स्टेज के लिए अपने लैंप टास्क की पेजिनेटेड सूची प्राप्त करें। URL पथ स्टेज को चुनता है — /prototype प्रोटोटाइप टास्क लौटाता है; /build बिल्ड टास्क लौटाता है। दूसरे स्टेज के टास्क किसी भी रिस्पॉन्स में शामिल नहीं होते।

Path Parameters

  • Name
    stage
    Type
    path
    आवश्यक
    Description

    या तो prototype या build। कलेक्शन केवल उन्हीं टास्क को लौटाता है जिनका स्टेज URL से मेल खाता है — /prototype फ़ेच करने पर बिल्ड टास्क कभी नहीं लौटाए जाते, और इसका उल्टा भी सही है।

Query Parameters

  • 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: बनाए जाने के समय के अनुसार अवरोही क्रम में सॉर्ट करें।

Returns

प्रति-स्टेज टास्क ऑब्जेक्ट की एक पेजिनेटेड सूची लौटाता है — /prototype की सूची बनाते समय द लैंप प्रोटोटाइप टास्क ऑब्जेक्ट या /build की सूची बनाते समय द लैंप बिल्ड टास्क ऑब्जेक्ट।

Request

GET
/openapi/creative-lab/lamp/v1/prototype
# List prototype tasks
curl https://api.meshy.ai/openapi/creative-lab/lamp/v1/prototype?page_size=10 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

# List build tasks
curl https://api.meshy.ai/openapi/creative-lab/lamp/v1/build?page_size=10 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Response (List Prototype Tasks)

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "creative-lab-lamp-prototype",
    "name": "",
    "status": "SUCCEEDED",
    "progress": 100,
    "created_at": 1729123456000,
    "started_at": 1729123460000,
    "finished_at": 1729123486000,
    "expires_at": 1729382686000,
    "preceding_tasks": 0,
    "task_error": null,
    "consumed_credits": 30,
    "model_urls": {
      "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
    },
    "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
    "image_urls": [
      "https://assets.meshy.ai/***/concept.png?Expires=***"
    ]
  }
]

द लैंप प्रोटोटाइप टास्क ऑब्जेक्ट

लैंप प्रोटोटाइप टास्क ऑब्जेक्ट एक वर्क यूनिट है जिसे Meshy ट्रैक करता है ताकि किसी सोर्स फोटो से एक स्टाइलाइज़्ड मैट-व्हाइट कॉन्सेप्ट इमेज जनरेट की जा सके और उसे एक खोखले 3D मॉडल में कन्वर्ट किया जा सके। इस स्टेज का आउटपुट input_task_id के ज़रिए बिल्ड स्टेज से चेन किया जाता है।

Properties

  • Name
    id
    Type
    string
    Description

    टास्क के लिए यूनीक आइडेंटिफायर। हालांकि हम इम्प्लीमेंटेशन डिटेल के तौर पर टास्क आईडी के लिए k-sortable UUID का उपयोग करते हैं, आपको आईडी के फॉर्मेट के बारे में कोई भी धारणा नहीं बनानी चाहिए।

  • Name
    type
    Type
    string
    Description

    टास्क का टाइप। इसका वैल्यू creative-lab-lamp-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

    टास्क बनाए जाने के समय का टाइमस्टैंप, मिलीसेकंड में।

  • Name
    started_at
    Type
    timestamp
    Description

    टास्क शुरू होने के समय का टाइमस्टैंप, मिलीसेकंड में। यदि टास्क अभी शुरू नहीं हुआ है, तो यह प्रॉपर्टी 0 होगी।

  • Name
    finished_at
    Type
    timestamp
    Description

    टास्क खत्म होने के समय का टाइमस्टैंप, मिलीसेकंड में। यदि टास्क अभी खत्म नहीं हुआ है, तो यह प्रॉपर्टी 0 होगी।

  • Name
    expires_at
    Type
    timestamp
    Description

    टास्क का रिज़ल्ट कब एक्सपायर होगा, इसका टाइमस्टैंप, मिलीसेकंड में।

  • Name
    preceding_tasks
    Type
    integer
    Description

    पूर्ववर्ती (preceding) टास्क की संख्या।

  • Name
    task_error
    Type
    object
    Description

    असफल टास्क के लिए एरर डिटेल। संपूर्ण task_error ऑब्जेक्ट संदर्भ के लिए एरर देखें।

  • Name
    consumed_credits
    Type
    integer
    Description

    इस टास्क द्वारा उपयोग किए गए क्रेडिट की संख्या। यह तब मौजूद होता है जब टास्क का स्टेटस PENDING, IN_PROGRESS, या SUCCEEDED हो। FAILED टास्क के लिए 0 रिटर्न करता है (असफल होने पर क्रेडिट रिफंड कर दिए जाते हैं)।

  • Name
    model_urls
    Type
    object
    Description

    कॉन्सेप्ट इमेज से जनरेट किए गए 3D मॉडल के लिए डाउनलोड करने योग्य URL। टास्क के सफल होने के बाद यह मौजूद होता है; उससे पहले {} होता है।

    • Name
      glb
      Type
      string
      Description

      GLB फॉर्मेट में खोखले मैट-व्हाइट लैंपशेड मॉडल का डाउनलोड करने योग्य URL। यह वही मॉडल है जिसे बिल्ड स्टेज प्रोसेस करता है।

  • Name
    thumbnail_url
    Type
    string
    Description

    3D मॉडल के रेंडर किए गए प्रीव्यू का डाउनलोड करने योग्य URL। टास्क के सफल होने तक यह एक खाली स्ट्रिंग होती है।

  • Name
    image_urls
    Type
    array of strings
    Description

    इस प्रोटोटाइप टास्क द्वारा जनरेट किए गए कॉन्सेप्ट इमेज कैंडिडेट के लिए डाउनलोड करने योग्य URL। वर्तमान में API हमेशा ठीक एक ही कैंडिडेट रिटर्न करता है; यह फील्ड एक ऐरे है ताकि भविष्य के रिविज़न बिना किसी ब्रेकिंग चेंज के कई कैंडिडेट दिखा सकें।

Example Lamp Prototype Task Object

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-lamp-prototype",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123456000,
  "started_at": 1729123460000,
  "finished_at": 1729123486000,
  "expires_at": 1729382686000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 30,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "image_urls": [
    "https://assets.meshy.ai/***/concept.png?Expires=***"
  ]
}

लैंप बिल्ड टास्क ऑब्जेक्ट

लैंप बिल्ड टास्क ऑब्जेक्ट एक कार्य इकाई है जिसे Meshy एक सफल प्रोटोटाइप टास्क से अंतिम 3D-प्रिंट योग्य लैंपशेड जनरेट करने के लिए ट्रैक करता है। बिल्ड, प्रोटोटाइप के 3D मॉडल पर लैंप प्रोसेसर चलाकर उसे खोखला करता है, नीचे के हिस्से को समतल करके खोलता है, और (फ़िक्स्चर प्रीसेट के साथ) बेस प्लेट और फ़िक्स्चर माउंट जोड़ता है।

Properties

  • Name
    id
    Type
    string
    Description

    टास्क के लिए यूनीक आइडेंटिफ़ायर।

  • Name
    type
    Type
    string
    Description

    टास्क का प्रकार। इसका मान creative-lab-lamp-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

    टास्क के परिणाम की समाप्ति का टाइमस्टैंप, मिलीसेकंड में।

  • Name
    preceding_tasks
    Type
    integer
    Description

    पहले से मौजूद टास्क की संख्या। यह केवल तब मायने रखता है जब स्थिति PENDING हो।

  • Name
    task_error
    Type
    object
    Description

    असफल टास्क के लिए एरर विवरण। पूर्ण task_error ऑब्जेक्ट संदर्भ के लिए एरर देखें।

  • Name
    consumed_credits
    Type
    integer
    Description

    इस टास्क द्वारा उपयोग किए गए क्रेडिट की संख्या। FAILED टास्क के लिए 0 लौटाता है (विफलता पर क्रेडिट वापस कर दिए जाते हैं)।

  • Name
    model_urls
    Type
    object
    Description

    जनरेट किए गए आर्टिफ़ैक्ट के लिए डाउनलोड करने योग्य URL, आर्टिफ़ैक्ट नाम के अनुसार कीड किए गए। कीज़ का सेट output.format और options.light_source_preset पर निर्भर करता है:

    • Name
      lamp_stl
      Type
      string
      Description

      lamp.stl के लिए डाउनलोड करने योग्य URL: फ़िक्स्चर होल वहन करने वाले बेस प्लेट के साथ खुले तले वाला लैंपशेड, या जब options.light_source_preset none था तो एक एकल सीलबंद लैंपशेड। यह मौजूद होता है जब output.format stl (डिफ़ॉल्ट) था।

    • Name
      base_stl
      Type
      string
      Description

      base.stl के लिए डाउनलोड करने योग्य URL, लाइट-सोर्स फ़िक्स्चर माउंट। यह मौजूद होता है जब output.format stl था और options.light_source_preset none नहीं था। जब फ़िक्स्चर प्रीसेट none था तो इसे छोड़ दिया जाता है।

    • Name
      bundle_zip
      Type
      string
      Description

      प्रोसेसर द्वारा उत्सर्जित प्रत्येक आर्टिफ़ैक्ट (lamp.stl, वैकल्पिक base.stl, और — जब options.include_result_json true हो — result.json) के ज़िप बंडल के लिए डाउनलोड करने योग्य URL। यह मौजूद होता है जब output.format zip था। जब bundle_zip मौजूद हो, तो lamp_stl / base_stl को छोड़ दिया जाता है।

Example Lamp Build Task Object

{
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-lamp-build",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123500000,
  "started_at": 1729123510000,
  "finished_at": 1729123535000,
  "expires_at": 1729382735000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 6,
  "model_urls": {
    "lamp_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/lamp.stl?Expires=***",
    "base_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/base.stl?Expires=***"
  }
}