lowpoly 30 अक्टू॰ 2026 को बंद हो जाएगा। अनुरोध त्रुटियों से बचने के लिए इन तारीखों से पहले मॉडल बदल लें। सभी बहिष्करण देखें

कन्वर्ट API

3D मॉडल को Meshy टास्क से या मॉडल फ़ाइल से अन्य फ़ाइल फॉर्मेट में कन्वर्ट करें।


POST/openapi/v1/convert

Create a Convert task

एक Convert टास्क बनाता है। यह टास्क बैकग्राउंड में चलता है। किसी टास्क में आमतौर पर कितना समय लगता है, यह जानने के लिए देखें Processing times।

Request

POST
/openapi/v1/convert
curl https://api.meshy.ai/openapi/v1/convert \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
    "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "target_formats": ["fbx", "stl"]
  }'

Response

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

पैरामीटर

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

    आवश्यक है, जब तक आप model_url न भेजें। किसी ऐसे टास्क की ID जिसने 3D मॉडल बनाया हो, उदाहरण के लिए Text to 3D, Image to 3D, Remesh, Resize, या Retexture टास्क। टास्क API से आना चाहिए और उसकी स्थिति SUCCEEDED होनी चाहिए।

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

    आवश्यक है, जब तक आप input_task_id न भेजें। कन्वर्ट करने के लिए मॉडल, एक पब्लिक URL या data URI के रूप में। यदि आप दोनों भेजते हैं, तो Meshy input_task_id का उपयोग करता है।

    मॉडल एक GLB, glTF, OBJ, FBX, या STL फ़ाइल होनी चाहिए, जो http या https URL से अधिकतम 400 MB की हो, या data URI के रूप में अधिकतम 100 MB की हो। data URI के लिए, MIME type application/octet-stream का उपयोग करें।

    100 MB से बड़ी फ़ाइल को इन नियमों का भी पालन करना चाहिए:

    • एक GLB, glTF, FBX, या OBJ फ़ाइल में अधिकतम 10,000,000 फेस हो सकते हैं। Meshy फेस को त्रिभुज के रूप में गिनता है, इसलिए एक क्वाड को 2 के रूप में गिना जाता है, और एक से अधिक बार बनाई गई मेश को हर कॉपी के लिए एक बार गिना जाता है।
    • एक FBX फ़ाइल बाइनरी FBX 7.1 या उसके बाद का संस्करण होनी चाहिए।
    • एक GLB या glTF फ़ाइल में Draco compression का उपयोग नहीं होना चाहिए।
  • Name
    target_formats
    Type
    string[]
    आवश्यक
    Description

    जनरेट करने के लिए फ़ाइल फॉर्मेट। कम से कम एक सूचीबद्ध करें। खाली या अनुपस्थित सूची 400 लौटाती है।

    उपलब्ध मान:

    • glb
    • fbx
    • obj
    • usdz
    • blend
    • stl
    • 3mf

रिटर्न

रिस्पॉन्स का result फ़ील्ड नए Convert टास्क की ID रखता है।

फेलियर मोड्स

  • Name
    400 - Bad Request
    Description

    रिक्वेस्ट नहीं चल सकती। एरर मैसेज बताता है कि कौन सी समस्या मिली। उदाहरण के लिए:

    • गायब पैरामीटर: न तो model_url और न ही input_task_id भेजा गया था।
    • गायब target_formats: target_formats गायब है या किसी फॉर्मेट को सूचीबद्ध नहीं करता।
    • अमान्य इनपुट टास्क: input_task_id एक सफल API टास्क नहीं है जिसमें मॉडल फ़ाइल हो।
    • अमान्य मॉडल फॉर्मेट: model_url फ़ाइल का एक्सटेंशन समर्थित नहीं है।
    • अप्राप्य URL: Meshy model_url फ़ाइल को डाउनलोड नहीं कर सकता।
    • मॉडल फ़ाइल बहुत बड़ी है: model_url फ़ाइल http या https URL से 400 MB से अधिक है, या data URI के रूप में 100 MB से अधिक है।
    • बहुत अधिक फेस: model_url फ़ाइल 100 MB से बड़ी है और इसमें 10,000,000 से अधिक फेस हैं। फेस की संख्या कम करें, फिर फ़ाइल को फिर से भेजें।
    • 100 MB से बड़ी ASCII FBX: model_url फ़ाइल एक ASCII FBX है जो 100 MB से बड़ी है। इसे बाइनरी FBX या GLB के रूप में भेजें।
    • अपठनीय मॉडल फ़ाइल: model_url फ़ाइल 100 MB से बड़ी है, और Meshy इसका हेडर नहीं पढ़ सकता। उदाहरण के लिए, यह एक Draco-compressed GLB या glTF है, या 7.1 से पुरानी बाइनरी FBX है।
    • मॉडल हेडर बहुत जटिल है: model_url फ़ाइल 100 MB से बड़ी है, और इसके हेडर में जांचने के लिए बहुत अधिक मेश, नोड्स, या रिकॉर्ड हैं। फ़ाइल में ऑब्जेक्ट्स की संख्या कम करें, फिर इसे फिर से भेजें।

    रिक्वेस्ट को ठीक करें, फिर इसे फिर से भेजें। देखें Errors।

  • Name
    401 - Unauthorized
    Description

    API की गायब है या अमान्य है। Authorization हेडर जांचें।

  • Name
    402 - Payment Required
    Description

    उदाहरण के लिए:

    • अपर्याप्त क्रेडिट: अकाउंट के पास इस टास्क के लिए पर्याप्त क्रेडिट नहीं हैं, या अकाउंट क्रेडिट लिमिट तक पहुंच गया है। अपना क्रेडिट बैलेंस जांचें, फिर दोबारा प्रयास करें।
    • फ्री प्लान: टास्क बनाने के लिए एक पेड प्लान आवश्यक है। अपने सब्सक्रिप्शन सेटिंग्स में अपना प्लान अपग्रेड करें, फिर दोबारा प्रयास करें।
  • Name
    403 - Forbidden
    Description

    input_task_id एक bas-relief मॉडल है, जिसे यह एंडपॉइंट कन्वर्ट नहीं कर सकता। मैसेज है This model type does not support this operation। कोई अलग मॉडल भेजें।

  • Name
    404 - Not Found
    Description

    input_task_id आपके किसी भी टास्क से मेल नहीं खाता। टास्क ID जांचें, फिर रिक्वेस्ट फिर से भेजें।

  • Name
    429 - Too Many Requests
    Description

    आपने अपनी रेट लिमिट पार कर ली है। प्रतीक्षा करें, फिर दोबारा प्रयास करें। देखें Rate limits।


GET/openapi/v1/convert/:id

Convert टास्क प्राप्त करें

अपनी ID द्वारा एक Convert टास्क लौटाता है।

Request

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

Response

{
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "type": "convert",
  "model_urls": {
      "fbx": "https://assets.meshy.ai/.../model.fbx?Expires=...",
      "stl": "https://assets.meshy.ai/.../model.stl?Expires=..."
  },
  "progress": 100,
  "status": "SUCCEEDED",
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000001000,
  "task_error": null,
  "consumed_credits": 1
}

पैरामीटर

  • Name
    id
    Type
    path
    Description

    क्रिएट रिस्पॉन्स से टास्क ID।

रिटर्न

Convert टास्क ऑब्जेक्ट।


DELETE/openapi/v1/convert/:id

Convert टास्क डिलीट करें

एक Convert टास्क को, उसके मॉडल और डेटा सहित, स्थायी रूप से डिलीट करता है। आप डिलीट को अनडू नहीं कर सकते।

Request

DELETE
/openapi/v1/convert/:id
curl --request DELETE \
  --url https://api.meshy.ai/openapi/v1/convert/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 keeps 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
    id
    Type
    path
    Description

    डिलीट करने वाले टास्क की ID।

टास्क स्टेटस

PENDING टास्क को डिलीट करने पर उसे बनाते समय इस्तेमाल हुए क्रेडिट वापस मिल जाते हैं।

IN_PROGRESS टास्क को डिलीट नहीं किया जा सकता। रिक्वेस्ट 409 Conflict रिटर्न करती है, और टास्क चलता रहता है। Meshy उस टास्क को रिफंड नहीं करता जो शुरू हो चुका है, इसलिए उसे डिलीट करने से आपको क्रेडिट और परिणाम दोनों का नुकसान होगा। इसके SUCCEEDED, FAILED, या CANCELED तक पहुँचने का इंतज़ार करें, फिर इसे डिलीट करें।

किसी फाइनल स्टेटस (SUCCEEDED, FAILED, या CANCELED) वाले टास्क को डिलीट करने पर उसके क्रेडिट रिफंड नहीं होते।

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

टास्क डिलीट होने पर 200 OK, या टास्क के IN_PROGRESS होने पर 409 Conflict।


GET/openapi/v1/convert

Convert टास्क की सूची

आपके Convert टास्क की सूची लौटाता है।

Request

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

Response

[
  {
    "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
    "type": "convert",
    "model_urls": {
      "fbx": "https://assets.meshy.ai/.../model.fbx?Expires=...",
      "stl": "https://assets.meshy.ai/.../model.stl?Expires=..."
    },
    "progress": 100,
    "status": "SUCCEEDED",
    "created_at": 1699999999000,
    "started_at": 1700000000000,
    "finished_at": 1700000001000,
    "task_error": null,
    "consumed_credits": 1
  }
]

पैरामीटर

  • Name
    page_num
    Type
    integer
    डिफ़ॉल्ट 1
    Description

    लौटाया जाने वाला पेज नंबर, अधिकतम 255। इससे बड़ा मान 400 लौटाता है।

  • Name
    page_size
    Type
    integer
    डिफ़ॉल्ट 10
    Description

    प्रति पेज टास्क की संख्या, अधिकतम 100।

  • Name
    sort_by
    Type
    string
    Description

    सॉर्ट का क्रम।

    उपलब्ध मान:

    • +created_at: सबसे पुराना पहले
    • -created_at: सबसे नया पहले

रिटर्न

Convert टास्क ऑब्जेक्ट्स की एक पेजिनेटेड सूची।


GET/openapi/v1/convert/:id/stream

Convert टास्क को स्ट्रीम करें

किसी Convert टास्क के अपडेट्स को Server-Sent Events (SSE) के रूप में स्ट्रीम करता है।

Request

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

Response Stream

// Message event examples illustrate task progress.
event: message
data: {
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "type": "convert",
  "model_urls": {
    "fbx": "https://assets.meshy.ai/.../model.fbx?Expires=...",
    "stl": "https://assets.meshy.ai/.../model.stl?Expires=..."
  },
  "progress": 100,
  "status": "SUCCEEDED",
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000001000,
  "task_error": null,
  "consumed_credits": 1
}

पैरामीटर्स

  • Name
    id
    Type
    path
    Description

    क्रिएट रिस्पॉन्स से प्राप्त टास्क ID।

रिटर्न

Convert टास्क ऑब्जेक्ट्स की एक स्ट्रीम Server-Sent Events के रूप में।

प्रत्येक इवेंट में पूरा टास्क ऑब्जेक्ट होता है, उसी रूप में जो Get एंडपॉइंट रिटर्न करता है। जब तक टास्क PENDING या IN_PROGRESS होता है, तब तक उसके रिजल्ट फ़ील्ड्स में कोई वैल्यू नहीं होती।


कन्वर्ट टास्क ऑब्जेक्ट

एक कन्वर्ट टास्क ऑब्जेक्ट किसी 3D मॉडल के एक फॉर्मेट कन्वर्जन का वर्णन करता है। इसमें स्टेटस, progress, और टास्क सफल होने पर मॉडल फाइलें होती हैं।

Properties

  • Name
    id
    Type
    string
    Description

    टास्क ID। इसे एक अपारदर्शी (opaque) स्ट्रिंग मानें, और इसके फॉर्मेट पर भरोसा न करें।

  • Name
    type
    Type
    string
    Description

    टास्क का प्रकार, हमेशा convert।

  • Name
    model_urls
    Type
    object
    Description

    कन्वर्ट किए गए मॉडल के लिए डाउनलोड URLs, प्रत्येक फाइल फॉर्मेट के लिए एक। केवल target_formats में शामिल फॉर्मेट्स के ही URLs होते हैं। जिस फॉर्मेट का आपने अनुरोध नहीं किया है, उसकी कोई key नहीं होगी, न कि कोई खाली स्ट्रिंग।

  • Name
    progress
    Type
    integer
    Description

    टास्क कितना पूरा हो चुका है, प्रतिशत के रूप में। यह तब तक 0 रहता है जब तक टास्क शुरू नहीं होता, और जब यह सफल होता है तब 100 होता है।

  • Name
    status
    Type
    string
    Description

    टास्क का स्टेटस, जो PENDING, IN_PROGRESS, SUCCEEDED, FAILED, या CANCELED में से एक होता है।

  • 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

    टास्क के डाउनलोड URLs की समाप्ति का समय, यूनिक्स मिलीसेकंड में। यह तब तक 0 रहता है जब तक टास्क समाप्त नहीं होता।

  • Name
    texture_urls
    Type
    array
    Description

    मॉडल के टेक्सचर मैप्स के लिए डाउनलोड URLs, जब टास्क सफल होता है: ऑब्जेक्ट्स का एक array, प्रत्येक टेक्सचर सेट के लिए एक। प्रत्येक ऑब्जेक्ट में एक base_color URL होता है, और इसमें metallic, roughness, normal, emission, और metallic_roughness URLs भी हो सकते हैं। यह तब तक null रहता है जब तक टास्क सफल नहीं होता, और जब मॉडल में कोई टेक्सचर मैप न हो तो यह एक खाली array होता है।

  • Name
    task_error
    Type
    object
    Description

    टास्क फेल होने पर एरर का विवरण। देखें एरर।

  • Name
    consumed_credits
    Type
    integer
    Description

    टास्क द्वारा उपयोग किए गए क्रेडिट की संख्या, जो एक कन्वर्ट टास्क के लिए 1 होती है। FAILED टास्क के लिए यह 0 होती है।