LiveBroadcasts: update

Met à jour une diffusion. Par exemple, vous pouvez modifier les paramètres de diffusion définis dans l'objet contentDetails de la ressource liveBroadcast.

Cas d'utilisation courants

Demande

Requête HTTP

PUT https://www.googleapis.com/youtube/v3/liveBroadcasts

Autorisation

Une autorisation est requise pour cette requête. Celle-ci doit inclure au moins l'un des champs d'application suivants. En savoir plus sur le processus d'authentification et d'autorisation

Définition du champ d'application
https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/youtube.force-ssl

Paramètres

Le tableau suivant répertorie les paramètres compatibles avec cette requête. Tous les paramètres répertoriés sont des paramètres de requête.

Paramètres
Paramètres obligatoires
part string
Le paramètre part a une double finalité dans le cadre de cette opération. Elle identifie les propriétés définies par l'opération d'écriture ainsi que les propriétés que la réponse de l'API inclura.

Les propriétés part que vous pouvez inclure dans la valeur du paramètre sont id, snippet, contentDetails, monetizationDetails et status.

Notez que cette méthode remplace les valeurs existantes pour toutes les propriétés modifiables contenues dans les parties spécifiées par la valeur du paramètre. Par exemple, l'état de confidentialité d'une diffusion est défini dans la partie status. Par conséquent, si votre requête met à jour une diffusion privée ou non répertoriée et que la valeur du paramètre part de la requête inclut la partie status, le paramètre de confidentialité de la diffusion sera mis à jour sur la valeur spécifiée par le corps de la requête. Si le corps de la requête n'indique pas de valeur, le paramètre de confidentialité existant sera supprimé, et le paramètre de confidentialité par défaut sera rétabli pour la diffusion.
Paramètres facultatifs
onBehalfOfContentOwner string
Ce paramètre ne peut être utilisé que dans une demande autorisée correctement. Remarque:Ce paramètre est destiné exclusivement aux partenaires de contenu YouTube.

Le paramètre onBehalfOfContentOwner indique que les identifiants d'autorisation de la demande identifient un utilisateur du CMS YouTube agissant pour le compte du propriétaire de contenu spécifié dans la valeur du paramètre. Ce paramètre est destiné aux partenaires de contenu YouTube qui possèdent et gèrent un grand nombre de chaînes YouTube. Il permet aux propriétaires de contenu de s'authentifier une fois pour accéder à toutes les données relatives à leurs vidéos et à leur chaîne, sans avoir à fournir d'identifiants pour chaque chaîne. Le compte CMS avec lequel l'utilisateur s'authentifie doit être associé au propriétaire de contenu YouTube spécifié.
onBehalfOfContentOwnerChannel string
Ce paramètre ne peut être utilisé que dans une demande autorisée correctement. Ce paramètre ne peut être utilisé que dans une demande autorisée correctement. Remarque:Ce paramètre est exclusivement destiné aux partenaires de contenu YouTube.

Le paramètre onBehalfOfContentOwnerChannel spécifie l'ID de la chaîne YouTube à laquelle la vidéo est ajoutée. Ce paramètre est obligatoire lorsqu'une requête spécifie une valeur pour le paramètre onBehalfOfContentOwner. Il ne peut être utilisé qu'avec ce paramètre. En outre, la demande doit être autorisée via un compte CMS associé au propriétaire de contenu spécifié par le paramètre onBehalfOfContentOwner. Enfin, la chaîne spécifiée par le paramètre onBehalfOfContentOwnerChannel doit être associée au propriétaire de contenu spécifié par le paramètre onBehalfOfContentOwner.

Ce paramètre est destiné aux partenaires de contenu YouTube qui possèdent et gèrent de nombreuses chaînes YouTube différentes. Cela permet aux propriétaires de contenu de s'authentifier une seule fois et d'effectuer des actions au nom de la chaîne spécifiée dans la valeur du paramètre, sans avoir à fournir d'identifiants d'authentification pour chaque canal.

Corps de la requête

Fournissez une ressource liveBroadcast dans le corps de la requête. Pour cette ressource:

  • Vous devez spécifier une valeur pour les propriétés suivantes:

    • id
    • snippet.scheduledStartTime
    • contentDetails.monitorStream.enableMonitorStream
    • contentDetails.monitorStream.broadcastStreamDelayMs

  • Vous pouvez définir des valeurs pour les propriétés suivantes:

    • 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

    Si vous envoyez une demande de mise à jour et que votre demande ne spécifie pas de valeur pour une propriété ayant déjà une valeur, la valeur existante de la propriété sera supprimée.

Réponse

Lorsque cette méthode fonctionne, elle renvoie une ressource liveBroadcast dans le corps de réponse.

Erreurs

Le tableau suivant identifie les messages d'erreur que l'API peut renvoyer en réponse à un appel à cette méthode. Pour en savoir plus, consultez la documentation sur les messages d'erreur.

Type d'erreur Détails de l'erreur Description
forbidden (403) closedCaptionsTypeModificationNotAllowed La valeur contentDetails.closedCaptionsType ne peut être modifiée que lorsque l'état de la diffusion est created ou ready.
forbidden (403) enabledModificationNotAllowed Le champ enabled est en lecture seule.
forbidden (403) scheduleStrategyModificationNotAllowed Le champ scheduleStrategy est en lecture seule.
forbidden (403) repeatIntervalSecsModificationNotAllowed Le champ repeatIntervalSecs est en lecture seule.
forbidden (403) pauseAdsUntilModificationNotAllowed Impossible de modifier le champ "pauseAdsUntil". Cette erreur peut se produire pour les raisons suivantes :
  • Le champ monetizationDetails.cuepointSchedule.enabled n'est pas défini sur true. Ce champ ne peut être défini que dans YouTube Studio.
  • La diffusion n'est pas en direct.
forbidden (403) enableAutoStartModificationNotAllowed La valeur contentDetails.enableAutoStart ne peut être modifiée que lorsque le flux est inactif et que l'état de la diffusion est created ou ready.
forbidden (403) enableClosedCaptionsModificationNotAllowed La valeur contentDetails.enableClosedCaptions ne peut être modifiée que lorsque l'état de la diffusion est created ou ready.
forbidden (403) enableDvrModificationNotAllowed La valeur contentDetails.enableDvr ne peut être modifiée que lorsque l'état de la diffusion est created ou ready.
forbidden (403) enableMonitorStreamModificationNotAllowed La valeur contentDetails.monitorStream.enableMonitorStream ne peut être modifiée que lorsque l'état de la diffusion est created ou ready.
forbidden (403) recordFromStartModificationNotAllowed La valeur contentDetails.recordFromStart ne peut être modifiée que lorsque l'état de la diffusion est created ou ready.
insufficientPermissions insufficientLivePermissions La requête n'est pas autorisée pour mettre à jour la diffusion en direct spécifiée. Pour en savoir plus, consultez Implémenter l'authentification OAuth2.
insufficientPermissions liveStreamingNotEnabled L'utilisateur qui a autorisé la demande ne peut pas diffuser de vidéos en direct sur YouTube. Pour en savoir plus, l'utilisateur peut consulter la page https://www.youtube.com/features.
invalidValue (400) invalidAutoStart La ressource liveBroadcast contenait une valeur non valide pour la propriété contentDetails.enableAutoStart. Vous ne pouvez pas modifier le paramètre enableAutoStart pour une diffusion persistante.
invalidValue (400) invalidAutoStop La ressource liveBroadcast contenait une valeur non valide pour la propriété contentDetails.enableAutoStop. Vous ne pouvez pas modifier le paramètre enableAutoStop pour une diffusion persistante.
invalidValue (400) invalidDescription La ressource liveBroadcast n'a pas spécifié de valeur valide pour la propriété snippet.description. snippet.description peut contenir jusqu'à 5 000 caractères.
invalidValue (400) invalidEmbedSetting La ressource liveBroadcast contenait une valeur non valide pour la propriété contentDetails.enable_embed. Vous ne pouvez pas intégrer cette diffusion.
invalidValue (400) invalidEnableClosedCaptions Dans la ressource liveBroadcast, la valeur de la propriété contentDetails.enableClosedCaptions n'est pas compatible avec la valeur du paramètre contentDetails.closedCaptionType. Modifiez la ressource pour qu'elle n'inclue que l'une des deux propriétés, puis renvoyez la demande.
invalidValue (400) invalidLatencyPreferenceOptions La ressource liveBroadcast contenait une valeur non valide pour la propriété contentDetails.latencyPreference. Tous les paramètres ne sont pas compatibles avec cette préférence de latence.
invalidValue (400) invalidPauseAdsUntil La ressource liveBroadcast contient une valeur non valide pour la propriété monetizationDetails.cuepointSchedule.pauseAdsUntil. Cette erreur peut se produire pour les raisons suivantes :
  • La valeur monetizationDetails.cuepointSchedule.pauseAdsUntil n'est pas spécifiée au format ISO 8601 (AAAA-MM-JJThh:mm:ss.sZ).
  • La valeur monetizationDetails.cuepointSchedule.pauseAdsUntil n'est pas située dans le futur.
  • La valeur monetizationDetails.cuepointSchedule.pauseAdsUntil est éloignée de 10 minutes de l'heure actuelle.
invalidValue (400) invalidPrivacyStatus La ressource liveBroadcast n'a pas spécifié d'état de confidentialité valide. Consultez les valeurs privacyStatus valides.
invalidValue (400) invalidProjection La ressource liveBroadcast contenait une valeur non valide pour la propriété contentDetails.projection. La projection d'une diffusion persistante ne peut pas être définie sur 360.
invalidValue (400) invalidScheduledEndTime La ressource liveBroadcast contenait une valeur non valide pour la propriété snippet.scheduledEndTime. L'heure de fin prévue doit être postérieure à l'heure de début prévue.
invalidValue (400) invalidScheduledStartTime La ressource liveBroadcast contenait une valeur non valide pour la propriété snippet.scheduledStartTime. L'heure de début prévue doit être située dans le futur.
invalidValue (400) invalidTitle La ressource liveBroadcast n'a pas spécifié de valeur valide pour la propriété snippet.title. snippet.title doit comporter entre 1 et 100 caractères.
notFound (404) liveBroadcastNotFound La propriété id spécifiée dans la ressource liveBroadcast n'a pas identifié de diffusion.
required (400) broadcastStreamDelayMsRequired La ressource liveBroadcast n'a pas spécifié la propriété contentDetails.monitorStream.broadcastStreamDelayMs.
required (400) enableMonitorStreamRequired La ressource liveBroadcast n'a pas spécifié la propriété contentDetails.monitorStream.enableMonitorStream.
required (400) idRequired La ressource liveBroadcast doit inclure et spécifier une valeur pour la propriété id.
required (400) scheduledEndTimeRequired La ressource liveBroadcast n'a pas spécifié la propriété snippet.scheduledEndTime.
required (400) scheduledStartTimeRequired La ressource liveBroadcast n'a pas spécifié la propriété snippet.scheduledStartTime.

Essayer

Utilisez APIs Explorer pour appeler cette API et afficher la requête et la réponse d'API.