API संदर्भ

हर एंडपॉइंट, उसके अनुरोध और प्रतिक्रिया के आकार के साथ। सभी रूट https://sketchie.ai/api के सापेक्ष हैं।

परंपराएं

हर /v1/* एंडपॉइंट को Authorization: Bearer sk_... हेडर चाहिए। त्रुटियां error फ़्लैग और message के साथ JSON के रूप में वापस आती हैं:

त्रुटि प्रतिक्रिया
{
  "error": true,
  "message": "length must be a positive multiple of 30 seconds, at most 360"
}

जनरेशन एंडपॉइंट प्रति मिनट 20 अनुरोध तक सीमित हैं। बाकी सभी एंडपॉइंट प्रति मिनट 200 की सीमा साझा करते हैं।

एक व्याख्यात्मक बनाएं

POST https://sketchie.ai/api/v1/explainer

एक जनरेशन शुरू करता है और कतारबद्ध रिकॉर्ड के साथ 202 Accepted लौटाता है। ready होने तक एक व्याख्यात्मक प्राप्त करें पोल करें।

अनुरोध बॉडी
{
  "input": "Explain how DNS resolves a domain name",
  "length": "0:30",
  "aspect": "16:9",
  "voice": "sketchie:sulafat",
  "language": "en"
}
फ़ील्डप्रकारटिप्पणियां
input string क्या समझाना है। एक छोटा प्रॉम्प्ट या पूरा दस्तावेज़ टेक्स्ट। source या sceneGraph मौजूद न होने पर आवश्यक। उपनाम: prompt
length string or number "M:SS" ("0:30", "1:00") या सेकंड में लक्षित लंबाई। 30 का धनात्मक गुणज, 360 तक। स्वचालित लंबाई के लिए छोड़ दें। उपनाम: lengthSeconds (संख्या)।
voice string वैकल्पिक। एक आवाज़ रेफ़। डिफ़ॉल्ट मानक वाचक (Nora)। आवाज़ें देखें।
language string वैकल्पिक। एक समर्थित भाषा कोड (डिफ़ॉल्ट en)। भाषाएं देखें।
aspect string वैकल्पिक। 16:9 (डिफ़ॉल्ट), 9:16 या 1:1
source string वैकल्पिक। एक व्याख्यात्मक में बदलने के लिए एक दस्तावेज़, लेख या ट्रांसक्रिप्ट। मौजूद होने पर, input वैकल्पिक मार्गदर्शन बन जाता है।
preset string वैकल्पिक ड्रॉइंग शैली: marker (डिफ़ॉल्ट), chalkboard, pencil, blueprint, crayon, clean
fillMode string वैकल्पिक रिवील फ़िल तकनीक: A, B, C (डिफ़ॉल्ट) या D
sceneGraph object वैकल्पिक। एक पहले से लिखा scene graph। वर्कर ग्राफ़ जनरेशन छोड़कर उसे सीधे रेंडर करता है, लेकिन यह एंडपॉइंट फिर भी एक नया व्याख्यात्मक बनाता है और कॉल करने वाले का सामान्य मुफ़्त भत्ता या सशुल्क-प्लान कोटा खर्च करता है। किसी मौजूदा व्याख्यात्मक को संपादित करने के लिए एक व्याख्यात्मक संपादित करें का उपयोग करें।

व्याख्यात्मक रिकॉर्ड लौटाता है: id, status, prompt, lengthSeconds, voice, language, aspect, videoUrl (तैयार होने तक null) और sceneGraph (जनरेट होने तक null)। बिना source के खाली input, गलत बने length, या अमान्य aspect, preset, fillMode या language के लिए 400 वापस आता है।

एक व्याख्यात्मक प्राप्त करें

GET https://sketchie.ai/api/v1/explainer/:id

पूरा रिकॉर्ड लौटाता है: वर्तमान status, ready होने पर videoUrl, संपादन-योग्य sceneGraph, संस्करण इतिहास (versions) और हेड संस्करण के दृश्य chunks। न मिलने वाला id 404 लौटाता है।

व्याख्यात्मक सूचीबद्ध करें

GET https://sketchie.ai/api/v1/explainer?limit=50

कॉल करने वाली कुंजी के व्याख्यात्मक, नवीनतम पहले, सूचीबद्ध करता है। कुंजी के मालिक तक सीमित। limit 1 से 100 तक सीमित होता है (डिफ़ॉल्ट 50)। हल्के सारांश लौटाता है (कोई scene graph या संस्करण नहीं)। पूरे रिकॉर्ड के लिए एक व्याख्यात्मक प्राप्त करें का उपयोग करें।

एक व्याख्यात्मक संपादित करें

POST https://sketchie.ai/api/v1/explainer/:id/edit

संपादन-योग्यता की कील। सरल-भाषा निर्देश को लक्षित पुनः-रेंडर में बदलें। केवल प्रभावित दृश्य फिर से रेंडर होते हैं, जिससे एक नया संस्करण बनता है। कतारबद्ध संस्करण के साथ 202 लौटाता है। हेड संस्करण के ready होने तक एक व्याख्यात्मक प्राप्त करें पोल करें। यह मौजूदा वीडियो में जुड़ता है, इसलिए एक और मुफ़्त-वीडियो निर्माण स्लॉट खर्च नहीं करता। हर वीडियो का पहला पुनः-रेंडर मुफ़्त है। बाद के पुनः-रेंडर सशुल्क-प्लान मिनट का उपयोग करते हैं, और मुफ़्त खातों से एक प्लान शुरू करने को कहा जाता है। व्याख्यात्मक पहले से ready होना चाहिए (अन्यथा 409)।

अनुरोध बॉडी
{ "instruction": "Make the title scene shorter and warmer" }

किसी संस्करण पर वापस लाएं

POST https://sketchie.ai/api/v1/explainer/:id/revert

हेड को पहले के तैयार संस्करण पर फिर से इंगित करता है और उसके ग्राफ़ और वीडियो को रिकॉर्ड पर मिरर करता है। लक्ष्य को वीडियो वाला ready संस्करण होना चाहिए (अन्यथा 409)।

अनुरोध बॉडी
{ "versionId": "..." }

लाइव स्थिति स्ट्रीम

GET https://sketchie.ai/api/v1/explainer/events

एक Server-Sent Events स्ट्रीम (text/event-stream)। एक कनेक्शन खोलें और आपके किसी भी व्याख्यात्मक पर हर स्थिति परिवर्तन एक event: status फ़्रेम के रूप में आता है, ताकि आप पोल करने के बजाय वर्कर के समाप्त होते ही "वीडियो तैयार" स्थिति अपडेट कर सकें। स्ट्रीम आपकी कुंजी के मालिक तक सीमित है।

आवाज़ें

GET https://sketchie.ai/api/v1/voices

वाचन आवाज़ कैटलॉग। वैकल्पिक ?language=<code> उस भाषा की मूल आवाज़ों तक फ़िल्टर करता है। voices (प्रत्येक में एक सरल name, voice के रूप में भेजने के लिए id, language, isDefault और चलाने योग्य preview_url) और वैश्विक default लौटाता है। आवाज़ें देखें।

भाषाएं

GET https://sketchie.ai/api/v1/languages

समर्थित वाचन भाषाएं, { code, label, native } के रूप में। हर code बनाते समय एक मान्य language है। भाषाएं देखें।

खाता स्थिति

GET https://sketchie.ai/api/v1/account/state

videosGenerated (आजीवन), खाता image और isAdmin लौटाता है। प्रमाणीकरण आवश्यक।

बिलिंग स्थिति

GET https://sketchie.ai/api/v1/billing/status

प्रमाणीकरण आवश्यक है और मुफ़्त तथा सशुल्क दोनों खातों के लिए 200 लौटाता है। एक मुफ़्त खाता plan: "free" के साथ videoAllowance, videosUsed और videosRemaining लौटाता है। एक सशुल्क खाता planLabel, billingInterval, trialStatus, quotaMinutes, minutesUsedThisPeriod, minutesRemaining और bonusMinutes भी लौटाता है।

रनटाइम कॉन्फ़िग और हेल्थ

GET https://sketchie.ai/api/config

सार्वजनिक। { "authEnforced": true } लौटाता है। एक लाइवनेस जांच GET /health पर है।