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:
|
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. solo se puede modificar cuando el estado de la transmisión es created o ready . |
forbidden (403) |
enableMonitorStreamModificationNotAllowed |
El valor de contentDetails. solo se puede modificar cuando el estado de la transmisión es created o ready . |
forbidden (403) |
recordFromStartModificationNotAllowed |
El valor de contentDetails. 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:
|
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. . |
required (400) |
enableMonitorStreamRequired |
El recurso liveBroadcast no especificó la propiedad contentDetails. . |
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.