LiveBroadcasts: update

Actualiza una transmisión. Por ejemplo, puedes modificar la configuración de transmisión definida en el objeto contentDetails del recurso liveBroadcast.

Casos de uso habituales

Solicitud

Solicitud HTTP

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

Autorización

Esta solicitud requiere autorización con al menos uno de los siguientes permisos. Para obtener más información sobre la autenticación y autorización, consulta Cómo implementar la autorización de OAuth 2.0.

Alcance
https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/youtube.force-ssl

Parámetros

En la siguiente tabla, se enumeran los parámetros que admite esta consulta. Todos los parámetros mencionados son parámetros de consulta.

Parámetros
Parámetros obligatorios
part string
El parámetro part tiene dos propósitos en esta operación. Identifica las propiedades que establecerá la operación de escritura, así como las que incluirá la respuesta de la API.

Las propiedades part que puedes incluir en el valor del parámetro son id, snippet, contentDetails, monetizationDetails y status.

Ten en cuenta que este método anulará los valores existentes de todas las propiedades mutables que se contengan en las partes que especifique el valor del parámetro. Por ejemplo, el estado de privacidad de una transmisión se define en la parte status. Por lo tanto, si tu solicitud actualiza una transmisión privada o no listada, y el valor del parámetro part de la solicitud incluye la parte status, la configuración de privacidad de la transmisión se actualizará al valor que especifique el cuerpo de la solicitud. Si en el cuerpo de la solicitud no se especifica un valor, la configuración de privacidad existente se eliminará y la transmisión volverá a la configuración de privacidad predeterminada.
Parámetros opcionales
onBehalfOfContentOwner string
Este parámetro solo se puede usar en una solicitud autorizada correctamente.
Nota: Este parámetro está destinado exclusivamente a los socios de contenido de YouTube.

El parámetro onBehalfOfContentOwner indica que las credenciales de autorización de la solicitud identifican a un usuario del sistema de administración de contenido (CMS) de YouTube que actúa en nombre del propietario del contenido especificado en el valor del parámetro. Este parámetro está dirigido a socios de contenido de YouTube que poseen y administran muchos canales de YouTube diferentes. Permite a los propietarios del contenido autenticarse una vez y tener acceso a todos los datos de sus videos y canales, sin tener que proporcionar credenciales de autenticación para cada canal. La cuenta de CMS con la que se autentica el usuario debe estar relacionada con el propietario del contenido de YouTube especificado.
onBehalfOfContentOwnerChannel string
Este parámetro solo se puede usar en una solicitud autorizada correctamente.
Nota: Este parámetro está destinado exclusivamente a los socios de contenido de YouTube.

El parámetro onBehalfOfContentOwnerChannel especifica el ID del canal de YouTube al que se agrega un video. Este parámetro es obligatorio cuando una solicitud especifica un valor para el parámetro onBehalfOfContentOwner y solo se puede usar junto con ese parámetro. Además, la solicitud debe autorizarse con una cuenta de CMS que esté vinculada al propietario del contenido que se especifica en el parámetro onBehalfOfContentOwner. Por último, el canal que especifica el valor del parámetro onBehalfOfContentOwnerChannel debe estar vinculado al propietario del contenido que especifica el parámetro onBehalfOfContentOwner.

Este parámetro está destinado a los socios de contenido de YouTube que poseen y administran muchos canales de YouTube diferentes. Permite a los propietarios de contenido autenticarse una vez y llevar a cabo acciones en nombre del canal especificado en el valor del parámetro, sin tener que proporcionar credenciales de autenticación para cada canal por separado.

Cuerpo de la solicitud

Proporciona un recurso liveBroadcast en el cuerpo de la solicitud. Para ese recurso:

  • Debes especificar un valor para estas propiedades:

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

  • Puedes establecer los valores de las siguientes propiedades:

    • 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 envías una solicitud de actualización sin especificar un valor para una propiedad que ya tiene un valor, el valor actual de la propiedad se eliminará.

Respuesta

Si se aplica correctamente, este método muestra un recurso liveBroadcast en el cuerpo de la respuesta.

Errores

En la siguiente tabla, se identifican los mensajes de error que podría mostrar la API en respuesta a una llamada a este método. Para obtener más detalles, consulta el mensaje de error.

Tipo de error Detalle del error Descripción
forbidden (403) closedCaptionsTypeModificationNotAllowed El valor de contentDetails.closedCaptionsType solo se puede modificar cuando la transmisión está en el estado created o ready.
forbidden (403) enabledModificationNotAllowed El campo enabled es de solo lectura.
forbidden (403) scheduleStrategyModificationNotAllowed El campo scheduleStrategy es de solo lectura.
forbidden (403) repeatIntervalSecsModificationNotAllowed El campo repeatIntervalSecs es de solo lectura.
forbidden (403) pauseAdsUntilModificationNotAllowed No se puede modificar el campo pauseAdsUntil. Este error puede ocurrir por los siguientes motivos:
  • El campo monetizationDetails.cuepointSchedule.enabled no está configurado como true. Este campo solo se puede configurar con YouTube Studio.
  • La transmisión no está en vivo.
forbidden (403) enableAutoStartModificationNotAllowed El valor de contentDetails.enableAutoStart solo se puede modificar cuando la transmisión está inactiva y la transmisión está en el estado created o ready.
forbidden (403) enableClosedCaptionsModificationNotAllowed El valor de contentDetails.enableClosedCaptions solo se puede modificar cuando el estado de la transmisión es created o ready.
forbidden (403) enableDvrModificationNotAllowed El valor de contentDetails.enableDvr solo se puede modificar cuando el estado de la transmisión es created o ready.
forbidden (403) enableMonitorStreamModificationNotAllowed El valor de contentDetails.monitorStream.enableMonitorStream solo se puede modificar cuando el estado de la transmisión es created o ready.
forbidden (403) recordFromStartModificationNotAllowed El valor de contentDetails.recordFromStart solo se puede modificar cuando el estado de la transmisión es created o ready.
insufficientPermissions insufficientLivePermissions La solicitud no está autorizada para actualizar la transmisión en vivo especificada. Para obtener más información, consulta Cómo implementar la autenticación de OAuth2.
insufficientPermissions liveStreamingNotEnabled El usuario que autorizó la solicitud no tiene habilitada la transmisión de video en vivo en YouTube. El usuario puede encontrar más información en https://www.youtube.com/features.
invalidValue (400) invalidAutoStart El recurso liveBroadcast contenía un valor no válido para la propiedad contentDetails.enableAutoStart. No puedes modificar el parámetro de configuración enableAutoStart de una transmisión persistente.
invalidValue (400) invalidAutoStop El recurso liveBroadcast contiene un valor no válido para la propiedad contentDetails.enableAutoStop. No puedes modificar el parámetro de configuración enableAutoStop de una transmisión persistente.
invalidValue (400) invalidDescription El recurso liveBroadcast no especificó un valor válido para la propiedad snippet.description. snippet.description puede contener hasta 5,000 caracteres.
invalidValue (400) invalidEmbedSetting El recurso liveBroadcast contiene un valor no válido para la propiedad contentDetails.enable_embed. No puedes incorporar esta transmisión.
invalidValue (400) invalidEnableClosedCaptions En el recurso liveBroadcast, el valor de la propiedad contentDetails.enableClosedCaptions es incompatible con el valor de la configuración contentDetails.closedCaptionType. Modifica el recurso para que incluya solo una de las dos propiedades y, luego, vuelve a enviar la solicitud.
invalidValue (400) invalidLatencyPreferenceOptions El recurso liveBroadcast contenía un valor no válido para la propiedad contentDetails.latencyPreference. No todos los parámetros de configuración son compatibles con esta preferencia de latencia.
invalidValue (400) invalidPauseAdsUntil El recurso liveBroadcast contiene un valor no válido para la propiedad monetizationDetails.cuepointSchedule.pauseAdsUntil. Este error puede ocurrir por los siguientes motivos:
  • El valor monetizationDetails.cuepointSchedule.pauseAdsUntil no se especifica en formato ISO 8601 (AAAA-MM-DDThh:mm:ss.sZ).
  • El valor de monetizationDetails.cuepointSchedule.pauseAdsUntil no es posterior a la fecha actual.
  • El valor de monetizationDetails.cuepointSchedule.pauseAdsUntil está a más de 10 minutos de la hora actual.
invalidValue (400) invalidPrivacyStatus El recurso liveBroadcast no especificó un estado de privacidad válido. Consulta los valores privacyStatus válidos.
invalidValue (400) invalidProjection El recurso liveBroadcast contenía un valor no válido para la propiedad contentDetails.projection. La proyección de una transmisión persistente no se puede establecer en 360.
invalidValue (400) invalidScheduledEndTime El recurso liveBroadcast contenía un valor no válido para la propiedad snippet.scheduledEndTime. La hora de finalización programada debe seguir a la hora de inicio programada.
invalidValue (400) invalidScheduledStartTime El recurso liveBroadcast contenía un valor no válido para la propiedad snippet.scheduledStartTime. La hora de inicio programada debe ser posterior a la fecha actual.
invalidValue (400) invalidTitle El recurso liveBroadcast no especificó un valor válido para la propiedad snippet.title. snippet.title debe tener entre 1 y 100 caracteres.
notFound (404) liveBroadcastNotFound La propiedad id especificada en el recurso liveBroadcast no identificó una transmisión.
required (400) broadcastStreamDelayMsRequired El recurso liveBroadcast no especificó la propiedad contentDetails.monitorStream.broadcastStreamDelayMs.
required (400) enableMonitorStreamRequired El recurso liveBroadcast no especificó la propiedad contentDetails.monitorStream.enableMonitorStream.
required (400) idRequired El recurso liveBroadcast debe incluir y especificar un valor para la propiedad id.
required (400) scheduledEndTimeRequired El recurso liveBroadcast no especificó la propiedad snippet.scheduledEndTime.
required (400) scheduledStartTimeRequired El recurso liveBroadcast no especificó la propiedad snippet.scheduledStartTime.

Pruébalo

Usa APIs Explorer para llamar a esta API y ver la solicitud y la respuesta de la API.