En POST köar en rendering på våra workers och en signerad webhook lämnar över mp4:an. Inget ffmpeg att installera, ingen GPU att hyra, ingen kö att vakta.
POSThttps://autostud.ai/api/v1/actions/renders.createSkapa videon en gång och rendera den så många gånger du behöver.
En video bär tidslinjen: lager, ljud, undertexter, format. Skapa den i ett anrop eller återanvänd den ditt team byggde i redigeraren.
export AUTOSTUD_API_KEY="sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# A video is the timeline. Create one, or skip this step and reuse
# a video your team already built in the editor.
curl -X POST https://autostud.ai/api/v1/actions/videos.create \
-H "Authorization: Bearer $AUTOSTUD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"video_name": "Launch teaser",
"video_format": "portrait",
"video_lang": "en"
}'Rikta renders.create mot video-id:t, skriv över det just det här jobbet behöver, så går det direkt till en worker. Svaret är jobbet, inte filen.
# The Idempotency-Key makes this call safe to retry: send it twice
# and you get the same render back, never a second job.
curl -X POST https://autostud.ai/api/v1/actions/renders.create \
-H "Authorization: Bearer $AUTOSTUD_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: launch-teaser-v3" \
-d '{
"video_id": "0f4c8b71-2d95-47a3-9e6c-15b8ad7f3c20",
"render_settings": {
"quality": "high"
}
}'render.completed kommer med utdata-URL:en. Föredrar din stack polling läser du i stället tillbaka renderingarna filtrerade på video-id:t.
# Register once. Every render reports itself from then on.
curl -X POST https://autostud.ai/api/v1/webhooks \
-H "Authorization: Bearer $AUTOSTUD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://your-app.com/hooks/autostud",
"events": ["render.started", "render.completed", "render.failed"],
"description": "Rendering"
}'
# The signing secret comes back once, in this response. Store it.Två fält för att starta, en header för säkra omförsök, ett id för att följa den.
video_idVideon som ska renderas. Hela kompositionen bor redan i den.
render_settingsValfria överskrivningar för det här jobbet: format, kvalitet, det bildintervall du vill ha.
Idempotency-KeyEn header. Skickar du samma nyckel två gånger får du tillbaka den första renderingen, aldrig en dubblett.
render_idReturneras av anropet och följer med varje webhook, så en färdig mp4 pekar alltid tillbaka på jobbet som bad om den.
Renderingar är H.264-mp4 i det format videon är inställd på. Stående för TikTok och Reels, kvadratiskt för ett flöde, liggande för YouTube: samma tidslinje, en annan utdata.
En rendering tar minuter, inte millisekunder. Registrera en webhook så berättar tre händelser när en worker tog jobbet, när filen är klar och när något gick sönder.
render.startedrender.completedrender.failedMinuter, skalat efter videons längd och antalet lager. Anropet svarar så snart jobbet är köat, så inget i din app blockeras.
Renderingar debiteras i krediter och liggaren går att läsa via API:t. En nyckel kan begränsas till enbart renders:read, så att en instrumentpanel följer kostnaden utan att kunna starta jobb.
Ja. Skicka en Idempotency-Key-header så returnerar ett upprepat anrop den ursprungliga renderingen i stället för att köa en andra: samma garanti som varje exekverande åtgärd i API:t ger.
På vårt CDN, och URL:en finns både på renderingsposten och i render.completed-nyttolasten. Ladda ned och spara den själv om du behöver den för alltid.
Gör virala videor på några minuter. Inget kort behövs för att testa gratis.