API-integration
Video Translation API för releaseoperationer över flera regioner
Lokalisera en källvideo till flera marknadsklara outputs med statusdriven automatisering, felisolering på locale-nivå och kontrollerade utrullningsflöden.
Problem
Globala lanseringar fallerar ofta på synkronisering, inte på översättningskvalitet: primärspråket publiceras först medan regionala varianter släpar efter och kampanjtajmingen bryts.
Resultat med Ssemble
Ssemble möjliggör operationer med källa-en-gång, lokalisera-många med locale-specifik tillståndsspårning så att team kan släppa i kontrollerade vågor och snabbt återhämta sig från partiella fel.
Grunder för implementation
Bas-URL: https://aiclipping.ssemble.com/api/v1
Integrationsarkitektur (ingest → bearbeta → poll/webhook → publicera)
1) Ingest
Skapa översättningsmanifest: källa, locale-lista, utrullningspolicy och fallback-beteende.
2) Bearbeta
Skicka locale-specifika create-requests och spara ett parent release id för spårbarhet från början till slut.
3) Poll / Webhook
Spåra varje locale-tillstånd oberoende för att snabbt identifiera scenarier med partiell framgång och partiellt fel.
4) Publicera
Släpp locales som klarar QA-/policygrindar och köa om misslyckade locales med en begränsad retry-strategi.
Exempel på endpoints
POST /shorts/create— Skapa locale-specifika bearbetningsjobbGET /shorts/:id/status— Spåra tillståndet för varje locale-livscykelGET /shorts/:id— Hämta färdig lokaliserad output för release
Vägledning för autentisering
Håll API-nycklar och utrullningskontroller endast i backend-tjänster. Segmentera nycklar per miljö och begränsa åtkomsten till produktionsutrullning strikt.
Rate limits och retries
Köa locale-inskick i kontrollerade batchar, inte som fullständiga fan-out-toppar. Använd exponentiell backoff vid 429/5xx och begränsa retries.
Exempel på request
POST /shorts/create
{
"fileUrl": "https://cdn.example.com/master-campaign.mp4",
"start": 30,
"end": 420,
"language": "ko",
"captionLanguage": "ja",
"preferredLength": "under60sec",
"layout": "auto"
}Exempel på response
200 OK
{
"data": {
"requestId": "665a1b2c3d4e5f6a7b8c9d0e",
"status": "processing",
"creditsUsed": 1,
"estimatedCompletionTime": "2026-03-10T07:00:00.000Z"
}
}Exempel på felscenario
500 Internal Server Error
{
"error": {
"code": "internal_error",
"message": "An internal error occurred. Please try again.",
"details": null
}
}Versionshantering
Registrera schema-/versionsmetadata för varje locale-request så att regressioner över locales går att diagnostisera efter API-ändringar.
Support
Spara parent release id + locale + requestId vid varje statusövergång för snabb incidentåterhämtning vid partiella lanseringar.
Snabbstart
- Definiera locale-matris och utrullningsstrategi i backend-konfigurationen.
- Skapa en bearbetningsrequest per locale med fälten language/captionLanguage.
- Polla status och uppdatera release-tavlan tills varje locale är terminal.
- Hämta färdiga outputs och kör locale-specifika QA-kontroller.
- Publicera godkända locales omedelbart och dirigera misslyckade locales till en begränsad retry-kö.
Arbetsflöde i 3 steg
- Ingest en källresurs med matris över mål-locales och utrullningspolicy.
- Bearbeta locale-jobb asynkront med oberoende statusspårning per locale.
- Publicera färdiga locales via regionala köer medan misslyckade locales dirigeras till kontrollerade retries.
Varför team väljer Ssemble
- Utformat för regionala kanalteam där releasekoordinering är lika kritisk som innehållskvalitet.
- Isolerar fel per locale så att ett problem inte blockerar hela kampanjlanseringar.
- Fungerar med publiceringsautomatisering för follow-the-sun-distributionsflöden.
Nästa steg
Vanliga frågor
Hur förhindrar vi att en locale blockerar alla regioner?
Använd tillståndsmaskiner per locale och release-grindar så att varje locale kan publiceras oberoende, om inte policyn kräver synkronisering av alla locales.
Ska vi skicka alla locales på en gång?
Oftast inte. Kontrollerad batchning skyddar rate-budgetar och förenklar incidentsortering när en locale-väg försämras.
Vad är minsta observerbarhets-payload?
Spåra parent release id, locale-kod, requestId, statusövergångar, error code och retry-antal för varje jobb.
Vilka fel bör göra retry automatiskt?
Gör retry på tillfälliga transportfel, 429 och 5xx med backoff. Fela snabbt på valideringsfel och dirigera för korrigering av konfiguration/data.
Kan översättning och publicering separeras?
Ja. Många team håller slutförd översättning och kanalpublicering i separata köer för bättre kontroll och säker rollback.
Garanterar detta likvärdiga resultat över alla locales?
Ingen garanti bör antas. Mät slutförandetid, felfrekvens och QA-godkännandegrad per locale och justera utrullningspolicyn därefter.
