रीसाइज़ API

रीसाइज़ API आपको मौजूदा 3D मॉडल्स को वास्तविक दुनिया के आयामों में रीसाइज़ करने देता है। आप सटीक ऊँचाई, सबसे लंबी भुजा की बाध्यता निर्दिष्ट कर सकते हैं, या AI को उपयुक्त आकार का स्वतः अनुमान लगाने दे सकते हैं।


POST/openapi/v1/resize

रीसाइज़ कार्य बनाएँ

यह एंडपॉइंट एक नया रीसाइज़ कार्य बनाता है।

पैरामीटर

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

    एक पूर्ण किए गए Meshy कार्य की ID, जिसके मॉडल को आप रीसाइज़ करना चाहते हैं। कार्य की स्थिति SUCCEEDED होनी चाहिए। आउटपुट फ़ॉर्मेट GLB होगा।

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

    3D मॉडल फ़ाइल की ओर इंगित करने वाला सार्वजनिक रूप से सुलभ URL या Data URI। समर्थित फ़ॉर्मेट: .glb, .gltf, .obj, .fbx, .stl। Data URI के लिए, MIME type का उपयोग करें: application/octet-stream। आउटपुट फ़ॉर्मेट इनपुट मॉडल के मूल फ़ॉर्मेट को बनाए रखेगा।

  • Name
    resize_height
    Type
    number
    Description

    मॉडल को मीटर में मापी गई किसी विशिष्ट ऊँचाई पर रीसाइज़ करें।

  • Name
    resize_longest_side
    Type
    number
    Description

    मॉडल को इस तरह रीसाइज़ करें कि उसकी सबसे लंबी साइड मीटर में मापे गए इस मान से मेल खाए। आस्पेक्ट रेशियो संरक्षित रहता है।

  • Name
    auto_size
    Type
    boolean
    Description

    जब true पर सेट किया जाता है, तो सेवा ऑब्जेक्ट की वास्तविक दुनिया की ऊँचाई का स्वचालित रूप से अनुमान लगाने और उसके अनुसार मॉडल को रीसाइज़ करने के लिए AI विज़न का उपयोग करती है। जब तक origin_at स्पष्ट रूप से सेट नहीं किया जाता, ओरिजिन डिफ़ॉल्ट रूप से bottom होगा।

  • Name
    origin_at
    Type
    string
    डिफ़ॉल्ट bottom
    Description

    रीसाइज़ करने के बाद ओरिजिन की स्थिति।

    उपलब्ध मान: bottom, center

रिटर्न

प्रतिक्रिया की result प्रॉपर्टी में नए बनाए गए रीसाइज़ कार्य का id होता है।

विफलता मोड

  • 400 - गलत अनुरोध

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

  • पैरामीटर अनुपस्थित: model_url या input_task_id में से कोई एक दिया जाना चाहिए।
  • रीसाइज़ mode अनुपस्थित: resize_height, resize_longest_side, या auto_size में से कम से कम एक निर्दिष्ट होना चाहिए।
  • परस्पर अनन्य पैरामीटर: resize_height, resize_longest_side, और auto_size को संयोजित नहीं किया जा सकता।
  • अमान्य इनपुट कार्य: input_task_id को किसी सफल कार्य को संदर्भित करना चाहिए।
  • अमान्य मॉडल फ़ॉर्मेट: model_url किसी असमर्थित एक्सटेंशन वाली फ़ाइल की ओर इंगित करता है।
  • अगम्य URL: model_url डाउनलोड नहीं किया जा सका।
  • 401 - अनधिकृत

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

  • 402 - भुगतान आवश्यक

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

  • 429 - बहुत अधिक अनुरोध

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

Request

POST
/openapi/v1/resize
# Simple: resize to a specific height
curl https://api.meshy.ai/openapi/v1/resize \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
    "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "resize_height": 1.8
  }'

# Advanced: resize longest side with custom origin
curl https://api.meshy.ai/openapi/v1/resize \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
    "model_url": "https://example.com/model.glb",
    "resize_longest_side": 2.0,
    "origin_at": "center"
  }'

Response

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

GET/openapi/v1/resize/:id

रीसाइज़ कार्य प्राप्त करें

यह एंडपॉइंट किसी रीसाइज़ कार्य को उसके ID द्वारा प्राप्त करता है।

पैरामीटर

  • Name
    id
    Type
    path
    Description

    प्राप्त किए जाने वाले रीसाइज़ कार्य की ID।

रिटर्न

रीसाइज़ कार्य ऑब्जेक्ट।

Request

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

Response

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

DELETE/openapi/v1/resize/:id

रीसाइज़ कार्य हटाएँ

यह एंडपॉइंट सभी संबंधित मॉडल और डेटा सहित, रीसाइज़ कार्य को स्थायी रूप से हटा देता है। यह कार्रवाई अपरिवर्तनीय है।

पाथ पैरामीटर

  • Name
    id
    Type
    path
    Description

    हटाने के लिए रीसाइज़ कार्य की ID।

रिटर्न

सफलता पर 200 OK लौटाता है।

Request

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

Response

// Returns 200 Ok on success.

GET/openapi/v1/resize

रीसाइज़ टास्क की सूची

यह एंडपॉइंट आपको रीसाइज़ टास्क की सूची प्राप्त करने की अनुमति देता है।

पैरामीटर

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

    पेजिनेशन के लिए पेज संख्या।

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

    पेज आकार सीमा। अधिकतम अनुमत 50 आइटम हैं।

  • Name
    sort_by
    Type
    string
    Description

    जिस फ़ील्ड के अनुसार सॉर्ट करना है। उपलब्ध मान:

    • +created_at: निर्माण समय के अनुसार आरोही क्रम में सॉर्ट करें।
    • -created_at: निर्माण समय के अनुसार अवरोही क्रम में सॉर्ट करें।

रिटर्न

रीसाइज़ टास्क ऑब्जेक्ट्स की पेजिनेटेड सूची लौटाता है।

Request

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

Response

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

GET/openapi/v1/resize/:id/stream

रीसाइज़ टास्क स्ट्रीम करें

यह एंडपॉइंट Server-Sent Events (SSE) का उपयोग करके रीसाइज़ टास्क के लिए रियल-टाइम अपडेट स्ट्रीम करता है।

पैरामीटर

  • Name
    id
    Type
    path
    Description

    स्ट्रीम करने के लिए रीसाइज़ टास्क का अद्वितीय पहचानकर्ता।

रिटर्न

Server-Sent Events के रूप में रीसाइज़ टास्क ऑब्जेक्ट्स की स्ट्रीम लौटाता है।

PENDING या IN_PROGRESS टास्क के लिए, रिस्पॉन्स स्ट्रीम में केवल आवश्यक progress और status फ़ील्ड शामिल होंगे।

Request

GET
/openapi/v1/resize/:id/stream
curl -N https://api.meshy.ai/openapi/v1/resize/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": "resize",
  "model_urls": {
    "glb": "https://assets.meshy.ai/.../model.glb?Expires=..."
  },
  "progress": 100,
  "status": "SUCCEEDED",
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000001000,
  "task_error": null,
  "consumed_credits": 1
}

रीसाइज़ टास्क ऑब्जेक्ट

रीसाइज़ टास्क ऑब्जेक्ट एक रीसाइज़ जॉब का प्रतिनिधित्व करता है।

प्रॉपर्टीज़

  • id · string

टास्क के लिए अद्वितीय पहचानकर्ता।

  • type · string

टास्क का प्रकार। मान resize है।

  • model_urls · object

रीसाइज़ की गई मॉडल फ़ाइल के लिए डाउनलोड करने योग्य URL। input_task_id का उपयोग करते समय, आउटपुट हमेशा GLB होता है। model_url का उपयोग करते समय, आउटपुट मूल फ़ॉर्मैट को बनाए रखता है।

  • progress · integer

टास्क का progress (0-100)।

  • status · string

टास्क की स्थिति। संभावित मान: PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED

  • preceding_tasks · integer

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

  • created_at · timestamp

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

  • started_at · timestamp

टास्क शुरू किए जाने का टाइमस्टैंप, मिलीसेकंड में। शुरू नहीं हुआ हो तो 0

  • finished_at · timestamp

टास्क पूरा होने का टाइमस्टैंप, मिलीसेकंड में। पूरा नहीं हुआ हो तो 0

  • task_error · object

यदि टास्क विफल हुआ हो तो एरर ऑब्जेक्ट। अधिक विवरण के लिए एरर देखें।

  • consumed_credits · integer

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