Αναφορά API

Κάθε endpoint, με το σχήμα αιτήματος και απόκρισής του. Όλες οι διαδρομές είναι σχετικές με το https://sketchie.ai/api.

Συμβάσεις

Κάθε endpoint /v1/* απαιτεί την κεφαλίδα Authorization: Bearer sk_.... Τα σφάλματα επιστρέφουν ως JSON με μια σημαία error και ένα message:

Απόκριση σφάλματος
{
  "error": true,
  "message": "length must be a positive multiple of 30 seconds, at most 360"
}

Τα endpoint δημιουργίας περιορίζονται σε 20 αιτήματα ανά λεπτό. Όλα τα άλλα endpoint μοιράζονται ένα όριο 200 ανά λεπτό.

Δημιουργία επεξηγηματικού

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

Ξεκινά μια δημιουργία και επιστρέφει 202 Accepted με την εγγραφή σε ουρά. Κάντε polling στο λήψη επεξηγηματικού μέχρι να είναι ready.

Σώμα αιτήματος
{
  "input": "Explain how DNS resolves a domain name",
  "length": "0:30",
  "aspect": "16:9",
  "voice": "sketchie:sulafat",
  "language": "en"
}
ΠεδίοΤύποςΣημειώσεις
input string Τι να εξηγηθεί. Ένα σύντομο prompt ή πλήρες κείμενο εγγράφου. Απαιτείται εκτός αν υπάρχει 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. Ο worker παρακάμπτει τη δημιουργία γράφου και το αποδίδει απευθείας, αλλά αυτό το endpoint εξακολουθεί να δημιουργεί ένα νέο επεξηγηματικό και καταναλώνει το κανονικό δωρεάν όριο ή την ποσόστωση επί πληρωμή πλάνου του καλούντος. Για να επεξεργαστείτε ένα υπάρχον επεξηγηματικό, χρησιμοποιήστε επεξεργασία επεξηγηματικού.

Επιστρέφει την εγγραφή επεξηγηματικού: id, status, prompt, lengthSeconds, voice, language, aspect, videoUrl (null μέχρι έτοιμο) και sceneGraph (null μέχρι να δημιουργηθεί). Ένα 400 επιστρέφει για κενό input χωρίς source, κακοσχηματισμένο length, ή μη έγκυρο aspect, preset, fillMode ή language.

Λήψη επεξηγηματικού

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

Επιστρέφει την πλήρη εγγραφή: τρέχον status, το videoUrl μόλις ready, το επεξεργάσιμο 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 με την έκδοση σε ουρά. Κάντε polling στο λήψη επεξηγηματικού μέχρι η κύρια έκδοση να είναι 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, ώστε να μπορείτε να ενημερώσετε μια κατάσταση "βίντεο έτοιμο" τη στιγμή που τελειώνει ο worker αντί για polling. Η ροή περιορίζεται στον κάτοχο του κλειδιού σας.

Φωνές

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

Ο κατάλογος φωνών αφήγησης. Το προαιρετικό ?language=<code> φιλτράρει σε φωνές που είναι εγγενείς σε αυτή τη γλώσσα. Επιστρέφει voices (κάθε μία με ένα φιλικό name, το id για να περαστεί ως voice, 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.