API հղում

Յուրաքանչյուր endpoint՝ իր հարցման և պատասխանի ձևով։ Բոլոր երթուղիները հարաբերական են https://sketchie.ai/api-ի նկատմամբ։

Պայմանավորվածություններ

Յուրաքանչյուր /v1/* endpoint պահանջում է 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 Ինչ բացատրել։ Կարճ prompt կամ ամբողջական փաստաթղթի տեքստ։ Պարտադիր է, եթե չկա source կամ sceneGraph։ Կեղծանուն: prompt։
length string or number Նպատակային տևողությունը որպես "M:SS" ("0:30", "1:00") կամ վայրկյաններ։ 30-ի դրական բազմապատիկ, մինչև 360։ Բաց թողեք ավտոմատ տևողության համար։ Կեղծանուն: lengthSeconds (թիվ)։
voice string Ընտրովի։ Ձայնի ref։ Լռելյայն ստանդարտ պատմողը (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։ worker-ը բաց է թողնում գրաֆի գեներացիան և ուղղակիորեն render է անում այն, բայց այս endpoint-ը դեռ ստեղծում է նոր բացատրական և ծախսում կանչողի սովորական անվճar քվոտան կամ վճարովի պլանի քվոտան։ Առկա բացատրականը խմբագրելու համար օգտագործեք խմբագրել բացատրական։

Վերադարձնում է բացատրականի գրառումը: id, status, prompt, lengthSeconds, voice, language, aspect, videoUrl (null մինչև պատրաստ) և sceneGraph (null մինչև գեներացում)։ 400 վերադառնում է source-ի բացակայությամբ դատարկ input-ի, խեղաթյուրված 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

Խմբագրելիության սեպը։ Պարզ լեզվով հրահանգը վերածեք թիրախավորված վերա-render-ի։ Միայն ազդված տեսարաններն են վերա-render-վում՝ ստեղծելով նոր տարբերակ։ Վերադարձնում է 202՝ հերթում գտնվող տարբերակով։ Հարցում կատարեք ստանալ բացատրական, մինչև գլխավոր տարբերակը դառնա ready։ Սա ավելանում է առկա տեսանյութին, ուստի չի ծախսում ևս մեկ անվճar-տեսանյութի ստեղծման տեղ։ Յուրաքանչյուր տեսանյութի առաջին վերա-render-ն անվճar է։ Հետագաները օգտագործում են վճarովի պլանի րոպեներ, և անվճar հաշիվներին խնդրվում է սկսել պլան։ Բացատրականն արդեն պետք է լինի 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 շրջանակ, այնպես որ կարող եք թարմացնել «տեսանյութը պատրաստ է» վիճակը այն պահին, երբ worker-ը ավարտում է, հարցում կատարելու փոխարեն։ Հոսքը սահմանափակված է ձեր բանալու սեփականատիրով։

Ձայներ

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

Պատմողական ձայների կատալոգ։ Ընտրովի ?language=<code>-ն զտում է այդ լեզվին բնիկ ձայներով։ Վերադարձնում է voices (յուրաքանչյուրը հարմար name-ով, voice-ի ձևով փոխանցելու id-ով, 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 ինչպես անվճar, այնպես էլ վճarովի հաշիվների համար։ Անվճar հաշիվը վերադարձնում է plan: "free"՝ videoAllowance, videosUsed և videosRemaining-ով։ Վճarովի հաշիվը վերադարձնում է նաև planLabel, billingInterval, trialStatus, quotaMinutes, minutesUsedThisPeriod, minutesRemaining և bonusMinutes։

Գործարկման կոնֆիգուրացիա և առողջություն

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

Հանրային։ Վերադարձնում է { "authEnforced": true }։ Կենսունակության ստուգումը գտնվում է GET /health-ում։