इमेज से इमेज API

इमेज से इमेज API एक ऐसा फीचर है जो आपको Meshy की AI इमेज एडिटिंग क्षमताओं को अपने खुद के एप्लिकेशन में इंटीग्रेट करने की सुविधा देता है। हमारे शक्तिशाली AI मॉडल्स की मदद से रेफरेंस इमेजेज़ और टेक्स्ट प्रॉम्प्ट्स का उपयोग करके मौजूदा इमेजेज़ को ट्रांसफ़ॉर्म और एडिट करें।


POST/openapi/v1/image-to-image

इमेज से इमेज टास्क बनाएँ

यह एंडपॉइंट आपको एक नया इमेज से इमेज टास्क बनाने की सुविधा देता है। यह देखने के लिए कि इमेज से इमेज टास्क ऑब्जेक्ट में कौन-कौन से प्रॉपर्टीज़ शामिल हैं, The Image to Image Task Object देखें।

पैरामीटर

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

    इमेज जनरेशन के लिए उपयोग किए जाने वाले मॉडल की ID।

    उपलब्ध वैल्यूज़:

    • nano-banana: स्टैंडर्ड मॉडल (3 क्रेडिट प्रति इमेज)
    • nano-banana-2: स्टैंडर्ड की तुलना में अधिक सक्षम बैलेंस्ड मॉडल (6 क्रेडिट प्रति इमेज)
    • nano-banana-pro: बेहतर क्वालिटी वाला प्रो मॉडल (9 क्रेडिट प्रति इमेज)
    • gpt-image-2: OpenAI GPT Image 2, एक हाई-फिडेलिटी इमेज एडिट मॉडल (12 क्रेडिट प्रति इमेज)
    • gpt-image-2-5-flare: OpenAI GPT Image 2.5 (Flare), एक हाई-फिडेलिटी इमेज एडिट मॉडल (12 क्रेडिट प्रति इमेज)
    • gpt-image-2-5-sunburst: OpenAI GPT Image 2.5 (Sunburst), एक हाई-फिडेलिटी इमेज एडिट मॉडल (12 क्रेडिट प्रति इमेज)
  • Name
    prompt
    Type
    string
    आवश्यक
    Description

    उस बदलाव या एडिट का एक टेक्स्ट विवरण, जिसे आप रेफरेंस इमेजेज़ पर लागू करना चाहते हैं।

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

    एक पूर्ण हो चुके इमेज-जनरेशन टास्क की ID, जिसकी आउटपुट इमेजेज़ को रेफरेंस इमेजेज़ के रूप में उपयोग किया जाना चाहिए। यह टास्क निम्नलिखित में से एक होना चाहिए: टेक्स्ट से इमेज या इमेज से इमेज, जिसमें उनके मल्टी-व्यू वेरिएंट भी शामिल हैं। इसके अतिरिक्त, इसे API के माध्यम से रन किया गया होना चाहिए और इसकी स्थिति SUCCEEDED होनी चाहिए।

    सोर्स टास्क की सभी आउटपुट इमेजेज़ का उपयोग किया जाता है। एक सिंगल-इमेज टास्क 1 रेफरेंस इमेज उपलब्ध कराता है; एक मल्टी-व्यू टास्क प्रत्येक जनरेट किए गए व्यू के लिए एक इमेज उपलब्ध कराता है, इसलिए एक ही टास्क ID से 5 रेफरेंस स्लॉट्स में से कई भरे जा सकते हैं।

    सोर्स टास्क अभी भी एसेट रिटेंशन अवधि के भीतर होना चाहिए — एक बार इसकी अवधि समाप्त हो जाने पर, इसकी ID 404 लौटाती है।

  • Name
    reference_image_urls
    Type
    array
    आवश्यक
    Description

    इमेज एडिटिंग टास्क के लिए उपयोग की जाने वाली 1 से 5 रेफरेंस इमेजेज़ का एक ऐरे। हम वर्तमान में .jpg, .jpeg, और .png फॉर्मैट्स को सपोर्ट करते हैं।

    प्रत्येक इमेज उपलब्ध कराने के दो तरीके हैं:

    • पब्लिकली एक्सेसिबल URL: एक ऐसा URL जो पब्लिक इंटरनेट से एक्सेस किया जा सके।
    • Data URI: इमेज का एक base64-एन्कोडेड डेटा URI। डेटा URI का उदाहरण: data:image/jpeg;base64,<your base64-encoded image data>।
  • Name
    generate_multi_view
    Type
    boolean
    डिफ़ॉल्ट false
    Description

    जब true पर सेट किया जाता है, तो यह विषय को कई एंगल से दिखाने वाली एक मल्टी-व्यू इमेज जनरेट करता है।

  • Name
    aspect_ratio
    Type
    string
    डिफ़ॉल्ट 1:1
    Description

    आउटपुट इमेज का आस्पेक्ट रेशियो निर्दिष्ट करें। अनुमत वैल्यूज़ चुने गए ai_model पर निर्भर करती हैं:

    • nano-banana, nano-banana-2, nano-banana-pro: 1:1, 16:9, 9:16, 4:3, 3:4
    • gpt-image-2, gpt-image-2-5-flare, gpt-image-2-5-sunburst: 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3

    उपलब्ध वैल्यूज़:

    • 1:1: स्क्वेयर फॉर्मैट
    • 16:9: वाइडस्क्रीन लैंडस्केप
    • 9:16: वाइडस्क्रीन पोर्ट्रेट
    • 4:3: स्टैंडर्ड लैंडस्केप
    • 3:4: स्टैंडर्ड पोर्ट्रेट
    • 3:2: लैंडस्केप (केवल GPT Image मॉडल्स द्वारा समर्थित)
    • 2:3: पोर्ट्रेट (केवल GPT Image मॉडल्स द्वारा समर्थित)
  • Name
    remove_background
    Type
    boolean
    डिफ़ॉल्ट false
    Description

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

रिटर्न

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

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

  • Name
    400 - Bad Request
    Description

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

    • पैरामीटर गायब: एक आवश्यक पैरामीटर (जैसे, ai_model, prompt) गायब है, या न तो reference_image_urls और न ही input_task_id प्रदान किया गया।
    • अमान्य इनपुट टास्क: input_task_id को एक SUCCEEDED टेक्स्ट से इमेज या इमेज से इमेज टास्क (मल्टी-व्यू सहित) को संदर्भित करना चाहिए, जिसका इमेज आउटपुट अभी भी मौजूद हो। किसी भी अन्य प्रकार का टास्क, जो सफल नहीं हुआ है, या जिसकी सभी इमेजेज़ की अवधि समाप्त हो चुकी है, वह अस्वीकार कर दिया जाता है।
    • अमान्य इमेज फॉर्मैट: एक या अधिक रेफरेंस इमेजेज़ समर्थित फॉर्मैट्स में नहीं हैं।
    • अनरीचेबल URL: एक या अधिक reference_image_urls को डाउनलोड नहीं किया जा सका।
    • अमान्य पैरामीटर: aspect_ratio चुने गए ai_model के लिए अनुमत वैल्यूज़ में से एक नहीं है।
    • कॉन्फ्लिक्ट: generate_multi_view और aspect_ratio को एक साथ उपयोग नहीं किया जा सकता।
  • Name
    401 - Unauthorized
    Description

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

  • Name
    402 - Payment Required
    Description

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

  • Name
    404 - Not Found
    Description

    input_task_id आपके अकाउंट के स्वामित्व वाले किसी टास्क को संदर्भित नहीं करता। एक ऐसा टास्क जो मौजूद ही नहीं है और एक ऐसा टास्क जो किसी दूसरे अकाउंट का है, दोनों के लिए समान रिस्पॉन्स लौटाया जाता है।

  • Name
    429 - Too Many Requests
    Description

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

Request

POST
/openapi/v1/image-to-image
# Transform a reference image with a text prompt
curl https://api.meshy.ai/openapi/v1/image-to-image \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "ai_model": "nano-banana",
    "prompt": "Transform this into a cyberpunk style artwork",
    "reference_image_urls": [
      "<your publicly accessible image url or base64-encoded data URI>"
    ]
  }'


 ## Using Data URI example
curl https://api.meshy.ai/openapi/v1/image-to-image \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "ai_model": "nano-banana",
    "prompt": "Transform this into a cyberpunk style artwork",
    "reference_image_urls": [
      "data:image/png;base64,${YOUR_BASE64_ENCODED_IMAGE_DATA}"
    ]
  }'


 ## Chaining from a previous task, instead of passing image URLs
curl https://api.meshy.ai/openapi/v1/image-to-image \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "ai_model": "nano-banana",
    "prompt": "Transform this into a cyberpunk style artwork",
    "input_task_id": "<your Text to Image or Image to Image task id>"
  }'

Response

{
  "result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}

GET/openapi/v1/image-to-image/:id

एक इमेज से इमेज टास्क प्राप्त करें

यह एंडपॉइंट आपको किसी वैध टास्क id के आधार पर इमेज से इमेज टास्क प्राप्त करने की सुविधा देता है। इमेज से इमेज टास्क ऑब्जेक्ट के साथ कौन से प्रॉपर्टीज़ शामिल हैं, यह देखने के लिए इमेज से इमेज टास्क ऑब्जेक्ट देखें।

पैरामीटर्स

  • Name
    id
    Type
    path
    Description

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

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

रिस्पॉन्स में इमेज से इमेज टास्क ऑब्जेक्ट होता है। विवरण के लिए इमेज से इमेज टास्क ऑब्जेक्ट सेक्शन देखें।

Request

GET
/openapi/v1/image-to-image/018a210d-8ba4-705c-b111-1f1776f7f578
curl https://api.meshy.ai/openapi/v1/image-to-image/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Response

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "image-to-image",
  "ai_model": "nano-banana",
  "prompt": "Transform this into a cyberpunk style artwork",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1692771650657,
  "started_at": 1692771667037,
  "finished_at": 1692771669037,
  "expires_at": 1692771679037,
  "image_urls": [
    "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/image.png?Expires=***"
  ]
}

DELETE/openapi/v1/image-to-image/:id

इमेज से इमेज टास्क डिलीट करें

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

पाथ पैरामीटर्स

  • Name
    id
    Type
    path
    Description

    डिलीट किए जाने वाले इमेज से इमेज टास्क की ID।

टास्क स्टेटस

जो टास्क अभी भी PENDING है, वह डिलीट कर दिया जाता है और बनाते समय उपयोग किए गए क्रेडिट रिफंड कर दिए जाते हैं।

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

टर्मिनल स्थिति (SUCCEEDED, FAILED या CANCELED) वाला टास्क बिना रिफंड के डिलीट कर दिया जाता है।

रिटर्न्स

सफल होने पर 200 OK रिटर्न करता है, या जब टास्क IN_PROGRESS हो तो 409 Conflict रिटर्न करता है।

Request

DELETE
/openapi/v1/image-to-image/018a210d-8ba4-705c-b111-1f1776f7f578
curl --request DELETE \
  --url https://api.meshy.ai/openapi/v1/image-to-image/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -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."
}

GET/openapi/v1/image-to-image

इमेज से इमेज टास्क की सूची

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

पैरामीटर

  • Name
    page_num
    Type
    integer
    Description

    पेजिनेशन के लिए पेज नंबर। 1 से शुरू होता है और डिफ़ॉल्ट रूप से 1 होता है।

  • Name
    page_size
    Type
    integer
    Description

    पेज साइज़ सीमा। डिफ़ॉल्ट रूप से 10 आइटम। अधिकतम अनुमत 100 आइटम है।

  • Name
    sort_by
    Type
    string
    Description

    सॉर्ट करने के लिए फ़ील्ड। उपलब्ध मान:

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

रिटर्न

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

Request

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

Response

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "image-to-image",
    "ai_model": "nano-banana",
    "prompt": "Transform this into a cyberpunk style artwork",
    "status": "SUCCEEDED",
    "progress": 100,
    "created_at": 1692771650657,
    "started_at": 1692771667037,
    "finished_at": 1692771669037,
    "expires_at": 1692771679037,
    "image_urls": [
      "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/image.png?Expires=***"
    ]
  }
]

GET/openapi/v1/image-to-image/:id/stream

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

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

पैरामीटर

  • Name
    id
    Type
    path
    Description

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

रिटर्न

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

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

Request

GET
/openapi/v1/image-to-image/018a210d-8ba4-705c-b111-1f1776f7f578/stream
curl -N https://api.meshy.ai/openapi/v1/image-to-image/018a210d-8ba4-705c-b111-1f1776f7f578/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.
// For PENDING or IN_PROGRESS tasks, the response stream will not include all fields.
event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "image-to-image",
  "ai_model": "nano-banana",
  "prompt": "Transform this into a cyberpunk style artwork",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1692771650657,
  "started_at": 1692771667037,
  "finished_at": 1692771669037,
  "expires_at": 1692771679037,
  "image_urls": [
    "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/image.png?Expires=***"
  ]
}

The Image to Image Task Object

Image to Image Task ऑब्जेक्ट एक कार्य इकाई है जिसे Meshy संदर्भ इमेज और एक टेक्स्ट prompt इनपुट से इमेज जनरेट करने के लिए ट्रैक करता है। इस ऑब्जेक्ट में निम्नलिखित प्रॉपर्टीज़ हैं:

Properties

  • Name
    id
    Type
    string
    Description

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

  • Name
    type
    Type
    string
    Description

    इमेज जनरेशन टास्क का प्रकार। Image to Image टास्क के लिए, यह हमेशा image-to-image होगा।

  • Name
    ai_model
    Type
    string
    Description

    इस टास्क के लिए उपयोग किया गया AI मॉडल। संभावित मान nano-banana, nano-banana-2, nano-banana-pro, gpt-image-2, gpt-image-2-5-flare, या gpt-image-2-5-sunburst हैं।

  • Name
    prompt
    Type
    string
    Description

    वह टेक्स्ट prompt जिसका उपयोग इमेज ट्रांसफॉर्मेशन को गाइड करने के लिए किया गया था।

  • 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

    टास्क का परिणाम कब समाप्त (expire) होता है, इसका टाइमस्टैंप, मिलीसेकंड में।

  • Name
    preceding_tasks
    Type
    integer
    Description

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

  • Name
    image_urls
    Type
    array
    Description

    जनरेट की गई इमेज के डाउनलोड योग्य URL का एक ऐरे। जब generate_multi_view सक्षम होता है, तो इस ऐरे में अलग-अलग व्यूइंग एंगल दर्शाने वाले तीन इमेज URL होते हैं। अन्यथा, इसमें एक ही इमेज URL होता है।

  • Name
    task_error
    Type
    object
    Description

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

  • Name
    consumed_credits
    Type
    integer
    Description

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

Example Image to Image Task Object

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "image-to-image",
  "ai_model": "nano-banana",
  "prompt": "Transform this into a cyberpunk style artwork",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1692771650657,
  "started_at": 1692771667037,
  "finished_at": 1692771669037,
  "expires_at": 1692771679037,
  "preceding_tasks": 0,
  "image_urls": [
    "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/image.png?Expires=***"
  ],
  "task_error": {

    "message": ""

  },

  "consumed_credits": 3
}