Solicitudes de API de ejemplo

Esta página muestra ejemplos de solicitudes a la API de datos de YouTube. Puedes utilizar la API de datos de YouTube para recuperar y manipular los recursos de YouTube, como videos, canales y listas de reproducción. Cada muestra se vincula al Explorador de API de Google y lo propaga para que usted pueda ejecutar la muestra y ver la respuesta.

Para obtener más información sobre la carga de contenido con la API de datos de YouTube, consulta Cargas reanudables.

Descripción general

Para mayor claridad de la presentación, los ejemplos de esta página muestran los elementos distintivos de cada solicitud y abrevian la URL base para el host que procesa las solicitudes a la API de datos (https://www.googleapis.com/youtube/v3). Para realizar la solicitud fuera del contexto de las muestras, debes incluir la URL completa.

Por ejemplo, esta es una solicitud de ejemplo tal como aparece en esta página:

GET {base-URL}/channels?part=contentDetails
                       &mine=true

La URL completa para esta solicitud es la siguiente:

GET https://www.googleapis.com/youtube/v3/channels?part=contentDetails
                                                  &mine=true

Varias de las solicitudes recuperan datos a los que solo puede acceder el propietario del canal de YouTube, como la lista de suscriptores. Estas solicitudes requieren que el propietario del canal otorgue al Explorador de API de Google el derecho de realizar solicitudes a la API de datos de YouTube en su nombre. Consulta Implementar la autenticación OAuth 2.0 para obtener detalles sobre la autorización del acceso a los datos del canal privado. Después de vincular el Explorador de API, haga clic en el botón Autorizar solicitudes mediante OAuth 2.0. En este paso, se autoriza al Explorador de API a realizar solicitudes en nombre del propietario. También debe seleccionar el alcance de la autorización, que especifica los tipos de solicitudes que el Explorador de API puede realizar.

La respuesta a cada solicitud es la representación JSON de un recurso de YouTube. El parámetro part en la solicitud especifica qué partes del recurso se incluyen en la respuesta. El parámetro identifica una o más propiedades de recursos de nivel superior (no anidadas) que se deben incluir en la respuesta. Por ejemplo, algunas de las partes de un recurso de video son las siguientes:

  • resumen
  • Detalles de contenido
  • jugador
  • statistics
  • estado

Todas estas partes son objetos que contienen propiedades anidadas. Puedes considerar estos objetos como grupos de campos de metadatos que el servidor de la API podría (o no) recuperar. Por lo tanto, el parámetro part requiere que selecciones los componentes de recursos que tu aplicación usa realmente.Consulta Cómo comenzar a utilizar la API de datos de YouTube para obtener más información.

Recuperar información del canal

Esta solicitud usa el método channels.list para recuperar detalles sobre los canales que pertenecen al usuario autenticado.

GET {base_URL}/channels?part=contentDetails
                       &mine=true

La respuesta a esta solicitud incluye el ID del canal y contentDetails para el canal del usuario autenticado. contentDetails incluye las diversas listas de reproducción generadas por el sistema asociadas con el canal. Muchas de las solicitudes posteriores requieren el ID del canal o uno de los ID de las listas de reproducción, por lo que es importante grabarlos.

{
  "id": {CHANNEL_ID},
  "kind": "youtube#channel",
  "etag": etag,
  "contentDetails": {
    "relatedPlaylists": {
      "likes": {LIKES_PLAYLIST_ID},
      "favorites": {FAVORITES_PLAYLIST_ID},
      "uploads": {UPLOADS_PLAYLIST_ID},
      "watchHistory": {WATCHHISTORY_PLAYLIST_ID},
      "watchLater": {WATCHLATER_PLAYLIST_ID}
    },
    "googlePlusUserId": string
  },
}

Videos subidos y listas de reproducción generadas por el sistema

YouTube agrega todos los videos subidos a una lista de reproducción asociada con el canal. Para obtener una lista de los videos subidos, debes consultar la lista de reproducción "subidas" que se mostró en la respuesta mostrada anteriormente para la información del canal, utilizando el método playlistItems.list para recuperar los videos en esa lista de reproducción.

Antes de ejecutar la siguiente solicitud de ejemplo en el Explorador de API de Google, reemplaza {UPLOADS_PLAYLIST_ID} por el ID de la lista de reproducción de la solicitud anterior.

GET {base_URL}/playlistItems?part=contentDetails
                            &playlistId={UPLOADS_PLAYLIST_ID}

Ten en cuenta que el valor "id" para cada elemento que se muestra es su ID de itemItem. El ID de video del elemento de la lista de reproducción es videoId en la parte contentDetails.

Puedes recuperar los favoritos, los "Me gusta", el historial de reproducciones o las listas de reproducción posteriores de un usuario mediante la solicitud anterior al sustituir el ID de la lista de reproducción correspondiente de la respuesta de la información del canal.

Listas de reproducción creadas por los usuarios

Esta solicitud usa el método playlists.list para recuperar las listas de reproducción asociadas con el canal autenticado. Ten en cuenta que esta solicitud no recupera las listas de reproducción generadas por el sistema incluidas en la información del canal (subidas, watchHistory, etc.). Solo recupera listas de reproducción creadas por los usuarios.

GET {base_URL}/playlists?part=snippet
                        &mine=true

Cuando tengas el ID de una lista de reproducción, podrás recuperar los elementos de esta mediante la solicitud que se muestra en la sección anterior.

Puedes solicitar información sobre las listas de reproducción públicas de un canal sin autenticación. Cuando envías una solicitud no autenticada, debes incluir el argumento key que especifica la clave de API única para la aplicación que realiza la solicitud. Por ejemplo, esta solicitud recupera las listas de reproducción asociadas con el canal de GoogleDevelopers.

GET {base_URL}/playlists?part=snippet
                        &channelId=UC_x5XG1OV2P6uZZ5FSM9Ttw
                        &key={YOUR_API_KEY}

Recuperar suscripciones

Un recurso subscription define una relación entre un usuario de YouTube (el suscriptor) y un canal. El método subscriptions.list recupera los suscriptores a un canal en particular o las suscripciones de un usuario en particular, según los parámetros que incluyas en la solicitud.

Suscriptores del canal

Esta solicitud recupera una lista de los suscriptores del canal autenticado.

GET {base_URL}/subscriptions?part=snippet
                            &mySubscribers=true

Suscripciones de usuario

Puedes usar el mismo método para enumerar suscriptores (subscriptions.list) a fin de generar una lista de canales a los que se suscribe un usuario. Esta solicitud usa el parámetro mine para recuperar una lista de los canales de YouTube a los que se suscribe el usuario autenticado.

GET {base_URL}/subscriptions?part=snippet
                            &mine=true

Recuperar la actividad del usuario

Un recurso activity contiene información sobre una acción que un usuario o canal en particular realizó en YouTube: subir un video, suscribirse a un canal, etc. El método activities.list recupera las acciones asociadas con un canal o usuario que coinciden con los criterios de la solicitud. Por ejemplo, puedes recuperar acciones asociadas a un canal en particular, con las suscripciones del usuario o con la página principal personalizada de YouTube del usuario.

Actividad durante un período

Esta solicitud recupera todas las acciones que realizó el usuario autenticado durante abril de 2013.

GET {base_URL}/activities?part=snippet,contentDetails
                         &mine=true
                         &publishedAfter=2013-04-01T00%3A00%3A00Z
                         &publishedBefore=2013-05-01T00%3A00%3A00Z

Actividad de la página principal

Esta solicitud recupera el feed de actividad personalizado que se muestra en la página principal de YouTube del usuario autenticado. 

GET {base_URL}/activities?part=snippet,contentDetails
                         &home=true

Para recuperar las estadísticas de reproducción, las métricas de popularidad y la información demográfica de los videos y canales de YouTube, utiliza la YouTube Analytics API. La página Solicitudes de API de ejemplo muestra cómo recuperar informes comunes de YouTube Analytics.

El método search.list te permite buscar videos, canales o listas de reproducción de YouTube que coincidan con los criterios especificados. Puede buscar por propiedades de video, palabras clave o temas (o una combinación de ellos), y puede ordenar los resultados según factores como la fecha de creación, la cantidad de reproducciones o la calificación.

Al igual que otras solicitudes a la API de datos de YouTube, el método search.list muestra la representación JSON de un recurso de YouTube. Sin embargo, a diferencia de otros recursos de YouTube, un resultado de la búsqueda no es un objeto persistente con un ID único.

Muchas solicitudes buscan contenido disponible públicamente y, por lo tanto, no requieren autenticación. Entre los ejemplos que aparecen a continuación, solo el primero requiere autenticación, ya que solicita específicamente "mis" videos. Cuando envías una solicitud no autenticada, debes incluir el argumento key que especifica la clave de API única para tu aplicación.

Mis videos más vistos

Con esta solicitud se recuperan todos los videos del usuario autenticado y se enumeran en orden descendente según la cantidad de reproducciones.

GET {base_URL}/search?part=snippet
                     &forMine=true
                     &order=viewCount
                     &type=video

Videos incorporables de alta definición

Esta solicitud busca videos que tengan propiedades particulares, es decir, videos de alta definición que pueden insertarse en otros sitios. Enumera los resultados en orden descendente de calificación.

GET {base_URL}/search?part=snippet
                     &order=rating
                     &type=video
                     &videoDefinition=high
                     &videoEmbeddable=true
                     &key={YOUR_API_KEY}

Videos sobre un tema en particular

Esta solicitud realiza una búsqueda por palabra clave de videos sobre la API de datos de YouTube que incluyen subtítulos.

GET {base_URL}/search?part=snippet
                     &q=YouTube+Data+API
                     &type=video
                     &videoCaption=closedCaption
                     &key={YOUR_API_KEY}

Búsqueda basada en temas

Una forma más sofisticada de buscar videos sobre un tema específico es usar temas de Freebase en lugar de palabras clave. Todos los recursos de canales y videos de YouTube contienen un objeto topicDetails que contiene una lista de ID de temas de Freebase asociados con el recurso. Una búsqueda basada en temas es más inteligente que una búsqueda de palabras clave, ya que un tema de Freebase representa todos los aspectos de una idea o un concepto del mundo real.

Para realizar una búsqueda con un tema de Freebase, primero debes obtener el ID del tema con la API de Freebase. Esta solicitud muestra videos asociados con el tema de Freebase para Python, cuyo ID de tema es /m/05z1_.

GET {base_URL}/search?part=snippet
                     &topicId=/m/05z1_
                     &type=video
                     &key={YOUR_API_KEY}

Buscar listas de reproducción o canales

La búsqueda no se limita a los videos. También puedes buscar listas de reproducción o canales. Esta solicitud recupera listas de reproducción que coinciden con la palabra clave "fútbol".

GET {base_URL}/search?part=snippet
                     &q=soccer
                     &type=playlist
                     &key={YOUR_API_KEY}

Si prefieres buscar canales de fútbol, cambia el parámetro type.

GET {base_URL}/search?part=snippet
                     &q=soccer
                     &type=channel
                     &key={YOUR_API_KEY}

Si deseas todo el contenido relacionado con el fútbol (canales, listas de reproducción y videos), puedes realizar una búsqueda universal. Si omites el parámetro type, la solicitud recupera el contenido de todos los tipos.

GET {base_URL}/search?part=snippet
                     &q=soccer
                     &key={YOUR_API_KEY}

Crea y actualiza recursos

Todas las solicitudes que hemos analizado hasta ahora usan el método HTTP GET para recuperar datos de YouTube. La API de datos de YouTube también ofrece métodos que utilizan HTTP POST para crear o actualizar los recursos de YouTube, como videos, listas de reproducción o canales. Las siguientes solicitudes proporcionan ejemplos.

Los métodos POST incluyen un Request body, que es la representación JSON del recurso que se crea o actualiza. Puedes crear representaciones JSON en el Explorador de API de Google con una herramienta interactiva.

Cree una suscripción

Esta solicitud suscribe al usuario autenticado al canal de GoogleDevelopers. En otras palabras, crea un recurso de suscripción.

POST {base_URL}/subscriptions?part=snippet
Request body: {   'snippet': {     'resourceId': {       'kind': 'youtube#channel',       'channelId': 'UC_x5XG1OV2P6uZZ5FSM9Ttw'     }   } }

Cómo crear una lista de reproducción

Esta solicitud crea una nueva lista de reproducción pública.

POST {base_URL}/playlists?part=snippet
Request body: {   'snippet': {     'title': 'New playlist',     'description': 'Sample playlist for Data API',   } }

Agregar un video a una lista de reproducción

Ahora que creamos una lista de reproducción, vamos a agregarle un video. Esta solicitud agrega un video al comienzo de la lista de reproducción ('position': 0).

POST {base_URL}/playlistItems?part=snippet
  Request body:
  {
    'snippet': {
      'playlistId': '{PLAYLIST_ID}', 
      'resourceId': {
          'kind': 'youtube#video',
          'videoId': '{VIDEO_ID}'
        }
     'position': 0
      }
   }