API-reference

Hvert endpoint, med dets anmodnings- og svarform. Alle ruter er relative til https://sketchie.ai/api.

Konventioner

Hvert /v1/*-endpoint kræver Authorization: Bearer sk_...-headeren. Fejl kommer tilbage som JSON med et error-flag og et message:

Fejlrespons
{
  "error": true,
  "message": "length must be a positive multiple of 30 seconds, at most 360"
}

Genererings-endpoints er hastighedsbegrænset til 20 anmodninger i minuttet. Alle andre endpoints deler en grænse på 200 i minuttet.

Opret en forklaring

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

Starter en generering og returnerer 202 Accepted med den køede post. Poll hent en forklaring, indtil den er ready.

Anmodningskrop
{
  "input": "Explain how DNS resolves a domain name",
  "length": "0:30",
  "aspect": "16:9",
  "voice": "sketchie:sulafat",
  "language": "en"
}
FeltTypeNoter
input string Hvad der skal forklares. En kort prompt eller fuld dokumenttekst. Påkrævet, medmindre source eller sceneGraph er til stede. Alias: prompt.
length string or number Mållængde som "M:SS" ("0:30", "1:00") eller sekunder. Et positivt multiplum af 30, op til 360. Udelad for automatisk længde. Alias: lengthSeconds (tal).
voice string Valgfrit. En stemme-ref. Standard er standardfortælleren (Nora). Se Stemmer.
language string Valgfrit. En understøttet sprogkode (standard en). Se Sprog.
aspect string Valgfrit. 16:9 (standard), 9:16, eller 1:1.
source string Valgfrit. Et dokument, en artikel eller et transskript, der skal laves til en forklaring. Når det er til stede, bliver input valgfri vejledning.
preset string Valgfri tegnestil: marker (standard), chalkboard, pencil, blueprint, crayon, clean.
fillMode string Valgfri afsløringsfyldteknik: A, B, C (standard), eller D.
sceneGraph object Valgfrit. En forudskrevet scene graph. Workeren springer grafgenerering over og renderer den direkte, men dette endpoint opretter stadig en ny forklaring og forbruger kalderens normale gratis kvote eller betalt-plan-kvote. For at redigere en eksisterende forklaring, brug rediger en forklaring.

Returnerer forklaringsposten: id, status, prompt, lengthSeconds, voice, language, aspect, videoUrl (null indtil klar) og sceneGraph (null indtil genereret). Et 400 kommer tilbage for et tomt input uden source, en misdannet length, eller et ugyldigt aspect, preset, fillMode eller language.

Hent en forklaring

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

Returnerer hele posten: nuværende status, videoUrl når ready, den redigerbare sceneGraph, versionshistorikken (versions) og hovedversionens scene-chunks. Et manglende id returnerer 404.

List forklaringer

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

Lister den kaldende nøgles forklaringer, nyeste først. Begrænset til nøglens ejer. limit klemmes til 1 til 100 (standard 50). Returnerer lette resuméer (ingen scene graph eller versioner). Brug hent en forklaring til hele posten.

Rediger en forklaring

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

Redigerbarhedens kile. Forvandl en instruktion i almindeligt sprog til en målrettet gen-rendering. Kun de berørte scener gen-renderes, hvilket producerer en ny version. Returnerer 202 med den køede version. Poll hent en forklaring, indtil hovedversionen er ready. Dette føjes til den eksisterende video, så det forbruger ikke en ekstra gratis-video-oprettelsesplads. Den første gen-rendering af hver video er gratis. Senere bruger betalt-plan-minutter, og gratis konti bliver bedt om at starte en plan. Forklaringen skal allerede være ready (ellers 409).

Anmodningskrop
{ "instruction": "Make the title scene shorter and warmer" }

Tilbagefør til en version

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

Peger hovedet om til en tidligere klar version og spejler dens graf og video til posten. Målet skal være en ready-version med en video (ellers 409).

Anmodningskrop
{ "versionId": "..." }

Live statusstrøm

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

En Server-Sent Events-strøm (text/event-stream). Åbn én forbindelse, og hver statusovergang på nogen af dine forklaringer ankommer som en event: status-ramme, så du kan opdatere en "video klar"-tilstand i det øjeblik workeren bliver færdig i stedet for at polle. Strømmen er begrænset til din nøgles ejer.

Stemmer

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

Fortællerstemmekataloget. Det valgfrie ?language=<code> filtrerer til stemmer, der er hjemmehørende i det sprog. Returnerer voices (hver med et venligt name, id'et at sende som voice, language, isDefault og en afspilbar preview_url) plus den globale default. Se Stemmer.

Sprog

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

De understøttede fortællesprog, som { code, label, native }. Hvert code er et gyldigt language ved oprettelse. Se Sprog.

Kontostatus

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

Returnerer videosGenerated (livstid), kontoens image og isAdmin. Kræver godkendelse.

Faktureringsstatus

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

Kræver godkendelse og returnerer 200 for både gratis og betalte konti. En gratis konto returnerer plan: "free" med videoAllowance, videosUsed og videosRemaining. En betalt konto returnerer også planLabel, billingInterval, trialStatus, quotaMinutes, minutesUsedThisPeriod, minutesRemaining og bonusMinutes.

Køretidskonfiguration og sundhed

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

Offentlig. Returnerer { "authEnforced": true }. Et livstjek findes på GET /health.