Referință API
Fiecare endpoint, cu forma cererii și răspunsului său. Toate rutele sunt relative la https://sketchie.ai/api.
Convenții
Fiecare endpoint /v1/* necesită antetul Authorization: Bearer sk_.... Erorile revin ca JSON cu un indicator error și un message:
{
"error": true,
"message": "length must be a positive multiple of 30 seconds, at most 360"
} Endpoint-urile de generare sunt limitate la 20 de cereri pe minut. Toate celelalte endpoint-uri împart o limită de 200 pe minut.
Creați un explicativ
https://sketchie.ai/api/v1/explainer Pornește o generare și returnează 202 Accepted cu înregistrarea în coadă. Interogați obținerea unui explicativ până este ready.
{
"input": "Explain how DNS resolves a domain name",
"length": "0:30",
"aspect": "16:9",
"voice": "sketchie:sulafat",
"language": "en"
} | Câmp | Tip | Note |
|---|---|---|
input | string | Ce să explice. Un prompt scurt sau textul complet al unui document. Obligatoriu dacă nu este prezent source sau sceneGraph. Alias: prompt. |
length | string or number | Lungime țintă ca "M:SS" ("0:30", "1:00") sau secunde. Multiplu pozitiv al lui 30, până la 360. Omiteți pentru lungime automată. Alias: lengthSeconds (număr). |
voice | string | Opțional. O referință de voce. Implicit naratorul standard (Nora). Vedeți Voci. |
language | string | Opțional. Un cod de limbă acceptat (implicit en). Vedeți Limbi. |
aspect | string | Opțional. 16:9 (implicit), 9:16, sau 1:1. |
source | string | Opțional. Un document, articol sau transcriere de transformat într-un explicativ. Când e prezent, input devine îndrumare opțională. |
preset | string | Stil de desen opțional: marker (implicit), chalkboard, pencil, blueprint, crayon, clean. |
fillMode | string | Tehnică de umplere a dezvăluirii opțională: A, B, C (implicit), sau D. |
sceneGraph | object | Opțional. Un scene graph pre-scris. Worker-ul sare peste generarea grafului și îl randează direct, dar acest endpoint tot creează un explicativ nou și consumă alocarea gratuită normală sau cota planului plătit a apelantului. Pentru a edita un explicativ existent, folosiți editarea unui explicativ. |
Returnează înregistrarea explicativului: id, status, prompt, lengthSeconds, voice, language, aspect, videoUrl (null până e gata) și sceneGraph (null până e generat). Un 400 revine pentru un input gol fără source, un length malformat, sau un aspect, preset, fillMode ori language nevalid.
Obținerea unui explicativ
https://sketchie.ai/api/v1/explainer/:id Returnează înregistrarea completă: status curent, videoUrl odată ready, sceneGraph editabil, istoricul versiunilor (versions) și chunks-urile de scenă ale versiunii principale. Un id lipsă returnează 404.
Listarea explicativelor
https://sketchie.ai/api/v1/explainer?limit=50 Listează explicativele cheii apelante, cele mai noi primele. Limitat la proprietarul cheii. limit este limitat între 1 și 100 (implicit 50). Returnează rezumate ușoare (fără scene graph sau versiuni). Folosiți obținerea unui explicativ pentru înregistrarea completă.
Editarea unui explicativ
https://sketchie.ai/api/v1/explainer/:id/edit Pana editabilității. Transformați o instrucțiune în limbaj simplu într-o re-randare țintită. Doar scenele afectate sunt re-randate, producând o versiune nouă. Returnează 202 cu versiunea în coadă. Interogați obținerea unui explicativ până când versiunea principală este ready. Aceasta se adaugă la videoclipul existent, deci nu consumă un alt slot de creare video gratuit. Prima re-randare a fiecărui videoclip este gratuită. Cele ulterioare folosesc minute din planul plătit, iar conturilor gratuite li se cere să înceapă un plan. Explicativul trebuie să fie deja ready (altfel 409).
{ "instruction": "Make the title scene shorter and warmer" } Revenirea la o versiune
https://sketchie.ai/api/v1/explainer/:id/revert Reorientează capul către o versiune gata anterioară și oglindește graful și videoclipul ei pe înregistrare. Ținta trebuie să fie o versiune ready cu un videoclip (altfel 409).
{ "versionId": "..." } Flux de stare live
https://sketchie.ai/api/v1/explainer/events Un flux Server-Sent Events (text/event-stream). Deschideți o conexiune și fiecare tranziție de stare pe oricare dintre explicativele voastre ajunge ca un cadru event: status, astfel încât puteți actualiza o stare "video gata" în momentul în care worker-ul termină, în loc de interogare. Fluxul este limitat la proprietarul cheii voastre.
Voci
https://sketchie.ai/api/v1/voices Catalogul vocilor de narațiune. Opționalul ?language=<code> filtrează la vocile native acelei limbi. Returnează voices (fiecare cu un name prietenos, id-ul de trecut ca voice, language, isDefault și un preview_url redabil) plus default-ul global. Vedeți Voci.
Limbi
https://sketchie.ai/api/v1/languages Limbile de narațiune acceptate, ca { code, label, native }. Fiecare code este un language valid la creare. Vedeți Limbi.
Starea contului
https://sketchie.ai/api/v1/account/state Returnează videosGenerated (pe viață), image-ul contului și isAdmin. Necesită autentificare.
Starea facturării
https://sketchie.ai/api/v1/billing/status Necesită autentificare și returnează 200 atât pentru conturi gratuite, cât și plătite. Un cont gratuit returnează plan: "free" cu videoAllowance, videosUsed și videosRemaining. Un cont plătit returnează și planLabel, billingInterval, trialStatus, quotaMinutes, minutesUsedThisPeriod, minutesRemaining și bonusMinutes.
Configurare de execuție și sănătate
https://sketchie.ai/api/config Public. Returnează { "authEnforced": true }. O verificare de vitalitate se află la GET /health.