डेवलपर · API v1

एक API.
हर मॉडल.

इमेज, वीडियो, ऑडियो और 3D एक API के पीछे, स्टूडियो वाले ही बैलेंस से। कुंजी सेटिंग्स में बनाएं और npm से CLI इंस्टॉल करें।

CLI इंस्टॉल करें
$ npm i -g pufy-io
मॉडल
721
एंडपॉइंट
9
न्यूनतम टॉप-अप
€3
उदाहरण

एक ही कॉल, कोई भी आउटपुट

इमेज, वीडियो और स्पीच के बीच बदलने के लिए बस मॉडल ID बदलें। फ़ील्ड मॉडल के अनुसार होते हैं।

1# 1. Generate an image2curl -X POST https://pufy.io/api/v1/api/catalog/generations \3  -H "Authorization: Bearer $PUFY_API_KEY" \4  -H 'Content-Type: application/json' \5  -H "Idempotency-Key: $(uuidgen)" \6  -d '{7  "modelId": "luma/uni-v1/text-to-image",8  "inputs": {9    "prompt": "Neon city street after rain, cinematic night",10    "size": "16:9"11  }12}'13 14# 2. Poll with the generation id from step 1 until its status is succeeded15curl https://pufy.io/api/v1/api/catalog/generations/$ID \16  -H "Authorization: Bearer $PUFY_API_KEY"17 18# 3. Download the file19curl https://pufy.io/api/v1/api/catalog/generations/$ID/content \20  -H "Authorization: Bearer $PUFY_API_KEY" \21  -o result.jpeg
सैंपल रेंडरluma/uni-v1/text-to-image
क्विकस्टार्ट

तीन चरणों में पहला रेंडर

  1. 1API कुंजी बनाएंसेटिंग्स > API कुंजियाँ में कुंजी का नाम दें और एक बार कॉपी करें। बिलिंग में €3 से टॉप अप करें।export PUFY_API_KEY="YOUR_API_KEY"
  2. 2CLI इंस्टॉल करेंpufy कमांड-लाइन टूल npm, pnpm या bun से इंस्टॉल होता है।npm i -g pufy-io
  3. 3पहला रेंडर करेंकैटलॉग से मॉडल ID चुनें और प्रॉम्प्ट भेजें। बिना कुछ खर्च किए कीमत देखने के लिए --dry-run जोड़ें।pufy run luma/uni-v1/text-to-image -p "violet neon fox" -o ./out/
CLI

टर्मिनल से रेंडर करें

किसी भी मॉडल को shell, CI जॉब या कोडिंग एजेंट से चलाएँ। हर रेंडर की कीमत शुरू होने से पहले तय होती है और उसी बैलेंस से कटती है।

स्क्रिप्ट और CIमॉडल का हर फ़ील्ड एक फ़्लैग है; लोकल फ़ाइल आपके लिए अपलोड हो जाती है।
stdout पर JSONहर रन पर एक JSON डॉक्यूमेंट, प्रोग्रेस और एरर stderr पर, विफल होने पर नॉन-ज़ीरो एग्ज़िट कोड।
कोडिंग एजेंटएक skill फ़ाइल आपके एजेंट को पहले कीमत जाँचना और उसकी सीमा तय करना सिखाती है।
पूरी CLI गाइड →
कमांडयह क्या करता है
pufy loginअपनी API key एक बार पेस्ट करें; वह जाँचकर सेव हो जाती है
pufy whoamikey का नाम और आपका बैलेंस
pufy models --type videoहर वीडियो मॉडल उसकी शुरुआती कीमत के साथ
pufy run <model> -hमॉडल के फ़ील्ड, लाइव: टाइप, डिफ़ॉल्ट, अनुमत मान
pufy run <model> -p "<prompt>" -o ./out/रेंडर करें और नतीजा एक फ़ोल्डर में सेव करें
pufy run <model> -p "..." --dry-runसटीक कीमत, बिना कुछ खर्च किए
pufy run <model> -p "..." --max-price 0.50कीमत ज़्यादा हो तो चलाने से मना करें
pufy run <model> -p "..." --json -o ./out/एक JSON नतीजा, अगले चरण के लिए तैयार
pufy skill installअपने कोडिंग एजेंट को CLI इस्तेमाल करना सिखाएँ
API की ज़रूरी बातें

प्रोडक्शन के लिए बना

ऑथेंटिकेशन

Authorization हेडर में Bearer टोकन। कुंजियाँ सेटिंग्स में बनाएं।

Authorization: Bearer YOUR_API_KEY

बैकग्राउंड रेंडर

रेंडर शुरू करने पर तुरंत queued स्टेटस मिलता है। रेंडर को तब तक पोल करें जब तक वह सफल, विफल या रिफ़ंड न हो जाए।

{ "status": "queued" }

पहले कीमत

कुछ भी शुरू किए बिना अपने इनपुट की सटीक कीमत पूछें। हर राशि यूरो सेंट में है।

POST /api/v1/api/catalog/quote

सुरक्षित रीट्राई

Idempotency-Key हेडर भेजें, तो दोबारा भेजा गया अनुरोध कभी दो बार चार्ज नहीं होगा।

Idempotency-Key: render-042

सीमाएँ

हर key की प्रति मिनट सीमा और एक वैकल्पिक दैनिक सीमा होती है। सीमा पार होने पर API 429 लौटाता है।

429 Too Many Requests

एरर और रिफ़ंड

कोड और मैसेज के साथ JSON एरर। विफल रेंडर अपने आप आपके बैलेंस में रिफ़ंड हो जाता है।

{ "status": "refunded" }
रेफ़रेंस

एंडपॉइंट

बेस URL https://pufy.io/api/v1

पूरा API रेफ़रेंस →
GET/api/catalog/meआपकी key और बैलेंस
GET/api/catalog/modelsसभी मॉडल
GET/api/catalog/models/detail?id=MODEL_IDएक मॉडल और उसके फ़ील्ड
POST/api/catalog/quoteसटीक इनपुट की कीमत
POST/api/catalog/generationsरेंडर शुरू करें
GET/api/catalog/generationsआपके हाल के रेंडर
GET/api/catalog/generations/IDएक रेंडर का स्टेटस
GET/api/catalog/generations/ID/contentनतीजे की फ़ाइल
DELETE/api/catalog/generations/IDरेंडर हटाएँ

€3 टॉप-अप करें और स्टूडियो में शुरू करें

सेटिंग्स में API कुंजी बनाएं और कोई भी मॉडल चलाएं। npm से CLI इंस्टॉल करें। विफल रेंडर लौटा दिए जाते हैं।