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 са записом у реду. Анкетирајте преузми објашњење док не буде ready.

Тело захтева
{
  "input": "Explain how DNS resolves a domain name",
  "length": "0:30",
  "aspect": "16:9",
  "voice": "sketchie:sulafat",
  "language": "en"
}
ПољеТипНапомене
input string Шта објаснити. Кратак промпт или пун текст документа. Обавезно осим ако је присутно 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. Радник прескаче генерисање графа и рендерује га директно, али овај 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 са верзијом у реду. Анкетирајте преузми објашњење док главна верзија не буде 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, тако да можете да ажурирате стање "видео спреман" у тренутку када радник заврши уместо анкетирања. Ток је ограничен на власника вашег кључа.

Гласови

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.