Skip to main content
POST
Utwórz edytowalne napisy SRT z przesłanego audio lub wideo, z opcjonalnymi ustawieniami układu napisów. Zwraca zwięzłe odwołanie do zapisanego wyniku; użyj jego getAction lub downloadAction, aby pobrać pełny wynik.

Uwierzytelnianie i uprawnienia

string
wymagane
Wyślij klucz API VoiceCheap w tym nagłówku. Obsługiwany jest również nagłówek Authorization: Bearer z tym samym kluczem API. Tokeny dostępu OAuth są akceptowane tylko przez MCP, a nie przez ten endpoint REST.
Wymagane uprawnienia: subtitles:write. Wymagana jest aktywna płatna subskrypcja. Uprawnienia nie zmieniają ról w zespole, własności zasobów, kredytów na multimedia ani limitów planu.

Parametry

string
wymagane
Własny fileKey zwrócony po ukończonym przesłaniu lub imporcie multimediów. Każde generowanie zużywa przesłane źródło.Minimalna długość: 1. Maksymalna długość: 1024.
string
Wartość tekstowa.Minimalna długość: 1. Maksymalna długość: 255. Wzorzec: ^[^/\\\r\n\0]+$.
array
Lista wartości. Strukturę elementów opisuje pełny schemat danych wejściowych.Maksymalna liczba elementów: 100.
string
Opcjonalne na poziomie transportu: jeśli identyfikator zostanie pominięty, serwer doda go przed walidacją. Podaj własny, stały UUID v4, aby bezpiecznie odzyskać wynik po utracie odpowiedzi.Format: “uuid”. Wzorzec: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$.
object
Obiekt JSON. Pola zagnieżdżone opisuje pełny schemat danych wejściowych.
Poniższy JSON Schema zachowuje dokładne nazwy pól, typy zagnieżdżone, wartości domyślne, ograniczenia i akceptowane wartości udostępniane przez mechanizm wykrywania. Dodatkowe reguły zależności między polami znajdują się w uwagach do operacji.

Idempotencja

Dla każdej operacji zmieniającej dane użyj UUID v4 w requestId lub w nagłówku HTTP Idempotency-Key. Po awarii sieci użyj ponownie tego samego identyfikatora i identycznych argumentów. Jeśli podasz oba, muszą być zgodne. Ponowienie zapisanego żądania nie powtarza operacji ani nie zużywa kolejnego wywołania z miesięcznego limitu. Żądania zakończone błędem lub przerwane nie są automatycznie uruchamiane ponownie. Każda operacja zmieniająca dane może zwrócić HTTP 202, gdy ponowienie napotka to samo żądanie nadal w stanie running, nawet jeśli jej pierwsze wykonanie zwykle jest synchroniczne. Jeśli wykonanie się zakończyło, ale resultStored ma wartość false, ponowienie zwraca HTTP 200 z zapisanym stanem żądania zamiast pierwotnego wyniku. Pobierz wynik za pomocą akcji historii, wyniku lub pobierania właściwej dla danej domeny.

Przykłady żądań

Zastąp przykładowe identyfikatory zasobów i klucze multimediów wartościami zwróconymi dla Twojego konta. Przy ponawianiu tej samej operacji zmieniającej dane zachowaj identyfikator żądania.

Odpowiedź

Ta operacja zwraca HTTP 202 podczas przetwarzania. Zapisz requestId i odpytuj action_request_get, podając ten identyfikator oraz nazwę pierwotnej operacji. Stany odpytywania to running, completed, failed i interrupted. Zakończony wynik może wskazywać osobne zadanie przetwarzania multimediów; kontynuuj za pomocą akcji stanu lub wyniku właściwej dla tej operacji. Odwołanie do zapisanego wyniku napisów. Jego pełny JSON zawiera srt, sourceSrt, layoutOptions, styleOptions oraz opcjonalnie detectedLanguage, historyId, revision i updatedAt.

Pola wyniku

Odzyskaj żądanie i sprawdź jego stan

Używaj tego samego identyfikatora także po utracie połączenia. Jeśli resultStored ma wartość false, pobierz wynik za pomocą odpowiedniej akcji historii, wyniku lub pobierania. Nigdy nie uruchamiaj drugiego generowania tylko po to, aby sprawdzić postęp.
HTTP 200

Uwagi do operacji

  • Wymaga płatnej subskrypcji i uprawnienia do akcji. Osobisty plan narzędzi użytkownika wykonującego żądanie jest ponownie sprawdzany podczas wykonywania; zapisane narzędzia i referencje przesłanych plików należą do tego użytkownika, również gdy dane uwierzytelniające są powiązane z zespołem.
  • Pomyślna akcja zużywa jedno wspólne miesięczne wywołanie API/MCP. Beginner pozwala na 500, Starter na 5,000, a Creator na 25,000 wywołań miesięcznie; Pro, Scale i Enterprise nie mają miesięcznego limitu. Nadal obowiązują limity na minutę: odpowiednio 30, 60, 120, 180, 300 i 600. Limity generowania narzędzi są odrębne.
  • Użyj requestId w formacie UUID v4 lub identycznego nagłówka Idempotency-Key i przy ponawianiu zachowuj tę samą akcję, identyfikator i argumenty. Odtworzenie zapisanej odpowiedzi nie zużywa kolejnego miesięcznego wywołania.
  • To akcja asynchroniczna. Początkowy wynik transportu to żądanie w stanie running z pollAction; sprawdzaj action_request_get z tą operacją i pierwotnym requestId. Pokazany tutaj wynik ukończonej operacji to zwięzłe odwołanie do zapisanego wyjścia, a nie wygenerowana treść.
  • Pełny wynik jest zapisywany w zaszyfrowanym magazynie danych jako własność uwierzytelnionego użytkownika, niezależnie od ograniczonej pamięci podręcznej sprawdzania stanu akcji. Wywołaj zwrócone getAction z resultId i includeContent: true, aby pobrać ustrukturyzowany JSON, lub downloadAction z resultId, aby pobrać tekst JSON. listAction umożliwia odzyskanie wyniku, gdy znane jest tylko oryginalne żądanie.
  • Zapisany JSON jest ograniczony do 32 MiB. Metadane nigdy nie ujawniają klucza szyfrowania przechowywanej treści ani niewymagającego uwierzytelnienia adresu URL do pobrania transkrypcji.
  • Pomyślne generowanie rozlicza jedno użycie osobistego limitu narzędzia. Nieudane generowanie zwykle zwalnia rezerwację narzędzia. Jeśli zapisanie wyjścia jest niepewne, przed ponownym generowaniem sprawdź to samo żądanie i historię zapisanych wyników; serwer zachowuje rezerwację, aby zapobiec podwójnemu zużyciu limitu.
  • Wyższe plany bez miesięcznego limitu integracji nadal podlegają poniższym dziennym limitom narzędzi i limitom multimediów. Te samodzielne akcje korzystają z limitu swojego narzędzia zamiast z minut dubbingu lub znaków TTS.
  • Użyj fileKey z ukończonego, należącego do Ciebie przesyłania lub importu i traktuj go jako jednorazowy. Po rozpoczęciu przetwarzania multimediów mechanizm czyszczenia usuwa źródło po powodzeniu lub błędzie przetwarzania. Odrzucenie podczas walidacji lub z powodu limitu przed rozpoczęciem przetwarzania może pozostawić je bez zmian. Użyj ponownie pierwotnego requestId, aby odzyskać zaakceptowane generowanie przed rozpoczęciem kolejnego.
  • Akceptuje obsługiwane pliki audio lub wideo do 300 MiB i 2 godzin. subtitleLayout wymaga zarówno maxLinesPerCaption (1, 2 lub 3), jak i maxCharactersPerLine (od 24 do 64). Wartości domyślne to 2 i 42.
  • Dzienny limit na narzędzie: Beginner 5, Starter 15, Creator 30, Pro 60, Scale 100 i Enterprise 100 udanych operacji generowania. Jest współdzielony z odpowiednim narzędziem internetowym i korzysta z okresu resetowania narzędzia na koncie.
  • srt to tekst sformatowany według układu; sourceSrt zachowuje wygenerowane źródło. historyId, revision i updatedAt są obecne tylko wtedy, gdy historia edytowalnych napisów została pomyślnie zapisana. Przed aktualizacją odczytaj jej najnowszą rewizję.

Wykorzystanie

Każde pomyślne wywołanie zużywa jedno wywołanie z miesięcznego limitu API/MCP. Obowiązują również kredyty na multimedia oraz limity generowania danej operacji.

Błędy