En los siguientes ejemplos, se muestra cómo usar la API de datos de YouTube (v3) para realizar funciones relacionadas con los videos.
Recuperar los videos subidos de un canal
En este ejemplo, se recuperan los videos subidos a un canal en particular. El ejemplo tiene dos pasos:
-
Paso 1: Recupera el ID de lista de reproducción de los videos subidos del canal
Invoca el método
channels.list
para recuperar el ID de la lista de reproducción que contiene los videos subidos del canal. El valor del parámetropart
de la solicitud debe incluircontentDetails
como una de las partes de recursoschannel
que se recuperan. En la respuesta de la API, la propiedadcontentDetails.relatedPlaylists.uploads
contiene el ID de la lista de reproducción.Existen varias formas de identificar el canal:
-
Establece el valor del parámetro
mine
entrue
para recuperar información del canal de YouTube del usuario autenticado actualmente. Tu solicitud se debe autorizar con OAuth 2.0.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &mine=true
-
Establece el parámetro
forUsername
en un nombre de usuario de YouTube para recuperar información del canal asociado con ese nombre de usuario. En este ejemplo, se establece el valor del parámetroforUsername
enGoogle
para recuperar información del canal de YouTube oficial de Google.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &forUsername=Google
-
Establece el parámetro
id
en el ID del canal de YouTube que identifica de forma exclusiva el canal sobre el que recuperas información. En este ejemplo, se establece el parámetroid
enUCK8sQmJBp8GCxrOtXWBpyEA
, que también identifica el canal oficial de YouTube de Google.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &id=UCK8sQmJBp8GCxrOtXWBpyEA
-
-
Paso 2: Recupera la lista de videos subidos
Llama al método
playlistItems.list
para recuperar la lista de videos subidos. Establece el valor del parámetroplaylistId
en el valor obtenido en el paso 1. En este ejemplo, el valor del parámetro se establece enUUK8sQmJBp8GCxrOtXWBpyEA
, que es la lista de videos subidos al canal oficial de YouTube de Google.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.list? part=snippet,contentDetails,status &playlistId=UUK8sQmJBp8GCxrOtXWBpyEA
Recuperar los videos más populares
En este ejemplo, se muestra cómo recuperar una lista de los videos más populares de YouTube, que se seleccionan con un algoritmo que combina muchos indicadores diferentes para determinar la popularidad general.
Para recuperar la lista de videos más populares, llama al método videos.list
y establece el valor del parámetro chart
en mostPopular
. Cuando recuperas esta lista, también puedes establecer uno de los siguientes parámetros, o ambos:
regionCode
: Le indica a la API que muestre una lista de videos para la región especificada.videoCategoryId
: Identifica la categoría de video para la que se deben recuperar los videos más populares.
La siguiente solicitud recupera los videos deportivos más populares en España:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.search.list? part=snippet &chart=mostPopular ®ionCode=es &videoCategoryId=17
Cómo subir un video
Debido a que el Explorador de API no admite la capacidad de subir archivos, esta descripción no vincula a un ejemplo ejecutable. Los siguientes recursos te ayudarán a modificar tu aplicación para que pueda subir videos usando la API v3:
-
La documentación del método videos.insert de la API contiene varias muestras de código que explican cómo subir un video con diferentes lenguajes de programación.
-
En la guía de cargas reanudables, se explica la secuencia de solicitudes HTTP que una aplicación usa para subir videos mediante un proceso de carga reanudable. Esta guía está destinada principalmente para desarrolladores que no pueden utilizar las bibliotecas cliente de la API de Google, algunas de las cuales proporcionan asistencia nativa para las cargas reanudables.
-
En el ejemplo de JavaScript para subir un video, se usa el CORS (uso compartido de recursos entre dominios) para demostrar cómo subir un archivo de video a través de una página web. La biblioteca de carga de CORS que usa la API v3 admite de forma natural la carga reanudable. Además, en el ejemplo, se muestra cómo verificar el estado de un video subido mediante la recuperación de la parte
processingDetails
del recursovideo
, así como la forma de controlar los cambios de estado del video subido.
Cómo verificar el estado de un video subido
En este ejemplo, se muestra cómo verificar el estado de un video subido. Los videos subidos aparecerán de inmediato en el feed de videos subidos del usuario autenticado. Sin embargo, el video no será visible en YouTube hasta que se haya procesado.
-
Paso 1: Sube el video
Invoca el método
videos.insert
para subir el video. Si la solicitud se realiza correctamente, la respuesta de la API contendrá un recursovideo
que identifica el ID de video único para el video subido. -
Paso 2: Verifica el estado del video
Llama al método
videos.list
para verificar el estado del video. Establece el valor del parámetroid
según el ID de video obtenido en el paso 1. Establece el valor del parámetropart
enprocessingDetails
.Si la solicitud se maneja correctamente, la respuesta de la API contendrá un recurso
video
. Comprueba el valor de la propiedadprocessingDetails.processingStatus
para determinar si YouTube aún está procesando el video. Cuando YouTube termine de procesar el video, el valor de la propiedad cambiará a un método distinto deprocessing
, comosucceeded
ofailed
.El cuerpo de la solicitud es un recurso
video
en el que la propiedadid
especifica el ID del video que borrarás. En este ejemplo, el recurso también contiene un objetorecordingDetails
.La siguiente solicitud verifica el estado de un video. Para completar la solicitud en el Explorador de API, debes establecer el valor de la propiedad
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list? part=snippet,processingDetails &id=VIDEO_ID
Nota: La aplicación podría sondear la API para verificar periódicamente el estado de un video recién subido. Una vez que se haya procesado el video, tu aplicación podrá crear un boletín o continuar con otra acción que dependerá del estado del video.
Actualizar un video
En este ejemplo, se muestra cómo actualizar un video para agregar información sobre la hora y el lugar donde se grabó. El ejemplo tiene los siguientes pasos:
-
Paso 1: Recupera el ID de video
Sigue los pasos anteriores para recuperar los videos subidos del canal del usuario autenticado actualmente. La lista se puede usar para mostrar una lista de videos, utilizando el ID de cada video como clave.
Nota: Existen muchas otras maneras de obtener los ID de video, como obtener resultados de la búsqueda o mostrar una lista de elementos en una lista de reproducción. Sin embargo, dado que solo el propietario puede actualizar un video, es probable que el primer paso de este proceso sea recuperar una lista de videos que le pertenecen al usuario que autoriza la solicitud a la API.
-
Paso 2: Actualiza un video
Llama al método
videos.update
para actualizar un video específico. Establece el valor del parámetropart
enrecordingDetails
. (El valor del parámetro depende del campo de metadatos del video que se está actualizando).El cuerpo de la solicitud es un recurso
video
en el que la propiedadid
especifica el ID del video que estás actualizando. En este ejemplo, el recurso también contiene un objetorecordingDetails
.El siguiente recurso de muestra indica que el video se grabó el 30 de octubre de 2013 en Boston:
{ "id": "VIDEO_ID", "recordingDetails": { "location": { "latitude": "42.3464", "longitude": "-71.0975" } "recordingDate": "2013-10-30T23:15:00.000Z" } }
Para completar la solicitud en el Explorador de API, debes establecer el valor de la propiedad
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.update? part=snippet
Sube una imagen en miniatura personalizada y configúrala para un video
Puedes usar el método thumbnails.set
de la API v3 para subir una imagen en miniatura personalizada y configurarla para un video. En tu solicitud, el valor del parámetro videoId
identifica el video para el que se usará la miniatura.
Esta consulta no se puede probar con el Explorador de API porque no admite la carga de archivos multimedia, lo cual es un requisito para este método.
Cómo borrar un video
En este ejemplo, se muestra cómo borrar un video. El ejemplo tiene los siguientes pasos:
-
Paso 1: Recupera el ID de video
Sigue los pasos anteriores para recuperar los videos subidos del canal del usuario autenticado actualmente. La lista se puede usar para mostrar una lista de videos, utilizando el ID de cada video como clave.
Nota: Existen muchas otras maneras de obtener los ID de video, como obtener resultados de la búsqueda o mostrar una lista de elementos en una lista de reproducción. Sin embargo, dado que solo un propietario puede borrar un video, es probable que el primer paso de este proceso sea recuperar una lista de videos que pertenecen al usuario que autoriza la solicitud a la API.
-
Paso 2: Borra un video
Llama al método
videos.delete
para borrar un video específico. En la solicitud, el parámetroid
especifica el ID de video del video que borrarás. La solicitud se debe autorizar con OAuth 2.0. Si pruebas esta consulta en el Explorador de API, deberás sustituir un ID de video válido por el valor del parámetroid
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.delete? id=VIDEO_ID
Cómo denunciar un video abusivo
En este ejemplo, se muestra cómo denunciar un video que incluye contenido abusivo. El ejemplo tiene los siguientes pasos:
-
Paso 1: Recupera los ID que explican por qué se está denunciando el video
Envía una solicitud autorizada al método
videoAbuseReportReasons.list
a fin de recuperar una lista de motivos válidos para marcar un video. El recurso de muestravideoAbuseReportReason
que aparece a continuación contiene información para marcar un video que contiene spam o contenido engañoso.{ "kind": "youtube#videoAbuseReportReason", "etag": "\"tbWC5XrSXxe1WOAx6MK9z4hHSU8/Or2VqBIilpHU7j__oPzUFCvGVBw\"", "id": "S", "snippet": { "label": "Spam or misleading", "secondaryReasons": [ { "id": "27", "label": "Spam or mass advertising" }, { "id": "28", "label": "Misleading thumbnail" }, { "id": "29", "label": "Malware or phishing" }, { "id": "30", "label": "Pharmaceutical drugs for sale" }, { "id": "31", "label": "Other misleading info" } ] } }
Como se muestra en el recurso, este motivo está asociado a una lista de motivos secundarios. Cuando marques un video que contiene spam, debes proporcionar el ID por el motivo, y te recomendamos que proporciones un motivo secundario.
-
Paso 2: Marca el video por contenido abusivo
Envía una solicitud autorizada al método
La propiedadvideos.reportAbuse
para denunciar el video. El cuerpo de la solicitud es un objeto JSON que identifica el video que se marca y el motivo por el cual se marca. Como se indicó en el paso 1, para algunos tipos de motivos, se recomienda y se recomienda un motivo secundario.videoId
del objeto JSON identifica el video que se marca.El siguiente objeto JSON de ejemplo marca un video por incluir spam o contenido engañoso y, más específicamente, por usar una imagen en miniatura engañosa. Como se muestra en el objeto JSON de ejemplo anterior, el ID para el contenido Spam o engañoso es S. El ID de una miniatura engañosa es 28.
{ "videoId": "VIDEO_ID", "reasonId": "S", "secondaryReasonId": "28", "comments": "Testing the video flagging feature.", "language": "en" }
La solicitud
videos.reportAbuse
debe autorizarse mediante OAuth 2.0. El siguiente vínculo carga el objeto JSON anterior en el Explorador de API. Para probar la consulta, debes sustituir un ID de video válido por el valor de la propiedadvideoId
. Recuerda que enviar esta solicitud marcará el video.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse