Aktualizuje transmisję. Możesz na przykład zmienić ustawienia transmisji zdefiniowane w obiekcie contentDetails
zasobu liveBroadcast
.
Częste zastosowania
Żądanie
Żądanie HTTP
PUT https://www.googleapis.com/youtube/v3/liveBroadcasts
Autoryzacja
To żądanie wymaga autoryzacji z co najmniej jednym z poniższych zakresów. Więcej informacji o uwierzytelnianiu i autoryzowaniu znajdziesz w artykule Wdrażanie autoryzacji OAuth 2.0.
Zakres |
---|
https://www.googleapis.com/auth/youtube |
https://www.googleapis.com/auth/youtube.force-ssl |
Parametry
W tabeli poniżej znajdziesz parametry obsługiwane przez to zapytanie. Wszystkie wymienione parametry są parametrami zapytania.
Parametry | ||
---|---|---|
Parametry wymagane | ||
part |
string , Parametr part służy w tej operacji dwóm celom. Wskazuje właściwości, które ustawi operacja zapisu, a także właściwości, które będzie zawierać odpowiedź interfejsu API.Właściwości part , które możesz zawrzeć w wartości parametru, to id , snippet , contentDetails , monetizationDetails i status .Pamiętaj, że ta metoda zastępuje istniejące wartości wszystkich zmiennych, które znajdują się w częściach określonych przez wartość parametru. Na przykład stan prywatności transmisji jest zdefiniowany w sekcji status . Dlatego jeśli Twoje żądanie aktualizuje transmisję prywatną lub niepubliczną, a jego wartość parametru part zawiera część status , ustawienie prywatności transmisji zostanie zaktualizowane do wartości określonej w treści żądania. Jeśli treść żądania nie określa wartości, obecne ustawienie prywatności zostanie usunięte, a transmisja przywróci domyślne ustawienie prywatności. |
|
Parametry opcjonalne | ||
onBehalfOfContentOwner |
string , Tego parametru można używać tylko w prawidłowo autoryzowanym żądaniu. Uwaga: ten parametr jest przeznaczony wyłącznie dla dostawców treści w YouTube. Parametr onBehalfOfContentOwner wskazuje, że dane uwierzytelniające żądania wskazują użytkownika systemu zarządzania treścią w YouTube (CMS), który działa w imieniu właściciela treści określonego w wartości parametru. Ten parametr jest przeznaczony dla dostawców treści w YouTube, którzy są właścicielami wielu różnych kanałów YouTube i nimi zarządzają. Dzięki niej właściciele treści mogą dokonać uwierzytelnienia raz i uzyskać dostęp do wszystkich danych dotyczących filmów i kanału bez konieczności podawania danych uwierzytelniających dla każdego kanału. Konto CMS, za pomocą którego użytkownik się uwierzytelnia, musi być połączone z określonym właścicielem treści YouTube. |
|
onBehalfOfContentOwnerChannel |
string , Tego parametru można używać tylko w prawidłowo autoryzowanym żądaniu. Uwaga: ten parametr jest przeznaczony wyłącznie dla dostawców treści w YouTube. Parametr onBehalfOfContentOwnerChannel określa identyfikator kanału YouTube, do którego dodajesz film. Ten parametr jest wymagany, gdy żądanie określa wartość parametru onBehalfOfContentOwner i można go używać tylko w połączeniu z tym parametrem. Dodatkowo żądanie musi być autoryzowane za pomocą konta CMS połączonego z właścicielem treści określonym w parametrze onBehalfOfContentOwner . Na koniec kanał określony przez wartość parametru onBehalfOfContentOwnerChannel musi być połączony z właścicielem treści określonym w parametrze onBehalfOfContentOwner .Ten parametr jest przeznaczony dla dostawców treści w YouTube, którzy są właścicielami wielu różnych kanałów w YouTube i nimi zarządzają. Umożliwia właścicielom treści jednorazowe uwierzytelnianie i wykonywanie działań w imieniu kanału określonego w wartości parametru bez konieczności podawania danych uwierzytelniających dla każdego kanału. |
Treść żądania
Udostępnij zasób liveBroadcast w treści żądania. W przypadku tego zasobu:
-
Musisz określić wartość tych właściwości:
id
snippet.scheduledStartTime
contentDetails.monitorStream.enableMonitorStream
contentDetails.monitorStream.broadcastStreamDelayMs
-
Możesz ustawić wartości dla tych właściwości:
snippet.title
snippet.description
snippet.scheduledStartTime
snippet.scheduledEndTime
status.privacyStatus
contentDetails.monitorStream.enableMonitorStream
contentDetails.monitorStream.broadcastStreamDelayMs
contentDetails.enableAutoStart
contentDetails.enableAutoStop
contentDetails.enableClosedCaptions
contentDetails.enableDvr
contentDetails.enableEmbed
contentDetails.recordFromStart
monetizationDetails.cuepointSchedule.pauseAdsUntil
Jeśli przesyłasz prośbę o aktualizację, a nie określa ono wartości usługi, która ma już wartość, dotychczasowa wartość usługi zostanie usunięta.
Odpowiedź
Jeśli operacja się uda, metoda zwróci zasób LiveBroadcast w treści odpowiedzi.
Błędy
W tabeli poniżej znajdziesz komunikaty o błędach, które interfejs API może zwrócić w odpowiedzi na wywołanie tej metody. Więcej informacji znajdziesz w komunikatie o błędzie.
Typ błędu | Szczegóły błędu | Opis |
---|---|---|
forbidden (403) |
closedCaptionsTypeModificationNotAllowed |
Wartość contentDetails.closedCaptionsType można modyfikować tylko wtedy, gdy transmisja ma stan created lub ready . |
forbidden (403) |
enabledModificationNotAllowed |
Pole enabled jest tylko do odczytu. |
forbidden (403) |
scheduleStrategyModificationNotAllowed |
Pole scheduleStrategy jest tylko do odczytu. |
forbidden (403) |
repeatIntervalSecsModificationNotAllowed |
Pole repeatIntervalSecs jest tylko do odczytu. |
forbidden (403) |
pauseAdsUntilModificationNotAllowed |
Nie można modyfikować pola pauseAdsUntil .
Ten błąd może wystąpić z tych powodów:
|
forbidden (403) |
enableAutoStartModificationNotAllowed |
Wartość contentDetails.enableAutoStart można zmienić tylko wtedy, gdy strumień jest nieaktywny, a transmisja ma stan created lub ready . |
forbidden (403) |
enableClosedCaptionsModificationNotAllowed |
Wartość contentDetails.enableClosedCaptions można zmienić tylko wtedy, gdy stan transmisji to created lub ready . |
forbidden (403) |
enableDvrModificationNotAllowed |
Wartość contentDetails. można modyfikować tylko wtedy, gdy stan transmisji to created lub ready . |
forbidden (403) |
enableMonitorStreamModificationNotAllowed |
Wartość contentDetails. można modyfikować tylko wtedy, gdy stan transmisji to created lub ready . |
forbidden (403) |
recordFromStartModificationNotAllowed |
Wartość contentDetails. można modyfikować tylko wtedy, gdy stan transmisji to created lub ready . |
insufficientPermissions |
insufficientLivePermissions |
Żądanie nie ma uprawnień do aktualizacji określonej transmisji na żywo. Więcej informacji znajdziesz w artykule Wdrażanie uwierzytelniania OAuth2. |
insufficientPermissions |
liveStreamingNotEnabled |
Użytkownik, który autoryzował żądanie, nie może transmitować obrazu na żywo w YouTube. Więcej informacji można znaleźć na stronie https://www.youtube.com/features. |
invalidValue (400) |
invalidAutoStart |
Zasób LiveBroadcast
zawiera nieprawidłową wartość właściwości contentDetails.enableAutoStart .
Nie możesz zmienić ustawienia enableAutoStart w przypadku trwałej transmisji. |
invalidValue (400) |
invalidAutoStop |
Zasób LiveBroadcast
zawiera nieprawidłową wartość właściwości contentDetails.enableAutoStop . Ty
nie można zmienić ustawienia enableAutoStop stałej transmisji. |
invalidValue (400) |
invalidDescription |
Zasób liveBroadcast nie określił prawidłowej wartości właściwości snippet.description . Pole snippet.description może zawierać do 5000 znaków. |
invalidValue (400) |
invalidEmbedSetting |
Zasób LiveBroadcast zawiera nieprawidłową wartość właściwości contentDetails.enable_embed . Nie możesz umieścić tej transmisji. |
invalidValue (400) |
invalidEnableClosedCaptions |
W zasobie transmisji na żywo wartość właściwości contentDetails.enableClosedCaptions jest niezgodna z wartością ustawienia contentDetails.closedCaptionType . Zmodyfikuj zasób tak, aby zawierał tylko jedną z 2 właściwości, a potem ponownie prześlij żądanie. |
invalidValue (400) |
invalidLatencyPreferenceOptions |
Zasób LiveBroadcast
zawiera nieprawidłową wartość właściwości contentDetails.latencyPreference .
Nie wszystkie ustawienia są obsługiwane w przypadku tego ustawienia opóźnienia.
|
invalidValue (400) |
invalidPauseAdsUntil |
Zasób LiveBroadcast
zawiera nieprawidłową wartość dla argumentu
Usługa monetizationDetails.cuepointSchedule.pauseAdsUntil .
Ten błąd może wystąpić z tych powodów:
|
invalidValue (400) |
invalidPrivacyStatus |
Zasób LiveBroadcast nie określił prawidłowego stanu prywatności. Zobacz prawidłowe wartości parametru privacyStatus . |
invalidValue (400) |
invalidProjection |
Zasób LiveBroadcast zawiera nieprawidłową wartość właściwości contentDetails.projection . Projekcji trwałej transmisji nie można ustawić na wartość 360°. |
invalidValue (400) |
invalidScheduledEndTime |
Zasób LiveBroadcast zawiera nieprawidłową wartość właściwości snippet.scheduledEndTime . Planowana godzina zakończenia musi przypadać po zaplanowanym czasie rozpoczęcia. |
invalidValue (400) |
invalidScheduledStartTime |
Zasób LiveBroadcast zawiera nieprawidłową wartość właściwości snippet.scheduledStartTime . Planowana godzina rozpoczęcia musi przypadać w przyszłości. |
invalidValue (400) |
invalidTitle |
Zasób liveBroadcast nie określił prawidłowej wartości właściwości snippet.title . Pole snippet.title musi mieć od 1 do 100 znaków. |
notFound (404) |
liveBroadcastNotFound |
Właściwość id określona w zasobie transmisji na żywo nie wykryła transmisji. |
required (400) |
broadcastStreamDelayMsRequired |
Zasób liveBroadcast nie określił właściwości contentDetails. . |
required (400) |
enableMonitorStreamRequired |
Zasób liveBroadcast nie określił właściwości contentDetails. . |
required (400) |
idRequired |
Zasób LiveBroadcast musi zawierać i określać wartość właściwości id . |
required (400) |
scheduledEndTimeRequired |
Zasób liveBroadcast nie określił właściwości snippet.scheduledEndTime . |
required (400) |
scheduledStartTimeRequired |
Zasób liveBroadcast nie określił właściwości snippet.scheduledStartTime . |
Wypróbuj
Użyj interfejsu APIs Explorer, aby wywołać ten interfejs API i wyświetlić żądanie i odpowiedź interfejsu API.