API-referanse

Kvart endepunkt, med forma på førespurnaden og svaret. Alle ruter er relative til https://sketchie.ai/api.

Konvensjonar

Kvart /v1/*-endepunkt krev Authorization: Bearer sk_...-headeren. Feil kjem tilbake som JSON med eit error-flagg og eit message:

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

Genererings-endepunkt er avgrensa til 20 førespurnader per minutt. Alle andre endepunkt deler ei grense på 200 per minutt.

Opprett ei forklaring

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

Startar ei generering og returnerer 202 Accepted med den køa posten. Poll hent ei forklaring til ho er ready.

Førespurnadskropp
{
  "input": "Explain how DNS resolves a domain name",
  "length": "0:30",
  "aspect": "16:9",
  "voice": "sketchie:sulafat",
  "language": "en"
}
FeltTypeNotat
input string Kva som skal forklarast. Ein kort prompt eller full dokumenttekst. Påkravd med mindre source eller sceneGraph er til stades. Alias: prompt.
length string or number Mållengd som "M:SS" ("0:30", "1:00") eller sekund. Eit positivt multiplum av 30, opp til 360. Utelat for automatisk lengd. Alias: lengthSeconds (tal).
voice string Valfritt. Ein stemme-ref. Standard er standardforteljaren (Nora). Sjå Stemmer.
language string Valfritt. Ein støtta språkkode (standard en). Sjå Språk.
aspect string Valfritt. 16:9 (standard), 9:16, eller 1:1.
source string Valfritt. Eit dokument, ein artikkel eller eit transkript som skal gjerast om til ei forklaring. Når det er til stades, blir input valfri rettleiing.
preset string Valfri teiknestil: marker (standard), chalkboard, pencil, blueprint, crayon, clean.
fillMode string Valfri avslørings-fyllteknikk: A, B, C (standard), eller D.
sceneGraph object Valfritt. Ein førehandsskriven scene graph. Arbeidaren hoppar over grafgenerering og renderer han direkte, men dette endepunktet opprettar framleis ei ny forklaring og brukar den normale gratiskvoten eller betalt-plan-kvoten til kallaren. For å redigere ei eksisterande forklaring, bruk rediger ei forklaring.

Returnerer forklaringsposten: id, status, prompt, lengthSeconds, voice, language, aspect, videoUrl (null til klar) og sceneGraph (null til generert). Eit 400 kjem tilbake for eit tomt input utan source, ein misforma length, eller ein ugyldig aspect, preset, fillMode eller language.

Hent ei forklaring

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

Returnerer heile posten: noverande status, videoUrl når ready, den redigerbare sceneGraph, versjonshistorikken (versions) og scene-chunks til hovudversjonen. Ein manglande id returnerer 404.

List forklaringar

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

Listar forklaringane til den kallande nøkkelen, nyaste først. Avgrensa til eigaren av nøkkelen. limit blir klemt til 1 til 100 (standard 50). Returnerer lette samandrag (ingen scene graph eller versjonar). For heile posten bruk hent ei forklaring.

Rediger ei forklaring

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

Kilen for redigerbarheit. Gjer ei instruksjon på vanleg språk om til ei målretta ny-rendering. Berre dei påverka scenene blir rendra på nytt, som produserer ein ny versjon. Returnerer 202 med den køa versjonen. Poll hent ei forklaring til hovudversjonen er ready. Dette blir lagt til den eksisterande videoen, så det brukar ikkje ein ekstra gratis-video-oppretting sin plass. Den første ny-renderinga av kvar video er gratis. Seinare brukar betalt-plan-minutt, og gratiskontoar blir bedne om å starte ein plan. Forklaringa må allereie vere ready (elles 409).

Førespurnadskropp
{ "instruction": "Make the title scene shorter and warmer" }

Tilbakestill til ein versjon

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

Peikar hovudet om til ein tidlegare klar versjon og speglar grafen og videoen hans til posten. Målet må vere ein ready-versjon med ein video (elles 409).

Førespurnadskropp
{ "versionId": "..." }

Live statusstraum

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

Ein Server-Sent Events-straum (text/event-stream). Opne éi tilkopling og kvar statusovergang på nokon av forklaringane dine kjem som ei event: status-ramme, slik at du kan oppdatere ein "video klar"-tilstand i det augeblikket arbeidaren blir ferdig i staden for å polle. Straumen er avgrensa til eigaren av nøkkelen din.

Stemmer

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

Katalogen for forteljarstemmer. Det valfrie ?language=<code> filtrerer til stemmer som er heimehøyrande i det språket. Returnerer voices (kvar med eit vennleg name, id å sende som voice, language, isDefault og ein spelbar preview_url) pluss den globale default. Sjå Stemmer.

Språk

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

Dei støtta forteljarspråka, som { code, label, native }. Kvar code er eit gyldig language ved oppretting. Sjå Språk.

Kontostatus

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

Returnerer videosGenerated (livslangt), image til kontoen og isAdmin. Krev autentisering.

Faktureringsstatus

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

Krev autentisering og returnerer 200 for både gratis og betalte kontoar. Ein gratiskonto returnerer plan: "free" med videoAllowance, videosUsed og videosRemaining. Ein betalt konto returnerer òg planLabel, billingInterval, trialStatus, quotaMinutes, minutesUsedThisPeriod, minutesRemaining og bonusMinutes.

Køyretidskonfigurasjon og helse

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

Offentleg. Returnerer { "authEnforced": true }. Ein livssjekk finst på GET /health.