Mis favoritos | Español | Acceder

Guía de referencia: Protocolo de API de datos

Contenido

Aspectos generales

Este documento está orientado a programadores que estén desarrollando aplicaciones cliente que interactúen con YouTube. En este documento se complementa la información incluida en el protocolo de la guía del desarrollador, así como en las guías específicas de cada lenguaje para los desarrolladores de Java y PHP.

En este documento se indican los distintos tipos de feeds que puedes recuperar con el API de datos de YouTube. También se incluyen diagramas en los que se explican cómo desplazarse entre los distintos feeds. Por ejemplo, los diagramas muestran que el feed de las listas de reproducción de un usuario contiene direcciones URL asociadas a datos y listas de reproducción individuales, como el perfil de un usuario. Los diagramas también indican cómo desplazarse de un feed a otro. Por último, en este documento se definen los parámetros utilizados en las solicitudes del API de datos de YouTube, así como las etiquetas XML devueltas en una respuesta del API. Para los desarrolladores de Java y PHP, las etiquetas XML se corresponden directamente con una propiedad de un objeto VideoEntry, ProfileEntry u otro tipo de objeto.

Valores de proyección

El API de datos de YouTube ofrece distintas vistas (o proyecciones) de los datos disponibles en el API. En la Guía del desarrollador y en los ejemplos de este documentos se utiliza la proyección api, que admite todas las etiquetas definidas en la sección de definiciones de elementos XML de este documento.

La mayoría de los desarrolladores que hagan uso de este documento utilizarán la proyección api. Sin embargo, si se van a desarrollar aplicaciones para móviles, se puede sustituir "api" por "mobile" en cualquiera de las solicitudes de ejemplo descritas en la documentación del API. De forma similar, si se prefiere utilizar la proyección base, más adecuada para los lectores de feeds, se puede sustituir "api" por "base" en cualquiera de las solicitudes de ejemplo descritas en la documentación del API.

En la tabla siguiente se describen los valores de las proyecciones disponibles:

Nombre de la proyección Descripción
api Esta proyección muestra feeds compatibles con todos los elementos XML definidos en este documento, incluidas todas las etiquetas relevantes en los esquemas de YouTube y Media RSS. Todas las propiedades contienen texto sin formato, no texto HTML.
base Esta proyección muestra feeds Atom básicos sin ningún elemento de extensión. Sus propiedades <atom:summary> y <atom:content> contienen código HTML codificado según la entidad.
mobile Esta proyección admite la mayoría de los elementos XML definidos en esta documentación y se debe utilizar cuando los desarrolladores deseen crear aplicaciones para móviles.

Tipos de feeds

Puedes recuperar los siguientes tipos de feeds del API de datos de YouTube:

Feeds de vídeos* – hay varios tipos de feeds de vídeos
Feed de listas de reproducción del usuario
Feed de suscripciones del usuario
Feed de comentarios sobre vídeos
Entrada de perfil de usuario
Feed de contactos del usuario

El API permite recuperar cualquiera de estos feeds sin necesidad de autenticación. Sin embargo, en algunos casos las solicitudes autenticadas permiten recuperar información adicional. Por ejemplo, si envías una solicitud autenticada para obtener la lista de los vídeos que ha subido un usuario, el feed contendrá tanto vídeos privados como vídeos rechazados o pendientes. Los vídeos privados, pendientes y rechazados no aparecerán en las respuestas a una solicitud de API sin autenticar ni a una solicitud de vídeos subidos por cualquier usuario que no sea el usuario autenticado actualmente.

Para añadir o actualizar vídeos, listas de reproducción, suscripciones, puntuaciones, comentarios o cualquier otra cosa, deberás autenticar todas las solicitudes, incluidas las solicitudes GET, con una clave de desarrollador mediante el método AuthSub o ClientLogin.

Feeds de vídeos

Los feeds de vídeos devuelven un grupo de entradas de vídeos. Cada entrada de vídeo contiene a su vez información sobre un vídeo específico del conjunto de resultados del feed de vídeos. El API de datos de YouTube permite recuperar los siguientes tipos de feeds de vídeos:

Feed de vídeos
Feed de vídeos relacionados
Feed de respuestas en vídeo
Feeds estándar
Feed de vídeos favoritos del usuario
Feed de lista de reproducción

Videos feed

El API devuelve un feed de vídeos en respuesta a una solicitud de búsqueda de vídeos. Un feed de vídeos puede contener un máximo de 999 entradas. Para recuperar los resultados de la búsqueda, envía una solicitud de API a la siguiente URL:

http://gdata.youtube.com/feeds/projection/videos

Los resultados de las búsquedas pueden utilizar cualquiera de los parámetros de consulta definidos en la sección de referencia de parámetros de consulta de este documento, a excepción del parámetro time. Por ejemplo, la siguiente URL solicitaría todos los vídeos relacionados con la consulta "skateboarding dog," empezando por el resultado de búsqueda 21º y devolviendo 10 resultados:

http://gdata.youtube.com/feeds/api/videos?
     vq=skateboarding+dog
     &start-index=21
     &max-results=10

Related videos feed

El feed de vídeos relacionados contiene una lista de vídeos relacionados con otro vídeo. YouTube selecciona de forma algorítmica el conjunto de vídeos relacionados.

Cada entrada de vídeo de una respuesta del API contiene una serie de etiquetas <link>. La etiqueta <link> que tiene http://gdata.youtube.com/schemas/2007/#video.related como valor del atributo rel identifica la URL que se utilizará para recuperar otros vídeos relacionados con esa entrada de vídeo. (El atributo href de la etiqueta <link> identifica la URL.)

<link rel="http://gdata.youtube.com/schemas/2007#video.related"
     type="application/atom+xml"
     href="http://gdata.youtube.com/feeds/api/videos/ZTUVgYoeN_b/related"/>

Un feed de vídeos relacionados puede contener un máximo de 100 vídeos.

Video responses feed

Un feed de respuestas en vídeo contiene vídeos creados explícitamente como respuestas a otros vídeos. Del mismo modo que se pueden crear vídeos como respuesta en vídeo a vídeos específicos, puede haber vídeos que no tengan ninguna respuesta en vídeo.

Cada entrada de vídeo de una respuesta del API contiene una serie de etiquetas <link>. La etiqueta <link> que tiene http://gdata.youtube.com/schemas/2007/#video.responses como valor del atributo rel identifica la URL que se utilizará para recuperar respuestas en vídeo correspondientes a esa entrada de vídeo. (El atributo href de la etiqueta <link> identifica la URL que se muestra en el siguiente ejemplo.)

<link rel="http://gdata.youtube.com/schemas/2007#video.responses"
     type="application/atom+xml"
     href="http://gdata.youtube.com/feeds/api/videos/ZTUVgYoeN_b/responses"/>

Standard feeds

Los feeds estándar contienen listas de vídeos que reflejan el comportamiento del usuario de YouTube, como feeds de los vídeos más vistos o más valorados, o que han sido seleccionados por el personal de YouTube, como feeds de vídeos móviles y últimos vídeos destacados. Muchos de estos feeds aparecen en la ficha Vídeos del sitio web de YouTube.

Para recuperar un feed estándar, envía una solicitud GET HTTP a la URL asociada a ese feed. En la tabla siguiente se identifica la URL asociada a cada feed estándar:

Nombre ID del feed Ejemplo
Más valorados top_rated http://gdata.youtube.com/feeds/api/standardfeeds/top_rated
Superfavoritos top_favorites http://gdata.youtube.com/feeds/api/standardfeeds/top_favorites
Más vistos most_viewed http://gdata.youtube.com/feeds/api/standardfeeds/most_viewed
Más recientes most_recent http://gdata.youtube.com/feeds/api/standardfeeds/most_recent
Más comentados most_discussed http://gdata.youtube.com/feeds/api/standardfeeds/most_discussed
Más enlazados most_linked http://gdata.youtube.com/feeds/api/standardfeeds/most_linked
Con más respuestas most_responded http://gdata.youtube.com/feeds/api/standardfeeds/most_responded
Últimos destacados recently_featured http://gdata.youtube.com/feeds/api/standardfeeds/recently_featured
Vídeos para teléfonos móviles watch_on_mobile http://gdata.youtube.com/feeds/api/standardfeeds/watch_on_mobile

Recuperación de feeds estándar específicos de una región

El API permite recuperar feeds estándar específicos de una región mediante la inserción de una ID de región en la URL del feed estándar. La siguiente URL muestra el formato de las direcciones URL que se deben utilizar para recuperar feeds estándar específicos de una región:

http://gdata.youtube.com/feeds/api/standardfeeds/regionID/feedID

Por ejemplo, para recuperar una lista de los vídeos más valorados en Japón, se debería enviar una solicitud GET HTTP a la siguiente URL:

http://gdata.youtube.com/feeds/api/standardfeeds/JP/top_rated

Nota: no se encuentran disponibles versiones del feed estándar watch_on_mobile específicas de una región.

En la siguiente tabla se identifican los países para los que el API de datos de YouTube admite feeds localizados y la ID de región (regionID) asociada a cada país:

País ID de región
Australia AU
Brasil BR
Canadá CA
Francia FR
Alemania DE
Gran Bretaña GB
Holanda NL
Hong Kong HK
Irlanda IE
Italia IT
Japón JP
México MX
Nueva Zelanda NZ
Polonia PL
Rusia RU
Corea del Sur KR
España ES
Taiwán TW
Estados Unidos US

Uso del parámetro de tiempo con feeds estándar

Todos los feeds estándar admiten el parámetro de consulta time, que permite restringir el contenido del feed a los resultados relevantes del día, la semana o el mes anterior. Por ejemplo, para recuperar los vídeos más valorados del día anterior, debes enviar una solicitud GET HTTP a la siguiente URL:

http://gdata.youtube.com/feeds/api/standardfeeds/top_rated?time=today

User's favorites feed

El feed de vídeos favoritos recupera una lista de los vídeos que un determinado usuario ha marcado explícitamente como favoritos. En el sitio web de YouTube, un usuario puede ver y editar su lista de vídeos favoritos en la página de su cuenta y los vídeos favoritos de un usuario pueden verlos también otros usuarios de YouTube.

  • Para solicitar un feed de los vídeos favoritos del usuario conectado actualmente, envía una solicitud GET HTTP a la URL que aparece a continuación. Nota: Para realizar esta solicitud, deberás incluir un token de autenticación en el encabezado de la solicitud HTTP Authorization. El token de autenticación permite que YouTube identifique al usuario.

    http://gdata.youtube.com/feeds/api/users/default/favorites
  • Para solicitar un feed de los vídeos favoritos de otro usuario, envía una solicitud GET HTTP a la URL que aparece a continuación. Ten en cuenta que esta solicitud no requiere autenticación.

    http://gdata.youtube.com/feeds/api/users/username/favorites

    Debes sustituir el texto username de la URL anterior por el nombre de usuario de YouTube del usuario en cuestión.

El feed de vídeos favoritos devuelve un máximo de 50 entradas. Te recomendamos que apliques una paginación al feed mediante los parámetros de consulta start-index y max-results para optimizar la latencia y el tamaño de la respuesta. El valor recomendado para max-results es 10, valor que genera una respuesta con unos 60 KB de datos.

Playlist feed

Un feed de lista de reproducción contiene información sobre un máximo de 200 vídeos que se pueden ver uno tras otro. Un usuario puede ver y editar su lista de listas de reproducción en la página de su cuenta. Las listas de reproducción de un usuario pueden verlas también otros usuarios de YouTube. Además, los usuarios pueden modificar listas de reproducción específicas añadiendo vídeos a esas listas de reproducción o eliminando vídeos de ellas.

Una lista de reproducción puede ser pública o privada. El API permite recuperar listas de reproducción públicas con o sin autenticación. Sin embargo, sólo podrás recuperar una lista de reproducción privada de un usuario que esté debidamente autenticado y autorizado para ver esa lista de reproducción.

Antes de recuperar un feed de lista de reproducción, es probable que recuperes primero un feed de las listas de reproducción de un usuario, que contendrá una lista de las listas de reproducción creadas por ese usuario. Cada una de las entradas del feed de listas de reproducción del usuario definirá una sola lista de reproducción. (Por otra parte, un feed de lista de reproducción describe los vídeos incluidos en una sola lista de reproducción.) Cada una de las entradas del feed de listas de reproducción del usuario contendrá una etiqueta <gd:feedLink> que identificará la URL que permite recuperar el feed de esa lista de reproducción.

<gd:feedLink rel='http://gdata.youtube.com/schemas/2007#playlist'
    href='http://gdata.youtube.com/feeds/api/playlists/PLAYLIST_ID'/>

Nota: en lugar del término PLAYLIST_ID, la URL real contendrá una ID que representará la identificación exclusiva de la lista de reproducción.

Feed de listas de reproducción del usuario

El feed de listas de reproducción de un usuario contiene una lista de las listas de reproducción creadas por ese usuario. Si solicitas el feed de listas de reproducción del usuario autenticado actualmente, ese feed contendrá listas de reproducción tanto públicas como privadas. Sin embargo, si envías una solicitud sin autenticar o solicitas listas de reproducción creadas por un usuario que no sea el usuario actualmente autenticado, el feed sólo contendrá listas de reproducción públicas.

En un feed de listas de reproducción, cada entrada (entry) contiene información sobre una lista de reproducción, entre la que se incluye el título, la descripción y el autor de la lista de reproducción. La etiqueta <gd:feedLink> de la entrada identifica la URL que permite recuperar el feed de lista de reproducción, que incluye información sobre los vídeos de esa lista de reproducción.

  • Para solicitar un feed de las listas de reproducción del usuario conectado actualmente, envía una solicitud GET HTTP a la URL que aparece a continuación. Nota: Para realizar esta solicitud, deberás incluir un token de autenticación en el encabezado de la solicitud HTTP Authorization. El token de autenticación permite que YouTube identifique al usuario.

    http://gdata.youtube.com/feeds/api/users/default/playlists
  • Para solicitar un feed de las listas de reproducción de otro usuario, envía una solicitud GET HTTP a la URL que aparece a continuación. Ten en cuenta que esta solicitud no requiere autenticación.

    http://gdata.youtube.com/feeds/api/users/username/playlists

    Debes sustituir el texto username de la URL anterior por el nombre de usuario de YouTube del usuario en cuestión.

Feed de suscripciones del usuario

El feed de suscripciones de un usuario contiene una lista de los canales, los vídeos favoritos y las consultas a las que está suscrito ese usuario.

  • Para solicitar un feed de las suscripciones del usuario conectado actualmente, envía una solicitud GET HTTP a la URL que aparece a continuación. Nota: Para realizar esta solicitud, deberás incluir un token de autenticación en el encabezado de la solicitud HTTP Authorization. El token de autenticación permite que YouTube identifique al usuario.

    http://gdata.youtube.com/feeds/api/users/default/subscriptions
  • Para solicitar un feed de las suscripciones de otro usuario, envía una solicitud GET HTTP a la URL que aparece a continuación. Ten en cuenta que esta solicitud no requiere autenticación.

    http://gdata.youtube.com/feeds/api/users/username/subscriptions

    Debes sustituir el texto username de la URL anterior por el nombre de usuario de YouTube del usuario en cuestión.

En un feed de suscripciones, cada entrada (entry) contiene información sobre una suscripción. Cada entrada contiene las siguientes etiquetas de clave:

  • La etiqueta <gd:feedLink> de la entrada identifica la URL que permite recuperar los vídeos de la suscripción.

  • El valor del atributo scheme de una de las etiquetas <category> de la entrada será http://gdata.youtube.com/schemas/2007/subscriptiontypes.cat. El atributo term de esa etiqueta indica si la entrada describe una suscripción a un canal (term="channel"), a la lista de vídeos favoritos de otro usuario (term="favorites") o a los vídeos que coincidan con determinadas palabras clave (term="query").

  • Si se trata de una suscripción al canal o a la lista de vídeos favoritos de otro usuario, la etiqueta <yt:username> identificará al usuario al que pertenezca el canal o la lista de vídeos favoritos.

    Si se trata de una suscripción a consultas por palabra clave, el elemento <yt:queryString> contendrá el término de consulta objeto de la suscripción.

Feed de comentarios sobre vídeos

Cada entrada de vídeo contiene una etiqueta <gd:comments>, que incluye la URL a la que se enviarán las solicitudes del API que se deberán recuperar o añadir a la lista de comentarios del vídeo. El ejemplo de XML que aparece a continuación permite comprobar cómo aparecerá esta URL en un feed de vídeos:

<feed>
  <entry>
    ...
    <media:group>
      ...
    </media:group>
    <gd:comments>
      <gd:feedLink href='http://gdata.youtube.com/feeds/api/videos/VIDEO_ID/comments'/>
    </gd:comments>
  </entry>
</feed>

Cada entrada del feed de comentarios contiene información sobre un comentario. Cada comentario tiene un autor, un título y un contenido.

Entrada de perfil de usuario

Un perfil de usuario contiene la información que ese usuario ha incluido en su página de perfil de YouTube.

  • Para solicitar el perfil del usuario conectado actualmente, envía una solicitud GET HTTP a la URL que aparece a continuación. Nota: Para realizar esta solicitud, deberás incluir un token de autenticación en el encabezado de la solicitud HTTP Authorization. El token de autenticación permite que YouTube identifique al usuario.

    http://gdata.youtube.com/feeds/api/users/default
  • Para solicitar el perfil de otro usuario, envía una solicitud GET HTTP a la URL que aparece a continuación. Ten en cuenta que esta solicitud no requiere autenticación.

    http://gdata.youtube.com/feeds/api/users/username

    Debes sustituir el texto username de la URL anterior por el nombre de usuario de YouTube del usuario en cuestión. Según el tipo de respuesta del API de YouTube que utilices, los nombres de usuario aparecerán en la etiqueta <name> o en la etiqueta <yt:username>.

Nota: Aunque muchas respuestas del API contienen información sobre el feed de respuestas y una lista de entradas, la solicitud de recuperación de un perfil sólo contiene una entrada. De ahí que la etiqueta raíz de la respuesta del API correspondiente a esta solicitud sea <entry>.

Feed de contactos del usuario

El feed de contactos de un usuario incluye todos los contactos del usuario especificado.

  • Para solicitar la lista de contactos del usuario conectado actualmente, envía una solicitud GET HTTP a la URL que aparece a continuación. Nota: Para realizar esta solicitud, deberás incluir un token de autenticación en el encabezado de la solicitud HTTP Authorization. El token de autenticación permite que YouTube identifique al usuario.

    http://gdata.youtube.com/feeds/api/users/default/contacts
  • Para solicitar la lista de contactos de otro usuario, envía una solicitud GET HTTP a la URL que aparece a continuación. Ten en cuenta que esta solicitud no requiere autenticación.

    http://gdata.youtube.com/feeds/api/users/username/contacts

    Debes sustituir el texto username de la URL anterior por el nombre de usuario de YouTube del usuario en cuestión.

Los contactos se pueden clasificar como amigos (Friends) o familiares (Family).

Desplazamiento por los feeds

Cada entrada y feed utiliza etiquetas <link rel="relationshipID"> y elementos <gd:feedLink rel="relationshipID"> que contienen enlaces a entradas o feeds relacionados. Por lo general, una etiqueta <link> identifica una relación entre feeds relacionados, pero no anidados. Por otra parte, una etiqueta <gd:feedLink> identifica a un feed que podría estar anidado con la respuesta original de no ser porque ese anidamiento provocaría un aumento excesivo del tamaño del feed.

Estas etiquetas identifican URL que te permitirán implementar funciones de API sin codificar URL en tu aplicación. Por ejemplo, el siguiente elemento <link>, que podría aparecer en una entrada de vídeo, proporciona un enlace a un feed que contiene respuestas en vídeo para esa entrada.

<link rel="http://gdata.youtube.com/schemas/2007#video.responses" 
    type="application/atom+xml" 
    href="http://gdata.youtube.com/feeds/api/videos/UwOA8H5Vaak/responses"/>

Del mismo modo, el siguiente elemento <gd:feedLink> podría aparecer en una entrada de perfil de usuario. Esta etiqueta identifica la URL que permitiría recuperar un feed de los contactos de ese usuario.

<gd:feedLink 
    rel="http://gdata.youtube.com/schemas/2007#user.contacts" 
    href="http://gdata.youtube.com/feeds/api/users/liz/contacts"/>

En los casos de uso incluidos en la Guía del desarrollador se explica la forma de desplazarse entre los distintos feeds. Además, el siguiente diagrama muestra las interconexiones existentes entre los feeds del API de datos de YouTube. Las flechas continuas designan elementos <link> y las flechas discontinuas designan elementos <gd:feedLink>. Las flechas azules designan enlaces <link rel="related">. Una entrada de suscripción puede contener una etiqueta <gd:feedLink> que apunte a un determinado tipo de feed según el tipo de suscripción que describa esa entrada.

El último término de cada círculo representa el tipo de entradas de Google Data de un feed determinado. Por ejemplo, un feed de suscripciones contendrá entradas del tipo "suscription" y un feed de vídeos contendrá entradas del tipo "video".

Diagrama de interconexión de feeds

Códigos de respuesta HTTP para solicitudes del API de datos de YouTube

En esta sección se explican los códigos de respuesta HTTP que devuelve YouTube para distintos tipos de solicitudes del API.

Recuperación de feeds

  • Un código de respuesta 200 indica que YouTube ha procesado correctamente una solicitud GET HTTP de recuperación de un feed.

  • Un código de respuesta 400 identifica una solicitud errónea. Por ejemplo, recibirás un código de respuesta 400 si envías una solicitud a una URL incorrecta o incluyes en la solicitud un parámetro no admitido o inexistente. En el contenido de la respuesta del API se explicará el motivo por el que el API ha devuelto un código de respuesta 400.

Subida de un vídeo

  • Subida basada en navegador

    • 200: El API devuelve un código de respuesta 200 si subes correctamente los metadatos de un vídeo. En la sección Subida de metadatos de vídeos de la guía del desarrollador se explica este proceso de forma más detallada.

    • 301: Si el usuario sube un archivo de vídeo directamente a YouTube a través del formulario de tu sitio, YouTube enviará un mensaje de redirección 301 al navegador del usuario, que hará que el navegador solicite y cargue la URL que hayas especificado mediante el parámetro nexturl en el formulario de subida. (Consigue más información sobre el formulario de subida.) YouTube añadirá a esa URL las variables indicadas a continuación, que tendrás que extraer para ofrecer un servicio adecuado al usuario.

      • id: Este parámetro de solicitud identifica la ID de vídeo de un vídeo que se acaba de crear.
      • status: Este parámetro de solicitud indica si el usuario ha subido correctamente el vídeo. El valor será 200 si el vídeo se ha subido correctamente, y 4xx o 5xx (por ej., 400, 403, 503, etc.) en caso contrario.
      • code: Este parámetro de solicitud ofrece información adicional referente a los motivos por los que no se ha subido un vídeo correctamente. Entre los posibles valores de este parámetro se encuentran "INVALID_TOKEN", "MISSING_TOKEN", "DUPLICATE", "TOKEN_EXPIRED" y "FILE_MISSING".

  • Subida directa

    • 201: El API devuelve un código de respuesta 201 si el vídeo se sube correctamente.

    • 400 (Solicitud errónea): Un código de respuesta 400 indica que la solicitud no tenía un formato correcto o contenía datos no válidos. Por ejemplo, el API devolverá un código de respuesta 400 si tu solicitud contiene XML de formato incorrecto o si intentas enviar palabras clave que incluyan caracteres no válidos.

Adición de información con POST HTTP

El API devuelve los códigos de respuesta indicados a continuación para las solicitudes de adición de recursos, tales como puntuaciones, comentarios, respuestas en vídeo, reclamaciones, vídeos favoritos, listas de reproducción, entradas de listas de reproducción, suscripciones y contactos.

  • 201 (Creado): Un código de respuesta 201 indica que se ha procesado correctamente una solicitud POST HTTP de adición de una puntuación, un comentario, una reclamación, una respuesta en vídeo, una suscripción, una lista de reproducción o un contacto.

  • 400 (Solicitud errónea): Un código de respuesta 400 indica que la solicitud no tenía un formato correcto o contenía datos no válidos. Por ejemplo, el API devolverá un código de respuesta 400 si tu solicitud contiene XML de formato incorrecto o si intentas enviar una puntuación de "16" para un vídeo, cuando la puntuación debe estar comprendida entre 1 y 5. En el contenido de la respuesta del API se explicará el motivo por el que el API ha devuelto un código de respuesta 400.

Actualización de información con PUT HTTP

El API devuelve los códigos de respuesta indicados a continuación para las solicitudes de actualización de recursos, tales como vídeos, listas de reproducción, entradas de listas de reproducción y contactos.

  • 200 (Correcto): Un código de respuesta 200 indica que YouTube ha procesado correctamente una solicitud PUT HTTP de actualización de un recurso.

  • 400 (Solicitud errónea): Un código de respuesta 400 indica que la solicitud no tenía un formato correcto o contenía datos no válidos. En el contenido de la respuesta del API se explicará el motivo por el que el API ha devuelto un código de respuesta 400.

Eliminación de recursos con DELETE HTTP

El API devuelve los códigos de respuesta indicados a continuación para las solicitudes de eliminación de recursos, tales como vídeos, respuestas en vídeo, vídeos favoritos, listas de reproducción, entradas de listas de reproducción, suscripciones y contactos.

  • 200 (Correcto): Un código de respuesta 200 indica que YouTube ha procesado correctamente una solicitud DELETE HTTP de eliminación de un recurso.

  • 401 (Sin autorización): Un código de respuesta 401 indica que una solicitud no contenía un encabezado Authorization, que el formato del encabezado Authorization no era válido o que el token de autenticación proporcionado en el encabezado no era válido.

  • 403 (Prohibido): Un código de respuesta 403 indica que se ha enviado una solicitud que no estaba correctamente autenticada para la operación solicitada.

  • 404 (No encontrado): Un código de respuesta 404 indica que se ha intentado modificar un recurso inexistente. Por ejemplo, recibirás un código de respuesta 404 si intentas eliminar una suscripción, pero has especificado una URL incorrecta para esa suscripción.

Códigos de respuesta adicionales para solicitudes incorrectas

El API puede devolver también los siguientes códigos de respuesta:

  • 401 (Sin autorización): Un código de respuesta 401 indica que una solicitud no contenía un encabezado Authorization, que el formato del encabezado Authorization no era válido o que el token de autenticación proporcionado en el encabezado no era válido.

  • 403 (Prohibido): Un código de respuesta 403 indica que se ha enviado una solicitud que no estaba correctamente autenticada para la operación solicitada.

  • 500 (Error interno): Un código de respuesta 500 indica que YouTube ha experimentado un error al procesar una solicitud. Puedes probar a enviar de nuevo la solicitud más adelante.

  • 501 (Sin implementar): Un código de respuesta 501 indica que se ha intentado ejecutar una operación no admitida como, por ejemplo, recuperar una lista de puntuaciones o actualizar una reclamación.

  • 503 (Servicio no disponible): Un código de respuesta 503 indica que no se ha podido acceder al API de datos de YouTube. Puedes probar a enviar de nuevo la solicitud más adelante.

Búsqueda de vídeos

Para buscar vídeos, envía una solicitud GET HTTP a la siguiente URL, añadiendo los parámetros de consulta apropiados a tu solicitud:

http://gdata.youtube.com/feeds/api/videos

Por ejemplo, una solicitud enviada a la siguiente URL buscará el segundo conjunto de los 10 vídeos subidos recientemente que coincidan con el término de consulta "football", pero no con "soccer":

http://gdata.youtube.com/feeds/api/videos?
    vq=football+-soccer
    &orderby=published
    &start-index=11
    &max-results=10

Definiciones de parámetros de consulta

Standard Google Data API parameters

El API de datos de YouTube admite los siguientes parámetros de consulta de Google Data estándar.

Nombre Definición
alt El parámetro alt especifica el formato del feed que se va a devolver. Los valores válidos de este parámetro son atom, rss y json. El valor predeterminado es atom (en este documento sólo se explica el formato de las respuestas Atom).
author El parámetro author restringe la búsqueda a los vídeos subidos por un determinado usuario de YouTube. En la sección sobre vídeos subidos por un usuario específico se explica este parámetro de forma más detallada.
max-results El parámetro max-results especifica el número máximo de resultados que se deben incluir en el conjunto de resultados. Este parámetro funciona junto con el parámetro start-index para determinar los resultados que se deben devolver. Por ejemplo, para solicitar el segundo conjunto de 10 resultados (es decir, los resultados 11 a 20), deberás establecer el parámetro max-results en 10 y el parámetro start-index en 11. El valor predeterminado de este parámetro para todas las API de datos de Google es 25 y el valor máximo es 50. Sin embargo, para mostrar listas de vídeos, te recomendamos que establezcas el parámetro max-results en 10.
start-index El parámetro start-index permite especificar el índice del primer resultado coincidente que se deberá incluir en el conjunto de resultados. Este parámetro utiliza un índice de base 1, lo que significa que el primer resultado es 1, el segundo es 2 y así sucesivamente. Este parámetro trabaja en combinación con el parámetro max-results para determinar qué resultados se devolverán. Por ejemplo, para solicitar el segundo conjunto de 10 resultados (es decir, los resultados 11 a 20), deberás establecer el parámetro start-index en 11 y el parámetro max-results en 10.

Consulta la referencia del protocolo de las API de datos de Google para obtener más información sobre funciones estándar del API de datos de Google o sobre estos parámetros específicos.

Custom parameters for the YouTube Data API

Además de los parámetros de consulta de Google Data, el API de datos de YouTube define los siguientes parámetros de consulta específicos del API. Estos parámetros sólo están disponibles en feeds de listas de reproducción y vídeos.

Nombre Definición
vq El parámetro vq especifica un término de consulta para una búsqueda. YouTube buscará todos los metadatos de los vídeos que coincidan con el término. Los metadatos de los vídeos incluyen títulos, palabras clave, descripciones, nombres de usuario de los autores y categorías.

Ten en cuenta que a todos los espacios, las comillas y otros signos de puntuación del valor del parámetro se les debe aplicar un formato de escape URL.

Para buscar una frase exacta, escriba la frase entre comillas dobles. Por ejemplo, para buscar vídeos que coincidan con la frase "spy plane", establece el parámetro vq en %22spy+plane%22.

Tu solicitud puede utilizar los operadores booleanos NOT (-) y OR (|) para excluir vídeos o buscar vídeos asociados a uno de los distintos términos de búsqueda. Por ejemplo, para buscar vídeos que coincidan con "boating" o "sailing", establece el parámetro vq en boating%7Csailing. (Ten en cuenta que se debe aplicar un formato de escape URL al carácter de barra vertical.) De forma similar, para buscar vídeos que coincidan con "boating" o "sailing" pero no con "fishing", establece el parámetro vq en "boating&7Csailing+-fishing".
orderby El parámetro orderby permite especificar el valor que se utilizará para ordenar vídeos en el conjunto de resultados de la búsqueda. Los valores válidos de este parámetro son relevance, published, viewCount y rating. Además, puedes solicitar los resultados más relevantes para un idioma en particular estableciendo el valor de parámetro en relevance_lang_languageCode, donde languageCode es un código de idioma de dos letras ISO 639-1. (Utiliza los valores zh-Hans para chino simplificado y zh-Hant para chino tradicional.) Además, ten en cuenta que los resultados en otros idiomas se obtendrán si presentan un alto nivel de relevancia con el término de consulta de la búsqueda.

El valor predeterminado de este parámetro es relevance para un feed de resultados de búsqueda. Para un feed de lista de reproducción, el orden predeterminado se basa en la posición de cada vídeo en la lista de reproducción. En el caso de un feed de listas de reproducción o suscripciones de un usuario, el orden predeterminado es arbitrario.
format El parámetro format permite especificar en qué formato deben estar disponibles los vídeos. Tu solicitud podrá especificar cualquiera de los formatos siguientes:

Valor Formato de vídeo
1 URL de transmisión RTSP para la reproducción de vídeos de dispositivos móviles. Vídeo H.263 (hasta 176x144) y audio AMR.
5 URL HTTP en el reproductor Flash (SWF) insertable de este vídeo. Este formato no está disponible para los vídeos que no se pueden insertar. Los desarrolladores añaden con frecuencia &format=5 a sus consultas para restringir los resultados a los vídeos que se pueden insertar en sus sitios.
6 URL de transmisión RTSP para la reproducción de vídeos de dispositivos móviles. Vídeo MPEG-4 SP (hasta 176x144) y audio AAC.
lr El parámetro lr permite restringir la búsqueda de vídeos que tengan el título, la descripción o las palabras clave en un idioma específico. Los valores válidos del parámetro lr son códigos de idioma de dos letras ISO 639-1. También puedes utilizar los valores zh-Hans para chino simplificado y zh-Hant para chino tradicional. Este parámetro también se puede utilizar para solicitar cualquier feed de vídeos que no sea un feed estándar.
racy El parámetro racy permite incluir contenido restringido y contenido estándar en el conjunto de resultados de una búsqueda. Los valores válidos de este parámetro son include y exclude. De forma predeterminada, se excluye el contenido restringido. Las entradas de feeds de los vídeos que incluyen contenido restringido presentan un elemento <yt:racy> adicional.
restriction El parámetro restriction identifica la dirección IP que se debe utilizar para filtrar vídeos que sólo se pueden reproducir en países específicos. De forma predeterminada, el API excluye los vídeos que no se pueden reproducir en el país desde el que se envían las solicitudes del API. Esta restricción se basa en la dirección IP de la aplicación del cliente.

Para solicitar vídeos reproducibles desde un equipo específico, incluye el parámetro "restriction" en tu solicitud y establece como valor del parámetro la dirección IP del equipo en el que se reproducirán los vídeos, por ejemplo restriction=255.255.255.255.

Para solicitar vídeos reproducibles desde un país específico, incluye el parámetro "restriction" en tu solicitud y establece como valor del parámetro el código de país de dos letras ISO 3166 del país en el que se reproducirán los vídeos, por ejemplo restriction=DE.
time El parámetro time, que sólo está disponible para los feeds estándar top_rated, top_favorites, most_viewed, most_discussed, most_linked y most_responded, restringe la búsqueda para vídeos subidos dentro del período de tiempo especificado. Los valores válidos de este parámetro son today (1 día), this_week (7 días), this_month (1 mes) y all_time. El valor predeterminado de este parámetro es all_time.

Búsquedas por categoría en feeds de vídeos

Los vídeos de YouTube se pueden clasificar de dos formas:

  • Cada vídeo se puede asociar a una categoría de YouTube predefinida como, por ejemplo, Comedia, Música, Noticias o Deportes. La categoría de un vídeo se identifica a través de la etiqueta <media:category> y la etiqueta <category>, para las que el valor del atributo scheme es http://gdata.youtube.com/schemas/2007/categories.cat.

  • Cada vídeo se puede asociar a un número arbitrario de palabras clave, que también se conocen como etiquetas. Las etiquetas de un vídeo se identifican con la etiqueta <media:keywords> en las solicitudes y respuestas del API. Las etiquetas de palabras clave también se identifican a través de las etiquetas <category>, para las que el valor del atributo scheme es http://gdata.youtube.com/schemas/2007/keywords.cat.

  • Cada vídeo también se puede asociar a un número arbitrario de etiquetas de desarrollador. Puedes utilizar etiquetas de desarrollador para buscar vídeos. No obstante, las etiquetas de desarrollador no aparecen en el sitio web de YouTube y no deben aparecer en tu aplicación. Las etiquetas de desarrollador de un vídeo se definen en las etiquetas <media:category> y <category>, para las que el valor del atributo scheme es http://gdata.youtube.com/schemas/2007/developertags.cat.

    Consulta la guía del desarrollador para obtener más información sobre la asignación de etiquetas de desarrollador.

Utiliza la siguiente URL para recuperar vídeos de una categoría específica o etiquetados con una etiqueta de desarrollador o palabra clave específica:

http://gdata.youtube.com/feeds/api/videos/-/category_or_tag

El guión (-) de la URL es una notación del API de datos de Google estándar que indica que el resto de la URL se compone de una serie de una o varias etiquetas. Las siguientes directrices proporcionan más detalles sobre la solicitud de vídeos asociados a etiquetas o categorías específicas:

  • Si en tu solicitud se especifica una categoría y una o varias palabras clave o no se especifica una categoría pero sí varias palabras clave, separa el nombre de cada categoría y cada palabra clave con una barra inclinada. Por ejemplo, la siguiente URL permite solicitar vídeos relacionados con las palabras clave "bass" y "fishing":

    http://gdata.youtube.com/feeds/api/videos/-/bass/fishing
  • Tu solicitud puede utilizar los operadores booleanos NOT (-) y OR (|) para excluir vídeos o buscar vídeos asociados a una de las distintas categorías o palabras clave. Por ejemplo, si quieres ver vídeos relacionados con "bass" y "music", el método más eficaz puede ser buscar vídeos asociados a la palabra clave "bass", pero no asociados a las palabras clave "fish" o "fishing", como se muestra en el ejemplo siguiente. (Buscar vídeos asociados a la categoría "Music" y la palabra clave "bass" (bajo) puede excluir vídeos instructivos sobre cómo tocar el bajo.)

    http://gdata.youtube.com/feeds/api/videos/-/bass/-fish/-fishing

    En el ejemplo siguiente se muestra cómo buscar vídeos de béisbol pertenecientes a la categoría "Sports" o "Howto". Los nombres de las categorías estás separados por el valor "%7C", que representa un carácter de barra vertical de codificación URL (|) que especifica que el vídeo debe estar asociado a una de las dos categorías:

    http://gdata.youtube.com/feeds/api/videos/-/Sports%7CHowto/baseball
  • Escribe los nombres de las categorías en mayúsculas y los de las palabras clave en minúsculas. Por ejemplo, la siguiente consulta identifica vídeos asociados a la palabra clave "comedy" que no pertenecen a la categoría "Comedy":

    http://gdata.youtube.com/feeds/api/videos/-/comedy/-Comedy
  • Si quieres realizar búsquedas de categorías o palabras clave automáticamente en función de la información de una respuesta del API, especifica el esquema como parte del nombre de categoría para diferenciar claramente las categorías de YouTube a partir de las etiquetas de palabras clave o las etiquetas del desarrollador. En las siguientes URL se indica cómo especificar el esquema en el nombre de la categoría:

    http://gdata.youtube.com/feeds/api/videos/-/%7Bhttp%3A%2F%2Fgdata.youtube.com%2Fschemas%2F2007%2Fcategories.cat%7DNews
    http://gdata.youtube.com/feeds/api/videos/-/%7Bhttp%3A%2F%2Fgdata.youtube.com%2Fschemas%2F2007%2Fkeywords.cat%7Ddog
    http://gdata.youtube.com/feeds/api/videos/-/%7Bhttp%3A%2F%2Fgdata.youtube.com%2Fschemas%2F2007%2Fdevelopertags.cat%7Dexample.com
    
  • Especifica el esquema, tal como se explica en el elemento anterior, si quieres solicitar vídeos asociados a una etiqueta de desarrollador en particular.

Definiciones de elementos XML

El API de datos de YouTube utiliza etiquetas de diversos esquemas XML. En la siguiente tabla aparecen los distintos esquemas que el API utiliza, el prefijo de espacio de nombre asociado a cada esquema y la URL de espacio de nombre de cada esquema.

Esquema Prefijo de espacio de nombre URL de esquema
Formato de sindicación Atom [Ninguno] - es el espacio de nombre predeterminado http://www.w3.org/2005/Atom
Esquema de OpenSearch openSearch http://a9.com/-/spec/opensearchrss/1.0/
Media RSS media http://search.yahoo.com/mrss/
Esquema XML de YouTube yt http://gdata.youtube.com/schemas/2007
Esquema de datos de Google gd http://schemas.google.com/g/2005
GeoRSS georss http://www.georss.org/georss
Lenguaje de marcado geográfico gml http://www.opengis.net/gml
Atom Publishing Protocol app http://www.w3.org/2007/app

En las tablas que aparecen a continuación se definen las etiquetas XML de cada uno de estos esquemas que aparecen en las solicitudes y respuestas del API. Cada tabla contiene la definición de una única etiqueta, y las etiquetas aparecen en orden alfabético según el esquema.

Junto a algunas etiquetas secundarias de las definiciones que se muestran a continuación pueden aparecer determinados símbolos. Estos símbolos y sus significados son los siguientes:

? = etiqueta secundaria opcional
* = cero o más instancias de la etiqueta secundaria
+ = una o varias instancias de la etiqueta secundaria

Referencia de elementos de Atom
 
Referencia de elementos de OpenSearch
 
Referencia de elementos de YouTube
 
Referencia de elementos de Media RSS
 
Referencia de elementos de Google Data
 
Referencia de elementos de GeoRSS
 
Referencia de elementos de GML
 
Referencia de elementos de Atom Publishing Protocol
 
Referencia de elementos de respuesta del API de subidas basadas en navegador
 
Referencia de elementos de respuesta a errores
 

Referencia de elementos de Atom

author

La etiqueta <author> contiene información sobre el usuario de YouTube a quien pertenece una parte de contenido de vídeo, una suscripción, una lista de vídeos favoritos, un contacto u otra entidad.

Ejemplo

<author>

Secundaria de

feed, entry

Secundarias

name, uri

category

La etiqueta <category> especifica la categoría a la que pertenece la entrada.

  • Cuando la etiqueta <category> aparece como una subetiqueta de <feed> o <entry>, la etiqueta puede identificar el tipo de elemento descrito en cada entrada de feed. El valor del atributo scheme es http://schemas.google.com/g/2005#kind y el valor del atributo term indica si las entradas de feeds describen vídeos, enlaces de listas de reproducción, suscripciones, contactos u otro tipo de entidad.

  • Cuando la etiqueta <category> aparece como una subetiqueta de <entry> y la entrada describe un vídeo, la etiqueta también puede especificar una palabra clave concreta o una categoría asociada a dicho vídeo. En este caso, el atributo scheme indica si el valor de atributo term hace referencia a una palabra clave o a una categoría.



La etiqueta <category> es obligatoria en las solicitudes para añadir una suscripción o para añadir o actualizar un contacto:

  • En una solicitud de adición de una suscripción, la etiqueta <category> indica si el usuario se va a suscribir a un canal, a la lista de favoritos de otro usuario o a una etiqueta de palabra clave:

    • Si el usuario se va a suscribir a un canal, el valor del atributo term de la etiqueta <category> debe ser channel.

    • Si el usuario se va a suscribir a la lista de favoritos de otro usuario, el valor del atributo term de la etiqueta <category> debe ser favorites.

    • Si el usuario se va a suscribir a una etiqueta de palabra clave, el valor del atributo term de la etiqueta <category> debe ser query.

  • En una solicitud de adición o actualización de un contacto, la etiqueta indica si el contacto es un amigo o un familiar.

    • Si el contacto es un familiar, el valor del atributo term de la etiqueta <category> debe ser Family.

    • Si el contacto es un amigo, el valor del atributo term de la etiqueta <category> debe ser Friends.

Atributos

NombreFormatoDescripción
scheme Complejo El atributo scheme especifica un identificador uniforme de recursos (URI) que identifica el esquema de categorización asociado a la etiqueta.

  • En una solicitud de adición de una suscripción, el valor del atributo scheme debe ser http://gdata.youtube.com/schemas/2007/subscriptiontypes.cat.
  • En una solicitud de adición de un contacto, el valor del atributo scheme debe ser http://gdata.youtube.com/schemas/2007/contact.cat.
term Complejo El atributo term identifica el tipo de entidad contenida en una entrada de feed, o en una categoría o palabra clave asociada a un vídeo.

  • En una solicitud de adición de una suscripción, el valor del atributo term puede ser channel, favorites o query.
  • En una solicitud de adición de un contacto, el valor del atributo term puede ser Family o Friends.
label Complejo El atributo label especifica el nombre de secuencias de escape de la entidad de la categoría de YouTube a la que pertenece el vídeo. Este atributo sólo se incluye en las etiquetas <category> que hacen referencia a una categoría (y no a un tipo de entidad ni palabra clave).

Ejemplo

<category scheme='http://gdata.youtube.com/schemas/2007/subscriptiontypes.cat' term='channel'/>

Secundaria de

feed, entry

content

La etiqueta <content> contiene el texto de un comentario o una descripción de un vídeo o una lista de reproducción. Si la etiqueta <content> aparece en una entrada de vídeo o de lista de reproducción, puede contener la misma descripción que aparece en la etiqueta <media:description>.

La etiqueta <content> es obligatoria en una solicitud de adición de un comentario.

Ejemplo

<content type="text">Video comments are cool.</content>

Secundaria de

entry

entry

La etiqueta <entry> incluye información sobre un vídeo, una lista de reproducción, una suscripción, un contacto u otra entidad. La etiqueta <entry> es la etiqueta raíz de todas las solicitudes del API de datos de YouTube para añadir (POST) o actualizar (PUT) datos.

Ejemplo

<entry>

Secundaria de

feed

Secundarias

En una entrada de lista de reproducción o vídeo: id, published, updated, category*, title?, content?, link*, author?, media:group?, yt:description? (esta etiqueta sólo aparece en una entrada de lista de reproducción), yt:position? (esta etiqueta sólo aparece en una entrada de lista de reproducción), yt:statistics?, gd:comments?, gd:rating?, location?, yt:recorded?, georss:where?, app:control?

En un feed de comentarios: id, published, updated, category*, title?, content?, link*, author?

En un feed de listas de reproducción: id, published, updated, category*, title?, content?, link*, author?, yt:description?, gd:feedLink

En un feed de suscripciones: id, published, updated, category*, title?, content?, link*, author?, yt:username?, yt:queryString?, gd:feedLink

En una entrada de perfil: id, published, updated, category*, title?, content?, link*, author?, yt:age?, yt:books?, yt:company?, firstName?, yt:gender?, yt:hobbies?, lastName?, yt:location?, yt:movies?, yt:music?, yt:occupation?, yt:school?, yt:username?, yt:statistics?, media:thumbnail?, gd:feedLink*

Adición de vídeos favoritos: id

Adición y actualización de listas de reproducción: title, yt:description, yt:private

Adición y actualización de entradas de listas de reproducción: title, yt:description, yt:position

Adición de suscripciones: category, yt:username, yt:queryString

Adición y actualización de contactos: category, yt:username

Adición de comentarios: content

Adición de respuestas en vídeo: id

Adición de puntuaciones: gd:rating

Adición de reclamaciones: yt:description

feed

La etiqueta <feed> es la etiqueta raíz de varios tipos de feeds del API de datos de YouTube, incluidos los feeds de vídeos, feeds de suscripciones, feeds de listas de reproducción, feeds de vídeos favoritos y feeds de contactos. Un feed contiene una serie de elementos <entry>. Cada elemento contiene información sobre un vídeo, una lista de reproducción, una suscripción u otra entidad individual.

Ejemplo

<feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:media='http://search.yahoo.com/mrss/' xmlns:yt='http://gdata.youtube.com/schemas/2007' xmlns:gd='http://schemas.google.com/g/2005'>

Secundarias

id, updated, category*, title, logo?, link*, author?, generator, openSearch:itemsPerPage?, openSearch:startIndex?, openSearch:totalResults?, entry+

generator

La etiqueta <generator> identifica el software utilizado para crear el feed. Esta información se debe utilizar con fines de depuración.

Atributos

NombreFormatoDescripción
version Complejo El atributo version especifica la versión del software utilizada para generar el feed.
uri Complejo El atributo uri especifica un identificador uniforme de recursos (URI) relacionado con el software de generación del feed.

Ejemplo

<generator version='beta' uri='http://gdata.youtube.com/'>YouTube data API</generator>

Secundaria de

feed

id

La etiqueta <id> especifica un identificador uniforme de recursos (URI) que identifica de forma permanente y exclusiva una entrada de vídeo o feed.

Ejemplo

<id>http://gdata.youtube.com/feeds/api/users/andyland74/subscriptions/5c56f45db338111c</id>

Secundaria de

feed, entry

link

La etiqueta <link> contiene una referencia IRI relevante para una entrada de feed o un feed.

Atributos

NombreFormatoDescripción
rel Complejo El atributo rel indica la forma en que el identificador uniforme de recursos (URI) especificado en el atributo href está relacionado con el conjunto de resultados actual:

  • Si el valor del atributo rel es self, el enlace identificará la URL que se deberá utilizar para recuperar información sobre el feed o sobre una entrada concreta del feed.

  • Si el valor del atributo rel es edit, el enlace identificará la URL que se deberá utilizar para modificar una entrada de feed.

  • Si el valor del atributo rel es alternate, el enlace identificará una URL que mostrará una presentación distinta del feed como, por ejemplo, un enlace a la representación HTML de dicha entrada de feed.

  • Si el valor del atributo rel es prev, el enlace apuntará a la página anterior del conjunto de resultados del feed.

  • Si el valor del atributo rel es next, el enlace apuntará a la página siguiente del conjunto de resultados del feed.

  • Si el valor del atributo rel es related, el enlace identificará otro feed relacionado con el feed actual. Por ejemplo, si el feed contiene una lista de entradas de contacto, el enlace relacionado de un contacto deberá apuntar al feed del perfil de dicho contacto.

  • El atributo rel también puede contener un enlace a un esquema que identifique el tipo de entidad relacionada con el enlace correspondiente. Por ejemplo, una entrada de vídeo contiene etiquetas <link> que apuntan a respuestas, puntuaciones, reclamaciones y vídeos relacionados con dicho vídeo. Algunas de esas etiquetas <link> se pueden utilizar para recuperar feeds adicionales como, por ejemplo, vídeos relacionados y respuestas en vídeo, mientras que otras se pueden utilizar para publicar datos como, por ejemplo, una puntuación o una reclamación.

type Complejo El atributo type especifica el tipo de medio del recurso de la URL asociada. Los enlaces de una respuesta del API de datos de YouTube suelen hacer referencia a una página HTML u otra respuesta del API (feed de Atom). Por ello, los valores más comunes del atributo type son text/html y application/atom+xml.
href Complejo El atributo href especifica un identificador uniforme de recursos (URI) que identifica el recurso identificado en la etiqueta <link>.

Ejemplo

<link rel='http://gdata.youtube.com/schemas/2007#video.related' type='application/atom+xml' href='http://gdata.youtube.com/feeds/api/videos/AlPqL7IUT6M/related'/>

Secundaria de

feed, entry

logo

La etiqueta <logo> especifica una imagen que proporciona información visual al feed. El logotipo de un feed del API de datos de YouTube es el logotipo de YouTube.

Ejemplo

<logo>http://www.youtube.com/img/pic_youtubelogo_123x63.gif</logo>

Secundaria de

feed

name

La etiqueta <name> contiene el nombre de usuario de YouTube del autor.

Ejemplo

<name>andyland74</name>

Secundaria de

author

published

La etiqueta <published> especifica la hora de creación de una entrada de feed.

Ejemplo

<published>2007-10-15T15:39:34.000-07:00</published>

Secundaria de

entry

title

La etiqueta <title> proporciona un título legible para un feed o una entrada de un feed. Esta etiqueta también es obligatoria para añadir listas de reproducción y es opcional para añadir o actualizar entradas de listas de reproducción.

  • En una solicitud de adición o actualización de una lista de reproducción, la etiqueta <title> especifica el título de la lista de reproducción.

  • En una solicitud de adición o actualización de una entrada de lista de reproducción, la etiqueta <title> especifica el título personalizado que el usuario desea mostrar en la lista de reproducción en lugar del título real del vídeo. Si el usuario no proporciona un título personalizado, YouTube mostrará el título real del vídeo en la lista de reproducción.

Ejemplo

<title type='text'>andyland74's Subscriptions</title>

Secundaria de

feed, entry

updated

La etiqueta <updated> especifica la hora de la última actualización de un feed o una entrada de feed.

Ejemplo

<updated>2007-10-15T15:39:34.000-07:00</updated>

Secundaria de

feed, entry

uri

La etiqueta <uri> contiene una URL relacionada con elauthor.

Ejemplo

<uri>http://gdata.youtube.com/feeds/api/users/andyland74</uri>

Secundaria de

author

Referencia de elementos de OpenSearch

openSearch:itemsPerPage

La etiqueta <openSearch:itemsPerPage> indica cuántas entradas aparecen en una respuesta del API.

Ejemplo

<openSearch:itemsPerPage>25</openSearch:itemsPerPage>

Secundaria de

feed

openSearch:startIndex

La etiqueta <openSearch:startIndex> identifica el índice de base 1 del primer elemento devuelto en el feed.

Ejemplo

<openSearch:startIndex>1</openSearch:startIndex>

Secundaria de

feed

openSearch:totalResults

La etiqueta <openSearch:totalResults> identifica el número de elementos del conjunto de resultados del feed. Ten en cuenta que este valor es una aproximación y que es posible que no represente el valor exacto. No debes utilizar este valor para crear enlaces de paginación. Utiliza las etiquetas <link rel="next"> y <link rel="prev"> para determinar si deseas mostrar enlaces de paginación o no:

<link rel="next" type="application/atom+xml" href="http://gdata.youtube.com/feeds/videos?start-index=26&max-results=25"/>


Si el feed contiene una etiqueta <link> cuyo valor de atributo rel es next, aparecerá otra página de resultados. Si no, la página actual será la última del conjunto de resultados. Del mismo modo, si el feed contiene una etiqueta <link> cuyo valor de atributo rel es prev, aparecerá una página anterior de resultados. Si no, la página actual será la primera del conjunto de resultados.

Ejemplo

<openSearch:totalResults>36</openSearch:totalResults>

Secundaria de

feed

Referencia de elementos de YouTube

yt:age

La etiqueta <yt:age> especifica la edad del usuario, que se calcula en función de la fecha de nacimiento proporcionada en el perfil de YouTube del usuario. La etiqueta <yt:age> aparece en el feed de perfil de usuario.

Ejemplo

<yt:age>33</yt:age>

Secundaria de

entry

yt:books

La etiqueta <yt:books> identifica los libros favoritos del usuario introducidos en su perfil público de YouTube.

Ejemplo

<yt:books>Catch-22</yt:books>

Secundaria de

entry

yt:company

La etiqueta <yt:company> identifica la empresa en la que trabaja el usuario introducida por éste en su perfil público de YouTube.

Ejemplo

<yt:company>Google</yt:company>

Secundaria de

entry

yt:description

La etiqueta <yt:description> contiene la descripción introducida por un usuario para una lista de reproducción, una descripción personalizada introducida por un usuario para un vídeo de una lista de reproducción o el texto de una reclamación.

Ejemplo

<yt:description>My new playlist description</yt:description>

Secundaria de

entry

yt:duration

La etiqueta <yt:duration> especifica la duración del vídeo en segundos.

Atributos

NombreFormatoDescripción
seconds Complejo El atributo seconds indica la duración de un vídeo en segundos.

Ejemplo

<yt:duration seconds='344'/>

Secundaria de

media:group

yt:firstName

La etiqueta <yt:firstName> especifica el nombre del usuario.

Ejemplo

<yt:firstName>John</yt:firstName>

Secundaria de

entry

yt:gender

La etiqueta <yt:gender> especifica el sexo del usuario introducido en su perfil público de YouTube.

Ejemplo

<yt:gender>m</yt:gender>

Secundaria de

entry

yt:hobbies

La etiqueta <yt:hobbies> identifica las aficiones del usuario introducidas en su perfil público de YouTube.

Ejemplo

<yt:hobbies>Testing YouTube APIs</yt:hobbies>

Secundaria de

entry

yt:hometown

La etiqueta <yt:hometown> identifica la ciudad natal del usuario introducida en su perfil público de YouTube.

Ejemplo

<yt:hometown>Albany, GA</yt:hometown>

Secundaria de

entry

yt:lastName

La etiqueta <yt:lastName> especifica el apellido del usuario.

Ejemplo

<yt:lastName>Smith</yt:lastName>

Secundaria de

entry

yt:location

En una entrada de vídeo, la etiqueta <yt:location> contiene texto descriptivo sobre el lugar del que se ha extraído el vídeo. En una entrada de perfil de usuario, la etiqueta <yt:location> identifica la ubicación geográfica del usuario introducida en su perfil público de YouTube.

Ejemplo

<yt:location>US</yt:location>

Secundaria de

entry

yt:movies

La etiqueta <yt:movies> identifica las películas favoritas del usuario introducidas en su perfil público de YouTube.

Ejemplo

<yt:movies>Aqua Teen Hungerforce</yt:movies>

Secundaria de

entry

yt:music

La etiqueta <yt:music> identifica la música favorita del usuario introducida en su perfil público de YouTube.

Ejemplo

<yt:music>Elliott Smith, the Kooks</yt:music>

Secundaria de

entry

yt:noembed

La etiqueta <yt:noembed> especifica que un vídeo no se puede insertar en otros sitios web. Esta etiqueta se puede incluir en una solicitud de subida o actualización de los metadatos de un vídeo. De forma predeterminada, los vídeos se pueden insertar en otros sitios a menos que sean vídeos privados. Si una solicitud no incluye las etiquetas <yt:noembed> o <yt:private>, el vídeo se podrá insertar en otros sitios web.

Ejemplo

<yt:noembed/>

Secundaria de

entry

yt:occupation

La etiqueta <yt:occupation> identifica el empleo del usuario introducido en su perfil público de YouTube.

Ejemplo

<yt:occupation>Technical writer</yt:occupation>

Secundaria de

entry

yt:position

La etiqueta <yt:position> especifica el orden en el que aparecerá un vídeo en una lista de reproducción.

Ejemplo

<yt:position>4</yt:position>

Secundaria de

entry

yt:private

La etiqueta <yt:private> indica que un vídeo es privado, es decir, que ese vídeo no lo pueden ver todos los usuarios del sitio web de YouTube. Los vídeos privados sólo los pueden ver las personas específicamente elegidas por el propietario de cada vídeo. Esta etiqueta se puede incluir en una solicitud de subida o actualización de los metadatos de un vídeo. La etiqueta no debe especificar ningún valor. La presencia de esa etiqueta indica que el vídeo es privado. La ausencia de la etiqueta indica que todos los usuarios de YouTube podrán ver el vídeo. De forma predeterminada, todos los usuarios de YouTube pueden ver los vídeos. La ausencia de la etiqueta indica que todos los usuarios de YouTube podrán ver el vídeo. (De forma predeterminada, todos los usuarios de YouTube pueden ver los vídeos. Por tanto, para indicar que un vídeo es privado, se debe incluir la etiqueta <yt:private> en todas las solicitudes de subida o actualización del vídeo.)

Ejemplo

<yt:private/>

Secundaria de

media:group

yt:queryString

La etiqueta <yt:queryString> especifica las palabras clave (cadena de consulta) asociadas a una suscripción.

Ejemplo

<yt:queryString>Dog skateboarding</yt:queryString>

Secundaria de

entry

yt:racy

La etiqueta <yt:racy> indica si un vídeo incluye contenido restringido. Si solicitas un feed de vídeos, el feed sólo incluirá contenido restringido si la solicitud del API incluye el parámetro racy.

Ejemplo

<yt:racy/>

Secundaria de

entry

yt:recorded

La etiqueta <yt:recorded> especifica la fecha de grabación de un vídeo.

Ejemplo

<yt:recorded>2003-08-03</yt:recorded>

Secundaria de

entry

yt:relationship

La etiqueta <yt:relationship> indica si el usuario mantiene una relación, según la información que aparece en su perfil público de YouTube.

Ejemplo

<yt:relationship>taken</yt:relationship>

Secundaria de

entry

yt:school

La etiqueta <yt:school> identifica el centro de estudios al que asistió el usuario, según la información que aparece en su perfil público de YouTube.

Ejemplo

<yt:school>University of North Carolina</yt:school>

Secundaria de

entry

yt:state

La etiqueta <yt:state> contiene información que describe el estado de un vídeo. El valor de esta etiqueta y del atributo reasonCode permite conocer los motivos a los que se deben los problemas de subida de los vídeos que no se han podido subir o que se han rechazado tras el proceso de subida.

Atributos

NombreFormatoDescripción
name Complejo El atributo name identifica el estado de un vídeo no publicado. Los valores válidos de esta etiqueta son processing, rejected y failed.
reasonCode Complejo El atributo reasonCode proporciona información sobre los motivos por los que un vídeo no se ha podido subir o se ha rechazado tras el proceso de subida. La etiqueta <yt:state> no incluirá un atributo reasonCode si el valor del atributo name es processing. En la lista que aparece a continuación se identifican posibles valores del atributo reasonCode para los casos en los que un vídeo no se ha podido subir o se ha rechazado.
  • rejected

    • copyright: el vídeo infringe derechos de autor.
    • inappropriate: el vídeo incluye contenido inadecuado.
    • duplicate: el vídeo es una copia de otro vídeo subido a YouTube.
    • termsOfUse: el vídeo infringe las condiciones de uso.
    • suspended: la cuenta asociada al vídeo se ha suspendido.
    • tooLong: el vídeo supera la duración máxima permitida (10 minutos).
    • blocked: el propietario de contenido ha bloqueado el vídeo.

  • failed

    • cantProcess: YouTube no puede convertir el archivo de vídeo.
    • invalidFormat: el formato del archivo de vídeo subido no es válido.
    • unsupportedCodec: no se admite el códec que utiliza el vídeo.
    • empty: el archivo subido está vacío.
    • tooSmall: el archivo subido es demasiado pequeño.

helpUrl Complejo El parámetro helpUrl contiene un enlace a una página del Centro de asistencia de YouTube mediante la cual los desarrolladores y los propietarios de los vídeos pueden determinar los motivos por los que un vídeo se ha rechazado o no se ha podido subir.

Ejemplo

<yt:state name="rejected" reasonCode="tooLong" helpUrl="http://www.youtube.com/t/community_guidelines">Video is too long</yt:state>

Secundaria de

app:control

yt:statistics

La etiqueta <yt:statistics> proporciona datos estadísticos referentes a un vídeo o a un usuario. La etiqueta <yt:statistics> no se incluye en una entrada de vídeo si el valor del atributo viewCount es 0.

Atributos

NombreFormatoDescripción
viewCount Complejo Si el atributo viewCount hace referencia a una entrada de vídeo, indicará el número de veces que se ha visto ese vídeo. Si el atributo viewCount hace referencia a un perfil de usuario, indicará el número de veces que se ha visto ese perfil de usuario.
videoWatchCount Complejo El atributo videoWatchCount indica el número de vídeos que ha visto un usuario en YouTube. El atributo videoWatchCount sólo se incluye si aparece la etiqueta <yt:statistics> en una entrada de perfil de usuario.
subscriberCount Complejo El atributo subscriberCount indica el número de usuarios de YouTube que se han suscrito al canal de YouTube de un determinado usuario. El atributo subscriberCount sólo se incluye si aparece la etiqueta <yt:statistics> en una entrada de perfil de usuario.
lastWebAccess Complejo El atributo lastWebAccess indica la hora más reciente a la que un determinado usuario ha utilizado YouTube.
favoriteCount Complejo El atributo favoriteCount indica el número de usuarios de YouTube que han añadido un vídeo a su lista de vídeos favoritos. El atributo favoriteCount sólo se incluye si aparece la etiqueta <yt:statistics> en una entrada de vídeo.

Ejemplo

<yt:statistics viewCount='9' videoWatchCount='24' subscriberCount='1' lastWebAccess='2008-02-29T13:09:48.000-08:00'/>

Secundaria de

entry

yt:status

La etiqueta <yt:status> identifica el estado de un contacto. Esta etiqueta sólo aparece si se van a recuperar los contactos del usuario actualmente autenticado. En la siguiente lista se identifican los valores válidos de esta etiqueta:

  • El valor de la etiqueta será accepted si el usuario autenticado y el contacto se han marcado mutuamente como amigos.
  • El valor de la etiqueta será requested si el contacto ha solicitado que se le añada a la lista de contactos del usuario autenticado, pero la solicitud no se ha aceptado (o rechazado) aún.
  • El valor de la etiqueta será pending si el usuario autenticado ha solicitado que se le añada a la lista de contactos del contacto, pero la solicitud no se ha aceptado (o rechazado) aún.

Ejemplo

<yt:status>accepted</yt:status>

Secundaria de

entry

yt:username

La etiqueta <yt:username> especifica un nombre de usuario de YouTube. En un feed de suscripciones o en una solicitud de adición de una suscripción, la etiqueta <yt:username> identifica al propietario de la lista de favoritos o del canal de YouTube correspondiente a la suscripción. En una entrada de perfil, la etiqueta <yt:username> identifica al usuario asociado al perfil. En una entrada de contacto de usuario, la etiqueta <yt:username> identifica al contacto del usuario conectado.

Ejemplo

<yt:username>andyland74</yt:username>

Secundaria de

entry

Referencia de elementos de Media RSS

media:category

La etiqueta <media:category> es una etiqueta de desarrollador o género que describe un recurso de vídeo. En la sección Lista de categorías de los vídeos subidos se identifican distintas categorías de vídeo de YouTube. Puedes asociar una categoría a un vídeo o asignar cada vídeo a una categoría de la lista.

También puedes asociar cada vídeo a una o varias palabras clave o categorías privadas mediante el esquema de categoría http://gdata.youtube.com/schemas/2007/developertags.cat. Consulta la sección Asignación de etiquetas de desarrollador del documento de protocolo para obtener más información sobre las etiquetas de desarrollador.

Atributos

NombreFormatoDescripción
label Complejo El atributo label especifica el nombre de secuencias de escape de la entidad de la categoría de YouTube a la que pertenece el vídeo.
scheme Complejo El atributo scheme especifica un identificador uniforme de recursos (URI) que identifica el esquema de categorización asociado a la etiqueta.

Ejemplo

<media:category label='Sports' scheme='http://gdata.youtube.com/schemas/2007/categories.cat'>Sports</media:category>

Secundaria de

media:group

media:content

La etiqueta <media:content> especifica una URL y otro tipo de información referente a un vídeo.

Atributos

NombreFormatoDescripción
url Complejo El atributo url especifica la URL del objeto de medio.
type Complejo El atributo type especifica el tipo MIME del objeto de medio.
isDefault Complejo El atributo isDefault indica si la etiqueta <media:content> correspondiente identifica el recurso de medios predeterminado del grupo de medios. En una respuesta del API de datos de YouTube, el recurso de medios predeterminado es la URL del reproductor insertable (SWF) del vídeo.
expression Complejo El atributo expression indica si el objeto de vídeo representa una muestra del vídeo, la versión completa del mismo o una secuencia de vídeo en directo. Los correspondientes (y únicos) valores válidos de este atributo son sample, full y nonstop.
duration Complejo La etiqueta duration especifica la duración del vídeo en segundos.
yt:format Complejo El atributo yt:format especifica el formato de vídeo del objeto de vídeo descrito por el elemento <media:content>. En la lista que aparece a continuación se identifican los valores válidos de este atributo.

  • 1: URL de transmisión RTSP para reproducción de vídeos de dispositivos móviles. Vídeo H.263 (hasta 176x144) y audio AMR.
  • 5: URL HTTP en el reproductor insertable (SWF) de este vídeo. Este formato no está disponible para los vídeos que no se pueden insertar. Los desarrolladores añaden con frecuencia &format=5 a sus consultas para restringir los resultados a los vídeos que se pueden insertar en sus sitios.
  • 6: URL de transmisión RTSP para reproducción de vídeos de dispositivos móviles. Vídeo MPEG-4 SP (hasta 176x144) y audio AAC.

Ejemplo

<media:content url='http://www.youtube.com/v/8aYQ_wjmriQ' type='application/x-shockwave-flash' medium='video' isDefault='true' expression='full' duration='166' yt:format='5'/>

Secundaria de

media:group

media:description

La etiqueta <media:description> contiene el resumen o la descripción de un vídeo. Este campo es obligatorio en las solicitudes de subida o actualización de los metadatos de un vídeo. La descripción debe ser una frase, no una lista de palabras clave, y puede aparecer en los resultados de búsqueda. La descripción puede tener una longitud máxima de 5.000 caracteres y puede contener todos los caracteres UTF-8 válidos, excepto < y >.

Atributos

NombreFormatoDescripción
type Complejo El atributo type especifica el tipo de texto especificado en el valor de la etiqueta. Los feeds de contenido de YouTube requieren el uso de texto sin formato (type=plain).

Ejemplo

<media:description type="plain">Granny takes crocheting to the extreme during a rodeo and while surfing.</media:description>

Secundaria de

media:group

media:group

La etiqueta <media:group> incluye metadatos sobre un recurso de vídeo.

Ejemplo

<media:group>

Secundaria de

entry

Secundarias

media:title, media:description, media:keywords, media:category, media:content, media:player, media:thumbnail, yt:duration?, yt:private?, yt:noembed?

media:keywords

La etiqueta <media:keywords> incluye una lista de palabras o frases asociadas a un vídeo separadas por comas. Debes especificar al menos una palabra clave para cada uno de los vídeos de tu feed. Este campo puede tener una longitud máxima de 120 caracteres y puede contener todos los caracteres UTF-8 válidos, excepto < y <. La longitud máxima de cada palabra clave es de 25 caracteres.

Atributos

NombreFormatoDescripción
scheme Texto El atributo scheme especifica un identificador uniforme de recursos (URI) que identifica el esquema de categorización asociado a la etiqueta.

  • En una solicitud de adición de una suscripción, el valor del atributo scheme debe ser http://gdata.youtube.com/schemas/2007/subscriptiontypes.cat.
  • En una solicitud de adición de un contacto, el valor del atributo scheme debe ser http://gdata.youtube.com/schemas/2007/contact.cat.

Ejemplo

<media:keywords>rodeo, surfing, crochet</media:keywords>

Secundaria de

media:group

media:player

La etiqueta <media:player> especifica una URL en la que se encuentra disponible el vídeo completo, que se puede ver a través de un reproductor de medios que se ejecuta en un navegador web. En una respuesta del API de datos de YouTube, la etiqueta <media:player> especifica la URL de la página del sitio web de YouTube en la que se reproduce el vídeo.

Atributos

NombreFormatoDescripción
url Complejo El atributo url identifica una URL que utiliza un reproductor de vídeo para mostrar el vídeo en una ventana del navegador.

Ejemplo

<media:player url='http://www.youtube.com/watch?v=8aYQ_wjmriQ'/>

Secundaria de

media:group

media:thumbnail

La etiqueta <media:thumbnail> especifica la ubicación de una imagen que se puede utilizar para representar un vídeo en una lista de resultados de búsqueda. Un feed de vídeos puede hacer referencia a varias imágenes en miniatura y a varios tamaños de esas imágenes. Puedes seleccionar el tamaño de miniatura que sea más adecuado para tu interfaz de usuario.

Atributos

NombreFormatoDescripción
url Complejo El atributo url especifica la URL de la imagen en miniatura.
height Complejo El atributo height especifica la altura de la imagen en miniatura.
width Complejo El atributo width especifica el ancho de la imagen en miniatura.
time Complejo El atributo time especifica el momento del vídeo en el que aparece el fotograma mostrado en la imagen en miniatura. El valor del atributo se expresa mediante el protocolo Normal Play Time (NTP) de DSM-CC utilizado en RTSP.

Ejemplo

<media:thumbnail url='http://img.youtube.com/vi/8aYQ_wjmriQ/2.jpg' height='97' width='130' time='00:01:23'/>

Secundaria de

entry, media:group

media:title

La etiqueta <media:title> identifica el título del vídeo. Este campo puede tener una longitud máxima de 60 caracteres y puede contener todos los caracteres UTF-8 válidos, excepto < y >.

Atributos

NombreFormatoDescripción
type Complejo El atributo type especifica el tipo de texto especificado en el valor de la etiqueta. Los feeds de contenido de YouTube requieren el uso de texto sin formato (type=plain).

Ejemplo

<media:title type="plain">Extreme crocheting in high surf, rodeo</media:title>

Secundaria de

media:group

Referencia de elementos de Google Data

gd:comments

La etiqueta <gd:comments> incluye un enlace al feed de comentarios de un vídeo.

Ejemplo

<gd:comments>

Secundaria de

entry

Secundarias

gd:feedLink

gd:feedLink

La etiqueta <gd:feedLink> identifica un feed anidado de forma lógica. Por ejemplo, un feed de comentarios estará anidado de forma lógica debajo de una entrada de vídeo. Del mismo modo, el feed de una lista de reproducción estará anidado de forma lógica dentro de una entrada de lista de reproducción del feed de listas de reproducción de un usuario.

Atributos

NombreFormatoDescripción
rel Complejo El atributo rel indica la forma en que el identificador uniforme de recursos (URI) especificado en el atributo href está relacionado con el conjunto de resultados actual:

  • Si el valor del atributo rel es self, el enlace identificará la URL que se deberá utilizar para recuperar información sobre el feed o sobre una entrada concreta del feed.

  • Si el valor del atributo rel es edit, el enlace identificará la URL que se deberá utilizar para modificar una entrada de feed.

  • Si el valor del atributo rel es alternate, el enlace identificará una URL que mostrará una presentación distinta del feed como, por ejemplo, un enlace a la representación HTML de dicha entrada de feed.

  • Si el valor del atributo rel es prev, el enlace apuntará a la página anterior del conjunto de resultados del feed.

  • Si el valor del atributo rel es next, el enlace apuntará a la página siguiente del conjunto de resultados del feed.

  • Si el valor del atributo rel es related, el enlace identificará otro feed relacionado con el feed actual. Por ejemplo, si el feed contiene una lista de entradas de contacto, el enlace relacionado de un contacto deberá apuntar al feed del perfil de dicho contacto.

  • El atributo rel también puede contener un enlace a un esquema que identifique el tipo de entidad relacionada con el enlace correspondiente. Por ejemplo, una entrada de vídeo contiene etiquetas <link> que apuntan a respuestas, puntuaciones, reclamaciones y vídeos relacionados con dicho vídeo. Algunas de esas etiquetas <link> se pueden utilizar para recuperar feeds adicionales como, por ejemplo, vídeos relacionados y respuestas en vídeo, mientras que otras se pueden utilizar para publicar datos como, por ejemplo, una puntuación o una reclamación.

href Complejo El atributo href especifica un identificador uniforme de recursos (URI) que identifica el recurso identificado en la etiqueta <link>.
gd:countHint Complejo El atributo gd:countHint especifica el número de entradas del feed relacionado. Por ejemplo, si la etiqueta <gd:feedLink> especifica un enlace al feed de comentarios de un vídeo, el atributo gd:countHint indicará el número de comentarios que tiene ese vídeo.

Ejemplo

<gd:feedLink href='http://gdata.youtube.com/feeds/api/videos/8aYQ_wjmxiQ/comments' countHint='0'/>

Secundaria de

entry, gd:comments

gd:rating

La etiqueta <gd:rating> especifica la puntuación que se le asigna a un vídeo (en una solicitud de adición de puntuación) o la puntuación media actual del vídeo basada en las puntuaciones globales de los usuarios de YouTube.

Atributos

NombreFormatoDescripción
min Complejo El atributo min especifica la puntuación mínima que se puede asignar a un vídeo. Este valor debe ser 1.
max Complejo El atributo max especifica la puntuación máxima que se puede asignar a un vídeo. Este valor debe ser 5.
numRaters Complejo El atributo numRaters indica el número de personas que han puntuado el vídeo. Este atributo no se utiliza en las solicitudes de adición de puntuaciones.
average Complejo El atributo average indica la puntuación media del vídeo. Este atributo no se utiliza en las solicitudes de adición de puntuaciones.

Ejemplo

<gd:rating min='1' max='5' numRaters='7773' average='4.75'/>

Secundaria de

entry

Referencia de elementos de GeoRSS

georss:where

La etiqueta <georss:where> incluye información sobre una ubicación geográfica. Ten en cuenta que, si un vídeo tiene asociada una ubicación geográfica, deberás incluir esa información en las posteriores solicitudes de actualización de la información de ese vídeo. De lo contrario, la información de ubicación geográfica se eliminará.

Ejemplo

<georss:where>

Secundaria de

entry

Secundarias

gml:Point

Referencia de elementos de GML

gml:Point

La etiqueta <gml:Point> contiene información sobre una ubicación geográfica específica. La proyección de puntos predeterminada es WGS84. Puedes especificar la ubicación geográfica de la que se ha extraído un vídeo en las solicitudes de subida o actualización de los metadatos de ese vídeo. Ten en cuenta que, si un vídeo tiene asociada una ubicación geográfica, deberás incluir esa información en las posteriores solicitudes de actualización de la información de ese vídeo. De lo contrario, la información de ubicación geográfica se eliminará.

Ejemplo

<gml:Point>

Secundaria de

georss:where

Secundarias

gml:pos

gml:pos

La etiqueta <gml:pos> especifica las coordenadas de un punto geográfico. La proyección de puntos predeterminada es WGS84. Ten en cuenta que, si un vídeo tiene asociada una ubicación geográfica, deberás incluir esa información en las posteriores solicitudes de actualización de la información de ese vídeo. De lo contrario, la información de ubicación geográfica se eliminará.

Ejemplo

<gml:pos>47.367 8.55</gml:pos>

Secundaria de

gml:Point

Referencia de elementos de Atom Publishing Protocol

app:control

La etiqueta <app:control> indica que un vídeo no se ha publicado. Esta etiqueta sólo aparece en el feed de subidas del usuario autenticado actualmente.

Ejemplo

<app:control>

Secundaria de

entry

Secundarias

app:draft, yt:state

app:draft

La etiqueta <app:draft> indica si un vídeo se encuentra en estado "borrador" o "no publicado". Esta etiqueta sólo se incluye para videos no publicados, por lo que su valor siempre es yes.

Ejemplo

<app:draft>yes</app:draft>

Secundaria de

app:control

Referencia de elementos de respuesta del API de subidas basadas en navegador

response

La etiqueta <response> incluye la respuesta del API que devuelve YouTube a una solicitud de subida de los metadatos de un nuevo vídeo mediante la subida basada en navegador.

Ejemplo

<response>

Secundarias

url, token

token

La etiqueta <token> aparece en la respuesta del API que devuelve YouTube a una solicitud de subida de los metadatos de un nuevo vídeo mediante la subida basada en navegador. El token debe estar incluido en la página que permite que el usuario suba el nuevo vídeo directamente a YouTube.

Ejemplo

<token>AEwbFAQEvf3xox...</token>

Secundaria de

response

url

La etiqueta <url> aparece en la respuesta del API que devuelve YouTube a una solicitud de subida de los metadatos de un nuevo vídeo mediante la subida basada en navegador. El formulario incluido en tu página web que puede utilizar el usuario para subir el archivo de vídeo a YouTube se enviará a esta URL.

Ejemplo

<url>http://uploads.gdata.youtube.com/action/FormUpload/AEF3087AUD</url>

Secundaria de

response

Referencia de elementos de respuesta a errores

code

La etiqueta <code> indica el motivo por el que no se ha podido atender la solicitud del API. En la lista que aparece a continuación se identifican los posibles valores de la etiqueta <code> en función del valor de la etiqueta <domain> correspondiente.

  • yt:validation:

    • required: este código indica que falta un campo obligatorio o tiene un valor vacío.
    • deprecated: este código indica que el valor de un elemento se ha desaprobado y ya no es válido. Por ejemplo, el nombre de una categoría de vídeo que se haya retirado no se podrá asociar a vídeos recién añadidos o actualizados.
    • invalid_format: este código indica que el valor de un elemento XML no coincide con el formato esperado. Por ejemplo, puedes recibir este error si especificas unas coordenadas no válidas en la etiqueta <gml:pos>.
    • invalid_character: este código indica que el valor de un campo XML contiene una carácter no válido. Por ejemplo, los títulos de vídeos no pueden contener el carácter menor que (<).
    • too_long: este código indica que el valor del elemento XML supera la longitud máxima permitida. Por ejemplo, los títulos de vídeos deben tener 60 caracteres como máximo.

  • yt:quota:

    • too_many_recent_calls: este código indica que los servidores del API han recibido demasiadas llamadas desde el mismo origen en un breve espacio de tiempo. Este error no especifica ninguna ubicación.
    • too_many_entries: este código indica que el usuario está intentando superar un límite de almacenamiento en su cuenta y debe eliminar entradas existentes antes de introducir nuevas.

  • yt:authentication:

    • InvalidToken: este código indica que el token de autenticación especificado en el encabezado Authorization no es válido.
    • TokenExpired: este código indica que el token de autenticación especificado en el encabezado Authorization ha caducado.

Ejemplo

<code>required</code>

Secundaria de

error

domain

La etiqueta <domain> identifica el error por el que no se ha podido atender una solicitud del API. En la siguiente lista se identifican los posibles valores de la etiqueta <domain>:

  • Un error yt:validation informa de un problema relativo a un valor de elemento XML existente en una solicitud de inserción o actualización de una entrada. Las funciones del API que introducen o actualizan vídeos u otros datos pueden informar de errores yt:validation. Los errores de validación se suelen notificar a través del código de respuesta HTTP 400.

  • Un error yt:quota identifica un problema relativo a un uso irregular del API.

  • Un error yt:authentication identifica un problema relativo a una solicitud de ejecución de una función del API que requiere una autenticación de usuario que no se ha realizado correctamente. Los errores de autenticación se pueden identificar con los códigos de respuesta HTTP 401 o 403.

Ejemplo

<domain>yt:validation</domain>

Secundaria de

error

error

La etiqueta <error> contiene información sobre el error por el que no se ha podido atender una solicitud del API.

Ejemplo

<error>

Secundaria de

errors

Secundarias

domain, code, location

errors

La etiqueta <errors> incluye una respuesta del API que explica los errores por los que no se ha podido atender la solicitud del API correspondiente.

Ejemplo

<errors>

Secundarias

error+

location

La etiqueta <location> proporciona información sobre el elemento de la solicitud que ha producido el error.

  • Si el valor de la etiqueta <domain> es yt:validation, la etiqueta <location> definirá la ubicación del error como una ruta Xpath que indica la etiqueta XML que ha causado el error en la solicitud. La ubicación Xpath se especifica en relación con la etiqueta <entry> de la solicitud.

  • Si el valor de la etiqueta <domain> es yt:quota y el valor de la etiqueta <code> es too_many_recent_calls, la respuesta del API no incluirá una etiqueta <location>.

  • Si el valor de la etiqueta <domain> es yt:quota y el valor de la etiqueta <code> es too_many_entries, la etiqueta <location> identificará el feed que ha causado el error.

  • Si el valor de la etiqueta <domain> es yt:authentication, la etiqueta <location> (en caso de que aparezca) identificará la causa del error de autenticación.

Atributos

NombreFormatoDescripción
type Complejo El atributo type proporciona contexto para el valor de la etiqueta <location>. El atributo type puede tener cualquiera de los valores indicados a continuación.
  • xpath: la solicitud XML contiene un error en la ruta especificada referente a la etiqueta <entry> de la solicitud.
  • parameter: la solicitud del API contiene un error en el parámetro especificado en la etiqueta <location>.
  • header: la solicitud del API contiene un error en el encabezado de solicitud HTTP especificado.
  • other: la solicitud del API contiene otro tipo de error. Este valor permite identificar errores de cupo en los que el valor de la etiqueta code es too_many_entries.

Ejemplo

<location type='xpath'>media:group/media:title/text()</location>

Secundaria de

error

Apéndices

Lista de categorías de los vídeos subidos

En el documento de categorías de YouTube, que se puede descargar de la página http://gdata.youtube.com/schemas/2007/categories.cat, se identifican las categorías que se pueden utilizar para clasificar los vídeos. El documento de categorías es un archivo XML en el que se identifican las categorías y se indica si se pueden asignar nuevos vídeos a cada categoría y si es posible localizar cada una de las categorías en YouTube.

En el fragmento que aparece a continuación se muestran las entradas de las categorías "Entertainment" y "Nonprofit & Activism" tal como aparecían en el documento de categorías de YouTube el 2 de enero de 2008. Ten en cuenta que podía haber vídeos asignados a ambas categorías pero, en ese momento, sólo se podía localizar en YouTube la categoría "Entertainment". Tal como se muestra en el ejemplo, la presencia de la etiqueta <yt:browsable> indica que se puede localizar en YouTube la categoría correspondiente y la etiqueta <yt:assignable> indica que se pueden asignar nuevos vídeos a esa categoría. (No se pueden asignar nuevos vídeos a categorías que no estén marcadas como asignables con la etiqueta <yt:assignable>.)

<atom:category term='Entertainment' label='Entertainment'>
  <yt:browsable/>
  <yt:assignable/>
</atom:category>
<atom:category term='Nonprofit' label='Nonprofit & Activism'>
  <yt:assignable/>
</atom:category>

En la solicitud de subida enviada por el API, el valor de la etiqueta <media:category> debe coincidir con el valor del atributo term de la etiqueta <atom:category> de la categoría correspondiente. En el siguiente ejemplo se indica cómo se debe utilizar la etiqueta <media:category> para asignar un nuevo vídeo a la categoría Nonprofit & Activism, que aparece en el fragmento de esquema anterior.

<media:category
  scheme="http://gdata.youtube.com/schemas/2007/categories.cat">Nonprofit</media:category>

Escape URL

Si vas a realizar una solicitud de búsqueda HTTP, debes seguir una serie de convenciones para que Google pueda traducir correctamente tu solicitud HTTP y generar una respuesta adecuada.

El esquema de URL HTTP especifica que una solicitud de URL HTTP sólo puede contener los caracteres que se indican a continuación.

  • Caracteres alfanuméricos: [a-z][A-Z][0-9]
  • Caracteres especiales: $ - _ . | + ! * ' ( )
  • Caracteres reservados: ; / ? : @ = &

Google utiliza caracteres reservados para descodificar URL y algunos caracteres especiales para solicitar funciones de búsqueda. En consecuencia, deberás aplicar un formato de escape URL a todos los caracteres no alfanuméricos incluidos en los valores de los parámetros de búsqueda.

Para aplicar un formato de escape URL a una cadena, debes convertir cada secuencia de caracteres de espacio en blanco en un signo más ("+") y sustituir todos los demás caracteres no alfanuméricos por el código hexadecimal que represente el valor de ese carácter. En la tabla que aparece a continuación se muestran los códigos hexadecimales de los caracteres reservados y especiales anteriormente mostrados. Se deberá aplicar un formato de escape URL a cada uno de estos caracteres en los valores de los parámetros de solicitud.

Carácter Código
hexadecimal
$ %24
- %2D
_ %5F
. %2E
+ %2B
! %21
* %2A
" %22
' %27
( %28
) %29
; %3B
/ %2F
? %3F
: %3A
@ %40
= %3D
& %26
| %7C

Examples

Cadena original Cadena con formato de escape URL
punch&judy punch%26judy
O'Reilly O%27Reilly

Para obtener información adicional sobre el escape URL, consulta los documentos RFC 2396 y W3C.