API-referens

Varje endpoint, med dess begärans- och svarsform. Alla rutter är relativa till https://sketchie.ai/api.

Konventioner

Varje /v1/*-endpoint kräver Authorization: Bearer sk_...-huvudet. Fel kommer tillbaka som JSON med en error-flagga och ett message:

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

Genererings-endpoints är hastighetsbegränsade till 20 begäranden per minut. Alla andra endpoints delar en gräns på 200 per minut.

Skapa en förklaring

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

Startar en generering och returnerar 202 Accepted med den köade posten. Polla hämta en förklaring tills den är ready.

Begärandekropp
{
  "input": "Explain how DNS resolves a domain name",
  "length": "0:30",
  "aspect": "16:9",
  "voice": "sketchie:sulafat",
  "language": "en"
}
FältTypAnteckningar
input string Vad som ska förklaras. En kort prompt eller fullständig dokumenttext. Obligatorisk om inte source eller sceneGraph finns. Alias: prompt.
length string or number Mållängd som "M:SS" ("0:30", "1:00") eller sekunder. En positiv multipel av 30, upp till 360. Utelämna för automatisk längd. Alias: lengthSeconds (tal).
voice string Valfritt. En röst-ref. Standard är standardberättaren (Nora). Se Röster.
language string Valfritt. En stödd språkkod (standard en). Se Språk.
aspect string Valfritt. 16:9 (standard), 9:16, eller 1:1.
source string Valfritt. Ett dokument, artikel eller transkript att göra till en förklaring. När det finns blir input valfri vägledning.
preset string Valfri ritstil: marker (standard), chalkboard, pencil, blueprint, crayon, clean.
fillMode string Valfri avslöjande fyllnadsteknik: A, B, C (standard), eller D.
sceneGraph object Valfritt. En förskriven scene graph. Workern hoppar över grafgenerering och renderar den direkt, men denna endpoint skapar ändå en ny förklaring och förbrukar anroparens normala gratiskvot eller betalplanskvot. För att redigera en befintlig förklaring, använd redigera en förklaring.

Returnerar förklaringsposten: id, status, prompt, lengthSeconds, voice, language, aspect, videoUrl (null tills klar) och sceneGraph (null tills genererad). Ett 400 kommer tillbaka för en tom input utan source, en felformad length, eller en ogiltig aspect, preset, fillMode eller language.

Hämta en förklaring

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

Returnerar hela posten: aktuell status, videoUrl när ready, den redigerbara sceneGraph, versionshistoriken (versions) och huvudversionens scen-chunks. Ett saknat id returnerar 404.

Lista förklaringar

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

Listar den anropande nyckelns förklaringar, nyaste först. Begränsat till nyckelns ägare. limit klämms till 1 till 100 (standard 50). Returnerar lätta sammanfattningar (ingen scene graph eller versioner). Använd hämta en förklaring för hela posten.

Redigera en förklaring

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

Redigerbarhetens kil. Förvandla en instruktion på vanligt språk till en riktad om-rendering. Endast de påverkade scenerna renderas om, vilket ger en ny version. Returnerar 202 med den köade versionen. Polla hämta en förklaring tills huvudversionen är ready. Detta läggs till den befintliga videon, så det förbrukar inte en till gratis-video-skapandeplats. Den första om-renderingen av varje video är gratis. Senare använder betalplansminuter, och gratiskonton ombeds starta en plan. Förklaringen måste redan vara ready (annars 409).

Begärandekropp
{ "instruction": "Make the title scene shorter and warmer" }

Återställ till en version

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

Pekar om huvudet till en tidigare klar version och speglar dess graf och video till posten. Målet måste vara en ready-version med en video (annars 409).

Begärandekropp
{ "versionId": "..." }

Live-statusström

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

En Server-Sent Events-ström (text/event-stream). Öppna en anslutning och varje statusövergång på någon av dina förklaringar kommer som en event: status-ram, så att du kan uppdatera ett "video klar"-tillstånd i det ögonblick workern blir klar istället för att polla. Strömmen är begränsad till din nyckels ägare.

Röster

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

Berättarröstkatalogen. Det valfria ?language=<code> filtrerar till röster som är inhemska för det språket. Returnerar voices (var och en med ett vänligt name, id att skicka som voice, language, isDefault och en spelbar preview_url) plus den globala default. Se Röster.

Språk

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

De stödda berättarspråken, som { code, label, native }. Varje code är ett giltigt language vid skapande. Se Språk.

Kontostatus

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

Returnerar videosGenerated (livstid), kontots image och isAdmin. Kräver autentisering.

Faktureringsstatus

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

Kräver autentisering och returnerar 200 för både gratis och betalda konton. Ett gratiskonto returnerar plan: "free" med videoAllowance, videosUsed och videosRemaining. Ett betalt konto returnerar även planLabel, billingInterval, trialStatus, quotaMinutes, minutesUsedThisPeriod, minutesRemaining och bonusMinutes.

Körtidskonfiguration och hälsa

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

Offentlig. Returnerar { "authEnforced": true }. En livskontroll finns på GET /health.