Historial de revisión

En esta página se enumeran los cambios y las actualizaciones de la documentación de la API de YouTube Data (versión 3). Suscríbete a este registro de cambios. Suscribirse

31 de enero de 2024

Esta actualización incluye los siguientes cambios:

El nuevo parámetro forHandle del método channels.list te permite recuperar información sobre un canal si especificas su identificador de YouTube.

9 de noviembre de 2023

Se quitaron todas las referencias al recurso videoId en Comments, ya que no se muestra el recurso videoId mediante una llamada a la API.

12 de septiembre de 2023

Nota: Este es un anuncio de baja.

El método comments.markAsSpam dejó de estar disponible desde hace varios años. Este método ya no es compatible en YouTube y tampoco se admite a través de la API.

Se agregó un aviso de baja a todos los documentos que hacen referencia al método comments.markAsSpam.

22 de agosto de 2023

El método search.list ahora admite el parámetro videoPaidProductPlacement. Este parámetro te permite filtrar los resultados de la búsqueda para incluir solo los videos que el creador indicó que tienen una promoción pagada.

18 de agosto de 2023

Se actualizó la definición del liveStreamingDetails.concurrentViewers del recurso video para indicar que los recuentos de usuarios simultáneos que muestra la API de datos de YouTube pueden diferir de los recuentos de usuarios simultáneos procesados y sin spam disponibles en YouTube Analytics. En el Centro de ayuda de YouTube, encontrarás más información sobre las métricas de las transmisiones en vivo.

7 de agosto de 2023

Como se anunció el 12 de junio de 2023, el parámetro relatedToVideoId del método search.list dejó de estar disponible. Ya no se admite ese parámetro y se quitaron las referencias al parámetro de la documentación de la API.

28 de junio de 2023

El método thumbnails.set ahora admite el error uploadRateLimitExceeded, que indica que el canal subió demasiadas miniaturas durante las últimas 24 horas y que debería volver a intentarlo más tarde.

12 de junio de 2023

Nota: Este es un anuncio de baja.

El parámetro relatedToVideoId del método search.list dejó de estar disponible. YouTube dejará de admitir el parámetro a partir del 7 de agosto de 2023.

En este momento, se agregó un aviso de baja a la documentación del método search.list. Este parámetro se quitará por completo de la documentación de search.list a partir del 7 de agosto de 2023.

Además, de la Guía de implementación de la API, se quitó un ejemplo que demuestra cómo recuperar videos relacionados.

22 de agosto de 2022

Se corrigieron las anotaciones de tipo para los campos de video.statistics a una cadena de largo sin firma.

5 de agosto de 2022

YouTube cambió la forma en que se generan los IDs de subtítulos y, como parte del cambio, está asignando nuevos IDs de subtítulos a todas las pistas de subtítulos. Este cambio puede ser incompatible con versiones anteriores para las aplicaciones que almacenan valores caption_id, aunque no afectará a las aplicaciones que no almacenan valores caption_id.

Entre hoy y el 1 de diciembre de 2022, los métodos captions.list, captions.update, captions.download y captions.delete admitirán los IDs de pistas de subtítulos anteriores y nuevos. Sin embargo, a partir del 1 de diciembre de 2022, YouTube dejará de admitir los IDs de pistas de subtítulos anteriores. En ese momento, si se llama a cualquiera de esos métodos de la API con un ID de pista de subtítulos anterior, se mostrará el error captionNotFound.

Para prepararte para este cambio, debes planificar reemplazar por completo todos los datos almacenados de las pistas de subtítulos entre hoy y el 1 de diciembre de 2022. Es decir, debes borrar los datos almacenados actualmente y, luego, llamar al método captions.list para recuperar el conjunto actual de pistas de subtítulos del video y almacenar los datos en la respuesta de la API como lo harías normalmente en cualquier video en el que almacenes datos de pistas de subtítulos.

12 de julio de 2022

Se actualizaron las Condiciones del Servicio de los servicios de la API de YouTube. Consulta las Condiciones del Servicio de los servicios de la API de YouTube: Historial de revisión para obtener más información.

27 de abril de 2022

Se actualizó la descripción del método videos.insert a fin de indicar que el tamaño máximo de archivo para los videos subidos aumentó de 128 GB a 256 GB.

8 de abril de 2022

Las definiciones de los parámetros myRecentSubscribers y mySubscribers del método subscriptions.list se actualizaron para indicar que la cantidad máxima de suscriptores que muestra la API puede ser limitada. Este cambio representa una corrección de la documentación y no un cambio en el comportamiento de la API.

15 de diciembre de 2021

Como se anunció el 18 de noviembre de 2021, junto con los cambios para hacer que los recuentos de “no me gusta” de los videos sean privados en toda la plataforma de YouTube, la propiedad statistics.dislikeCount del recurso video ahora es privada.

Obtén más información sobre este cambio en el blog oficial de YouTube.

18 de noviembre de 2021

Junto con los cambios para que los recuentos de “no me gusta” de los videos sean privados en toda la plataforma de YouTube, la propiedad statistics.dislikeCount del recurso video pasará a ser privada a partir del 13 de diciembre de 2021. Esto significa que la propiedad solo se incluirá en una respuesta de la API desde el extremo videos.list si el propietario del video autenticó la solicitud a la API.

El extremo videos.rate no se ve afectado por este cambio.

Los desarrolladores que no muestran públicamente recuentos de “no me gusta” y aún necesitan uno en sus clientes de la API pueden solicitar que se los incluya en una lista de entidades permitidas para una exención. Para solicitar una exención, debes completar este formulario de solicitud.

Obtén más información sobre este cambio en el blog oficial de YouTube.

2 de julio de 2021

Nota: Este es un anuncio de baja.

El extremo commentThreads.update dejó de estar disponible y ya no es compatible. Este extremo duplicó la funcionalidad disponible a través de otros extremos de la API. En su lugar, puedes llamar al método comments.update.

y, si tu código requiere un recurso commentThreads, realiza una llamada secundaria al método commentThreads.list.

1 de julio de 2021

Todos los desarrolladores que usen los servicios de la API de YouTube deben completar una auditoría de cumplimiento de la API para que se les otorgue una cuota superior a la asignación de cuota predeterminada de 10,000 unidades. Hasta la fecha, tanto el proceso de auditoría de cumplimiento como las solicitudes de asignaciones de unidades de cuota adicionales los han llevado a cabo los desarrolladores que completan y envían el Formulario de auditoría y extensión de cuota de los servicios de la API de YouTube.

Para aclarar estos procesos y satisfacer mejor las necesidades de los desarrolladores que usan nuestros servicios de API, agregaremos tres formularios nuevos y una guía para completarlos:

  • Formulario de solicitudes para desarrolladores auditados: Los desarrolladores que ya aprobaron una auditoría de cumplimiento de las APIs pueden completar y enviar este formulario más breve para solicitar una extensión de la cuota asignada.
  • Formulario de apelación: Los desarrolladores cuyos proyectos de API no superaron una auditoría de cumplimiento (o se les negó el aumento de unidades de cuota) pueden completar y enviar este formulario.
  • Formulario de cambio de control: Los desarrolladores o cualquier tercero que opere un cliente de API en nombre de un desarrollador que experimente un cambio de control (por ejemplo, mediante la compra o venta de acciones, una fusión o alguna otra forma de transacción corporativa) asociado con un proyecto de API deben completar y enviar este formulario. Esto permite que el equipo de la API de YouTube actualice nuestros registros, audite el cumplimiento de los casos de uso del nuevo proyecto de API y valide la asignación de cuota actual del desarrollador.

Cada formulario nuevo nos informará el uso que pretendes hacer de la API de YouTube y nos permitirá brindarte una mejor asistencia.

Hay más detalles disponibles en nuestra nueva guía de auditorías de cumplimiento de las APIs.

12 de mayo de 2021

Nota: Este es un anuncio de baja.

Esta actualización abarca los siguientes cambios en la API:

  • La propiedad contentDetails.relatedPlaylists.favorites del recurso channel dejó de estar disponible. La función de videos favoritos dejó de estar disponible desde hace varios años, como se indica en la entrada del historial de revisión del 28 de abril de 2016.

    Antes de esta actualización, la API creaba una nueva playlist si un cliente de API intentaba agregar un video a una playlist de favoritos que no existía. De ahora en adelante, no se creará la playlist en este caso, y la API mostrará un error. Los intentos de agregar, modificar o borrar elementos para modificar las playlists de favoritos también quedarán obsoletos según los anuncios anteriores y podrían comenzar a mostrar errores en cualquier momento.

  • Las siguientes propiedades del recurso channel dejaron de estar disponibles. Estas propiedades ya no son compatibles con la IU de YouTube Studio ni en YouTube. Como resultado, ya no son compatibles con la API.

    • brandingSettings.channel.defaultTab
    • brandingSettings.channel.featuredChannelsTitle
    • brandingSettings.channel.featuredChannelsUrls[]
    • brandingSettings.channel.profileColor
    • brandingSettings.channel.showBrowseView
    • brandingSettings.channel.showRelatedChannels

    Se quitaron todas las propiedades de la representación del recurso channel y sus definiciones de la lista de propiedades del recurso. Además, los errores asociados con estas propiedades se quitaron de la documentación específica del método.

  • Las siguientes propiedades del recurso channelSection dejaron de estar disponibles. Estas propiedades ya no son compatibles con la IU de YouTube Studio ni en YouTube. Como resultado, ya no son compatibles con la API.

    • snippet.style
    • snippet.defaultLanguage
    • snippet.localized.title
    • localizations
    • localizations.(key)
    • localizations.(key).title
    • targeting
    • targeting.languages[]
    • targeting.regions[]
    • targeting.countries[]

    Junto con este cambio, el parámetro hl del método channelSection.list también dejó de estar disponible, ya que las funciones que admite no son compatibles.

    Se quitaron todas las propiedades de la representación del recurso channelSection y sus definiciones de la lista de propiedades del recurso. Además, los errores asociados con estas propiedades se quitaron de la documentación específica del método.

  • Los siguientes valores dejaron de estar disponibles para la propiedad snippet.type del recurso channelSection. Estos valores ya no son compatibles con los canales de usuario de YouTube y, por lo tanto, ya no son compatibles a través de la API.

    • likedPlaylists
    • likes
    • postedPlaylists
    • postedVideos
    • recentActivity
    • recentPosts
  • La propiedad snippet.tags[] del recurso playlist dejó de estar disponible. Esta propiedad ya no es compatible en YouTube y, por lo tanto, ya no es compatible con la API.

9 de febrero de 2021

El recurso playlistItem admite dos propiedades nuevas:

28 de enero de 2021

Esta actualización incluye los siguientes cambios:

  • Los métodos playlistItems.delete, playlistItems.insert, playlistItems.list, playlistItems.update, playlists.delete, playlists.list y playlists.update admiten un nuevo error playlistOperationUnsupported. Este error se produce cuando una solicitud intenta realizar una operación que no está permitida para una playlist en particular. Por ejemplo, un usuario no puede borrar un video de la playlist de videos que subió ni la playlist en sí.

    En todos los casos, este error muestra un código de respuesta HTTP 400 (solicitud incorrecta).

  • Se quitaron de la documentación los errores watchHistoryNotAccessible y watchLaterNotAccessible del método playlistItems.list. Si bien no se puede acceder al historial de reproducciones ni a las listas Ver más tarde de los usuarios a través de la API, esta no muestra estos errores en particular.

15 de octubre de 2020

Se agregaron dos secciones nuevas a las Políticas para Desarrolladores:

  • La nueva Sección III.E.4.i proporciona información adicional sobre los datos que se recopilan y envían mediante el reproductor incorporado de YouTube. Eres responsable de todos los datos del usuario que nos envías a través de cualquier reproductor incorporado de YouTube antes de que el usuario interactúe con el reproductor para indicar la intención de reproducción. Para limitar los datos que se comparten con YouTube antes de que un usuario interactúe con el reproductor, configura la reproducción automática como falsa.
  • La nueva Sección III.E.4.j se relaciona con la verificación del estado del contenido creado para niños (MFK) antes de incorporarlo en tus sitios y apps. Eres responsable de saber cuándo los videos que incorporas en tu Cliente de API están creados para niños y de tratar los datos recopilados desde el reproductor incorporado según corresponda. Por lo tanto, debes verificar el estado del contenido usando el Servicio de la API de datos de YouTube antes de incorporarlo a tu cliente de la API a través de cualquier reproductor incorporado de YouTube.

En la nueva guía Cómo encontrar el estado MadeForKids de un video, se explica cómo buscar el estado de contenido creado para niños de un video con el Servicio de la API de datos de YouTube.

Junto con estos cambios, se agregó un recordatorio a la documentación de parámetros del reproductor incorporado para explicar que si habilitas la reproducción automática, la reproducción se producirá sin que el usuario interactúe con el reproductor. Por lo tanto, se recopilarán y compartirán los datos de reproducción cuando se cargue la página.

8 de octubre de 2020

Esta actualización abarca tres cambios pequeños relacionados con el recurso channel:

  • El objeto snippet.thumbnails, que identifica las imágenes en miniatura de un canal, puede estar vacío para los canales creados recientemente y podría tardar hasta un día en propagarse.
  • La propiedad statistics.videoCount refleja el recuento de videos públicos del canal solo, incluso para los propietarios. Este comportamiento es coherente con los recuentos que se muestran en el sitio web de YouTube.
  • Las palabras clave de canal, que se identifican en la propiedad brandingSettings.channel.keywords, pueden truncarse si exceden la longitud máxima permitida de 500 caracteres o si contienen comillas sin escape ("). Ten en cuenta que el límite de 500 caracteres no es un límite por palabra clave, sino más bien un límite en la longitud total de todas las palabras clave. Este comportamiento es coherente con el del sitio web de YouTube.

9 de septiembre de 2020

Nota: Este es un anuncio de baja.

Esta actualización abarca los siguientes cambios en la API. Todos los cambios entrarán en vigencia el 9 de septiembre de 2020 a partir de la fecha de este anuncio. Con esto en mente, los desarrolladores ya no deben confiar en ninguna de las funciones de API que se enumeran a continuación.

  • Los siguientes recursos, métodos, parámetros y propiedades de recursos de API dejaron de estar disponibles de inmediato y dejarán de funcionar a partir de la fecha de este anuncio:
    • Las siguientes propiedades del recurso channel:
      • La propiedad statistics.commentCount
      • El objeto brandingSettings.image y todas sus propiedades secundarias
      • La lista brandingSettings.hints y todas sus propiedades secundarias
    • El parámetro de filtro categoryId del método channels.list
    • El recurso guideCategories y el método guideCategories.list
  • Las respuestas de la API para el método channels.list ya no contienen la propiedad prevPageToken si la solicitud a la API establece el parámetro managedByMe en true. Este cambio no afecta la propiedad prevPageToken para otras solicitudes channels.list ni la propiedad nextPageToken para ninguna solicitud.
  • Las propiedades contentDetails.relatedPlaylists.watchLater y contentDetails.relatedPlaylists.watchHistory del recurso channel se anunciaron como obsoletas el 11 de agosto de 2016. La compatibilidad de los métodos playlistItems.insert y playlistItems.delete con estas playlists también dejó de estar disponible por completo y se quitaron las dos propiedades de la documentación.
  • Se quitó de la documentación el parámetro mySubscribers del método channels.list, que se anunció como obsoleto el 30 de julio de 2013. Usa el método subscriptions.list y su parámetro mySubscribers para recuperar una lista de suscriptores del canal del usuario autenticado.
  • Se quitaron de la documentación el objeto invideoPromotion del recurso channel y todas sus propiedades secundarias, que se anunciaron como obsoletas el 27 de noviembre de 2017.

29 de julio de 2020

Simplificamos nuestro proceso de cobro de la cuota de las solicitudes a la API mediante la eliminación del costo adicional asociado con el parámetro part. Con vigencia inmediata, solo se cobrará el costo base del método al que se llama. Puedes encontrar más información sobre la cuota simplificada aquí.

El efecto de este cambio es que la mayoría de las llamadas a la API tendrán un costo de cuota ligeramente más bajo, mientras que algunas llamadas a la API tendrán el mismo costo. Este cambio no aumenta el costo de las llamadas a la API. En general, el impacto probable es que tu cuota asignada, que se puede ver en la consola de Google Cloud, irá un poco más allá.

Recomendamos que todos los desarrolladores completen una auditoría de cumplimiento en sus proyectos para garantizar el acceso continuo a los servicios de la API de YouTube.

Esta entrada del historial de revisión se publicó originalmente el 20 de julio de 2020.

28 de julio de 2020

Todos los videos que se suban a través del extremo videos.insert desde proyectos de API no verificados creados después del 28 de julio de 2020 estarán restringidos al modo de visualización privada. Para quitar esta restricción, cada proyecto debe pasarse a una auditoría para verificar el cumplimiento de las Condiciones del Servicio.

Los creadores que usen un cliente de la API no verificado para subir videos recibirán un correo electrónico en el que se les explicará que su video se bloqueó y marcó como privado, y que pueden evitar la restricción usando un cliente oficial o auditado.

Por el momento, los proyectos de API creados antes del 28 de julio de 2020 no se ven afectados por este cambio. Sin embargo, recomendamos que todos los desarrolladores completen una auditoría de cumplimiento en sus proyectos para garantizar el acceso continuo a los servicios de la API de YouTube.

21 de julio de 2020

[Actualizado el 28 de julio de 2020]. La actualización de la documentación a la que se hace referencia en esta entrada del historial de revisión se volvió a publicar el 28 de julio de 2020.

Ayer, publicamos una actualización de la documentación relacionada con nuestro proceso para la cuota de cobro. Sin embargo, debido a circunstancias imprevistas, el cambio en la cuota aún no entró en vigencia. Como resultado, se revirtió la documentación para garantizar la exactitud. Para evitar confusiones, la entrada del historial de revisión que explica el cambio se quitó y se volverá a publicar próximamente.

7 de julio de 2020

Nota: Este es un anuncio de baja.

Los parámetros autoLevels y stabilize del método videos.insert ahora están obsoletos y ambos se quitaron de la documentación. Se ignoran sus valores y no afectan la forma en que se procesan los videos subidos recientemente.

15 de junio de 2020

En la nueva guía Cumplimiento de las Políticas para Desarrolladores de YouTube, se proporcionan orientación y ejemplos para garantizar que tus clientes de la API cumplan con partes específicas de las Condiciones y las Políticas de los Servicios de la API de YouTube.

Esta guía ofrece información sobre cómo YouTube aplica ciertos aspectos de las Condiciones del Servicio de la API, pero no reemplaza ningún documento existente. En esta guía, se abordan algunas de las preguntas más comunes que hacen los desarrolladores durante las auditorías de cumplimiento de las APIs. Esperamos que esta función te ayude a comprender cómo interpretamos y aplicamos nuestras políticas para simplificar el proceso de desarrollo de las funciones.

4 de junio de 2020

Nota: Esta es una actualización de un anuncio de baja anterior.

La función de boletín de canales ya no está disponible. Este cambio se anunció inicialmente el 17 de abril de 2020 y ya entró en vigencia. Como resultado, ya no se admite el método activities.insert, y el método activities.list ya no muestra boletines de canales. Para obtener más información, consulta el Centro de ayuda de YouTube.

17 de abril de 2020

Nota: Este es un anuncio de baja.

YouTube dará de baja la función de boletín del canal. Como resultado, el método activities.insert dejará de estar disponible y el método activities.list dejará de mostrar boletines de canales. Estos cambios entrarán en vigencia en la API a partir del 18 de mayo de 2020. Para obtener más información, consulta el Centro de ayuda de YouTube.

31 de marzo de 2020

Esta actualización incluye los siguientes cambios:

  • Recursos y métodos nuevos

    • El nuevo recurso member representa a un miembro de un canal de YouTube. Este proporciona apoyo monetario recurrente a un creador y recibe beneficios especiales. Por ejemplo, los miembros pueden chatear cuando el creador activa el modo exclusivo para miembros en un chat.

      Este recurso reemplaza al recurso sponsor, que se documenta como parte de la API de transmisión en vivo de YouTube. El recurso sponsor dejó de estar disponible, y los clientes de la API deben actualizar las llamadas al método sponsors.list para usar el método members.list en su lugar.

    • El nuevo recurso membershipsLevel identifica un nivel de precio administrado por el creador que autorizó la solicitud a la API. El método membershipsLevels.list recupera una lista de todos los niveles de membresía del creador.

10 de enero de 2020

La API ahora admite la capacidad de identificar contenido dirigido a niños, algo que YouTube denomina “creado para niños”. Obtén más información sobre el contenido “creado para niños” en el Centro de ayuda de YouTube.

Los recursos channel y video admiten dos propiedades nuevas que permiten a los creadores y usuarios de contenido identificar el contenido creado para niños:

  • La propiedad selfDeclaredMadeForKids permite a los creadores de contenido especificar si un canal o video es creado para niños.

    Para los canales, esta propiedad se puede configurar cuando se llama al método channels.update. En el caso de los videos, esta propiedad se puede configurar cuando se llama a los métodos videos.insert o videos.update.

    Ten en cuenta que esta propiedad solo se incluye en las respuestas de la API que contienen recursos channel o video si el propietario del canal autorizó la solicitud a la API.
  • La propiedad madeForKids permite que cualquier usuario recupere el estado "creado para niños" de un canal o un video. Por ejemplo, el estado puede determinarse en función del valor de la propiedad selfDeclaredMadeForKids. Consulta el Centro de ayuda de YouTube para obtener más información sobre cómo configurar el público de tu canal, tus videos o tus transmisiones.

También actualizamos las Condiciones del Servicio y las Políticas para Desarrolladores de los Servicios de la API de YouTube. Consulta las Condiciones del Servicio de los servicios de la API de YouTube: Historial de revisión para obtener más información. Los cambios en las Condiciones del Servicio y las Políticas para Desarrolladores de los Servicios de la API de YouTube entrarán en vigencia el 10 de enero de 2020 (hora del Pacífico).

10 de septiembre de 2019

Se actualizó la documentación de referencia de la API para reflejar un cambio en la manera en que se informan los recuentos de suscriptores en YouTube y, en consecuencia, en las respuestas de la API. Como resultado del cambio, los recuentos de suscriptores que muestra el Servicio de la API de datos de YouTube se redondean a tres cifras significativas en el caso de recuentos superiores a 1,000 suscriptores. Este cambio afecta a la propiedad statistics.subscriberCount del recurso channel.

Nota: Este cambio afecta el valor de esta propiedad incluso en los casos en que un usuario envía una solicitud autorizada de datos sobre su propio canal. Los propietarios de canales pueden consultar los recuentos exactos de suscriptores en YouTube Studio.

Por ejemplo, si un canal tiene 123,456 suscriptores, la propiedad statistics.subscriberCount contendrá el valor 123000. En la siguiente tabla, se muestran ejemplos de cómo se redondean los recuentos de suscriptores en las respuestas de la API y se abrevian en otras interfaces de usuario de YouTube visibles públicamente:

Ejemplo de recuento de suscriptores API de YouTube Data IUs de YouTube visibles públicamente
1.234 1230 1,230
12,345 12300 12,300
123.456 123000 123,000
1.234.567 1230000 1.23 M
12.345.678 12300000 12.3 M
123,456,789 123000000 123 M

4 de abril de 2019

Esta actualización incluye los siguientes cambios:

  • La documentación de referencia de la API se actualizó para explicar mejor los casos de uso comunes de cada método y proporcionar muestras de código dinámicas y de alta calidad a través del widget del Explorador de APIs. Consulta la documentación del método channels.list para ver un ejemplo. Ahora hay dos elementos nuevos en las páginas que describen los métodos de la API:

    • El widget del Explorador de APIs te permite seleccionar los permisos de autorización, ingresar valores de parámetros y propiedades de muestra, enviar solicitudes reales a la API y ver las respuestas reales de la API. El widget también ofrece una vista de pantalla completa en la que se muestran muestras de código completas, que se actualizan de forma dinámica para usar los alcances y los valores que ingresaste.

    • En la sección Casos de uso comunes, se describen uno o más casos de uso para el método que se explica en la página. Por ejemplo, puedes llamar al método channels.list para recuperar datos sobre un canal específico o sobre el canal del usuario actual.

      Puedes usar los vínculos de esa sección para completar el Explorador de APIs con valores de muestra para tu caso de uso o abrir el Explorador de APIs en pantalla completa con esos valores ya incluidos. El objetivo de estos cambios es que te resulte más fácil ver muestras de código que se apliquen de forma directa al caso de uso que intentas implementar en tu propia aplicación.

    Actualmente, las muestras de código son compatibles con Java, JavaScript, PHP, Python y curl.

  • La herramienta de muestras de código también se actualizó con una nueva IU que ofrece las mismas funciones descritas anteriormente. Con esa herramienta, puedes explorar casos de uso para diferentes métodos, cargar valores en el Explorador de APIs y abrir el Explorador de APIs en pantalla completa para obtener muestras de código en Java, JavaScript, PHP y Python.

    Además de este cambio, se quitaron las páginas que antes enumeraban las muestras de código disponibles para Java, JavaScript, PHP y Python.

  • Se actualizaron las guías de inicio rápido para Java, JavaScript, PHP y Python. Las guías revisadas explican cómo ejecutar una muestra con una clave de API y otra con un ID de cliente de OAuth 2.0. Para ello, se usan muestras de código del Explorador de APIs.

Ten en cuenta que los cambios descritos anteriormente reemplazan una herramienta interactiva que se agregó a la documentación de la API en 2017.

9 de julio de 2018

Esta actualización incluye los siguientes cambios:

  • Se actualizó la definición de la propiedad snippet.thumbnails del recurso channel para indicar que, cuando se muestran miniaturas en tu aplicación, tu código debe usar las URLs de las imágenes exactamente como se muestran en las respuestas de la API. Por ejemplo, tu aplicación no debería utilizar el dominio http en lugar del dominio https en una URL que se muestra en una respuesta de la API.

    A partir de julio de 2018, las URLs de las miniaturas de los canales solo estarán disponibles en el dominio https, que es la forma en que aparecen las URLs en las respuestas de la API. Luego de ese tiempo, es posible que veas imágenes rotas en tu aplicación si intenta cargar imágenes de YouTube desde el dominio http.

  • Nota: Este es un anuncio de baja.

    La propiedad recordingDetails.location.altitude del recurso video dejó de estar disponible. No hay garantía de que los videos muestren valores para esta propiedad. Del mismo modo, incluso si las solicitudes a la API intentan establecer un valor para esa propiedad, es posible que no se almacenen los datos entrantes.

22 de junio de 2018

La Guía de implementación, antes conocida como Guía de implementación y migración, se actualizó con el fin de quitar instrucciones para migrar de la API v2 a la API v3. Además, se quitaron las instrucciones para las funciones que dejaron de estar disponibles en la API v3, como los videos favoritos.

27 de noviembre de 2017

Esta actualización incluye los siguientes cambios:

  • Nota: Este es un anuncio de baja.

    YouTube quitará la compatibilidad con las funciones Video destacado y Sitio web destacado, que son compatibles con la API a través del objeto invideoPromotion del recurso channel. Como resultado, ese objeto y todas sus propiedades secundarias dejarán de estar disponibles.

    Aún puedes recuperar y configurar los datos de invideoPromotion hasta el 14 de diciembre de 2017. Después de esa fecha, ocurrirá lo siguiente:

    • Los intentos de recuperar la parte invideoPromotion cuando se llama a channels.list mostrarán un invideoPromotion vacío o no mostrarán datos de invideoPromotion.
    • Los intentos de actualizar los datos de invideoPromotion cuando se llama a channels.update mostrarán una respuesta exitosa al menos hasta el 27 de mayo de 2018, pero se tratarán como no-ops, lo que significa que en realidad no realizarán una actualización.

    Después del 27 de mayo de 2018, es posible que estas solicitudes muestren mensajes de error para indicar, por ejemplo, que invalidPromotion no es una parte válida.

16 de noviembre de 2017

Esta actualización incluye los siguientes cambios:

  • La herramienta interactiva de fragmento de código ahora admite muestras de código de Node.js. Las muestras también se pueden ver en la documentación de casi todos los métodos de la API, como el método channels.list.

    Las muestras personalizables están diseñadas para brindarte un punto de partida específico en un caso de uso para una aplicación de Node.js. La función es similar al código de la guía de inicio rápido de Node.js. Sin embargo, las muestras contienen algunas funciones de utilidad que no aparecen en la guía de inicio rápido:

    • La función removeEmptyParameters toma una lista de pares clave-valor correspondientes a los parámetros de solicitud a la API y quita los parámetros que no tienen valores.
    • La función createResource toma una lista de pares clave-valor correspondientes a las propiedades de un recurso de API. Luego, convierte las propiedades en un objeto JSON que se puede usar en las operaciones insert y update. En el siguiente ejemplo, se muestra un conjunto de nombres y valores de propiedades, además del objeto JSON que el código crearía para ellas:
      # Key-value pairs:
      {'id': 'ABC123',
       'snippet.title': 'Resource title',
       'snippet.description': 'Resource description',
       'status.privacyStatus': 'private'}
      
      # JSON object:
      {
       'id': 'ABC123',
       'snippet': {
         'title': 'Resource title',
         'description': 'Resource description',
       },
       'status': {
         'privacyStatus': 'private'
       }
      }

    Todas estas muestras están diseñadas para descargarse y ejecutarse de forma local. Si deseas obtener más información, consulta los requisitos para ejecutar muestras de código completas de manera local en las instrucciones de la herramienta de fragmento de código.

25 de octubre de 2017

Esta actualización incluye los siguientes cambios:

  • Se actualizaron las muestras de código de Python en la herramienta interactiva de fragmentos de código para usar las bibliotecas google-auth y google-auth-oauthlib, en lugar de la biblioteca oauth2client, que dejó de estar disponible.

    Además de ese cambio, la herramienta ahora proporciona muestras de código completas para aplicaciones de Python instaladas y aplicaciones del servidor web de Python, que utilizan flujos de autorización ligeramente diferentes. Para ver los ejemplos completos (y el cambio), sigue estos pasos:

    1. Ve a la herramienta de fragmento de código interactivo o a la documentación de cualquier método de API, como el método channels.list.
    2. Haz clic en la pestaña Python que se encuentra sobre las muestras de código.
    3. Haz clic en el botón de activación que se encuentra sobre las pestañas para dejar de ver un fragmento a una muestra completa.
    4. Ahora, la pestaña debería mostrar una muestra de código completa que use el flujo de autorización de InstalledAppFlow. En la descripción anterior del ejemplo, se explica esto y también se vincula a un ejemplo de una aplicación de servidor web.
    5. Haz clic en el vínculo para cambiar al ejemplo del servidor web. Esa muestra usa el framework de aplicación web Flask y un flujo de autorización diferente.

    Todas estas muestras están diseñadas para descargarse y ejecutarse de forma local. Si deseas ejecutar las muestras, consulta las instrucciones para ejecutar muestras de código completas de manera local en las instrucciones de la herramienta de fragmento de código.

29 de agosto de 2017

Esta actualización incluye los siguientes cambios:

  • Se actualizó la definición del parámetro forContentOwner del método search.list para indicar que, si ese parámetro se establece en true, el parámetro type se debe establecer en video.
  • Se actualizó la definición del parámetro regionCode del método search.list para aclarar que el parámetro restringe los resultados de la búsqueda a los videos que se pueden ver en la región especificada.
  • YouTube actualizó los logotipos y los íconos de desarrollo de la marca. Los nuevos logotipos “desarrollados con YouTube” se pueden descargar de la página de lineamientos de desarrollo de la marca. En esa página, también se mostrarán otros íconos y logotipos nuevos de YouTube, que podrás descargar desde el sitio de la marca de YouTube.

24 de julio de 2017

Esta actualización incluye los siguientes cambios:

  • Hay una nueva guía de inicio rápido de la API de datos de YouTube disponible para iOS. Esta guía explica cómo usar la API de datos de YouTube en una aplicación simple para iOS escrita en Objective-C o Swift.
  • La herramienta de fragmento de código interactivo para la API de datos de YouTube ahora incluye documentación que explica algunas de las funciones de la herramienta:
    • Cómo ejecutar solicitudes a la API
    • Alterna entre fragmentos de código y muestras de código completas
    • Usa funciones estándar
    • Cómo cargar recursos existentes (para métodos de actualización)

    Nota: La herramienta también está incorporada en la documentación de referencia de la API para los métodos de la API (ejemplo).

1 de junio de 2017

Esta actualización incluye los siguientes cambios:

17 de mayo de 2017

Esta actualización incluye los siguientes cambios:

  • Se actualizó la documentación de referencia de la API para que los fragmentos de código sean más interactivos y visibles. Las páginas que explican métodos de API, como channels.list o videos.rate, ahora incluyen una herramienta interactiva que te permite ver y personalizar fragmentos de código en Java, JavaScript, PHP, Python, Ruby, Apps Script y Go.

    Para cualquier método dado, la herramienta muestra fragmentos de código para uno o más casos de uso, y cada caso de uso describe una forma común de llamar a ese método. Por ejemplo, puedes llamar al método channels.list para recuperar datos sobre un canal específico o sobre el canal del usuario actual.

    También puedes interactuar con muestras de código:

    • Modifica los valores de los parámetros y las propiedades, y los fragmentos de código se actualizan de forma dinámica para reflejar los valores que proporcionas.

    • Alterna entre los fragmentos de código y las muestras completas. Un fragmento de código muestra la parte del código que llama al método de la API. Una muestra completa contiene ese fragmento, así como el código estándar para autorizar y enviar solicitudes. Las muestras completas se pueden copiar y ejecutar desde la línea de comandos o un servidor web local.

    • Para ejecutar las solicitudes, haz clic en un botón. (Para ejecutar solicitudes, debes autorizar a la herramienta para que llame a la API en tu nombre).

    Ten en cuenta que esta herramienta reemplazó al Explorador de APIs en las páginas en las que está disponible. (En cada página, se muestra un vínculo para que también puedas cargar la solicitud en la que estás trabajando en el Explorador de APIs).

  • También se actualizó la herramienta Fragmentos de código de la API de datos con una IU nueva que ofrece las mismas funciones que se describieron anteriormente. Las principales funciones nuevas disponibles en esta página son las siguientes:

    • Compatibilidad con solicitudes a la API que escriben datos.
    • Compatibilidad con muestras de Java.
    • Código estándar más completo y flexible para autorizar a usuarios y compilar solicitudes a la API.

27 de abril de 2017

Esta actualización incluye los siguientes cambios:

30 de marzo de 2017

Esta actualización incluye los siguientes cambios:

  • La nueva propiedad topicDetails.topicCategories[] del recurso channel contiene una lista de URLs de Wikipedia que describen el contenido del canal. Las URLs corresponden a los IDs de tema que se muestran en la propiedad topicDetails.topicIds[] del recurso.
  • La nueva propiedad contentDetails.videoPublishedAt del recurso playlistItem identifica la hora en la que el video se publicó en YouTube. El recurso ya contiene la propiedad snippet.publishedAt, que identifica la hora en la que el elemento se agregó a la playlist.
  • Al igual que el recurso channel, el recurso video ahora muestra la propiedad topicDetails.topicCategories[], que incluye una lista de URLs de Wikipedia que describen el contenido del video. En los recursos video, las URLs corresponden a los IDs de tema que se muestran en la propiedad topicDetails.relevantTopicIds[] del recurso.
  • La nueva propiedad contentDetails.contentRating.mpaatRating del recurso video identifica la calificación que la Motion Picture Association of America le dio a la vista previa o el avance de una película.

27 de febrero de 2017

Como se anunció originalmente el 11 de agosto de 2016, YouTube cambió la lista compatible de IDs de temas a una lista seleccionada. La lista completa de los IDs de temas admitidos se incluye en las propiedades topicDetails para los recursos channel y video, así como en el parámetro topicId del método search.list.

Ten en cuenta que hay varios cambios en la lista seleccionada:

  • Los siguientes temas se agregaron como subtemas de Society:
    NombreID del tema
    Beneficios para la empresa/m/09s1f
    Estado/m/0kt51
    Militar/m/01h6rj
    Política/m/05qt0
    Religión/m/06bvp
  • Se quitó el tema Animated cartoon, que antes era un elemento secundario de Entertainment.
  • Se quitó el tema Children's music, que antes era un elemento secundario de Music.

Como resultado de este cambio, los temas relacionados con un video ahora siempre se muestran en el valor de propiedad topicDetails.relevantTopicIds[] del recurso video.

29 de noviembre de 2016

Esta actualización incluye los siguientes cambios:

  • Existen tres cambios pequeños en la lista de IDs de temas que se admitirán a partir del 10 de febrero de 2017:

    • La categoría Professional wrestling, que antes era un elemento secundario de la categoría Sports, ahora es un elemento secundario de Entertainment.
    • La categoría TV shows, que es secundaria de Entertainment, es nueva.
    • Se quitó la categoría Health, que anteriormente era secundaria de Lifestyle.

    Además, ten en cuenta que existen algunas categorías principales (Entertainment, Gaming, Lifestyle, Music y Sports). Cualquier video que esté asociado con una categoría secundaria, como Tennis, también se asociará con la categoría superior (Sports).

10 de noviembre de 2016

Esta actualización incluye los siguientes cambios:

  • Como se anunció por primera vez el 11 de agosto de 2016, las bajas de Freebase y la API de Freebase requieren varios cambios relacionados con los ID de temas. Los IDs de tema identifican temas asociados con los recursos channel y video, y también puedes usar el parámetro de búsqueda topicId para encontrar canales o videos relacionados con un tema en particular.

    El 10 de febrero de 2017, YouTube comenzará a mostrar un conjunto pequeño de IDs de temas en lugar del conjunto mucho más detallado de IDs que se mostraron hasta el momento. Además, ten en cuenta que no se garantiza que los canales y videos estén asociados con ningún tema, lo cual concuerda con el comportamiento actual de la API.

    Para que puedas preparar tus clientes de API para esos cambios, se actualizaron las definiciones de los siguientes parámetros y propiedades de la API a fin de enumerar los IDs de tema que se admitirán después de ese tiempo. Ten en cuenta que la lista de categorías es la misma para todas las propiedades.

  • Nota: Este es un anuncio de baja.

    Las siguientes propiedades dejarán de estar disponibles:

    • La propiedad topicDetails.topicIds[] del recurso channel Esta propiedad se admitirá hasta el 10 de noviembre de 2017.
    • La propiedad topicDetails.relevantTopicIds[] del recurso video Esta propiedad se admitirá hasta el 10 de noviembre de 2017.
    • La propiedad topicDetails.topicIds[] del recurso video Esta propiedad no contendrá valores después del 10 de febrero de 2017. (Después de esa fecha, el valor de la propiedad topicDetails.relevantTopicIds[] identificará todos los temas asociados con un video).

  • Como Freebase ya no está disponible, se quitó la guía Cómo buscar con temas de Freebase de la documentación. Esa guía proporciona ejemplos de código para mostrar cómo funcionaría una aplicación con la API de Freebase.

    Además, se quitaron de la documentación del método search.list varias muestras de código relacionadas con los IDs de tema.

2 de noviembre de 2016

Esta actualización incluye los siguientes cambios:

  • Propiedades y parámetros nuevos

    • El recurso video contiene varias propiedades nuevas:

      • La propiedad player.embedHtml contiene una etiqueta <iframe> que puedes utilizar para incorporar un reproductor que reproduzca el video. Las nuevas propiedades player.embedHeight y player.embedWidth identifican las dimensiones del reproductor incorporado. Estas propiedades solo se muestran si la solicitud a la API especifica un valor para al menos uno de los parámetros maxHeight o maxWidth. Esos dos parámetros nuevos se explican más adelante en esta entrada del historial de revisión.

      • La nueva propiedad hasCustomThumbnail indica si quien subió el video proporcionó una imagen en miniatura personalizada para este. Ten en cuenta que esta propiedad solo es visible para quien sube el video.

      • El nuevo fpbRatingReasons[] identifica los motivos por los que el video recibió la clasificación FPB (Sudáfrica).

      • El nuevo mcstRating identifica la clasificación que el video recibió en Vietnam.

    • El método videos.list admite dos parámetros nuevos: maxHeight y maxWidth. Puedes usar uno o ambos parámetros cuando recuperas la parte player en los recursos video.

      De forma predeterminada, la altura del elemento <iframe> que se muestra en la propiedad player.embedHtml es de 360 px. El ancho se ajusta para coincidir con la relación de aspecto del video, lo que garantiza que el reproductor incorporado no tenga barras negras que encuadren el video. Por ejemplo, si la relación de aspecto de un video es 16:9, el ancho del reproductor será de 640 px.

      Con los parámetros nuevos, puedes especificar que, en lugar de las dimensiones predeterminadas, el código de incorporación utilice una altura o un ancho adecuados para el diseño de tu aplicación. El servidor de la API ajusta las dimensiones del reproductor según corresponda para garantizar que el reproductor incorporado no tenga barras negras enmarcadas en el video. Ten en cuenta que ambos parámetros especifican las dimensiones máximas del reproductor insertado. Por lo tanto, si se especifican ambos parámetros, es posible que una dimensión aún sea más pequeña que la cantidad máxima permitida para esa dimensión.

      Por ejemplo, supongamos que un video tiene una relación de aspecto de 16:9. Por lo tanto, la etiqueta player.embedHtml contendrá un reproductor de 640 x 360 si no se establece el parámetro maxHeight o maxWidth.

      • Si el parámetro maxHeight se establece en 720 y no se establece el parámetro maxWidth, la API mostrará un reproductor de 1280 x 720.
      • Si el parámetro maxWidth se establece en 960 y no se establece el parámetro maxHeight, la API mostrará un reproductor de 960 x 540.
      • Si el parámetro maxWidth se establece en 960 y el parámetro maxHeight se establece en 450, la API mostrará un reproductor de 800 x 450.

      Las nuevas propiedades player.embedHeight y player.embedWidth, que se describieron más arriba, identifican las dimensiones del reproductor.

  • Actualizaciones de métodos, propiedades y parámetros existentes

    • Se actualizó la descripción del recurso channelSection para indicar que un canal puede crear un máximo de 10 bibliotecas sin configurar los datos de segmentación, y puede crear un máximo de 100 bibliotecas con datos de segmentación.

      Además, se actualizó la propiedad targeting del recurso channelSection para reflejar el hecho de que las opciones de segmentación solo se pueden configurar con la API. Las opciones de segmentación se borran si se modifica la sección del canal con la interfaz de usuario en el sitio web de YouTube.

    • Se corrigió la definición de la propiedad snippet.name del recurso i18nLanguage para reflejar que el valor representa el nombre de un idioma tal como se escribe en el idioma especificado por el parámetro hl del método i18nLanguage.list.

    • Se actualizó la propiedad contentDetails.note del recurso playlistItem para indicar que la longitud máxima del valor de la propiedad es de 280 caracteres.

    • Las propiedades contentDetails.startAt y contentDetails.endAt del recurso playlistItem dejaron de estar disponibles. Estos campos se ignoran si se configuran en solicitudes playlistItems.insert o playlistItems.update.

    • Los métodos playlistItems.delete y playlistItems.update ahora admiten el parámetro onBehalfOfContentOwner, que ya es compatible con varios otros métodos. Las solicitudes que usan ese método también deben autorizarse con un token que proporcione acceso al permiso https://www.googleapis.com/auth/youtubepartner.

    • Los parámetros publishedBefore y publishedAfter del método search.list se actualizaron para indicar que los valores de los parámetros son inclusivos. Por ejemplo, si se configura el parámetro publishedBefore, la API muestra los recursos creados antes de o en el momento especificado.

    • La propiedad contentDetails.contentRating.grfilmRating del recurso video admite tres valores adicionales: grfilmK12, grfilmK15 y grfilmK18.

    • La descripción del método videos.insert se actualizó para indicar que el tamaño máximo de archivo para los videos subidos aumentó de 64 GB a 128 GB.

  • Errores nuevos y actualizados

    • La API admite los siguientes errores nuevos:

      Tipo de error Detalle del error Descripción
      forbidden (403) homeParameterDeprecated El método activities.list muestra este error para indicar que los datos de la actividad de la página principal del usuario no están disponibles a través de esta API. Este error puede ocurrir si estableces el parámetro home en true en una solicitud no autorizada.
      invalidValue (400) invalidContentDetails El método playlistItems.insert devuelve este error para indicar que el objeto contentDetails de la solicitud no es válido. Una de las razones por las que se produce este error es que el campo contentDetails.note supera los 280 caracteres.
      forbidden (403) watchHistoryNotAccessible El método playlistItems.list devuelve este error para indicar que la solicitud intentó recuperar elementos de una playlist del "historial de reproducciones", pero que no se pueden recuperar mediante la API.
      forbidden (403) watchLaterNotAccessible El método playlistItems.list devuelve este error para indicar que la solicitud intentó recuperar elementos de la playlist "ver más tarde", pero estos no se pueden recuperar mediante la API.
      badRequest (400) uploadLimitExceeded El método videos.insert devuelve este error para indicar que el canal superó la cantidad de videos que puede subir.
      forbidden (403) forbiddenEmbedSetting El método videos.update devuelve este error para indicar que la solicitud a la API intenta establecer una configuración de incorporación no válida para el video. Ten en cuenta que es posible que algunos canales no tengan permiso para ofrecer reproductores incorporados para las transmisiones en vivo. Consulta el Centro de ayuda de YouTube para obtener más información.
    • El método playlistItems.insert ya no devuelve un error si insertas un video duplicado en una playlist. Ese error ocurrió anteriormente para algunas playlists, como los videos favoritos, que no permitían duplicados, pero que ya no son compatibles. En general, las playlists sí permiten videos duplicados.

  • Otras actualizaciones

    • Se actualizó la entrada del historial de revisión del 15 de septiembre de 2016 para aclarar que, cuando las propiedades contentDetails.relatedPlaylists.watchHistory y contentDetails.relatedPlaylists.watchLater del recurso channel se incluyan en una respuesta, siempre contendrán los valores HL y WL, respectivamente. Además, esas propiedades solo se incluyen si un usuario autorizado recupera datos sobre el propio canal del usuario.

15 de septiembre de 2016

Esta actualización incluye los siguientes cambios:

  • En la actualización del historial de revisión del 11 de agosto de 2016, se analizaron varios cambios relacionados con los IDs de temas, incluido el hecho de que el conjunto de IDs de temas admitidos cambiará a partir del 10 de febrero de 2017. La lista de temas que se admitirán se publicará el 10 de noviembre de 2016.

  • Estos cambios ya están vigentes. Estos cambios se registraron en la actualización del historial de revisión el 11 de agosto de 2016:

    • Si se llama al método activities.list con el parámetro home establecido en true, la respuesta de la API ahora contendrá elementos similares a los que vería en la página principal un usuario de YouTube que no haya accedido a su cuenta.

      Se trata de un pequeño cambio que tiene como objetivo proporcionar una mejor experiencia del usuario que el comportamiento descrito en la actualización del historial de revisión del 11 de agosto de 2016. Esa actualización indicó que las solicitudes que usaban el parámetro home mostrarían una lista vacía.

    • Las propiedades contentDetails.relatedPlaylists.watchHistory y contentDetails.relatedPlaylists.watchLater del recurso channel ahora contienen valores de HL y WL, respectivamente, para todos los canales.

      Es decir, estas propiedades solo son visibles para el usuario autorizado que recupera datos sobre el propio canal del usuario. Las propiedades siempre contienen los valores HL y WL, incluso para un usuario autorizado que recupera datos sobre el propio canal del usuario. Por lo tanto, los ID del historial de reproducciones y de las playlists “Ver más tarde” no se pueden recuperar a través de la API.

      Además, las solicitudes para recuperar detalles de la playlist (playlists.list) o elementos de la playlist (playlistItems.list) del historial de reproducciones o la playlist Ver más tarde de un canal ahora muestran listas vacías. Este comportamiento se aplica a los nuevos valores, HL y WL, así como a los ID de listas de reproducción del historial de reproducciones o de Ver más tarde que tu cliente de la API pueda haber almacenado.

  • Ya no se muestran el objeto fileDetails.recordingLocation del recurso video ni sus propiedades secundarias. Anteriormente, solo el propietario de un video podía recuperar estos datos (como el objeto fileDetails superior).

11 de agosto de 2016

Esta actualización incluye los siguientes cambios:

  • Las Condiciones del Servicio de los servicios de la API de YouTube publicadas recientemente (“las Condiciones Actualizadas”), que se analizan en detalle en el Blog para desarrolladores y ingeniería de YouTube, proporcionan un conjunto completo de actualizaciones de las Condiciones del Servicio actuales. Además de las Condiciones Actualizadas, que entrarán en vigencia el 10 de febrero de 2017, esta actualización incluye varios documentos de respaldo para ayudar a explicar las políticas que deben seguir los desarrolladores.

    El conjunto completo de documentos nuevos se describe en el historial de revisión de las Condiciones actualizadas. Además, los próximos cambios que se realicen en las Condiciones actualizadas o en los documentos de respaldo también se explicarán en ese historial de revisión. Puedes suscribirte a un feed RSS que muestre los cambios en ese historial de revisión desde un vínculo en el documento.

  • Freebase y la API de Freebase dejaron de estar disponibles, lo que provoca varios cambios relacionados con los ID de temas. Los IDs de tema se usan en los siguientes recursos y métodos de API:

    • La parte topicDetails del recurso channel identifica temas asociados con el canal.
    • La parte topicDetails del recurso video identifica temas asociados con el video.
    • El parámetro topicId del método search.list te permite buscar videos o canales relacionados con un tema en particular.

    Los cambios en estas funciones son los siguientes:

    • A partir del 10 de febrero de 2017, YouTube comenzará a mostrar un conjunto pequeño de IDs de temas en lugar del conjunto mucho más detallado de IDs que se mostraron hasta el momento. Ese conjunto de temas admitidos identificará categorizaciones de alto nivel, como Deportes o Básquet, pero, por ejemplo, no identificará equipos ni jugadores específicos. Anunciaremos el conjunto de temas admitidos para que tengas tiempo de preparar tu postulación para este cambio.

    • Puedes usar cualquier ID de tema de Freebase que ya hayas recuperado para buscar contenido hasta el 10 de febrero de 2017. Sin embargo, después de ese tiempo, solo podrás usar el conjunto más pequeño de temas identificados en el elemento anterior para recuperar resultados de la búsqueda por tema.

    • Después del 10 de febrero de 2017, si intentas buscar resultados con un ID de tema que no esté en el conjunto más pequeño de ID de temas admitidos, la API devolverá un conjunto de resultados vacío.

  • Varios campos y parámetros de la API dejarán de estar disponibles a partir del 12 de septiembre de 2016:

    • El parámetro home del método activities.list permitió que un usuario autorizado recuperara el feed de actividad que se mostraría en la página principal de YouTube para ese usuario. Las solicitudes que usen este parámetro después del 12 de septiembre de 2016 mostrarán una lista vacía.

    • Las propiedades contentDetails.relatedPlaylists.watchHistory y contentDetails.relatedPlaylists.watchLater del recurso channel solo son visibles para el usuario autorizado que recupera datos sobre el propio canal del usuario. Después del 12 de septiembre de 2016, contentDetails.relatedPlaylists.watchHistory mostrará un valor de HL y la propiedad contentDetails.relatedPlaylists.watchLater mostrará un valor de WL para todos los canales.

      Las solicitudes para recuperar detalles de la playlist (playlists.list) correspondientes al historial de reproducciones o a la playlist Ver más tarde de un canal mostrarán una lista vacía después del 12 de septiembre de 2016. Las solicitudes para recuperar elementos de playlists (playlistItems.list) en cualquiera de esas playlists también mostrarán una lista vacía después de ese tiempo. Esto se aplica a los nuevos valores, HL y WL, así como a los ID de listas de reproducción del historial de reproducciones o de Ver más tarde que tu cliente de la API pueda haber almacenado.

    • El objeto fileDetails.recordingLocation del recurso video o cualquiera de sus propiedades secundarias dejarán de mostrarse después del 12 de septiembre de 2016. Solo el propietario de un video puede recuperar estos datos, ya que solo el propietario del video puede recuperar el objeto principal fileDetails.

13 de junio de 2016

Esta actualización incluye los siguientes cambios:

  • La propiedad contentDetails.googlePlusUserId del recurso channel dejó de estar disponible. Anteriormente, la propiedad solo estaba presente si el canal estaba asociado a un perfil de Google+. Luego de la baja, la propiedad ya no se incluirá en ningún recurso de channel.

  • La propiedad snippet.authorGoogleplusProfileUrl del recurso comment dejó de estar disponible. Anteriormente, la propiedad solo estaba presente si el canal estaba asociado a un perfil de Google+. Luego de la baja, la propiedad ya no se incluirá en ningún recurso de comment.

Dado que no se mostrará ninguna de estas propiedades después de la baja, ambas propiedades se quitaron de la documentación del recurso correspondiente.

31 de mayo de 2016

Esta actualización incluye los siguientes cambios:

  • El nuevo parámetro myRecentSubscribers del método subscriptions.list recupera una lista de los suscriptores del canal del usuario autenticado en orden cronológico inverso del momento en que se suscribió al canal.

    Ten en cuenta que el nuevo parámetro solo admite la recuperación de los 1,000 suscriptores más recientes en el canal del usuario autenticado. Para recuperar una lista completa de suscriptores, usa el parámetro mySubscribers. Ese parámetro, que no muestra suscriptores en un orden específico, no limita la cantidad de suscriptores que se pueden recuperar.

  • Se actualizó la definición de la propiedad snippet.thumbnails.(key) para los recursos activity, playlistItem, playlist, resultado de la búsqueda, miniatura y video para indicar que hay tamaños de imagen en miniatura adicionales disponibles para algunos videos.

    • La imagen standard es de 640 px de ancho y 480 px de alto.
    • La imagen maxres es de 1280 px de ancho y 720 px de alto.
  • Se actualizó la definición del parámetro part del método channelSection.list para indicar que la parte targeting se puede recuperar a un costo de unidades de cuota 2.

  • El método videos.list ahora muestra un error prohibido (403) cuando una solicitud autorizada de forma inadecuada intenta recuperar las partes fileDetails, processingDetails o suggestions de un recurso video. Esas partes solo están disponibles para el propietario del video.

17 de mayo de 2016

La nueva herramienta Fragmentos de código de la API de datos proporciona fragmentos cortos para casos de uso comunes de la API de datos de YouTube. Actualmente, los fragmentos de código están disponibles para todos los métodos de API de solo lectura en Apps Script, Go, JavaScript, PHP, Python y Ruby.

Para cada método, la herramienta muestra muestras de código de uno o más casos de uso. Por ejemplo, proporciona cinco fragmentos de código para el método search.list:

  • Cómo mostrar videos por palabra clave
  • Cómo mostrar videos por ubicación
  • Mostrar eventos en vivo
  • Buscar los videos del usuario autenticado
  • Enumerar videos relacionados

Para cada caso de uso, la herramienta muestra los parámetros usados en la solicitud a la API. Puedes modificar los valores de los parámetros, en cuyo caso la herramienta actualiza los fragmentos de código para reflejar los valores del parámetro que proporcionaste.

Por último, la herramienta muestra la respuesta de la API a cada solicitud. Si modificaste los parámetros de la solicitud, la respuesta de la API se basa en los valores de parámetros proporcionados. Ten en cuenta que debes autorizar a la herramienta para que envíe solicitudes en tu nombre para que se muestren las respuestas de la API.

28 de abril de 2016

Esta actualización incluye los siguientes cambios:

  • La nueva propiedad contentDetails.projection del recurso video especifica el formato de proyección del video. Los valores de propiedad válidos son 360 y rectangular.

  • Las propiedades recordingDetails.location y fileDetails.recordingLocation del recurso video se actualizaron para explicar la diferencia entre las dos:

    • La propiedad recordingDetails.location identifica la ubicación que el propietario del video desea asociar con este. Esta ubicación se puede editar, se puede buscar en los videos públicos y se puede mostrar a los usuarios en los videos públicos.
    • El valor de la propiedad fileDetails.recordingLocation es inmutable y representa la ubicación asociada con el archivo de video original que se subió. Solo el propietario del video puede ver este valor.

  • Se actualizó la definición de la propiedad contentDetails.relatedPlaylists.favorites del recurso channel para indicar que el valor de la propiedad puede contener un ID de playlist que hace referencia a una playlist vacía y que no se puede recuperar. Esto se debe a que la función de videos favoritos ya no está disponible. Ten en cuenta que esta propiedad no está sujeta a la política de baja de la API.

  • La definición del error ineligibleAccount, que se puede mostrar con el método comments.insert, comments.update, commentThreads.insert o commentThreads.update, se actualizó para reflejar que el error se produce cuando la cuenta de YouTube utilizada para autorizar la solicitud a la API no se fusionó con la Cuenta de Google del usuario.

20 de abril de 2016

Esta actualización incluye los siguientes cambios:

  • Se actualizó la definición del parámetro part del método channels.update a fin de indicar que localizations también es un valor válido para ese parámetro.

  • La sección Uso de la cuota de la guía de introducción se actualizó para incluir un vínculo a la Consola de Google Developers, donde puedes ver la cuota real y su uso.

16 de marzo de 2016

Esta actualización incluye los siguientes cambios:

  • Actualizaciones de recursos y métodos existentes

    • Se actualizó la documentación del recurso channelBanner para indicar que el tamaño recomendado de la imagen del banner del canal subida es de 2560 px por 1440 px. El tamaño mínimo (2048 x 1152 píxeles) no ha cambiado.

    • La nueva propiedad snippet.customUrl del recurso channel identifica la URL personalizada asociada con el canal. (No todos los canales tienen URLs personalizadas). En el Centro de ayuda de YouTube, se explican los requisitos de elegibilidad para obtener una URL personalizada y cómo configurarla.

    • El objeto brandingSettings.watch del recurso channel y todas sus propiedades secundarias quedaron obsoletos.

    • La respuesta de la API a una solicitud de search.list ahora contiene una propiedad regionCode. La propiedad identifica el código de región que se usó para la búsqueda. El código de región le indica a la API que muestre resultados de la búsqueda para el país especificado.

      El valor de la propiedad es un código de país ISO de dos letras que identifica la región. El método i18nRegions.list devuelve una lista de regiones compatibles. El valor predeterminado es US. Si se especifica una región no admitida, es posible que YouTube seleccione otra región para administrar la consulta en lugar del valor predeterminado.

    • Se actualizaron las definiciones de las propiedades snippet.label y snippet.secondaryReasons[].label del recurso videoAbuseReportReason para indicar que las propiedades contienen texto de etiqueta localizado por los motivos de la denuncia de abuso.

      Además, el método videoAbuseReportReasons.list ahora admite el parámetro hl, que especifica el idioma que se debe usar para el texto de la etiqueta en la respuesta de la API. El valor predeterminado del parámetro es en_US.

    • La nueva propiedad contentDetails.contentRating.ecbmctRating del recurso video identifica la calificación de un video de la Junta de Evaluación y Clasificación del Ministerio de Cultura y Turismo de Türkiye.

      Además, las propiedades de API para otros sistemas de calificación admiten los siguientes valores de propiedad nuevos:

      • contentDetails.contentRating.fpbRating (Sudáfrica)
        Calificación: 10; valor de la propiedad: fpb10
      • contentDetails.contentRating.moctwRating (Taiwán)
        Calificación: R-12; valor de la propiedad: moctwR12
      • contentDetails.contentRating.moctwRating (Taiwán)
        Calificación: R-15; valor de la propiedad: moctwR15
    • La propiedad liveStreamingDetails.activeLiveChatId del recurso video contiene el ID del chat en vivo activo asociado con el video. El valor de propiedad solo está presente si el video es una transmisión en vivo en curso que tiene habilitado el chat en vivo. Una vez que finaliza la transmisión y el chat en vivo finaliza, la propiedad deja de estar disponible para el video.

    • La propiedad status.rejectionReason del recurso video admite el nuevo valor de propiedad legal.

  • La API admite los siguientes errores nuevos:

    Tipo de error Detalle del error Descripción
    badRequest (400) notEditable Los métodos channelSections.insert, channelSections.update y channelSections.delete muestran este error para indicar que no se puede crear, actualizar ni borrar la sección del canal especificado.
    badRequest (400) styleRequired Los métodos channelSections.insert y channelSections.update muestran este error para indicar que el recurso channelSection enviado en la solicitud a la API debe especificar un valor para la propiedad snippet.style.
    badRequest (400) typeRequired Los métodos channelSections.insert y channelSections.update muestran este error para indicar que el recurso channelSection enviado en la solicitud a la API debe especificar un valor para la propiedad snippet.type.
    badRequest (400) processingFailure El método commentThreads.list devuelve este error para indicar que el servidor de la API no pudo procesar correctamente la solicitud. Si bien puede ser un error transitorio, generalmente indica que la entrada de la solicitud no es válida. Verifica la estructura del recurso commentThread en el cuerpo de la solicitud para asegurarte de que sea válido.
    forbidden (403) commentsDisabled El método commentThreads.list devuelve este error para indicar que el video identificado por el parámetro videoId inhabilitó los comentarios.
    badRequest (400) commentTextTooLong El método commentThreads.insert muestra este error para indicar que el recurso comment que se está insertando contiene demasiados caracteres en la propiedad snippet.topLevelComment.snippet.textOriginal.
    invalidValue (400) videoAlreadyInAnotherSeriesPlaylist El método playlistItems.insert devuelve este error para indicar que el video que intentas agregar a la playlist ya está en otra playlist de series. Consulta el Centro de ayuda de YouTube para obtener más información sobre las playlists de series.
    badRequest (400) subscriptionForbidden El método subscriptions.insert devuelve este error para indicar que alcanzaste la cantidad máxima de suscripciones o que creaste demasiadas suscripciones recientes. En el último caso, puedes reintentar la solicitud después de algunas horas.
    badRequest (400) invalidCategoryId El método videos.update muestra este error para indicar que la propiedad snippet.categoryId en el recurso video subido especificó un ID de categoría no válido. Usa el método videoCategories.list para recuperar las categorías admitidas.
    badRequest (400) invalidDescription El método videos.update muestra este error para indicar que la propiedad snippet.description en el recurso video subido especificó un valor no válido.
    badRequest (400) invalidPublishAt El método videos.update muestra este error para indicar que la propiedad status.publishAt en el recurso video subido especificó una hora de publicación programada no válida.
    badRequest (400) invalidRecordingDetails El método videos.update muestra este error para indicar que el objeto recordingDetails en el recurso video subido especificó detalles de registro no válidos.
    badRequest (400) invalidTags El método videos.update muestra este error para indicar que la propiedad snippet.tags en el recurso video subido especificó un valor no válido.
    badRequest (400) invalidTitle El método videos.update muestra este error para indicar que la propiedad snippet.title en el recurso video subido especificó un título de video vacío o no válido.
    badRequest (400) invalidVideoMetadata El método videos.update devuelve este error para indicar que los metadatos de la solicitud no son válidos. Este error ocurre si la solicitud actualiza la parte snippet de un recurso video, pero no establece un valor para las propiedades snippet.title y snippet.categoryId.

18 de diciembre de 2015

Las leyes de la Unión Europea (UE) exigen que se divulguen ciertas divulgaciones y que se obtenga el consentimiento de los usuarios finales de la UE. Por lo tanto, en el caso de los usuarios finales de la Unión Europea, debe satisfacer la Política de Consentimiento de Usuarios de la UE. Agregamos un aviso de este requisito en nuestras Condiciones del Servicio de la API de YouTube.

19 de noviembre de 2015

La API ahora admite la capacidad de establecer y recuperar texto localizado para las propiedades snippet.title y snippet.description de los recursos playlist y video, la propiedad snippet.title del recurso channelSection y la propiedad snippet.description del recurso channel.

  • Cómo configurar títulos y descripciones localizados

    Puedes establecer valores localizados para un recurso cuando llamas a los métodos insert o update para ese recurso. Para establecer valores localizados en un recurso, realiza las siguientes dos acciones:

    • Asegúrate de que se establezca un valor para la propiedad snippet.defaultLanguage del recurso. Esa propiedad identifica el idioma de las propiedades snippet.title y snippet.description del recurso. Su valor puede ser cualquier idioma de aplicación compatible o la mayoría de los demás códigos de idioma ISO 639-1:2002. Por ejemplo, si subes un video con un título y una descripción en inglés, debes establecer la propiedad snippet.defaultLanguage en en.

      Nota para actualizar los recursos de channel: Si quieres establecer la propiedad snippet.defaultLanguage para un recurso channel, en realidad debes actualizar la propiedad brandingSettings.channel.defaultLanguage.

    • Agrega el objeto localizations al recurso que estás actualizando. Cada clave de objeto es una cadena que identifica un idioma de aplicación o un código de idioma ISO 639-1:2002, y cada clave se asigna a un objeto que contiene el título (y la descripción) localizados del recurso.

      En el siguiente fragmento de muestra, se configura el idioma predeterminado del recurso en inglés. También agrega títulos y descripciones localizados en alemán y español a un video:

      {
        "kind": "youtube#video",
        ...
        "snippet": {
          "title": "Playing soccer",
          "description": "We play soccer in the park on Sundays.",
          "defaultLanguage": "en",
          ...
        },
        "localizations":
          "de": {
            "title": "Fußball spielen",
            "description": "Wir spielen Fußball im Park am Sonntag"
          },
          "es": {
            "title": "Jugar al fútbol",
            "description": "Nosotros jugamos fútbol en el parque los domingos",
          }
        }
      }
    • Importante: Recuerda que cuando actualizas los datos localizados de un recurso, tu solicitud a la API debe incluir todas las versiones localizadas existentes de los datos. Por ejemplo, si enviaste una solicitud posterior para agregar datos en portugués al video del ejemplo anterior, la solicitud deberá incluir los datos localizados en alemán, español y portugués.

  • Cómo recuperar valores localizados

    La API admite dos formas de recuperar valores localizados para un recurso:

    • Agrega el parámetro hl a tu solicitud channels.list, channelSections.list, playlists.list o videos.list para recuperar datos localizados de un idioma específico de la aplicación compatible con el sitio web de YouTube. Si los detalles de los recursos localizados están disponibles en ese idioma, el objeto snippet.localized del recurso contendrá los valores localizados. Sin embargo, si los detalles localizados no están disponibles, el objeto snippet.localized contendrá los detalles del recurso en el idioma predeterminado del recurso.

      Por ejemplo, supongamos que una solicitud videos.list recupera datos del video descrito anteriormente con datos localizados en alemán y español. Si el parámetro hl se configurara como de, el recurso contendrá los siguientes datos:

      {
        "kind": "youtube#video",
        ...
        "snippet": {
          "title": "Playing soccer",
          "description": "We play soccer in the park on Sundays.",
          "defaultLanguage": "en",
          "localized": {
            "title": "Fußball spielen",
            "description": "Wir spielen Fußball im Park am Sonntag"
          }
          ...
        }
      }

      Sin embargo, si el parámetro hl se configurara como fr, el objeto snippet.localized contendrá el título y la descripción en inglés porque el inglés es el idioma predeterminado del recurso y los detalles en francés localizados no están disponibles.

      Importante: El parámetro hl solo admite valores que identifiquen los idiomas de la aplicación que admite el sitio web de YouTube. Para determinar si el texto localizado está disponible en otros idiomas, debes recuperar la parte localizations del recurso y filtrar para determinar si existe.

      Por ejemplo, debes recuperar la lista completa de localizaciones para determinar si el texto localizado está disponible en inglés de los Apalaches.

    • Cuando recuperes un recurso, incluye localizations en el valor del parámetro part para recuperar todos los detalles localizados de ese recurso. Si quieres recuperar datos localizados de un idioma que no es el idioma actual de la aplicación de YouTube, debes utilizar este enfoque para obtener todas las localizaciones y, luego, filtrar para determinar si existen los datos localizados deseados.

  • Errores relacionados con valores de texto localizados

    La API también admite los siguientes errores nuevos para los valores de texto localizados:

    Tipo de error Detalle del error Descripción
    badRequest (400) defaultLanguageNotSetError Este error indica que falla una solicitud que intenta insertar o actualizar el objeto localizations de un recurso porque no se configuró la propiedad snippet.defaultLanguage para ese recurso. Los métodos channels.update, channelSections.insert, channelSections.update, playlists.insert, playlists.update, videos.insert y videos.update admiten este error.
    badRequest (400) localizationValidationError Este error indica que no se pudo validar uno de los valores en el objeto localizations de un recurso. Por ejemplo, este error puede ocurrir si el objeto contiene un código de idioma no válido. Los métodos channels.update, channelSections.insert, channelSections.update, playlists.insert y playlists.update admiten este error.

4 de noviembre de 2015

Esta actualización incluye los siguientes cambios:

  • Actualizaciones de recursos y métodos existentes

    • Se actualizó el parámetro order del método search.list para indicar que, si ordenas las transmisiones en vivo por viewCount, los resultados de la API se ordenarán según la cantidad de espectadores simultáneos de las transmisiones mientras estas aún están en curso.

    • Se actualizó el parámetro relatedToVideoId del método search.list para indicar que, si se configura el parámetro, los únicos demás parámetros admitidos son part, maxResults, pageToken, regionCode, relevanceLanguage, safeSearch, type (que se debe establecer en video) y fields. Esta actualización no refleja un cambio en el comportamiento de la API.

    • Se actualizó la definición de la propiedad snippet.publishedAt del recurso video para indicar que el valor de la propiedad, que especifica la fecha y hora en que se publicó el video, podría ser diferente de la hora en que se subió el video. Por ejemplo, si un video se sube como privado y, posteriormente, se hace público, el valor de propiedad especifica el momento en que el video se hizo público. En la definición actualizada, también se explica cómo se propaga el valor para los videos privados y no listados.

      Este cambio no refleja una modificación en el comportamiento de la API.

    • La definición de la propiedad status.publishAt del recurso video se actualizó para tener la siguiente nota:

      • Si configuras el valor de esta propiedad cuando llamas al método videos.update, también debes establecer el valor de la propiedad status.privacyStatus en private, incluso si el video ya es privado.
      • Si la solicitud programa la publicación de un video en algún momento del pasado, se publicará de inmediato. Por lo tanto, el efecto de establecer la propiedad status.publishAt en una fecha y hora pasadas es el mismo que cambiar la privacyStatus del video de private a public.
    • La propiedad contentDetails.contentRating.cncRating del recurso video especifica la calificación del video de la Comisión de Clasificación cinematográfica de Francia. Esta propiedad reemplaza a la propiedad contentDetails.contentRating.fmocRating, que dejó de estar disponible.

    • Se actualizó la definición del brandingSettings.channel.keywords del recurso channel para reflejar correctamente que el valor de la propiedad contiene una lista de strings separada por espacios y no una lista separada por comas, como se documentó anteriormente. Esta actualización no refleja un cambio en el comportamiento de la API.

    • Se actualizó la documentación del método thumbnails.set para reflejar con exactitud que el cuerpo de la solicitud contiene la imagen en miniatura que vas a subir y que se asocia con un video. El cuerpo de la solicitud no contiene un recurso thumbnail. Anteriormente, la documentación decía que no debías proporcionar un cuerpo de solicitud cuando se llamaba a este método. Esta actualización no refleja un cambio en el comportamiento de la API.

    • Se actualizó la descripción del recurso activity para reflejar que, actualmente, el método activities.list no incluye recursos relacionados con comentarios de videos nuevos. También se actualizaron los elementos snippet.type y contentDetails.comment del recurso.

  • Errores nuevos y actualizados

    • La API ahora admite los siguientes errores:

      Detalles del error
      activities.insert
      Código de respuesta HTTPbadRequest (400)
      MotivoinvalidMetadata
      DescripciónLa propiedad kind no coincide con el tipo de ID proporcionado.
      commentThreads.update
      comments.insert
      comments.update
      Código de respuesta HTTPbadRequest (400)
      MotivocommentTextTooLong
      DescripciónEl recurso comment que se está insertando o actualizando contiene demasiados caracteres en la propiedad snippet.topLevelComment.snippet.textOriginal.
      playlistItems.insert
      playlistItems.update
      Código de respuesta HTTPforbidden (403)
      MotivoplaylistItemsNotAccessible
      DescripciónLa solicitud no está debidamente autorizada para insertar, actualizar o eliminar el elemento de la playlist especificado.
      playlists.delete
      playlists.insert
      playlists.update
      Código de respuesta HTTPbadRequest (400)
      MotivoplaylistForbidden
      DescripciónEsta operación está prohibida o la solicitud no está debidamente autorizada.
      search.list
      Código de respuesta HTTPbadRequest (400)
      MotivoinvalidLocation
      DescripciónEl formato del valor de los parámetros location o locationRadius no es correcto.
      search.list
      Código de respuesta HTTPbadRequest (400)
      MotivoinvalidRelevanceLanguage
      DescripciónEl valor del parámetro relevanceLanguage tiene un formato incorrecto.
      subscriptions.insert
      Código de respuesta HTTPbadRequest (400)
      MotivosubscriptionForbidden
      DescripciónEste error se produce cuando se cumple alguna de las siguientes condiciones:
      • La suscripción que intentas crear ya existe
      • Alcanzaste la cantidad máxima de suscripciones
      • Estás intentando suscribirte a tu propio canal, lo cual no se admite.
      • Recientemente, creaste demasiadas suscripciones y debes esperar unas horas antes de reintentar la solicitud.
      videos.update
      Código de respuesta HTTPbadRequest (400)
      MotivoinvalidDefaultBroadcastPrivacySetting
      DescripciónLa solicitud intenta establecer una configuración de privacidad no válida para la transmisión predeterminada.

28 de agosto de 2015

Esta actualización incluye los siguientes cambios:

  • Actualizaciones de recursos y métodos existentes

    • La propiedad statistics.favoriteCount del recurso video dejó de estar disponible.

      Conforme a nuestra política de baja, esta propiedad seguirá incluida en los recursos de video durante al menos un año después de este anuncio. Sin embargo, el valor de la propiedad ahora está siempre establecido en 0.

7 de agosto de 2015

Esta actualización incluye los siguientes cambios:

  • Actualizaciones de recursos y métodos existentes

    • Se actualizó la definición de la propiedad snippet.tags[] del recurso video para proporcionar más información sobre cómo el servidor de la API calcula la longitud del valor de la propiedad. Ten en cuenta que esta actualización no refleja un cambio en el comportamiento de la API.

      En concreto, la definición ahora explica que si una etiqueta contiene un espacio, el servidor de la API maneja el valor de la etiqueta como si estuviera entre comillas, y estas se tienen en cuenta para el límite de caracteres. Por lo tanto, a efectos de limitar los caracteres, la etiqueta "Foo-Baz" contiene siete caracteres, pero la etiqueta "Foo Baz" contiene nueve.

    • El método commentThreads.insert ya no admite el parámetro shareOnGooglePlus, que anteriormente indicaba si un comentario y sus respuestas también se debían publicar en el perfil de Google+ del autor. Si una solicitud envía el parámetro, el servidor de la API lo ignora, pero maneja la solicitud.

18 de junio de 2015

Esta actualización incluye los siguientes cambios:

  • Actualizaciones de recursos y métodos existentes

    • El nuevo parámetro order del método commentThreads.list especifica el orden en el que la respuesta de la API debe enumerar los subprocesos de comentarios. Las conversaciones se pueden ordenar por tiempo o relevancia. El comportamiento predeterminado es ordenarlas por hora.

    • La nueva propiedad snippet.defaultAudioLanguage del recurso video especifica el idioma que se habla en la pista de audio predeterminada del video.

    • Se actualizó la definición de la propiedad contentDetails.licensedContent del recurso video para aclarar que el contenido debe haberse subido originalmente a un canal vinculado a un socio de contenido de YouTube y, luego, reclamado por ese socio. Esto no representa un cambio en el comportamiento real de la API.

    • Los métodos captions.delete, captions.download, captions.insert, captions.list y captions.update ahora admiten el parámetro onBehalfOfContentOwner, que ya es compatible con varios otros métodos. Las solicitudes que usan ese método también deben autorizarse con un token que proporcione acceso al permiso https://www.googleapis.com/auth/youtubepartner.

  • Errores nuevos y actualizados

    • La API ahora admite los siguientes errores:

      Detalles del error
      videos.rate
      Código de respuesta HTTPbadRequest (400)
      MotivoemailNotVerified
      DescripciónEl usuario debe verificar su dirección de correo electrónico antes de calificar el video.
      videos.rate
      Código de respuesta HTTPbadRequest (400)
      MotivovideoPurchaseRequired
      DescripciónSólo los usuarios que han alquilado los videos en alquiler pueden calificarlos.
    • Los métodos subscriptions.delete y subscriptions.insert ya no admiten los errores accountClosed y accountSuspended.

27 de abril de 2015

Esta actualización incluye los siguientes cambios:

  • Recursos y métodos nuevos

    • El nuevo recurso videoAbuseReportReason contiene información sobre un motivo por el que un video se marcaría por incluir contenido abusivo. El método videoAbuseReportReasons.list te permite recuperar una lista de todos los motivos por los que pueden marcarse videos.

    • El nuevo método videos.reportAbuse proporciona una manera de marcar un video que incluye contenido abusivo. El cuerpo de la solicitud contiene un objeto JSON que especifica el video que se marca y el motivo por el que se considera que el video incluye contenido abusivo. Se pueden obtener motivos válidos del método videoAbuseReportReason.list descrito anteriormente.

      La guía de migración también se actualizó con un ejemplo para denunciar un video abusivo. Con este cambio, la API v3 ahora admite todas las funciones de la API v2 que está programada para admitir. Todas estas funciones se explican en la guía de migración.

  • Actualizaciones de recursos y métodos existentes

    • El nuevo parámetro de filtro forDeveloper del método search.list restringe la búsqueda para recuperar solo los videos subidos mediante la aplicación o el sitio web del desarrollador. El parámetro forDeveloper se puede usar junto con parámetros de búsqueda opcionales, como el parámetro q.

      Para esta función, cada video subido se etiqueta automáticamente con el número de proyecto que está asociado con la aplicación del desarrollador en Google Play Console.

      Cuando una solicitud de búsqueda establece posteriormente el parámetro forDeveloper en true, el servidor de la API usa las credenciales de autorización de la solicitud para identificar al desarrollador. Por lo tanto, el desarrollador puede restringir los resultados a los videos subidos mediante el sitio web o la app del desarrollador, pero no a los videos subidos mediante otras apps o sitios.

      La nueva función ofrece una funcionalidad similar, aunque no idéntica, a la de las etiquetas del desarrollador que admite la API v2.

    • La nueva propiedad snippet.country del recurso channel permite que los propietarios del canal asocien sus canales con un país en particular.

      Nota: Si quieres establecer la propiedad snippet.country para un recurso channel, debes actualizar la propiedad brandingSettings.channel.country.

    • La API ahora admite la orientación para los recursos channelSection. La segmentación de sección de canal proporciona una forma de restringir la visibilidad de una sección de contenido a los usuarios que coinciden con criterios particulares.

      La API expone tres opciones de segmentación. Un usuario debe cumplir con todos los parámetros de configuración de segmentación para que una sección de un canal sea visible.

    • Se corrigió la definición de la propiedad contentDetails.duration del recurso video para reflejar que el valor puede reflejar horas, días, etcétera.

    • Se corrigió la documentación de los métodos channelSections.delete, playlistItems.delete, playlists.delete, subscriptions.delete y videos.delete para reflejar que, cuando se realiza de forma correcta, todos esos métodos muestran un código de respuesta HTTP 204 (No Content).

  • Errores nuevos y actualizados

    • La API ahora admite los siguientes errores:

      Tipo de error Detalle del error Descripción
      badRequest (400) targetInvalidCountry Los métodos channelSections.insert y channelSections.update muestran este error si el recurso channelSection insertado contenía un valor no válido para la propiedad targeting.countries[].
      badRequest (400) targetInvalidLanguage Los métodos channelSections.insert y channelSections.update muestran este error si el recurso channelSection insertado contenía un valor no válido para la propiedad targeting.languages[].
      badRequest (400) targetInvalidRegion Los métodos channelSections.insert y channelSections.update muestran este error si el recurso channelSection insertado contenía un valor no válido para la propiedad targeting.regions[].
      badRequest (400) operationNotSupported El método comments.insert muestra este error si el usuario de la API no puede insertar un comentario en respuesta al comentario de nivel superior identificado por la propiedad snippet.parentId. En un recurso commentThread, la propiedad snippet.canReply indica si el visualizador actual puede responder al subproceso.
      badRequest (400) invalidChannelId El método search.list muestra este error si el parámetro channelId de la solicitud especificó un ID de canal no válido.
      badRequest (400) subscriptionForbidden El método subscriptions.insert muestra este error si el usuario de la API intenta suscribirse al propio canal del usuario.
    • El método captions.update ya no admite los errores invalidMetadata y videoNotFound.

16 de abril de 2015

Esta actualización incluye los siguientes cambios:

  • La guía de migración se actualizó para explicar cómo migrar aplicaciones que aún usan la funcionalidad de comentarios de la API v2.

    En la guía, también se mencionan varias funciones de comentarios que no son compatibles con la API v2, pero que son compatibles con la API v3. Estos incluyen los siguientes:

    • Recuperar comentarios de un canal
    • Recuperar todos los hilos de comentarios relacionados con un canal, lo que significa que la respuesta de la API puede contener comentarios sobre el canal o cualquiera de sus videos
    • Cómo actualizar el texto de un comentario
    • Marca un comentario como spam
    • Configuración del estado de moderación de un comentario

  • Se actualizó la guía Suscríbete a las notificaciones push para reflejar el hecho de que las notificaciones solo se envían al concentrador de PubSubHubBub de Google y no también al de Superfeedr como se indicó anteriormente.

9 de abril de 2015

Esta actualización incluye los siguientes cambios:

  • Los nuevos recursos commentThread y comment de la API te permiten recuperar, insertar, actualizar, borrar y moderar comentarios.

    • Un recurso commentThread contiene información sobre una conversación de comentarios de YouTube, que incluye un comentario de nivel superior y las respuestas a ese comentario, si corresponde. Un recurso commentThread puede representar comentarios sobre un video o un canal.

      El comentario de nivel superior y las respuestas son recursos comment anidados dentro del recurso commentThread. Es importante tener en cuenta que el recurso commentThread no contiene necesariamente todas las respuestas a un comentario. Debes utilizar el método comments.list si deseas recuperar todas las respuestas para un comentario en particular. Además, algunos comentarios no tienen respuestas.

      La API admite los siguientes métodos para los recursos commentThread:

      • commentThreads.list: Recupera una lista de conversaciones de comentarios. Utiliza este método para recuperar los comentarios asociados con un video o canal en particular.
      • commentThreads.insert: Crea un nuevo comentario de nivel superior. (usa el método comments.insert para responder a un comentario existente).
      • commentThreads.update: modifica un comentario de nivel superior.

    • Un recurso comment contiene información sobre un solo comentario de YouTube. Un recurso comment puede representar un comentario sobre un video o un canal. Además, el comentario puede ser un comentario de nivel superior o una respuesta a un comentario de nivel superior.

      La API admite los siguientes métodos para los recursos comment:

      • comments.list: Recupera una lista de comentarios. Utiliza este método para recuperar todas las respuestas a un comentario en particular.
      • comments.insert: Crea una respuesta a un comentario existente.
      • comments.update: modifica un comentario.
      • comments.markAsSpam: Marca uno o más comentarios como spam.
      • comments.setModerationStatus: establece el estado de moderación de uno o más comentarios. Por ejemplo, borra un comentario para que sea público o recházalo por no mostrarlo. La solicitud a la API debe estar autorizada por el propietario del canal o video asociado con los comentarios.
      • comments.delete: Borra un comentario.

    Ten en cuenta que el nuevo alcance https://www.googleapis.com/auth/youtube.force-ssl de la API, que se describe en el historial de revisión del 2 de abril de 2015, es obligatorio para las llamadas a los métodos comments.insert, comments.update, comments.markAsSpam, comments.setModerationStatus, comments.delete, commentThreads.insert y commentThreads.update.

  • En la nueva guía Suscríbete a notificaciones push, se explica la nueva compatibilidad de la API con las notificaciones push a través de PubSubHubBub, un protocolo de publicación y suscripción de servidor a servidor para recursos accesibles desde la Web. Tu servidor de devolución de llamada de PubSubHubBub puede recibir notificaciones de feed de Atom cuando un canal realiza alguna de las siguientes actividades:

    • sube un video
    • actualiza el título de un video
    • actualiza la descripción de un video

  • La guía de migración también se actualizó para incluir la nueva compatibilidad con las notificaciones push. Sin embargo, dado que la API v2 admite numerosos tipos de notificaciones push que no son compatibles con la API v3, la mención de la compatibilidad con PubSubHubBub sigue apareciendo en la sección Obsoleto de esa guía.

  • El nuevo alcance https://www.googleapis.com/auth/youtube.force-ssl de la API ahora es un alcance válido para cualquier método de API que antes admitiera el alcance https://www.googleapis.com/auth/youtube.

  • La API ahora admite los siguientes errores:

    Tipo de error Detalle del error Descripción
    badRequest (400) invalidRating El método videos.rate muestra este error si la solicitud contenía un valor inesperado para el parámetro rating.
  • El método subscriptions.insert ya no admite el error subscriptionLimitExceeded, que anteriormente indicaba que el suscriptor identificado con la solicitud excedía el límite de frecuencia de la suscripción.

2 de abril de 2015

Esta actualización incluye los siguientes cambios:

  • El nuevo recurso captions representa una pista de subtítulos de YouTube. Una pista de subtítulos se asocia con un solo video de YouTube.

    La API admite métodos para enumerar, insertar, actualizar, descargar y borrar pistas de subtítulos.

  • También se actualizó la guía de migración para explicar cómo migrar aplicaciones que aún usan la funcionalidad de subtítulos en la API v2.

  • El nuevo alcance https://www.googleapis.com/auth/youtube.force-ssl de la API requiere que la comunicación con el servidor de la API se produzca a través de una conexión SSL.

    Este alcance nuevo otorga el mismo acceso que el alcance https://www.googleapis.com/auth/youtube. De hecho, esos dos alcances son funcionalmente idénticos porque el servidor API de YouTube solo está disponible a través de un extremo HTTPS. Como resultado, aunque el alcance https://www.googleapis.com/auth/youtube no requiere una conexión SSL, en realidad no hay otra manera de realizar una solicitud a la API.

    El nuevo alcance es obligatorio para las llamadas a todos los métodos del recurso caption.

11 de marzo de 2015

Esta actualización incluye los siguientes cambios:

  • La Guía de migración de la API de datos de YouTube (versión 3) contiene una pestaña nueva, llamada Nuevo en la API v3, que enumera las funciones que admite la API v3 y que la API v2 no admitía. Las mismas funciones se encontraban previamente y siguen en la lista de otras pestañas de la guía. Por ejemplo, la nueva función que explica cómo actualizar los datos de las campañas promocionales en videos de un canal también aparece en la pestaña Canales (perfiles).

  • Se actualizó la guía de migración de la API de YouTube Data (versión 3) para indicar que la API v3 será compatible con la siguiente función de la API v2:

  • Se actualizó la guía de migración de la API de datos de YouTube (versión 3) para indicar que las siguientes funciones de la API v2 no serán compatibles con la API v3:

    • Recuperar recomendaciones de videos: la API v3 no recupera una lista que solo contenga videos recomendados para el usuario actual de la API. Sin embargo, puedes usar la API v3 para encontrar videos recomendados llamando al método activities.list y configurando el valor del parámetro home en true.

      En la respuesta de la API, un recurso corresponde a un video recomendado si el valor de la propiedad snippet.type es recommendation. En ese caso, las propiedades contentDetails.recommendation.reason y contentDetails.recommendation.seedResourceId contendrán información sobre por qué se recomendó el video. Ten en cuenta que no hay garantía de que la respuesta contenga una cantidad particular de videos recomendados.

    • Cómo obtener sugerencias de canales

    • Recuperar nuevos videos de suscripción: la API v3 no recupera una lista que solo contenga videos que se hayan subido recientemente a canales a los que se suscribió el usuario de la API. Sin embargo, puedes usar la API v3 para buscar nuevos videos de suscripción llamando al método activities.list y configurando el valor del parámetro home en true.

      En la respuesta de la API, un recurso corresponde a un nuevo video de suscripción si el valor de la propiedad snippet.type es upload. Ten en cuenta que no se garantiza que la respuesta contendrá una cantidad específica de videos de suscripción nuevos.

    • Compatibilidad con feeds RSS

    • Notificaciones push para actualizaciones de feeds: La API v2 admite notificaciones push, mediante el protocolo simple de actualización (SUP) o PubSubHubbub, para supervisar los feeds de actividad de los usuarios de YouTube. Se proporcionaron notificaciones para las nuevas suscripciones a canales y cuando los videos se calificaban, se compartían, se marcaban como favoritos, se comentaban o se subían.

      La API de la versión 3 es compatible con las notificaciones push que usan el protocolo PubSubHubbub, pero las notificaciones solo abarcarán las cargas y actualizaciones de títulos o descripciones de videos.

    • Ubicación del canal: La API v2 usó la etiqueta <yt:location> para identificar la ubicación del usuario tal como se ingresó en el perfil público de YouTube del canal. Si bien algunos desarrolladores usaron este campo para asociar un canal con un país en particular, los datos del campo no se pudieron usar de manera coherente para ese propósito.

    • Establecer o recuperar etiquetas del desarrollador: La API v2 admitía la capacidad de asociar palabras clave o etiquetas del desarrollador con un video en el momento en que se subió. Las etiquetas del desarrollador no se mostrarán a los usuarios de YouTube, pero los propietarios de los videos podrían recuperar videos que coincidan con una etiqueta del desarrollador específica.

      La API v3 proporcionará una función similar, pero no idéntica. Específicamente, un desarrollador podrá buscar videos subidos por la aplicación del desarrollador. Para esta función, cada video subido se etiqueta automáticamente con el número de proyecto que está asociado con la aplicación del desarrollador en Google Play Console. Luego, el desarrollador usa el mismo número de proyecto para buscar videos.

    • Enumerar videos por fecha de publicación, cantidad de reproducciones o calificación: En la API v2, el parámetro orderby te permite ordenar los videos de una playlist por posición, duración, fecha de publicación, título y muchos otros valores. En la API v3, los elementos de las listas de reproducción generalmente se ordenan por su posición en orden ascendente y otras opciones de orden no están disponibles.

      Existen algunas excepciones. Una carga nueva, un video favorito, un video que te gustó o un video que viste recientemente se agrega automáticamente como el primer elemento (snippet.position=0) para los siguientes tipos de playlists. Por lo tanto, cada una de estas listas se ordena de manera efectiva en orden del elemento más reciente al más antiguo según las horas en que los elementos se agregaron a la lista.

      • cargas del usuario
      • videos favoritos
      • videos con Me gusta
      • historial de reproducciones

      Sin embargo, ten en cuenta que un nuevo elemento agregado a la playlist “Ver más tarde” se agrega como el último elemento de esa lista, por lo que se ordena eficazmente del elemento más antiguo al más nuevo.

    • Procesamiento por lotes: La API v3 admite uno de los casos de uso de procesamiento por lotes que la API v2 admitía. Los métodos channels.list, channelSections.list, guideCategories.list, playlistItems.list, playlists.list, subscriptions.list, videoCategories.list y videos.list de la API v3 admiten un parámetro id, que se puede usar para especificar una lista de IDs delimitados por comas (IDs de videos, IDs de canales, etc.). Con estos métodos, puedes recuperar una lista de varios recursos con una sola solicitud.

    Con estos cambios, la guía ahora identifica todas las funcionalidades admitidas por la API anterior (v2) que quedará obsoleta en la versión actual de la API (v3).

4 de marzo de 2015

Esta actualización incluye los siguientes cambios:

  • Los métodos channelSections.delete y channelSections.update ahora admiten el parámetro onBehalfOfContentOwner, que ya es compatible con varios otros métodos.

  • Las siguientes propiedades y sus propiedades secundarias dejaron de estar disponibles:

    • brandingSettings.image.backgroundImageUrl
    • brandingSettings.image.largeBrandedBannerImageImapScript
    • brandingSettings.image.largeBrandedBannerImageUrl
    • brandingSettings.image.smallBrandedBannerImageImapScript
    • brandingSettings.image.smallBrandedBannerImageUrl

    Nota: Ninguna de estas propiedades estaba sujeta a la Política de Baja de la API.

  • La nueva propiedad contentDetails.contentRating.contentDetails.contentRating.djctqRatingReasons del recurso video identifica los motivos que explican por qué el video recibió la calificación del DJCQT (Brasil).

  • La API ahora admite los siguientes errores:

    Tipo de error Detalle del error Descripción
    notFound (404) channelNotFound El método channels.update muestra este error si el parámetro id de la solicitud especifica un canal que no se puede encontrar.
    badRequest (400) manualSortRequiredinvalidValue Los métodos playlistItems.insert y playlistItems.update muestran este error si la solicitud intenta establecer la posición del elemento de la playlist, pero la playlist no utiliza el ordenamiento manual. Por ejemplo, los elementos de una playlist pueden ordenarse por fecha o popularidad. Para abordar este error, quita el elemento snippet.position del recurso enviado en el cuerpo de la solicitud. Si quieres que el elemento de la playlist tenga una posición específica en ella, primero debes actualizar la configuración de orden de la playlist a Manual. Puedes ajustar esta configuración en el Administrador de videos de YouTube.
    forbidden (403) channelClosed El método playlists.list muestra este error si el parámetro channelId de la solicitud especifica un canal que se cerró.
    forbidden (403) channelSuspended El método playlists.list muestra este error si el parámetro channelId de la solicitud especifica un canal que se suspendió.
    forbidden (403) playlistForbidden El método playlists.list muestra este error si el parámetro id de la solicitud no la admite o si esta no está debidamente autorizada.
    notFound (404) channelNotFound El método playlists.list muestra este error si el parámetro channelId de la solicitud especifica un canal que no se puede encontrar.
    notFound (404) playlistNotFound El método playlists.list devuelve este error si el parámetro id de la solicitud especifica una playlist que no se puede encontrar.
    notFound (404) videoNotFound El método videos.list muestra este error si el parámetro id de la solicitud especifica un video que no se puede encontrar.
    badRequest (400) invalidRating El método videos.rate muestra este error si la solicitud contiene un valor inesperado para el parámetro rating.

2 de marzo de 2015

Esta actualización incluye los siguientes cambios:

14 de enero de 2015

Esta actualización incluye los siguientes cambios:

  • Se actualizó la guía de migración de la API de datos de YouTube (versión 3) para explicar cómo usar la API de versión 3 para subir videos con JavaScript. (Consulta la sección Subir un video para obtener más información). Esta funcionalidad se puede comparar con la funcionalidad de carga basada en el navegador que admite la API v2. Ten en cuenta que este cambio en la guía de migración no refleja un cambio real de API, sino la disponibilidad de un nuevo código de muestra para subir videos con JavaScript del cliente.

    Dada la compatibilidad para subir videos con la biblioteca cliente de JavaScript y CORS, la guía de migración ya no muestra la carga basada en navegador como una función que podría dejar de estar disponible en la API v3.

  • Se actualizó la documentación del método videos.insert para incluir la nueva muestra de código JavaScript descrita anteriormente. También se actualizó la lista de muestras de código JavaScript para la API de datos de YouTube (v3).

11 de noviembre de 2014

Esta actualización incluye los siguientes cambios:

  • El costo de la cuota para una llamada al método search.list cambió a 100 unidades.

    Importante: En muchos casos, puedes usar otros métodos de API para recuperar información a un costo de cuota menor. Por ejemplo, considera estas dos formas de encontrar videos que se subieron al canal GoogleDevelopers.

    • Costo de la cuota: 100 unidades

      Llama al método search.list y busca GoogleDevelopers.

    • Costo de la cuota: 6 unidades

      Llama al método channels.list para encontrar el ID del canal correcto. Establece el parámetro forUsername en GoogleDevelopers y el parámetro part en contentDetails. En la respuesta de la API, la propiedad contentDetails.relatedPlaylists.uploads especifica el ID de la playlist de los videos subidos del canal.

      Luego, llama al método playlistItems.list y establece el parámetro playlistId en el ID capturado y el parámetro part en snippet.

8 de octubre de 2014

Esta actualización incluye los siguientes cambios:

  • El recurso channel contiene dos propiedades nuevas:

    • La propiedad status.longUploadsStatus indica si el canal es apto para subir videos que duran más de 15 minutos. Esta propiedad solo se muestra si el propietario del canal autorizó la solicitud a la API. Los valores de propiedad válidos son los siguientes:

      • allowed: el canal puede subir videos de más de 15 minutos de duración.
      • eligible: el canal es apto para subir videos de más de 15 minutos de duración, pero primero se debe habilitar la función.
      • disallowed: el canal no puede ni es apto para subir videos de más de 15 minutos de duración.

      Consulta la definición de propiedad para obtener más información sobre estos valores. El Centro de ayuda de YouTube también proporciona información más detallada sobre esta función.

    • La propiedad invideoPromotion.useSmartTiming indica si la campaña promocional del canal utiliza “tiempo inteligente”. Esta función intenta mostrar las promociones en un punto del video en el que es más probable que los usuarios hagan clic en ellas y sea menos probable que interrumpan la experiencia de visualización. Esta función también selecciona una sola promoción para mostrar en cada video.

  • Se actualizaron las definiciones de las propiedades snippet.title y snippet.categoryId del recurso video para aclarar la forma en que la API controla las llamadas al método videos.update. Si llamas a ese método para actualizar la parte snippet de un recurso video, debes establecer un valor para ambas propiedades.

    Si intentas actualizar la parte snippet de un recurso video y no estableces un valor para ambas propiedades, la API muestra un error invalidRequest. La descripción de ese error también se actualizó.

  • La propiedad contentDetails.contentRating.oflcRating del recurso video, que identifica la calificación de un video de la Oficina de Clasificación de Películas y Literatura de Nueva Zelanda, ahora admite dos nuevas calificaciones: oflcRp13 y oflcRp16. Estas corresponden a las calificaciones RP13 y RP16, respectivamente.

  • El método channelBanners.insert ahora admite el siguiente error:

    Tipo de error Detalle del error Descripción
    badRequest bannerAlbumFull El álbum del diseño del canal de YouTube del propietario del canal tiene demasiadas imágenes. El propietario del canal debe ir a http://photos.google.com, navegar a la página de los álbumes y quitar algunas imágenes de ese álbum.

12 de septiembre de 2014

Esta actualización incluye los siguientes cambios:

13 de agosto de 2014

Esta actualización incluye los siguientes cambios:

  • El método subscriptions.insert ahora admite el siguiente error:

    Tipo de error Detalle del error Descripción
    badRequest subscriptionLimitExceeded El suscriptor identificado con la solicitud excedió el límite de frecuencia de suscripciones. Se pueden intentar más suscripciones en unas horas.

12 de agosto de 2014

Esta actualización incluye los siguientes cambios:

  • Una nueva guía, titulada Migra tu aplicación a la API de YouTube Data (versión 3), explica cómo usar la API de YouTube Data (versión 3) para realizar la funcionalidad disponible en la API de YouTube Data (v2). La API anterior dejó de estar disponible oficialmente a partir del 4 de marzo de 2014. El objetivo de esta guía es ayudarte a migrar aplicaciones que aún usan la API v2 a la versión más reciente de la API.

8 de julio de 2014

Esta actualización incluye los siguientes cambios:

  • El método playlists.insert ahora admite el siguiente error:

    Tipo de error Detalle del error Descripción
    badRequest maxPlaylistExceeded Este error ocurre cuando no se puede crear una playlist porque el canal ya alcanzó el número máximo permitido de playlists.

18 de junio de 2014

Esta actualización incluye los siguientes cambios:

  • La descripción de cada método de API se actualizó para incluir el costo de cuota generado por una llamada a ese método. De manera similar, las definiciones de los parámetros part se actualizaron para especificar el costo de la cuota de cada parte que se puede recuperar con una llamada a la API. Por ejemplo, una llamada al método subscriptions.insert tiene un costo de cuota de aproximadamente 50 unidades. El recurso subscription también contiene tres partes (snippet, contentDetails y subscriberSnippet), y cada una tiene un costo de dos unidades.

    Recuerda que los costos de la cuota pueden cambiar sin previo aviso.

  • El recurso video ahora admite 43 nuevos sistemas de clasificación del contenido, que identifican las clasificaciones que recibieron los videos de diversas agencias nacionales. Los sistemas de clasificación admitidos recientemente son Argentina{25Nvia1114,Nvia112111,[24}1111112 ya cocinaduria,{26112125 niduria,ߺ{16111212 yalimista},[16}111,[16}1012}12 ya sea} 20

28 de mayo de 2014

Esta actualización incluye los siguientes cambios:

  • El método search.list ahora admite los parámetros location y locationRadius, que te permiten buscar videos asociados con una ubicación geográfica. Una solicitud debe especificar un valor para que ambos parámetros recuperen resultados según la ubicación, y la API devolverá un error si una solicitud incluye solo uno de los dos parámetros.

    • El parámetro location especifica las coordenadas de latitud y longitud en el centro del área geográfica circular.

    • El parámetro locationRadius especifica la distancia máxima a la que la ubicación asociada con un video puede ser del centro del área para que el video se incluya de todas formas en los resultados de la búsqueda.

13 de mayo de 2014

Esta actualización incluye los siguientes cambios:

  • Se actualizó la propiedad invideoPromotion.items[] del recurso channel para indicar que, por lo general, solo puedes establecer un elemento promocionado para tu canal. Si intentas insertar demasiados elementos promocionados, la API mostrará un error tooManyPromotedItems, que tiene un código de estado HTTP 400.

  • El recurso channelSection ahora puede contener información sobre algunos nuevos tipos de contenido destacado. La propiedad snippet.type del recurso channelSection ahora admite los siguientes valores:

    • postedPlaylists: las playlists que el propietario del canal publicó en el feed de actividad del canal.
    • postedVideos: los videos que el propietario del canal publicó en el feed de actividad del canal
    • subscriptions: Canales a los que se suscribió el propietario del canal

  • La nueva propiedad contentDetails.contentRating.ifcoRating del recurso video identifica la clasificación que recibió un video de la organización de clasificación de películas de Irlanda.

  • Se actualizó la definición de la propiedad position.cornerPosition del recurso watermark para indicar que la marca de agua siempre aparece en la esquina superior derecha del reproductor.

  • La definición del parámetro q para el método search.list se actualizó para indicar que el término de búsqueda puede usar el operador booleano NOT (-) para excluir los videos asociados con un término de búsqueda específico. El valor también puede usar el operador booleano O (|) para encontrar videos asociados con uno de varios términos de búsqueda.

  • Se actualizó la definición de la propiedad pageInfo.totalResults que se muestra en una respuesta de la API a una llamada a search.list para indicar que el valor es una aproximación y puede que no represente un valor exacto. Además, el valor máximo es 1,000,000. No debes usar este valor para crear vínculos de paginación. En su lugar, usa los valores de propiedad nextPageToken y prevPageToken para determinar si se deben mostrar vínculos de paginación.

  • Los métodos watermarks.set y watermarks.unset se actualizaron para reflejar que la API muestra un código de respuesta 204 HTTP para las solicitudes exitosas a esos métodos.

2 de mayo de 2014

Esta actualización incluye los siguientes cambios:

  • El nuevo recurso i18nLanguage identifica un lenguaje de aplicación que es compatible con el sitio web de YouTube. El lenguaje de la aplicación también puede denominarse lenguaje de IU. Para el sitio web de YouTube, se puede seleccionar automáticamente un idioma de aplicación según la configuración de la Cuenta de Google, el idioma del navegador o la ubicación IP, y el usuario también puede seleccionar manualmente el idioma de la interfaz de usuario que desee desde el pie de página del sitio de YouTube.

    La API admite un método para enumerar los idiomas de aplicación compatibles. Los idiomas admitidos se pueden usar como el valor del parámetro hl cuando se llama a los métodos de la API, como videoCategories.list y guideCategories.list.

  • El nuevo recurso i18nRegion identifica un área geográfica que un usuario de YouTube puede seleccionar como la región de contenido preferida. La región de contenido también se conoce como una configuración regional del contenido. En el caso del sitio web de YouTube, se puede seleccionar automáticamente una región de contenido según una heurística, como el dominio de YouTube o la ubicación de la IP del usuario, y el usuario también puede seleccionar manualmente la región de contenido deseada del pie de página del sitio de YouTube.

    La API admite un método para enumerar las regiones de contenido admitidas. Los códigos regionales admitidos se pueden usar como el valor del parámetro regionCode cuando se llama a métodos de API como search.list, videos.list, activities.list y videoCategories.list.

7 de abril de 2014

Esta actualización incluye los siguientes cambios:

  • El nuevo recurso channelSection contiene información sobre un conjunto de videos que un canal eligió destacar. Por ejemplo, una sección puede mostrar las cargas más recientes de un canal, las cargas más populares o videos de una o más playlists.

    La API admite métodos para enumerar, insertar, actualizar o borrar secciones de canales. Puedes recuperar una lista de secciones para el canal del usuario autenticado especificando un ID de canal en particular o especificando una lista de ID de sección de canal únicos.

    La documentación sobre errores también se actualizó para describir los mensajes de error que la API admite específicamente para estos métodos nuevos.

  • Se actualizó la definición del objeto fileDetails del recurso video para explicar que ese objeto solo se mostrará si la propiedad processingDetails.fileDetailsAvailability del video tiene un valor de available.

    De manera similar, se actualizó la definición del objeto suggestions del recurso video para explicar que ese objeto solo se mostrará si la propiedad processingDetails.tagSuggestionsAvailability del video o su propiedad processingDetails.editorSuggestionsAvailability tiene un valor de available.

  • Se actualizó la documentación de los métodos videos.insert y videos.update para reflejar que se puede configurar la propiedad status.publishAt cuando se llama a esos métodos.

  • Se actualizó la definición del objeto invideoPromotion del recurso channel para explicar que solo el propietario del canal puede recuperar el objeto.

  • Se actualizó la lista de parámetros del método videos.rate para reflejar que ese método en realidad no admite el parámetro onBehalfOfContentOwner. Este fue un error de documentación, ya que las solicitudes videos.rate que establecieron este parámetro mostraron un error 500.

31 de marzo de 2014

Esta actualización incluye los siguientes cambios:

13 de marzo de 2014

Esta actualización incluye los siguientes cambios:

  • La API ahora admite la parte contentOwnerDetails para los recursos channel. La parte nueva contiene datos del canal relevantes para los socios de YouTube vinculados al canal, incluido el ID del propietario de contenido vinculado al canal y la fecha y hora de la vinculación entre el propietario y el canal. Ten en cuenta que esta nueva pieza no está sujeta a la política de baja.

  • En la documentación, ahora se indica la longitud máxima de caracteres admitida para las siguientes propiedades:

    Recurso Propiedad Longitud máxima
    channel invideoPromotion.items[].customMessage 40 caracteres
    video snippet.title 100 caracteres
    video snippet.description 5,000 bytes
    video snippet.tags 500 caracteres. Ten en cuenta que el valor de la propiedad es una lista y que las comas entre los elementos de la lista se tienen en cuenta para el límite.
  • La propiedad brandingSettings.watch.featuredPlaylistId del recurso channel dejó de estar disponible. La API mostrará un error si intentas establecer su valor.

  • Se agregaron las siguientes propiedades del recurso video a la lista de valores que se pueden configurar al insertar o actualizar un video:

  • La documentación de errores ahora especifica el código de respuesta HTTP para cada tipo de error.

  • La API ahora admite los siguientes errores:

    Tipo de error Detalle del error Descripción
    badRequest (400) invalidCriteria El método channels.list muestra este error si la solicitud especifica los parámetros de filtro que no se pueden usar juntos.
    badRequest (400) channelTitleUpdateForbidden El método channels.update muestra este error si intentas actualizar la parte brandingSettings de un canal y cambiar el valor de la propiedad brandingSettings.channel.title. (Ten en cuenta que la API no muestra el error si omites la propiedad).
    badRequest (400) invalidRecentlyUploadedBy El método channels.update muestra este error si la propiedad invideoPromotion.items[].id.recentlyUploadedBy especifica un ID de canal no válido.
    badRequest (400) invalidTimingOffset El método channels.update muestra este error si la parte invideoPromotion especifica un desfase de tiempo no válido.
    badRequest (400) tooManyPromotedItems El método channels.update muestra este error si la parte invideoPromotion especifica una cantidad de elementos promocionados mayor que la permitida.
    forbidden (403) promotedVideoNotAllowed El método channels.update muestra este error si la propiedad invideoPromotion.items[].id.videoId especifica un ID de video que no se puede encontrar o no se puede usar como elemento promocionado.
    forbidden (403) websiteLinkNotAllowed El método channels.update muestra este error si la propiedad invideoPromotion.items[].id.websiteUrl especifica una URL no permitida.
    required (400) requiredTimingType El método channels.update muestra este error si una solicitud no especifica una configuración de sincronización predeterminada en la que YouTube debe mostrar un elemento promocionado.
    required (400) requiredTiming El método channels.update debe especificar un objeto invideoPromotion.items[].timing para cada elemento promocionado.
    required (400) requiredWebsiteUrl El método channels.update debe especificar una propiedad invideoPromotion.items[].id.websiteUrl para cada elemento promocionado.
    badRequest (400) invalidPublishAt El método videos.insert muestra este error si los metadatos de la solicitud especifican una hora de publicación programada no válida.

4 de marzo de 2014

Esta actualización incluye los siguientes cambios:

5 de diciembre de 2013

Esta actualización incluye los siguientes cambios:

  • La documentación del método search.list se actualizó para reflejar correctamente que no necesitas especificar un valor para exactamente un parámetro de filtro cuando envías una solicitud de búsqueda. En su lugar, puedes establecer un valor para cero parámetros o para un parámetro de filtro.

  • Se actualizaron las definiciones de los parámetros del método search.list a fin de indicar que debes establecer el valor del parámetro type en video si también especificas un valor para cualquiera de los siguientes parámetros:

    • eventType
    • videoCaption
    • videoCategoryId
    • videoDefinition
    • videoDimension
    • videoDuration
    • videoEmbeddable
    • videoLicense
    • videoSyndicated
    • videoType

  • El tamaño mínimo de las imágenes del banner del canal que se suben se ha reducido a 2048 px por 1152 px. (Anteriormente, el tamaño mínimo era de 2,120 px por 1,192 px). Además, ten en cuenta que en la documentación del recurso channel se especifican los tamaños máximos de todas las imágenes de banner que se entregan desde la API. Por ejemplo, el tamaño máximo de la imagen brandingSettings.image.bannerTvImageUrl para aplicaciones de televisión es de 2120 x 1192 px, pero la imagen real puede ser de 2048 x 1152 px. El Centro de ayuda de YouTube brinda orientación adicional para optimizar el diseño del canal para que se muestre en diferentes tipos de dispositivos.

  • Se actualizaron varias definiciones de propiedades del recurso channel para reflejar la siguiente información:

    • El valor de la propiedad brandingSettings.channel.description tiene una longitud máxima de 1,000 caracteres.
    • La propiedad brandingSettings.channel.featuredChannelsTitle tiene una longitud máxima de 30 caracteres.
    • La propiedad brandingSettings.channel.featuredChannelsUrls[] ahora puede enumerar hasta 100 canales.
    • Si se establece el valor de la propiedad brandingSettings.channel.unsubscribedTrailer, se debe especificar el ID de video de YouTube de un video público o no listado que le pertenece al propietario del canal.

  • El método channels.update ahora admite actualizaciones de la propiedad invideoPromotion.items[].promotedByContentOwner. Esa propiedad indica si el nombre del propietario del contenido se mostrará cuando se muestre la promoción. Solo se puede configurar si la solicitud a la API que establece el valor de la propiedad se realiza en nombre del propietario del contenido con el parámetro onBehalfOfContentOwner.

  • Los métodos playlistItems.list y playlistItems.insert ahora admiten el parámetro onBehalfOfContentOwner, que ya es compatible con varios otros métodos.

  • La propiedad contentDetails.contentRating.acbRating ahora puede especificar una clasificación de la Junta de Clasificación de Australia (ACB) para películas o de la Autoridad Australiana de Comunicaciones y Medios (ACMA) para la programación de televisión infantil.

  • Las nuevas propiedades contentDetails.contentRating.catvRating y contentDetails.contentRating.catvfrRating identifican las clasificaciones que recibió un video según el Sistema de clasificación de TV canadiense y el sistema de clasificación Régie du cinéma en francés, que se utiliza en Quebec, respectivamente.

  • La nueva propiedad snippet.assignable del recurso videoCategory indica si los videos actualizados o los subidos recientemente se pueden asociar con esa categoría de video.

  • Se agregaron muestras de código para los siguientes métodos:

24 de octubre de 2013

Esta actualización incluye los siguientes cambios:

  • La API incluye dos funciones adicionales diseñadas para ayudar a encontrar y presentar contenido de transmisiones en vivo:

    La nueva propiedad snippet.liveBroadcastContent en los resultados de la búsqueda indica si un recurso de video o canal tiene contenido de transmisión en vivo. Los valores de propiedad válidos son upcoming, active y none.

    • La nueva propiedad snippet.liveBroadcastContent del recurso video indica si el video es una transmisión en vivo futura o activa. En la siguiente lista, se explican los valores posibles de la propiedad:

      • upcoming: el video es una transmisión en directo que todavía no ha comenzado.
      • active: el video es una transmisión en directo en curso.
      • none: el video no es una transmisión en vivo futura ni activa. Este será el valor de propiedad de las transmisiones completadas que aún se podrán ver en YouTube.

    • La nueva propiedad liveStreamingDetails del recurso video es un objeto que contiene metadatos sobre una transmisión de video en vivo. Para recuperar estos metadatos, incluye liveStreamingDetails en la lista de partes de recursos del valor del parámetro part. Los metadatos incluyen las siguientes propiedades nuevas:

      Para recuperar estos metadatos, incluye liveStreamingDetails en el valor del parámetro part cuando llames al método videos.list, videos.insert o videos.update.

    Ten en cuenta que otras dos funciones para identificar el contenido de la transmisión en vivo se lanzaron el 1 de octubre de 2013: el parámetro eventType del método search.list y la propiedad snippet.liveBroadcastContent del resultado de la búsqueda.

  • El método videos.insert ahora admite el parámetro notifySubscribers, que indica si YouTube debe enviar una notificación sobre el video nuevo a los usuarios que se suscriben al canal del video. El valor predeterminado del parámetro es True, lo que indica que los suscriptores recibirán notificaciones de los videos recién subidos. Sin embargo, es posible que el propietario de un canal que suba muchos videos prefiera establecer el valor en False para evitar enviar notificaciones sobre cada video nuevo a los suscriptores del canal.

  • Se actualizó la lista de propiedades que se pueden modificar cuando se llama al método channels.update para incluir las propiedades invideoPromotion.items[].customMessage y invideoPromotion.items[].websiteUrl. Además, la lista se modificó para identificar las propiedades de brandingSettings que se pueden modificar. Estas propiedades de brandingSettings ya se podían modificar, por lo que el cambio en la documentación no refleja un cambio en la funcionalidad existente de la API.

  • Los métodos playlists.insert, playlists.update y playlists.delete ahora admiten el parámetro onBehalfOfContentOwner, que ya es compatible con varios otros métodos.

  • El método playlists.insert ahora admite el parámetro onBehalfOfContentOwnerChannel, que ya es compatible con varios otros métodos.

  • La propiedad contentDetails.contentRating.tvpgRating del recurso video ahora admite un valor de pg14, que corresponde a una calificación de TV-14.

  • Se corrigió la definición de la propiedad snippet.liveBroadcastContent, que forma parte de los resultados de la búsqueda, para reflejar que live es un valor de propiedad válido, pero active no lo es.

  • La propiedad contentDetails.contentRating.mibacRating del recurso video ahora admite dos calificaciones adicionales:

    • mibacVap (VAP): Los niños deben estar acompañados por un adulto.
    • mibacVm6 (V.M.6): Restringido para mayores de 6 años.
    • mibacVm12 (V.M.12): Restringido para mayores de 12 años.

  • La nueva propiedad invideoPromotion.items[].promotedByContentOwner del recurso channel indica si se mostrará el nombre del propietario del contenido cuando se muestre la promoción. Este campo solo se puede configurar si la solicitud a la API que establece el valor se realiza en nombre del propietario del contenido. Consulta el parámetro onBehalfOfContentOwner para obtener más información.

1 de octubre de 2013

Esta actualización incluye los siguientes cambios:

  • El nuevo objeto auditDetails del recurso channel contiene datos del canal que una red multicanal (MCN) evaluaría para determinar si se acepta o rechaza un canal en particular. Ten en cuenta que cualquier solicitud a la API que recupere esta parte de recurso debe proporcionar un token de autorización que contenga el alcance https://www.googleapis.com/auth/youtubepartner-channel-audit. Además, cualquier token que use ese alcance se debe revocar cuando la MCN decida aceptar o rechazar el canal o en un plazo de dos semanas a partir de la fecha en que se emitió el token.

  • La propiedad invideoPromotion.items[].id.type del recurso channel ahora admite un valor de recentUpload, que indica que el elemento promocionado es el video que se subió más recientemente desde un canal especificado.

    De forma predeterminada, el canal es el mismo para el que se establecen los datos de promoción en video. Sin embargo, puedes promocionar el video que se subió más recientemente desde otro canal. Para ello, establece el valor de la nueva propiedad invideoPromotion.items[].id.recentlyUploadedBy en el ID del canal de ese canal.

  • El recurso channel contiene tres propiedades nuevas (brandingSettings.image.bannerTvLowImageUrl, brandingSettings.image.bannerTvMediumImageUrl, brandingSettings.image.bannerTvHighImageUrl) que especifican las URL para las imágenes de banner que se muestran en los canales de usuario en aplicaciones de televisión.

  • La nueva propiedad snippet.liveBroadcastContent en los resultados de la búsqueda indica si un recurso de video o canal tiene contenido de transmisión en vivo. Los valores de propiedad válidos son upcoming, active y none.

    • Para un recurso video, el valor upcoming indica que el video es una transmisión en vivo que todavía no comenzó, mientras que el valor active indica que el video es una transmisión en vivo en curso.
    • Para un recurso channel, el valor upcoming indica que el canal tiene una transmisión programada que todavía no comenzó, mientras que el valor acive indica que el canal tiene una transmisión en vivo en curso.

  • En el recurso watermark, la propiedad targetChannelId cambió de un objeto a una cadena. En lugar de contener una propiedad secundaria que especifique el ID del canal de YouTube del canal al que se vincula la imagen de marca de agua, la propiedad targetChannelId ahora especifica ese valor. Por lo tanto, se quitó la propiedad targetChannelId.value del recurso.

  • El método thumbnails.set ahora admite el parámetro onBehalfOfContentOwner, que ya es compatible con varios otros métodos.

  • El método search.list ahora admite el parámetro eventType, que restringe una búsqueda para mostrar solo eventos de transmisión activos, próximos o completados.

  • La nueva propiedad contentDetails.contentRating.mibacRating identifica la clasificación que recibió un video del Ministero dei Beni e delle Attivita Culturali e del Turismo de Italia.

  • La API ahora admite los siguientes errores:

    Tipo de error Detalle del error Descripción
    badRequest invalidImage El método thumbnails.set muestra este error si el contenido de la imagen proporcionada no es válido.
    forbidden videoRatingDisabled El método videos.rate muestra este error si el propietario del video que se está calificando inhabilita las calificaciones para ese video.

27 de agosto de 2013

Esta actualización incluye los siguientes cambios:

  • El nuevo recurso watermark identifica una imagen que se muestra durante las reproducciones de videos de un canal específico. También puedes especificar un canal de destino al que vinculará la imagen, así como información de sincronización que determina cuándo aparece la marca de agua en las reproducciones de video y el período de tiempo que será visible.

    El método watermarks.set sube y establece la imagen de marca de agua de un canal. El método watermarks.unset borra la imagen de marca de agua de un canal.

    En la documentación de error, se describen los mensajes de error que la API admite específicamente para los métodos watermarks.set y watermarks.unset.

  • La nueva propiedad statistics.hiddenSubscriberCount del recurso channel contiene un valor booleano que indica si la cantidad de suscriptores del canal está oculta. Por lo tanto, el valor de la propiedad es false si el recuento de suscriptores del canal es visible públicamente.

  • El método playlists.list ahora admite los parámetros onBehalfOfContentOwner y onBehalfOfContentOwnerChannel. Ambos parámetros ya son compatibles con muchos otros métodos.

  • El método videos.list ahora admite el parámetro regionCode, que identifica la región de contenido para la que se debe recuperar un gráfico. Este parámetro solo se puede usar junto con el parámetro chart. El valor del parámetro es un código de país ISO 3166-1 alpha-2.

  • El error documentation describe el siguiente error de solicitud común nuevo, que podría ocurrir en varios métodos de API:

    Tipo de error Detalle del error Descripción
    forbidden insufficientPermissions Los permisos asociados con el token de OAuth 2.0 proporcionado para la solicitud no son suficientes para acceder a los datos solicitados.

15 de agosto de 2013

Esta actualización incluye los siguientes cambios:

  • El objeto invideoPromotion del recurso channel tiene las siguientes propiedades nuevas y actualizadas:

    • La API ahora admite la capacidad de especificar un sitio web como un elemento promocionado. Para ello, establece el valor de la propiedad invideoPromotion.items[].id.type en website y usa la nueva propiedad invideoPromotion.items[].id.websiteUrl para especificar la URL. Usa también la nueva propiedad invideoPromotion.items[].customMessage para definir un mensaje personalizado que se mostrará en la promoción.

      Los vínculos pueden ser sitios web relacionados, sitios comerciales o sitios de redes sociales. Consulta las instrucciones del Centro de ayuda de YouTube para sitios web asociados y sitios de comercios si quieres obtener más información sobre cómo habilitar vínculos para tu contenido.

      Si agregas vínculos promocionales, aceptas que estos no se usen para redireccionar tráfico a sitios no autorizados y que cumplan con las políticas de AdWords, las políticas de anuncios de YouTube, los Lineamientos de la Comunidad de YouTube y las Condiciones del Servicio de YouTube.

    • Se reestructuraron las propiedades relacionadas con la configuración de sincronización para mostrar los elementos promocionados durante la reproducción de video:

      • El objeto invideoPromotion.timing se movió a invideoPromotion.items[].timing. Este objeto ahora te permite personalizar los datos de tiempo para cada elemento promocionado en la lista invideoPromotion.items[].

      • El nuevo objeto invideoPromotion.defaultTiming especifica la configuración de tiempo predeterminada para tu promoción. Esa configuración define cuándo se mostrará un elemento promocionado durante la reproducción de uno de los videos de tu canal. Puedes anular el tiempo predeterminado para cualquier elemento promocionado con el objeto invideoPromotion.items[].timing.

      • La nueva propiedad invideoPromotion.items[].timing.durationMs especifica la cantidad de tiempo (en milisegundos) que debe mostrarse la promoción. El objeto invideoPromotion.defaultTiming también contiene un campo durationMs que especifica la cantidad de tiempo predeterminada que se mostrará el elemento promocionado.

    • Las propiedades invideoPromotion.items[].type y invideoPromotion.items[].videoId se movieron al objeto invideoPromotion.items[].id.

  • El método subscriptions.list ahora admite los parámetros onBehalfOfContentOwner y onBehalfOfContentOwnerChannel. Ambos parámetros ya son compatibles con muchos otros métodos.

  • En la respuesta de la API a una solicitud de thumbnails.set, el valor de la propiedad kind cambió de youtube#thumbnailListResponse a youtube#thumbnailSetResponse.

  • Se agregaron muestras de código para los siguientes métodos:

    Ten en cuenta que también se quitó el ejemplo de Python para el método playlistItems.insert, ya que la funcionalidad que se demostró ahora está a cargo del método videos.rate.

  • error documentation describe el siguiente error de contexto de solicitud nuevo, que podría ocurrir para cualquier método de API que admita el parámetro de solicitud mine:

    Tipo de error Detalle del error Descripción
    badRequest invalidMine El parámetro mine no se puede usar en solicitudes en las que el usuario autenticado es un socio de YouTube. Debes quitar el parámetro mine, autenticarte como usuario de YouTube quitando el parámetro onBehalfOfContentOwner, o bien proporcionar el parámetro onBehalfOfContentOwnerChannel si está disponible para el método llamado a fin de actuar como uno de los canales del socio.

8 de agosto de 2013

Esta actualización incluye los siguientes cambios:

30 de julio de 2013

Esta actualización incluye los siguientes cambios:

  • En un recurso channelBanner, el valor del valor de la propiedad kind cambió de youtube#channelBannerInsertResponse a youtube#channelBannerResource. Este recurso se muestra en respuesta a una solicitud channelBanners.insert.

  • La nueva propiedad brandingSettings.channel.profileColor del recurso channel especifica un color destacado que complementa el contenido del canal. El valor de propiedad es un signo numeral (#) seguido de una cadena hexadecimal de seis caracteres, como #2793e6.

  • La API ahora admite la capacidad de especificar si una suscripción es para todas las actividades del canal o solo para las nuevas cargas. La nueva propiedad contentDetails.activityType del recurso subscription identifica los tipos de actividades sobre los que se notificará al suscriptor. Los valores de propiedad válidos son all y uploads.

  • El método videos.list admite parámetros nuevos para recuperar un gráfico de los videos más populares en YouTube:

    • El parámetro chart identifica el gráfico que deseas recuperar. Por el momento, el único valor admitido es mostPopular. Ten en cuenta que el parámetro chart es un parámetro de filtro, lo que significa que no se puede usar en la misma solicitud que otros parámetros de filtro (id y myRating).
    • El parámetro videoCategoryId identifica la categoría de video para la que se debe recuperar el gráfico. Este parámetro solo se puede usar junto con el parámetro chart. De forma predeterminada, los gráficos no se restringen a una categoría en particular.

  • La nueva propiedad topicDetails.relevantTopicIds[] del recurso video proporciona una lista de IDs de temas de Freebase que son relevantes para el video o su contenido. Los temas de estos temas pueden mencionarse o aparecer en el video.

  • Se cambió el nombre de la propiedad recordingDetails.location.elevation del recurso video a recordingDetails.location.altitude, y el nombre de su propiedad fileDetails.recordingLocation.location.elevation a fileDetails.recordingLocation.location.altitude.

  • El objeto contentDetails.contentRating del recurso video especifica las clasificaciones que recibió un video según varios esquemas de clasificación, como las clasificaciones de la MPAA y TVPG, entre otros. Para cada sistema de calificación, la API ahora admite un valor de calificación que indica que el video no se ha calificado. Ten en cuenta que, en el caso de las clasificaciones de la MPAA, se usa con frecuencia la clasificación "sin calificación" para identificar versiones sin cortes de películas para las cuales la versión original de la película sí recibió una calificación oficial.

  • La nueva propiedad contentDetails.contentRating.ytRating del recurso video identifica el contenido con restricción de edad. El valor de la propiedad será ytAgeRestricted si YouTube identifica que el video incluye contenido inapropiado para usuarios menores de 18 años. Si la propiedad no aparece o si el valor está vacío, no se identificó el contenido como con restricción de edad.

  • El parámetro mySubscribers del método channels.list dejó de estar disponible. Usa el método subscriptions.list y su parámetro mySubscribers para recuperar una lista de suscriptores al canal del usuario autenticado.

  • Los métodos channelBanners.insert, channels.update, videos.getRating y videos.rate ahora admiten el parámetro onBehalfOfContentOwner. Ese parámetro indica que el usuario autenticado actúa en nombre del propietario del contenido especificado en el valor del parámetro.

  • Se actualizó la documentación del método channels.update para reflejar el hecho de que se puede usar ese método para actualizar el objeto brandingSettings del recurso channel y sus propiedades secundarias. En la documentación, ahora también se muestra la lista actualizada de propiedades que puedes establecer para el objeto invideoPromotion del recurso channel.

  • El error documentation describe los siguientes errores nuevos:

    Tipo de error Detalle del error Descripción
    forbidden accountDelegationForbidden Este error no es específico de un método de API en particular. Indica que el usuario autenticado no está autorizado para actuar en nombre de la Cuenta de Google especificada.
    forbidden authenticatedUserAccountClosed Este error no es específico de un método de API en particular. Indica que la cuenta de YouTube del usuario autenticado está cerrada. Si el usuario actúa en nombre de otra Cuenta de Google, este error indicará que esa otra cuenta está cerrada.
    forbidden authenticatedUserAccountSuspended Este error no es específico de un método de API en particular. Indica que la cuenta de YouTube del usuario autenticado está suspendida. Si el usuario actúa en nombre de otra Cuenta de Google, este error indicaría que esa otra cuenta está suspendida.
    forbidden authenticatedUserNotChannel Este error no es específico de un método de API en particular. Indica que el servidor de la API no puede identificar el canal asociado con la solicitud a la API. Si la solicitud está autorizada y usa el parámetro onBehalfOfContentOwner, también debes establecer el parámetro onBehalfOfContentOwnerChannel.
    forbidden cmsUserAccountNotFound Este error no es específico de un método de API en particular. No se permite al usuario de CMS actuar en nombre del propietario de contenido especificado.
    notFound contentOwnerAccountNotFound Este error no es específico de un método de API en particular. No se encontró la cuenta del propietario del contenido especificada.
    badRequest invalidPart Este error no es específico de un método de API en particular. El parámetro part de la solicitud especifica partes que no se pueden escribir al mismo tiempo.
    badRequest videoChartNotFound El método videos.list muestra este error cuando la solicitud especifica un gráfico de video no admitido o no disponible.
    notFound videoNotFound El método videos.update devuelve este error para indicar que no se puede encontrar el video que intentas actualizar. Verifica el valor de la propiedad id en el cuerpo de la solicitud para asegurarte de que sea correcto.

10 de junio de 2013

Esta actualización incluye los siguientes cambios:

  • El nuevo parámetro forUsername del método channels.list te permite recuperar información sobre un canal especificando su nombre de usuario de YouTube.

  • El método activities.list ahora admite el parámetro regionCode, que le indica a la API que muestre resultados relevantes para el país especificado. YouTube utiliza este valor cuando la actividad anterior del usuario autorizado en YouTube no proporciona suficiente información para generar el feed de actividad.

  • Los recursos de las playlists ahora contienen la propiedad snippet.tags. La propiedad solo se devolverá a los usuarios autorizados que recuperen datos sobre sus propias playlists. Los usuarios autorizados también pueden establecer etiquetas de playlist cuando llaman a los métodos playlists.insert o playlists.update.

  • El parámetro onBehalfOfContentOwner, que antes era compatible con los métodos channels.list y search.list, ahora también es compatible con los métodos videos.insert, videos.update y videos.delete. Ten en cuenta que, cuando se usa este parámetro en una llamada al método videos.insert, la solicitud también debe especificar un valor para el nuevo parámetro onBehalfOfContentOwnerChannel, que identifica el canal al que se agregará el video. El canal debe estar vinculado al propietario del contenido que se especifica en el parámetro onBehalfOfContentOwner.

    El parámetro indica que las credenciales de autorización de la solicitud identifican a un usuario de CMS de YouTube que actúa en nombre del propietario del contenido especificado en el valor del parámetro. La cuenta de CMS con la que se autentica el usuario debe estar relacionada con el propietario del contenido de YouTube especificado.

    Este parámetro está dirigido a los socios de contenido que poseen y administran muchos canales de YouTube diferentes. El parámetro les permite a los socios autenticarse una vez y obtener acceso a todos los datos de sus videos y canales, sin tener que proporcionar credenciales de autenticación para cada canal.

    Específicamente en relación con este lanzamiento, el parámetro ahora permite que un socio de contenido inserte, actualice o borre videos en cualquiera de los canales de YouTube que posee el socio.

  • El error documentation describe los siguientes errores nuevos:

    Tipo de error Detalle del error Descripción
    forbidden insufficientCapabilities Este error no es específico de un método de API en particular. Indica que el usuario de CMS que llama a la API no tiene permisos suficientes para realizar la operación solicitada. Este error está asociado con el uso del parámetro onBehalfOfContentOwner, que es compatible con varios métodos de API.
    unauthorized authorizationRequired El método activities.list muestra este error cuando la solicitud usa el parámetro home, pero no está debidamente autorizada.
  • En el recurso channels, se quitó la propiedad invideoPromotion.channelId porque ya se especificó el ID del canal mediante la propiedad id del recurso.

  • La nueva guía Cómo trabajar con IDs de canal explica cómo la API utiliza los IDs de canal. La guía puede ser especialmente útil para los desarrolladores que migran desde la versión anterior de la API y que tienen aplicaciones que solicitan contenido para el usuario de default o que dependen de la noción de que cada canal de YouTube tiene un nombre de usuario único, que ya no es el caso.

22 de mayo de 2013

Esta actualización incluye los siguientes cambios:

14 de mayo de 2013

Esta actualización incluye los siguientes cambios:

  • Las páginas independientes ahora incluyen muestras de código para Java, .NET, PHP y Ruby.

  • La página con las muestras de código de Python ahora incluye ejemplos para agregar una suscripción, crear una playlist y actualizar un video.

10 de mayo de 2013

Esta actualización incluye los siguientes cambios:

8 de mayo de 2013

Esta actualización incluye los siguientes cambios:

  • Los recursos del canal ahora admiten el objeto inVideoPromotion, que contiene información sobre una campaña promocional asociada con el canal. Un canal puede usar una campaña promocional en video para mostrar imágenes en miniatura de un video promocionado dentro del reproductor de video durante las reproducciones de videos del canal.

    Para recuperar estos datos, incluye invideoPromotion en el valor del parámetro part de una solicitud channels.list.

  • El nuevo método channels.update se puede usar para actualizar los datos de la campaña promocional en video de un canal. Ten en cuenta que el método solo admite actualizaciones de la parte invideoPromotion del recurso channel y aún no admite actualizaciones de otras partes de ese recurso.

2 de mayo de 2013

Esta actualización incluye los siguientes cambios:

  • Los recursos de canal ahora admiten la propiedad status.isLinked, que indica si los datos del canal identifican a un usuario que ya está vinculado a un nombre de usuario de YouTube o a una cuenta de Google+. Un usuario que tenga uno de estos vínculos ya cuenta con una identidad pública de YouTube, que es un requisito para varias acciones, como subir videos.

  • Los recursos de suscripción ahora admiten la parte subscriberSnippet. Ese objeto encapsula contiene datos de fragmentos para el canal del suscriptor.

  • La API ahora admite el método videos.getRating, que recupera las calificaciones que el usuario autenticado dio a una lista de uno o más videos.

  • El nuevo parámetro myRating del método videos.list te permite recuperar una lista de videos que el usuario autenticado clasificó con like o dislike.

    Los parámetros myRating y id ahora se consideran parámetros de filtro, lo que significa que una solicitud a la API debe especificar exactamente uno de los parámetros. (Anteriormente, el parámetro id era un parámetro obligatorio para este método).

    El método muestra un error forbidden para las solicitudes que intentan recuperar información de calificaciones de videos, pero que no están debidamente autorizadas para hacerlo.

  • Con la introducción del parámetro myRating, también se actualizó el método videos.list para admitir la paginación. Sin embargo, ten en cuenta que los parámetros de paginación solo son compatibles con las solicitudes que utilizan el parámetro myRating. (Los parámetros y la información de Paging no se admiten para las solicitudes que utilizan el parámetro id).

    • El parámetro maxResults especifica la cantidad máxima de videos que la API puede mostrar en el conjunto de resultados y el parámetro pageToken identifica una página específica del conjunto de resultados que deseas recuperar.

    • El recurso youtube#videoListResponse, que se muestra en respuesta a una solicitud videos.list, ahora contiene el objeto pageInfo, que incluye detalles como la cantidad total de resultados y la cantidad de resultados incluidos en el conjunto de resultados actual. El recurso youtube#videoListResponse también puede incluir propiedades nextPageToken y prevPageToken, cada una de las cuales proporciona un token que podría usarse para recuperar una página específica en el conjunto de resultados.

  • El método videos.insert admite los siguientes parámetros nuevos:

    • autoLevels: establece el valor de este parámetro en true para indicarle a YouTube que mejore automáticamente la iluminación y el color del video.
    • stabilize: establece el valor de este parámetro en true para indicarle a YouTube que ajuste el video mediante la eliminación de la inestabilidad que resulta de los movimientos de la cámara.

  • Se agregó la propiedad channelTitle a snippet para los siguientes recursos:

    • playlistItem: la propiedad especifica el nombre del canal que agregó el elemento de la playlist.
    • playlist: la propiedad especifica el nombre del canal que creó la playlist.
    • subscription: la propiedad especifica el nombre del canal al que está suscrito.

  • Se agregaron muestras de código para los siguientes métodos:

  • El nuevo parámetro mySubscribers del método subscriptions.list te permite recuperar una lista de los suscriptores del usuario autenticado actualmente. Este parámetro solo se puede usar en una solicitud debidamente autorizada.

    Nota: Esta función tiene como objetivo reemplazar el parámetro mySubscribers que se admite actualmente para el método channels.list. Ese parámetro dejará de estar disponible.

  • En un recurso video, el valor de propiedad unspecified ya no es posible para ninguna de las siguientes propiedades:

  • Las solicitudes a la API que contienen un parámetro inesperado ahora muestran un error badRequest, y el motivo informado del error es unexpectedParameter.

  • Se actualizó el error que muestra el método playlistItems.insert cuando la playlist ya contiene el número máximo de elementos permitidos. El error ahora se informa como un error forbidden, y el motivo del error es playlistContainsMaximumNumberOfVideos.

19 de abril de 2013

Esta actualización incluye los siguientes cambios:

  • El nuevo método videos.rate le permite al usuario establecer una calificación like o dislike en un video, o quitar una calificación de un video.

    La documentación sobre errores también se actualizó para enumerar los errores que la API puede mostrar en respuesta a una llamada al método videos.rate.

  • Las imágenes en miniatura ahora se identifican en la documentación de la API como un recurso independiente, y el nuevo método thumbnails.set te permite subir una miniatura de video personalizada a YouTube y configurarla para un video.

    La documentación sobre errores también se actualizó para enumerar los errores que la API puede mostrar en respuesta a una llamada al método thumbnails.set.

    Ten en cuenta que este cambio no afecta en realidad a los recursos existentes que muestran imágenes en miniatura. Las imágenes en miniatura se devuelven en esos recursos de la misma manera que antes, aunque en la documentación ahora se enumeran los nombres de los diferentes tamaños de miniatura que la API podría mostrar.

  • La nueva parte brandingSettings del recurso channel identifica la configuración, el texto y las imágenes de la página de canal del canal y las páginas de reproducción de video.

  • El recurso playlistItem contiene las siguientes propiedades nuevas:

    • El nuevo objeto status encapsula la información de estado del elemento de la playlist, y la propiedad status.privacyStatus identifica el estado de privacidad del elemento de la playlist.

  • El recurso video contiene las siguientes propiedades nuevas:

  • Se actualizó la documentación del método playlistItems.update para reflejar el hecho de que la propiedad snippet.resourceId debe especificarse en el recurso enviado como cuerpo de la solicitud.

  • El método search.list ahora admite la siguiente funcionalidad:

    • El nuevo parámetro forMine restringe una búsqueda para recuperar solo los videos del usuario autenticado.

    • El parámetro order ahora admite la capacidad de ordenar los resultados alfabéticamente por título (order=title) o por recuento de videos en orden descendente (order=videoCount).

    • El nuevo parámetro safeSearch indica si los resultados de la búsqueda deben incluir contenido restringido.

  • El método videos.insert admite varios errores nuevos, que se indican en la siguiente tabla:

    Tipo de error Detalle del error Descripción
    badRequest invalidCategoryId La propiedad snippet.categoryId especifica un ID de categoría no válido. Usa el método videoCategories.list para recuperar las categorías admitidas.
    badRequest invalidRecordingDetails metadata specifies invalid recording details.
    badRequest invalidVideoGameRating Los metadatos de la solicitud especifican una calificación de videojuego no válida.
    badRequest invalidVideoMetadata Los metadatos de la solicitud no son válidos.
  • Se quitó el parámetro onBehalfOfContentOwner de la lista de parámetros admitidos para los métodos videos.update y videos.delete.

12 de marzo de 2013

Esta actualización incluye los siguientes cambios:

  • Se agregó la propiedad channelTitle a snippet para los siguientes recursos:

    • activity: la propiedad especifica el nombre del canal responsable de la actividad.
    • search: la propiedad especifica el nombre del canal asociado con el recurso que identifica el resultado de la búsqueda.
    • video: la propiedad especifica el nombre del canal que subió el video.

  • El método search.list admite los siguientes parámetros nuevos:

    • El parámetro channelType te permite restringir la búsqueda de canales para recuperar todos los canales o solo programas.

    • El parámetro videoType te permite restringir la búsqueda de videos para recuperar todos los videos o solo las películas o solo los episodios de programas.

  • Se actualizó la definición de la parte recordingDetails del recurso video para indicar que el objeto solo se mostrará para un video si se establecieron los datos de ubicación geográfica o el tiempo de grabación del video.

  • El método playlistItems.update ahora muestra un error invalidSnippet, que se muestra si la solicitud a la API no especifica un fragmento válido.

  • Varios métodos de API admiten parámetros nuevos que están dirigidos exclusivamente a socios de contenido de YouTube. Entre los socios de contenido de YouTube, se incluyen estudios cinematográficos y de televisión, sellos discográficos y otros creadores de contenido que publican su contenido en YouTube.

    • El parámetro onBehalfOfContentOwner indica que las credenciales de autorización de la solicitud identifican a un usuario de CMS de YouTube que actúa en nombre del propietario del contenido especificado en el valor del parámetro. La cuenta de CMS con la que se autentica el usuario debe estar relacionada con el propietario del contenido de YouTube especificado.

      Este parámetro está dirigido a los socios de contenido que poseen y administran muchos canales de YouTube diferentes. El parámetro les permite a los socios autenticarse una vez y obtener acceso a todos los datos de sus videos y canales, sin tener que proporcionar credenciales de autenticación para cada canal.

      Los métodos channels.list, search.list, videos.delete, videos.list y videos.update admiten este parámetro.

    • El parámetro managedByMe, que es compatible con el método channels.list, le indica a la API que devuelva todos los canales del propietario del contenido que especifica el parámetro onBehalfOfContentOwner.

    • El parámetro forContentOwner, que es compatible con el método search.list, le indica a la API que restrinja los resultados de la búsqueda para incluir solo los recursos que son propiedad del propietario del contenido que especifica el parámetro onBehalfOfContentOwner.

25 de febrero de 2013

Esta actualización incluye los siguientes cambios:

  • La API admite varias partes y propiedades nuevas para los recursos de video:

    • Las nuevas partes fileDetails, processingDetails y suggestions proporcionan información a los propietarios de los videos sobre los videos que suben. Estos datos son muy útiles en aplicaciones que permiten subir videos e incluyen lo siguiente:

      • estado y progreso del procesamiento
      • errores y otros problemas que se encontraron durante el procesamiento de un video
      • disponibilidad de imágenes en miniatura
      • Sugerencias para mejorar la calidad de los metadatos o videos
      • detalles sobre el archivo original que se subió a YouTube

      Solo el propietario del video puede recuperar todas estas partes. En la siguiente lista, se describen brevemente las partes nuevas, y la documentación del recurso video define todas las propiedades que contiene cada parte.

      • El objeto fileDetails contiene información sobre el archivo de video que se subió a YouTube, como la resolución, la duración, los códecs de audio y video, las tasas de bits de transmisión y más.

      • El objeto processingProgress contiene información sobre el progreso de YouTube en el procesamiento del archivo de video que se subió. Las propiedades del objeto identifican el estado de procesamiento actual y estiman el tiempo restante hasta que YouTube termine de procesar el video. Esta parte también indica si los diferentes tipos de datos o contenido, como detalles de los archivos o las imágenes en miniatura, están disponibles para el video.

        Este objeto está diseñado para ser sondeado de manera que quien sube el video pueda hacer un seguimiento del progreso que ha hecho YouTube en el procesamiento del archivo de video que se subió.

      • El objeto suggestions contiene sugerencias que identifican oportunidades para mejorar la calidad de video o los metadatos del video que se subió.

    • La parte contentDetails contiene cuatro propiedades nuevas. Estas propiedades se pueden recuperar con solicitudes sin autenticar.

      • dimension: Indica si el video está disponible en 2D o 3D.
      • definition: indica si el video está disponible en definición estándar o alta.
      • caption: indica si hay subtítulos disponibles para el video.
      • licensedContent: indica si el video incluye contenido reclamado por un socio de contenido de YouTube.

    • La parte status contiene dos propiedades nuevas. Los propietarios del video pueden establecer valores para ambas propiedades cuando insertan o actualizan un video. Estas propiedades también se pueden recuperar con solicitudes sin autenticar.

      • embeddable: indica si el video puede incorporarse en otro sitio web.
      • license: especifica la licencia del video. Los valores válidos son creativeCommon y youtube.

  • Se actualizó la definición del parámetro part para los métodos videos.list, videos.insert y videos.update para enumerar las partes recién agregadas descritas anteriormente, así como la parte recordingDetails, que se omitió de manera involuntaria.

  • La nueva propiedad contentDetails.googlePlusUserId del recurso channel especifica el ID de perfil de Google+ asociado con el canal. Este valor se puede usar para generar un vínculo al perfil de Google+.

  • Cada objeto de imagen en miniatura ahora especifica el ancho y la altura de la imagen. Actualmente, las imágenes en miniatura se muestran en los recursos activity, channel, playlist, playlistItem, search result, subscription y video.

  • playlistItems.list ahora admite el parámetro videoId, que se puede usar junto con el parámetro playlistId para recuperar solo el elemento de la playlist que representa el video especificado.

    La API devuelve un error notFound si el video que identifica el parámetro no se puede encontrar en la playlist.

  • La documentación sobre errores describe un error forbidden nuevo, que indica que una solicitud no se autorizó debidamente para realizar la acción solicitada.

  • Se quitó la propiedad snippet.channelId del recurso channel. La propiedad id del recurso proporciona el mismo valor.

30 de enero de 2013

Esta actualización incluye los siguientes cambios:

  • La nueva página error enumera los errores que la API puede mostrar. La página incluye errores generales, que pueden ocurrir para varios métodos de API diferentes, así como errores específicos del método.

16 de enero de 2013

Esta actualización incluye los siguientes cambios:

  • Las muestras de código ahora están disponibles para los métodos y lenguajes que se indican en la siguiente lista:

  • Un recurso activity ahora puede informar una acción channelItem, que ocurre cuando YouTube agrega un video a un canal de YouTube generado automáticamente. (YouTube identifica algorítmicamente los temas que tienen una presencia significativa en el sitio web de YouTube y genera canales para esos temas automáticamente).

  • Se actualizaron los siguientes parámetros de search.list:

    • El parámetro q ya no se designa como filtro, lo que significa...
    • Se cambió el nombre del parámetro relatedToVideo a relatedToVideoId.
    • El parámetro published se reemplazó por dos parámetros nuevos, publishedAfter y publishedBefore, que se describen a continuación.

  • El método search.list admite los siguientes parámetros nuevos:

    Nombre del parámetro Valor Descripción
    channelId string Muestra los recursos creados por el canal especificado.
    publishedAfter datetime Muestra los recursos creados después del tiempo especificado.
    publishedBefore datetime Muestra los recursos creados antes de la hora especificada.
    regionCode string Muestra recursos del país especificado.
    videoCategoryId string Filtra los resultados de la búsqueda de videos para incluir solo los videos asociados con la categoría de video especificada.
    videoEmbeddable string Filtra los resultados de la búsqueda de videos para incluir solo los videos que se puedan reproducir en un reproductor incorporado en una página web. Establece el valor del parámetro en true para recuperar solo los videos que se puedan insertar.
    videoSyndicated string Filtra los resultados de la búsqueda de videos para incluir solo los videos que pueden reproducirse fuera de YouTube.com. Establece el valor del parámetro en true para recuperar solo los videos distribuidos.
  • Varios recursos de la API admiten propiedades nuevas. En la siguiente tabla, se identifican los recursos y sus nuevas propiedades:

    Recurso Nombre de la propiedad Valor Descripción
    activity contentDetails.playlistItem.playlistItemId string ID de elemento de la playlist que YouTube asignó para identificar de forma exclusiva el elemento en ella.
    activity contentDetails.channelItem object Es un objeto que contiene información sobre un recurso que se agregó a un canal. Esta propiedad solo está presente si el snippet.type es channelItem.
    activity contentDetails.channelItem.resourceId object Un objeto que identifica el recurso que se agregó al canal. Al igual que otras propiedades de resourceId, contiene una propiedad kind que especifica el tipo de recurso, como video o playlist. También contiene exactamente una de varias propiedades (videoId, playlistId, etc.) que especifica el ID que identifica ese recurso de forma exclusiva.
    channel status object Este objeto contiene información sobre el estado de privacidad del canal.
    channel status.privacyStatus string Estado de privacidad del canal. Los valores válidos son private y public.
    playlist contentDetails object Este objeto contiene metadatos sobre el contenido de la playlist.
    playlist contentDetails.itemCount unsigned integer Número de videos en la lista de reproducción.
    playlist player object Este objeto contiene información que puedes utilizar para reproducir la playlist en un reproductor insertado.
    playlist player.embedHtml string Una etiqueta <iframe> que inserta un reproductor de video que reproduce la playlist.
    video recordingDetails object Este objeto contiene información que identifica o describe el lugar y la hora en que se grabó el video.
    video recordingDetails.location object Este objeto contiene información de ubicación geográfica asociada con el video.
    video recordingDetails.location.latitude double Es la latitud en grados.
    video recordingDetails.location.longitude double Es la longitud en grados.
    video recordingDetails.location.elevation double Altitud sobre la Tierra, en metros.
    video recordingDetails.locationDescription string Una descripción de texto de la ubicación en la que se grabó el video.
    video recordingDetails.recordingDate datetime Fecha y hora en que se grabó el video. El valor se especifica en el formato ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ).
  • En la documentación de varios métodos de API, ahora se identifican las propiedades que se deben especificar en el cuerpo de la solicitud o que se actualizan según los valores incluidos en el cuerpo de la solicitud. En la siguiente tabla, se enumeran esos métodos, así como las propiedades obligatorias o modificables.

    Nota: Es posible que en la documentación de otros métodos ya se incluyan las propiedades obligatorias y modificables.

    Método Propiedades
    activities.insert Propiedades obligatorias:
    • snippet.description
    Propiedades modificables:
    • snippet.description
    • contentDetails.bulletin.resourceId
    playlists.update Propiedades obligatorias:
    • id
    playlistItems.update Propiedades obligatorias:
    • id
    videos.update Propiedades obligatorias:
    • id
  • La API ya no informa un error playlistAlreadyExists si intentas crear o actualizar una playlist con el mismo título que una playlist que ya existe en el mismo canal.

  • Varios métodos de API admiten tipos de errores nuevos. La siguiente tabla identifica el método y los nuevos errores admitidos:

    Método Tipo de error Detalle del error Descripción
    guideCategories.list notFound notFound No se puede encontrar la categoría guía identificada por el parámetro id. Utiliza el método guideCategories.list para recuperar una lista de valores válidos.
    playlistItems.delete forbidden playlistItemsNotAccessible La solicitud no está debidamente autorizada para eliminar el elemento de la lista de reproducción especificada.
    videoCategories.list notFound videoCategoryNotFound No se puede encontrar la categoría de video identificada por el parámetro id. Utiliza el método videoCategories.list para recuperar una lista de valores válidos.