Aggiorna una trasmissione. Ad esempio, puoi modificare le impostazioni di trasmissione definite nell'oggetto contentDetails della risorsa liveBroadcast.
Casi d'uso comuni
Richiesta
Richiesta HTTP
PUT https://www.googleapis.com/youtube/v3/liveBroadcasts
Autorizzazione
Questa richiesta richiede l'autorizzazione con almeno uno dei seguenti ambiti. Per saperne di più sull'autenticazione e sull'autorizzazione, consulta Implementare l'autorizzazione OAuth 2.0.
| Ambito |
|---|
https://www.googleapis.com/auth/youtube |
https://www.googleapis.com/auth/youtube.force-ssl |
Parametri
La tabella seguente elenca i parametri supportati da questa query. Tutti i parametri elencati sono parametri di query.
| Parametri | ||
|---|---|---|
| Parametri obbligatori | ||
part |
stringIl parametro part ha due scopi in questa operazione. Identifica le proprietà che l'operazione di scrittura imposterà, nonché le proprietà che la risposta dell'API includerà.Le part proprietà che puoi includere nel valore parametro sono id, snippet, contentDetails, monetizationDetails e status.Tieni presente che questo metodo sostituirà i valori esistenti per tutte le proprietà modificabili contenute in tutte le parti specificate dal valore parametro. Ad esempio, lo stato della privacy di una trasmissione è definito nella parte status. Pertanto, se la richiesta aggiorna una trasmissione privata o non in elenco e il valore parametro part della richiesta include la parte status, l'impostazione della privacy della trasmissione verrà aggiornata al valore specificato nel corpo della richiesta. Se il corpo della richiesta non specifica un valore, l'impostazione della privacy esistente verrà rimossa e la trasmissione tornerà all'impostazione della privacy predefinita. |
|
| Parametri facoltativi | ||
onBehalfOfContentOwner |
stringQuesto parametro può essere utilizzato solo in una richiesta autorizzata correttamente. Nota: questo parametro è destinato esclusivamente ai partner di contenuti di YouTube. Il parametro onBehalfOfContentOwner indica che le credenziali di autorizzazione della richiesta identificano un utente del sistema di gestione dei contenuti (CMS) di YouTube che agisce per conto del proprietario dei contenuti specificato nel valore del parametro. Questo parametro è destinato ai partner di contenuti di YouTube che possiedono e gestiscono molti canali YouTube diversi. Consente ai proprietari dei contenuti di autenticarsi una sola volta e di accedere a tutti i dati dei video e dei canali, senza dover fornire le credenziali di autenticazione per ogni singolo canale. L'account CMS con cui l'utente esegue l'autenticazione deve essere collegato al proprietario dei contenuti di YouTube specificato. |
|
onBehalfOfContentOwnerChannel |
stringQuesto parametro può essere utilizzato solo in una richiesta autorizzata correttamente. Nota: questo parametro è destinato esclusivamente ai partner di contenuti di YouTube. Il parametro onBehalfOfContentOwnerChannel specifica l'ID del canale YouTube a cui viene aggiunto un video. Questo parametro è obbligatorio quando una richiesta specifica un valore per il parametro onBehalfOfContentOwner e può essere utilizzato solo in combinazione con questo parametro. Inoltre, la richiesta deve essere autorizzata utilizzando un account CMS collegato al proprietario dei contenuti specificato dal parametro onBehalfOfContentOwner. Infine, il canale specificato dal valore del parametro onBehalfOfContentOwnerChannel deve essere collegato al proprietario dei contenuti specificato dal parametro onBehalfOfContentOwner.Questo parametro è destinato ai partner di contenuti di YouTube che possiedono e gestiscono molti canali YouTube diversi. Consente ai proprietari dei contenuti di autenticarsi una sola volta ed eseguire azioni per conto del canale specificato nel valore del parametro, senza dover fornire le credenziali di autenticazione per ogni canale separato. |
|
Corpo della richiesta
Fornisci una risorsa liveBroadcast nel corpo della richiesta. Per questa risorsa:
-
Devi specificare un valore per queste proprietà:
idsnippet.scheduledStartTimecontentDetails.monitorStream.enableMonitorStreamcontentDetails.monitorStream.broadcastStreamDelayMs
-
Puoi impostare i valori per queste proprietà:
snippet.titlesnippet.descriptionsnippet.categoryIdsnippet.scheduledStartTimesnippet.scheduledEndTimestatus.privacyStatuscontentDetails.monitorStream.enableMonitorStreamcontentDetails.monitorStream.broadcastStreamDelayMscontentDetails.enableAutoStartcontentDetails.enableAutoStopcontentDetails.enableClosedCaptionscontentDetails.enableDvrcontentDetails.enableEmbedcontentDetails.recordFromStartcontentDetails.availabilityConfigmonetizationDetails.adsMonetizationStatusmonetizationDetails.cuepointSchedule.enabledmonetizationDetails.cuepointSchedule.pauseAdsUntilmonetizationDetails.cuepointSchedule.ytOptimizedCuepointConfigmonetizationDetails.cuepointSchedule.creatorCuepointConfig.scheduleStrategymonetizationDetails.cuepointSchedule.creatorCuepointConfig.repeatIntervalSecs
Se invii una richiesta di aggiornamento e la richiesta non specifica un valore per una proprietà che ne ha già uno, il valore esistente della proprietà verrà eliminato.
Risposta
Se l'operazione ha esito positivo, questo metodo restituisce una risorsa liveBroadcast nel corpo della risposta.
Errori
La tabella seguente identifica i messaggi di errore che l'API potrebbe restituire in risposta a una chiamata a questo metodo. Per maggiori dettagli, consulta il messaggio di errore.
| Tipo di errore | Dettagli errore | Descrizione | |
|---|---|---|---|
backendError (503) |
backendError |
Alcune impostazioni non possono essere applicate. Il motivo è probabilmente che la trasmissione è stata appena creata. Riprova tra qualche secondo. | |
forbidden (403) |
closedCaptionsTypeModificationNotAllowed |
Il valore contentDetails.closedCaptionsType può essere modificato solo quando la trasmissione è nello stato created o ready. |
|
forbidden (403) |
monetizationDetailsModificationNotAllowed |
I canali che non fanno parte del Programma partner di YouTube (YPP) non possono modificare monetizationDetails per un video. |
|
forbidden (403) |
pauseAdsUntilModificationNotAllowed |
Il campo pauseAdsUntil non può essere modificato.
Questo errore può verificarsi per i seguenti motivi:
|
|
forbidden (403) |
enableAutoStartModificationNotAllowed |
Il valore contentDetails.enableAutoStart può essere modificato solo quando lo stream è inattivo e la trasmissione è nello stato created o ready. |
|
forbidden (403) |
enableClosedCaptionsModificationNotAllowed |
Il valore contentDetails.enableClosedCaptions può essere modificato solo quando lo stato della trasmissione è created o ready. |
|
forbidden (403) |
enableDvrModificationNotAllowed |
Il valore contentDetails. può essere modificato solo quando lo stato della trasmissione è created o ready. |
|
forbidden (403) |
enableMonitorStreamModificationNotAllowed |
Il valore contentDetails. può essere modificato solo quando lo stato della trasmissione è created o ready. |
|
forbidden (403) |
recordFromStartModificationNotAllowed |
Il valore contentDetails. può essere modificato solo quando lo stato della trasmissione è created o ready. |
|
insufficientPermissions |
insufficientLivePermissions |
La richiesta non è autorizzata ad aggiornare la trasmissione live specificata. Per saperne di più, consulta Implementare l'autenticazione OAuth2. | |
insufficientPermissions |
liveStreamingNotEnabled |
L'utente che ha autorizzato la richiesta non è abilitato a trasmettere video in diretta su YouTube. L'utente può trovare ulteriori informazioni all'indirizzo https://www.youtube.com/features. | |
invalidArgument |
missingAdsMonetizationStatus |
ads_monetization_status deve essere specificato come ON o OFF. |
|
invalidValue (400) |
invalidAutoStart |
La risorsa liveBroadcast
conteneva un valore non valido per la proprietà contentDetails.enableAutoStart.
Non puoi modificare l'impostazione enableAutoStart per una trasmissione permanente. |
|
invalidValue (400) |
invalidAutoStop |
La risorsa liveBroadcast
conteneva un valore non valido per la proprietà contentDetails.enableAutoStop. Non puoi modificare l'impostazione enableAutoStop per una trasmissione permanente. |
|
invalidValue (400) |
invalidDescription |
La risorsa liveBroadcast non ha specificato un valore valido per la proprietà snippet.description. snippet.description può contenere fino a 5000 caratteri. |
|
invalidValue (400) |
invalidEmbedSetting |
La risorsa liveBroadcast conteneva un valore non valido per la proprietà contentDetails.enable_embed. Non puoi incorporare questa trasmissione. |
|
invalidValue (400) |
invalidEnableClosedCaptions |
Nella risorsa liveBroadcast, il valore della proprietà contentDetails.enableClosedCaptions non è compatibile con il valore dell'impostazione contentDetails.closedCaptionType. Modifica la risorsa in modo da includere solo una delle due proprietà, quindi invia di nuovo la richiesta. |
|
invalidValue (400) |
invalidLatencyPreferenceOptions |
La risorsa liveBroadcast
conteneva un valore non valido per la proprietà contentDetails.latencyPreference.
Non tutte le impostazioni sono supportate con questa preferenza di latenza.
|
|
invalidValue (400) |
invalidEligibleForAdsMonetization |
eligible_for_ads_monetization è di sola lettura e non può essere specificato nel campo monetization_details. |
|
invalidValue (400) |
invalidCuepointSchedule |
La risorsa liveBroadcast
contiene un valore non valido per la
monetizationDetails.cuepointSchedule proprietà.
Questo errore può verificarsi per i seguenti motivi:
|
cuepoint_schedule non può essere specificato se ads_monetization_status è OFF. |
invalidValue (400) |
invalidEnabled |
La risorsa liveBroadcast contiene un valore non valido o in conflitto per la proprietà monetizationDetails.cuepointSchedule.enabled.
Questo errore può verificarsi per i seguenti motivi:
|
|
invalidValue (400) |
invalidCreatorCuepointConfig |
Devi specificare sia schedule_strategy che repeat_interval_secs. |
|
invalidValue (400) |
invalidRepeatIntervalSecs |
Il valore della proprietà repeat_interval_secs deve essere compreso nell'intervallo [360, 3600]. |
|
invalidValue (400) |
invalidPauseAdsUntil |
La risorsa liveBroadcast
contiene un valore non valido per la
monetizationDetails.cuepointSchedule.pauseAdsUntil proprietà.
Questo errore può verificarsi per i seguenti motivi:
|
|
invalidValue (400) |
invalidPrivacyStatus |
La risorsa liveBroadcast non ha specificato uno stato della privacy valido. Consulta i valori validi privacyStatus. |
|
invalidValue (400) |
invalidProjection |
La risorsa liveBroadcast conteneva un valore non valido per la proprietà contentDetails.projection. La proiezione di una trasmissione permanente non può essere impostata su 360. |
|
invalidValue (400) |
invalidScheduledEndTime |
La risorsa liveBroadcast conteneva un valore non valido per la proprietà snippet.scheduledEndTime. L'ora di fine programmata deve seguire l'ora di inizio programmata. |
|
invalidValue (400) |
invalidScheduledStartTime |
La risorsa liveBroadcast conteneva un valore non valido per la proprietà snippet.scheduledStartTime. L'ora di inizio programmata deve essere nel futuro. |
|
invalidValue (400) |
invalidTitle |
La risorsa liveBroadcast non ha specificato un valore valido per la proprietà snippet.title. snippet.title deve avere una lunghezza compresa tra 1 e 100 caratteri. |
|
notFound (404) |
liveBroadcastNotFound |
La proprietà id specificata nella risorsa liveBroadcast non ha identificato una trasmissione. |
|
preconditionFailed (412) |
videoNotEligibleForAdsMonetization |
Il video non è idoneo alla monetizzazione con gli annunci. Questo può accadere se il canale non è idoneo alla monetizzazione. | |
required (400) |
broadcastStreamDelayMsRequired |
La risorsa liveBroadcast non ha specificato la proprietà contentDetails.. |
|
required (400) |
enableMonitorStreamRequired |
La risorsa liveBroadcast non ha specificato la proprietà contentDetails.. |
|
required (400) |
idRequired |
La risorsa liveBroadcast deve includere e specificare un valore per la proprietà id. |
|
required (400) |
scheduledEndTimeRequired |
La risorsa liveBroadcast non ha specificato la proprietà snippet.scheduledEndTime. |
|
required (400) |
scheduledStartTimeRequired |
La risorsa liveBroadcast non ha specificato la proprietà snippet.scheduledStartTime. |
Prova
Utilizza APIs Explorer per chiamare questa API e visualizzare la richiesta API e la risposta.