En esta página, se enumeran los cambios y las actualizaciones de la documentación de la API de YouTube Data (v3). Suscríbete a este registro de cambios. 
10 de julio de 2025
A partir del 21 de julio de 2025, YouTube ajustará el contenido que muestra el gráfico mostPopular del método video.list. Anteriormente, el ranking de mostPopular reflejaba los videos que aparecían en la lista de tendencias. Ahora, el gráfico de mostPopular incluirá videos de los rankings de tendencias de música, películas y videojuegos. Este cambio en la API se realiza en conjunto con la baja de la página Tendencias de YouTube.
26 de marzo de 2025
A partir del 31 de marzo de 2025, YouTube cambiará la forma en que se registran las vistas de Shorts. Antes, en el caso de los Shorts, se registraba una vista después de que un Short se reproducía durante una cantidad determinada de segundos. Ahora, las vistas contarán la cantidad de veces que un Short comienza o vuelve a reproducirse, sin un requisito de tiempo de reproducción mínimo. Más información
A partir del 31 de marzo de 2025, los siguientes campos de la API de Data devolverán el recuento de vistas de Shorts según este cambio:
channels.statistics.viewCountvideos.statistics.viewCount
30 de octubre de 2024
La API ahora admite la capacidad de identificar videos que contienen contenido sintético o alterado (S/A) realista. Obtén más información sobre las políticas de YouTube relacionadas con el contenido de A/S.
Estos son algunos ejemplos de contenido de A/S:
- Hacer que una persona real parezca decir o hacer algo que no dijo o hizo
- Alterar videos de un evento o lugar real
- Genera una escena de aspecto realista que en realidad no ocurrió
Para indicar si un video incluye contenido de A/S, establece la propiedad status.containsSyntheticMedia. Esta propiedad se puede establecer cuando se llaman a los métodos videos.insert o videos.update. Si se configura, la propiedad se devuelve en el recurso video.
30 de abril de 2024
Nota: Este es un anuncio de baja.
Esta actualización incluye los siguientes cambios:
La API ya no admite la capacidad de insertar o recuperar debates de canales. Este cambio es coherente con la funcionalidad admitida en el sitio web de YouTube, que no permite publicar comentarios en los canales.
13 de marzo de 2024
Nota: Este es un anuncio de baja.
Esta actualización incluye los siguientes cambios:
El parámetro sync para los métodos captions.insert y captions.update dejó de estar disponible. YouTube dejará de admitir el parámetro a partir del 12 de abril de 2024.
Como resultado de este cambio, los desarrolladores deben incluir información de sincronización cuando inserten o actualicen pistas de subtítulos, o el proceso de carga fallará.
12 de marzo de 2024
Esta actualización incluye los siguientes cambios:
Se actualizó la documentación del recurso captions para indicar que la longitud máxima permitida para el campo snippet.name es de 150 caracteres. La API devuelve un error nameTooLong si el nombre de la pista es más largo.
7 de marzo de 2024
Nota: Este es un anuncio de baja.
La propiedad del recurso channel brandingSettings.channel.moderateComments dejó de estar disponible. YouTube dejará de admitir el parámetro a partir del 7 de marzo de 2024.
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 especificando su identificador de YouTube.
9 de noviembre de 2023
Se quitaron todas las referencias al recurso videoId en Comments, ya que el recurso videoId no se devuelve con 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 hace varios años. Este método ya no es compatible con YouTube ni con 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 haya indicado que tienen una promoción pagada.
18 de agosto de 2023
Se actualizó la definición del recurso video para indicar que los recuentos de usuarios simultáneos que devuelve la API de YouTube Data pueden diferir de los recuentos de usuarios simultáneos procesados y sin spam disponibles a través de YouTube Analytics.liveStreamingDetails.concurrentViewers En el Centro de ayuda de YouTube, se proporciona más información sobre las métricas de las transmisiones en vivo.
7 de agosto de 2023
Como anunciamos el 12 de junio de 2023, el parámetro relatedToVideoId del método search.list dejó de estar disponible. Ese parámetro ya no se admite, y se quitaron las referencias a él 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 en las últimas 24 horas y 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, se quitó del manual de implementación de la API un ejemplo que mostraba cómo recuperar videos relacionados.
22 de agosto de 2022
Se corrigieron las anotaciones de tipo para los campos de video.statistics de long sin signo a cadena.
5 de agosto de 2022
YouTube cambió la forma en que se generan los IDs de subtítulos y, como parte de ese cambio, asignará IDs nuevos a todos los segmentos de subtítulos. Este cambio podría ser incompatible con versiones anteriores para las aplicaciones que almacenan valores de caption_id, aunque no afectará a las aplicaciones que no almacenan valores de caption_id.
Desde ahora hasta 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 antiguos 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 llamas a cualquiera de esos métodos de la API con un ID de pista de subtítulos anterior, se mostrará un error captionNotFound.
Para prepararte para este cambio, debes planificar el reemplazo completo de todos los datos de pistas de subtítulos almacenados entre ahora y el 1 de diciembre de 2022. Esto significa que, para cualquier video del que almacenes datos de pistas de subtítulos, 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.
12 de julio de 2022
Se actualizaron las Condiciones del Servicio de los Servicios de las APIs de YouTube. Consulta el Historial de revisiones de las Condiciones del Servicio de los Servicios de la API de YouTube para obtener más información.
27 de abril de 2022
Se actualizó la descripción del método videos.insert para indicar que el tamaño máximo de los archivos de video subidos aumentó de 128 GB a 256 GB.
8 de abril de 2022
Se actualizaron las definiciones de los parámetros myRecentSubscribers y mySubscribers del método subscriptions.list para indicar que la API podría devolver una cantidad limitada de suscriptores.
Este cambio representa una corrección en 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 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 hacer privados los recuentos de “no me gusta” de los videos en toda la plataforma de YouTube, la propiedad statistics.dislikeCount del recurso video se hará privada a partir del 13 de diciembre de 2021. Esto significa que la propiedad solo se incluirá en una respuesta de la API del extremo videos.list si el propietario del video autenticó la solicitud a la API.
Este cambio no afecta el extremo videos.rate.
Los desarrolladores que no muestran públicamente los recuentos de "No me gusta" y que aún necesitan el recuento de "No me gusta" para su cliente de API pueden solicitar que se los incluya en una lista de entidades permitidas para obtener 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 se admite.
Este extremo duplicó la funcionalidad disponible a través de otros extremos de API. En su lugar, puedes llamar a comments.update.
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 más de la asignación de cuota predeterminada de 10,000 unidades. Hasta la fecha, los desarrolladores han completado y enviado el formulario de auditoría y extensión de cuota de los Servicios de la API de YouTube para realizar el proceso de auditoría de cumplimiento y solicitar asignaciones de unidades de cuota adicionales.
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 de desarrolladores auditados: Los desarrolladores que ya aprobaron una auditoría de cumplimiento de la API pueden completar y enviar este formulario más breve para solicitar una extensión de la cuota asignada.
- Formulario de apelaciones: Los desarrolladores cuyos proyectos de API no hayan superado una auditoría de cumplimiento (o a los que se les haya denegado un aumento de unidades de cuota) pueden completar y enviar este formulario.
- Formulario de cambio de control: Los desarrolladores, o cualquier parte que opere un cliente de API en nombre de un desarrollador, que experimenten un cambio de control (por ejemplo, a través de una 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 del caso de uso del nuevo proyecto de la API y valide la asignación de cuota actual del desarrollador.
Cada formulario nuevo nos informará sobre el uso previsto de la API de YouTube y nos permitirá brindarte una mejor asistencia.
Puedes encontrar más detalles en nuestra nueva guía sobre las auditorías de cumplimiento de la API.
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.favoritesdel recursochanneldejó de estar disponible. La función de videos favoritos ya se dejó de usar hace varios años, como se indica en la entrada del historial de revisiones del 28 de abril de 2016.Antes de esta actualización, la API creaba una playlist nueva si un cliente de la API intentaba agregar un video a una playlist de favoritos inexistente. En el futuro, no se creará la playlist en este caso y la API devolverá un error. Los intentos de modificar las playlists de favoritos agregando, modificando o borrando elementos también están obsoletos según los anuncios anteriores y podrían comenzar a mostrar errores en cualquier momento.
-
Las siguientes propiedades de recursos de
channeldejaron de estar disponibles. Estas propiedades ya no son compatibles en la IU de YouTube Studio ni en YouTube. Como resultado, tampoco se admiten a través de la API.brandingSettings.channel.defaultTabbrandingSettings.channel.featuredChannelsTitlebrandingSettings.channel.featuredChannelsUrls[]brandingSettings.channel.profileColorbrandingSettings.channel.showBrowseViewbrandingSettings.channel.showRelatedChannels
Se quitaron todas las propiedades de la representación del recurso
channel, y sus definiciones se quitaron de la lista de propiedades del recurso. Además, se quitaron de la documentación específica del método los errores asociados con estas propiedades. -
Las siguientes propiedades de recursos de
channelSectiondejaron de estar disponibles. Estas propiedades ya no son compatibles en la IU de YouTube Studio ni en YouTube. Como resultado, tampoco se admiten a través de la API.snippet.stylesnippet.defaultLanguagesnippet.localized.titlelocalizationslocalizations.(key)localizations.(key).titletargetingtargeting.languages[]targeting.regions[]targeting.countries[]
Junto con este cambio, el parámetro
hldel métodochannelSection.listtambién dejó de estar disponible, ya que no se admiten las funciones que admite.Se quitaron todas las propiedades de la representación del recurso
channelSection, y sus definiciones se quitaron de la lista de propiedades del recurso. Además, se quitaron de la documentación específica del método los errores asociados con estas propiedades. -
Para la propiedad
snippet.typedel recursochannelSection, se dejaron de usar los siguientes valores. Estos valores ya no se admiten en las páginas de los canales de YouTube y, como resultado, tampoco se admiten a través de la API.likedPlaylistslikespostedPlaylistspostedVideosrecentActivityrecentPosts
-
La propiedad
snippet.tags[]del recursoplaylistdejó de estar disponible. Esta propiedad ya no es compatible con YouTube y, como resultado, tampoco lo es a través de la API.
9 de febrero de 2021
El recurso playlistItem admite dos propiedades nuevas:
- La propiedad
snippet.videoOwnerChannelIdidentifica el ID del canal que subió el video de la playlist. - La propiedad
snippet.videoOwnerChannelTitleidentifica el nombre del canal que subió el video de la playlist.
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.listyplaylists.updateahora admiten un nuevo errorplaylistOperationUnsupported. El 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 su playlist de videos subidos ni borrar la playlist.En todos los casos, este error devuelve un código de respuesta HTTP
400(solicitud incorrecta). -
Se quitaron de la documentación los errores
watchHistoryNotAccessibleywatchLaterNotAccessibledel métodoplaylistItems.list. Si bien el historial de reproducciones y las listas de Ver más tarde de los usuarios no son accesibles a través de la API, esta no devuelve 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 recopilados y enviados a través del reproductor integrado de YouTube. Eres responsable de los datos del usuario que nos envíes a través de cualquier reproductor integrado de YouTube antes de que el usuario interactúe con el reproductor para indicar su intención de reproducción. Puedes limitar los datos que se comparten con YouTube antes de que un usuario interactúe con el reproductor configurando la reproducción automática como falsa.
- El nuevo Artículo III.E.4.j se relaciona con la verificación del estado de contenido creado para niños (MFK) antes de incorporarlo en tus sitios y aplicaciones. Eres responsable de saber cuándo los videos que incorporas en tu cliente de API son creados para niños y de tratar los datos recopilados del reproductor incorporado en consecuencia. Por lo tanto, debes verificar el estado del contenido con el servicio de la API de YouTube Data antes de incorporarlo en tu Cliente de API a través de cualquier reproductor incorporado de YouTube.
En la nueva guía Cómo encontrar el estado de MadeForKids de un video, se explica cómo buscar el estado de MFK de un video con el servicio de la API de YouTube Data.
Junto con estos cambios, se agregó un recordatorio a la documentación de los parámetros del reproductor integrado para explicar que, si habilitas la reproducción automática, la reproducción se realizará sin que el usuario interactúe con el reproductor. Por lo tanto, la recopilación y el uso compartido de los datos de reproducción se realizarán cuando se cargue la página.
8 de octubre de 2020
Esta actualización abarca tres pequeños cambios 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 puede tardar hasta un día en completarse. - La propiedad
statistics.videoCountrefleja el recuento de los videos públicos del canal únicamente, incluso para los propietarios. Este comportamiento coincide con los recuentos que se muestran en el sitio web de YouTube. - Es posible que las palabras clave del canal, que se identifican en la propiedad
brandingSettings.channel.keywords, se trunquen si superan 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 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 a partir del 9 de septiembre de 2020, fecha de este anuncio. Teniendo esto en cuenta, los desarrolladores ya no deberían depender de ninguna de las funciones de la API que se indican a continuación.
-
Los siguientes recursos, métodos, parámetros y propiedades de recursos de la API se dejaron de usar
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.imagey todas sus propiedades secundarias - La lista
brandingSettings.hintsy todas sus propiedades secundarias
- La propiedad
- El parámetro de filtro
categoryIddel métodochannels.list - El recurso
guideCategoriesy el métodoguideCategories.list
- Las siguientes propiedades del recurso
-
Las respuestas de la API para el método
channels.listya no contienen la propiedadprevPageTokensi la solicitud a la API establece el parámetromanagedByMeentrue. Este cambio no afecta la propiedadprevPageTokenpara otras solicitudes dechannels.listni la propiedadnextPageTokenpara ninguna solicitud. -
Las propiedades
contentDetails.relatedPlaylists.watchLaterycontentDetails.relatedPlaylists.watchHistorydel recursochannelse anunciaron como obsoletas el 11 de agosto de 2016. La compatibilidad de los métodosplaylistItems.insertyplaylistItems.deletecon estas playlists también dejó de estar disponible por completo, y las dos propiedades se quitaron de la documentación. -
Se quitó de la documentación el parámetro
mySubscribersdel métodochannels.list, cuya baja se anunció el 30 de julio de 2013. Usa el métodosubscriptions.listy su parámetromySubscriberspara recuperar una lista de suscriptores al canal del usuario autenticado. -
Se quitaron de la documentación el objeto
invideoPromotiondel recursochannely 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 cuota para las solicitudes a la API quitando el costo adicional asociado al parámetro part. A partir de ahora, solo cobraremos el costo base del método al que se llame. 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 marginalmente más bajo, mientras que algunas llamadas a la API seguirán teniendo el mismo costo. Este cambio no aumenta el costo de ninguna llamada a la API. En general, el impacto probable es que la cuota asignada, que se puede ver en la consola de Google Cloud, durará un poco más.
Recomendamos enfáticamente que todos los desarrolladores completen una auditoría de cumplimiento para sus proyectos y, así, garantizar el acceso continuo a los Servicios de la API de YouTube.
Esta entrada del historial de revisiones se publicó originalmente el 20 de julio de 2020.
28 de julio de 2020
Todos los videos subidos a través del extremo videos.insert de proyectos de API no verificados creados después del 28 de julio de 2020 se restringirán al modo de visualización privada. Para levantar esta restricción, cada proyecto debe someterse a una auditoría para verificar el cumplimiento de las Condiciones del Servicio.
Los creadores que usen un cliente de API sin verificar para subir videos recibirán un correo electrónico en el que se les explicará que su video está bloqueado como privado y que pueden evitar la restricción si usan un cliente oficial o auditado.
Actualmente, este cambio no afecta a los proyectos de API creados antes del 28 de julio de 2020. Sin embargo, recomendamos enfáticamente que todos los desarrolladores completen una auditoría de cumplimiento para sus proyectos y, así, 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 revisiones se volvió a publicar el 28 de julio de 2020.
Ayer, publicamos una actualización de la documentación relacionada con nuestro proceso de cobro de cuotas. Sin embargo, debido a circunstancias imprevistas, el cambio de cuota aún no entró en vigencia. Por lo tanto, se revirtió la documentación en aras de la precisión. Para evitar confusiones, se quitó la entrada del historial de revisiones que explicaba el cambio y se volverá a publicar en el futuro cercano.
7 de julio de 2020
Nota: Este es un anuncio de baja.
Los parámetros autoLevels y stabilize del método videos.insert dejaron de estar disponibles, y ambos se quitaron de la documentación. Sus valores se ignoran y no afectan la forma en que se procesan los videos subidos recientemente.
15 de junio de 2020
La nueva guía Cumplimiento de las Políticas para Desarrolladores de YouTube proporciona orientación y ejemplos para ayudarte a garantizar que tus clientes de API cumplan con partes específicas de las Condiciones y las Políticas de los Servicios de la API de YouTube (Condiciones del Servicio de la API).
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 frecuentes que hacen los desarrolladores durante las auditorías de cumplimiento de la API. Esperamos que te ayude a simplificar el proceso de desarrollo de funciones, ya que te permitirá comprender cómo interpretamos y aplicamos nuestras políticas.
4 de junio de 2020
Nota: Esta es una actualización de un anuncio anterior sobre la baja.
La función de boletines del canal dejó de estar disponible por completo. 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 devuelve boletines del canal. Para obtener más detalles, 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 boletines del canal. Como resultado, el método activities.insert dejará de estar disponible, y el método activities.list dejará de devolver boletines del canal. Estos cambios entrarán en vigencia en la API a partir del 18 de mayo de 2020. Para obtener más detalles, consulta el Centro de ayuda de YouTube.
31 de marzo de 2020
Esta actualización incluye los siguientes cambios:
-
Nuevos recursos y métodos
-
El nuevo recurso
memberrepresenta a un miembro de un canal de YouTube. Un miembro brinda apoyo económico 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 YouTube Live Streaming. El recursosponsorahora está obsoleto, y los clientes de la API deben actualizar las llamadas al métodosponsors.listpara usar el métodomembers.listen su lugar. -
El nuevo recurso
membershipsLevelidentifica un nivel de precios administrado por el creador que autorizó la solicitud de API. El métodomembershipsLevels.listrecupera una lista de todos los niveles de membresía del creador.
-
10 de enero de 2020
La API ahora admite la capacidad de identificar el contenido dirigido a niños, 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 para permitir que los creadores y los usuarios identifiquen el contenido creado para niños:
-
La propiedad
selfDeclaredMadeForKidspermite que los creadores de contenido especifiquen si un canal o un video son creados para niños.
En el caso de los canales, esta propiedad se puede establecer cuando se llama al métodochannels.update. En el caso de los videos, esta propiedad se puede establecer cuando se llama a los métodosvideos.insertovideos.update.
Ten en cuenta que esta propiedad solo se incluye en las respuestas de la API que contienen recursoschannelovideosi el propietario del canal autorizó la solicitud a la API. -
La propiedad
madeForKidspermite que cualquier usuario recupere el estado de "creado para niños" de un canal o un video. Por ejemplo, el estado se puede determinar según el valor de la propiedadselfDeclaredMadeForKids. 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 de los Servicios de la API de YouTube y las Políticas para Desarrolladores. Consulta el Historial de revisiones de las Condiciones del Servicio de los Servicios de la API de YouTube para obtener más información. Los cambios en las Condiciones del Servicio de los servicios de la API de YouTube y las Políticas para Desarrolladores 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 forma 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 devuelve el Servicio de la API de YouTube Data se redondean hacia abajo a tres cifras significativas para los recuentos de suscriptores superiores a 1,000. Este cambio afecta 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 aún pueden ver 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 cómo se abrevian en otras interfaces de usuario de YouTube visibles públicamente:
| Ejemplo de recuento de suscriptores | API de YouTube Data | IU de YouTube visible 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:
-
Se actualizó la documentación de referencia de la API 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. Para ver un ejemplo, consulta la documentación del método
channels.list. 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 permisos de autorización, ingresar valores de muestra para parámetros y propiedades, y, luego, enviar solicitudes reales a la API y ver respuestas reales de la API. El widget también ofrece una vista de pantalla completa que muestra muestras de código completas, las cuales se actualizan de forma dinámica para usar los permisos y los valores que ingresaste.
-
En la sección Casos de uso comunes, se describen uno o más casos de uso comunes para el método que se explica en la página. Por ejemplo, puedes llamar al método
channels.listpara 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 para abrir el Explorador de APIs en pantalla completa con esos valores ya completados. El objetivo de estos cambios es que te resulte más fácil ver muestras de código que se apliquen directamente al caso de uso que intentas implementar en tu propia aplicación.
Actualmente, se admiten muestras de código para Java, JavaScript, PHP, Python y curl.
-
-
La herramienta muestras de código también se actualizó con una nueva IU que ofrece todas 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.
Junto con 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. En las guías revisadas, se explica cómo ejecutar una muestra con una clave de API y otra con un ID de cliente de OAuth 2.0 usando muestras de código del Explorador de APIs.
Ten en cuenta que los cambios descritos anteriormente reemplazan una herramienta interactiva que se había agregado 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.thumbnailsdel recursochannelpara indicar que, cuando se muestren miniaturas en tu aplicación, el código debe usar las URLs de las imágenes exactamente como se devuelven en las respuestas de la API. Por ejemplo, tu aplicación no debe usar el dominiohttpen lugar del dominiohttpsen 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. Después de ese tiempo, es posible que veas imágenes dañadas en tu aplicación si intenta cargar imágenes de YouTube desde el dominiohttp. -
Nota: Este es un anuncio de baja.
La propiedad
recordingDetails.location.altitudedel recursovideodejó de estar disponible. No se garantiza que los videos devuelvan valores para esta propiedad. Del mismo modo, incluso si las solicitudes de API intentan establecer un valor para esa propiedad, es posible que no se almacenen los datos entrantes.
22 de junio de 2018
Se actualizó la Guía de implementación, antes conocida como Guía de implementación y migración, para quitar las instrucciones para migrar de la API v2 a la API v3. Además, también 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 se admiten en la API a través del objeto
invideoPromotiondel recursochannel. Como resultado, ese objeto, incluidas todas sus propiedades secundarias, se dejará de usar.Podrás recuperar y establecer datos de
invideoPromotionhasta el 14 de diciembre de 2017. Después de esa fecha, ocurrirá lo siguiente:- Los intentos de recuperar la parte
invideoPromotioncuando se llama achannels.listdevolverán uninvideoPromotionvacío o no devolverán ningún dato deinvideoPromotion. - Los intentos de actualizar los datos de
invideoPromotioncuando se llama achannels.updatemostrarán una respuesta exitosa hasta, al menos, el 27 de mayo de 2018, pero se tratarán como no-ops, lo que significa que 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
invalidPromotiones una parte no válida. - Los intentos de recuperar la parte
16 de noviembre de 2017
Esta actualización incluye los siguientes cambios:
-
La herramienta interactiva de fragmentos de código ahora admite muestras de código de Node.js. Los ejemplos 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 para un caso de uso de una aplicación de Node.js. La funcionalidad 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 el inicio rápido:
- La función
removeEmptyParameterstoma una lista de pares clave-valor que corresponden a los parámetros de la solicitud de API y quita los parámetros que no tienen valores. - La función
createResourcetoma una lista de pares clave-valor que corresponden a propiedades en un recurso de la API. Luego, convierte las propiedades en un objeto JSON que se puede usar en operacionesinsertyupdate. En el siguiente ejemplo, se muestra un conjunto de nombres y valores de propiedades, y el objeto JSON que el código crearía para ellos:# 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. Para obtener más información, consulta los requisitos previos para ejecutar muestras de código completas de forma local en las instrucciones de la herramienta de fragmentos de código.
- La función
25 de octubre de 2017
Esta actualización incluye los siguientes cambios:
-
Los ejemplos de código de Python en la herramienta de fragmentos de código interactivos se actualizaron para usar las bibliotecas
google-authygoogle-auth-oauthliben lugar de la bibliotecaoauth2client, que ahora está obsoleta.Además de ese cambio, la herramienta ahora proporciona muestras de código completas para las aplicaciones de Python instaladas y las aplicaciones de servidor web de Python, que usan flujos de autorización ligeramente diferentes. Para ver las muestras completas (y este cambio), haz lo siguiente:
- Ve a la herramienta de fragmentos de código interactivos o a la documentación de cualquier método de la API, como el método
channels.list. - Haz clic en la pestaña
Pythonque se encuentra sobre las muestras de código. - Haz clic en el botón de activación que se encuentra sobre las pestañas para cambiar de un fragmento a una muestra completa.
- Ahora, en la pestaña, se debería mostrar una muestra de código completa que usa el flujo de autorización de
InstalledAppFlow. La descripción que se encuentra sobre el ejemplo explica esto y también incluye un vínculo a un ejemplo de una aplicación de servidor web. - Haz clic en el vínculo para cambiar al ejemplo del servidor web. En ese ejemplo, se usa el marco de trabajo de la 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 forma local en las instrucciones de la herramienta de fragmentos de código.
- Ve a la herramienta de fragmentos de código interactivos o a la documentación de cualquier método de la API, como el método
29 de agosto de 2017
Esta actualización incluye los siguientes cambios:
- Se actualizó la definición del parámetro
forContentOwnerdel métodosearch.listpara indicar que, si ese parámetro se establece entrue, el parámetrotypese debe establecer envideo. - Se actualizó la definición del parámetro
regionCodedel métodosearch.listpara 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 su desarrollo de la marca. Los nuevos logotipos de “Desarrollado con YouTube” se pueden descargar desde la página de lineamientos de desarrollo de la marca. En esa página, también se muestran otros íconos y logotipos nuevos de YouTube que se pueden descargar desde el sitio de la marca de YouTube.
24 de julio de 2017
Esta actualización incluye los siguientes cambios:
- Hay disponible una nueva guía de inicio rápido de la API de YouTube Data para iOS. En la guía, se explica cómo usar la API de YouTube Data en una aplicación simple para iOS escrita en Objective-C o Swift.
- La herramienta interactiva de fragmentos de código para la API de YouTube Data ahora incluye documentación que explica algunas de sus funciones:
- Cómo ejecutar solicitudes a la API
- Cómo alternar entre fragmentos de código y muestras de código completas
- Cómo usar funciones de código estándar
- Carga de recursos existentes (para métodos de actualización)
Nota: La herramienta también está integrada 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:
-
Nota: Este es un anuncio de baja.
Las siguientes propiedades de recursos de
videodejarán de estar disponibles. Si bien las propiedades serán compatibles hasta el 1 de diciembre de 2017, no se garantiza que los videos sigan devolviendo valores para esas propiedades hasta ese momento. Del mismo modo, las solicitudesvideos.insertyvideos.updateque establezcan esos valores de propiedad no generarán errores antes de esa fecha, pero es posible que no se almacenen los datos entrantes.
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 estén disponibles en más lugares. Las páginas que explican los métodos de la API, como
channels.listovideos.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 cada método, 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.listpara 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 actualizarán de forma dinámica para reflejar los valores que proporciones.
-
Alterna entre fragmentos de código y 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 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.
-
Ejecutar solicitudes con un clic en un botón (Para ejecutar solicitudes, debes autorizar 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. (Cada página muestra un vínculo para que también tengas la opción de cargar la solicitud en la que estás trabajando en el Explorador de APIs).
-
-
La herramienta Fragmentos de código de la API de Data también se actualizó con una nueva IU que ofrece todas las mismas funciones descritas anteriormente. Las principales funciones nuevas disponibles en esta página son las siguientes:
- Compatibilidad con solicitudes a la API que escriben datos
- Se agregó compatibilidad con muestras de Java.
- Código boilerplate más flexible y completo para autorizar usuarios y compilar solicitudes a la API
27 de abril de 2017
Esta actualización incluye los siguientes cambios:
- Las nuevas guías de inicio rápido explican cómo configurar una aplicación simple que realiza solicitudes a la API de YouTube Data. Actualmente, las guías están disponibles para Android, Apps Script, Go, Java, JavaScript, Node.js, PHP, Python y Ruby.
30 de marzo de 2017
Esta actualización incluye los siguientes cambios:
- La nueva propiedad
topicDetails.topicCategories[]del recursochannelcontiene 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 propiedadtopicDetails.topicIds[]del recurso. - La nueva propiedad
contentDetails.videoPublishedAtdel recursoplaylistItemidentifica la fecha y hora en que se publicó el video en YouTube. El recurso ya contiene la propiedadsnippet.publishedAt, que identifica la fecha y hora en que se agregó el elemento a la playlist. - Al igual que el recurso
channel, el recursovideoahora devuelve la propiedadtopicDetails.topicCategories[], que contiene una lista de URLs de Wikipedia que describen el contenido del video. En el caso de los recursosvideo, las URLs corresponden a los IDs de tema que se muestran en la propiedadtopicDetails.relevantTopicIds[]del recurso. - La nueva propiedad
contentDetails.contentRating.mpaatRatingdel recursovideoidentifica la clasificación que la Motion Picture Association of America le otorgó a un avance o adelanto de una película.
27 de febrero de 2017
Como se anunció originalmente el 11 de agosto de 2016, YouTube cambió la lista de IDs de temas admitidos por una lista seleccionada. La lista completa de IDs de temas admitidos se incluye en las propiedades topicDetails de 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:
- Se agregaron los siguientes temas como subtemas de
Society:Nombre ID del tema Empresa /m/09s1fSalud /m/0kt51Militar /m/01h6rjPolítica /m/05qt0Religión /m/06bvp - Se quitó el tema
Animated cartoon, que antes era secundario deEntertainment. - Se quitó el tema
Children's music, que antes era secundario deMusic.
Como resultado de este cambio, los temas relacionados con un video ahora siempre se muestran en el valor de la propiedad topicDetails.relevantTopicIds[] del recurso video.
29 de noviembre de 2016
Esta actualización incluye los siguientes cambios:
-
A partir del 10 de febrero de 2017, se realizarán tres pequeños cambios en la lista de IDs de temas admitidos:
- La categoría
Professional wrestling, que antes era secundaria de la categoríaSports, ahora es secundaria deEntertainment. - La categoría
TV shows, que es secundaria deEntertainment, es nueva. - Se quitó la categoría
Health, que antes era secundaria deLifestyle.
También ten en cuenta que hay algunas categorías principales (
Entertainment,Gaming,Lifestyle,MusicySports). Cualquier video asociado a una categoría secundaria, comoTennis, también se asociará a la categoría principal (Sports). - La categoría
10 de noviembre de 2016
Esta actualización incluye los siguientes cambios:
-
Como se anunció por primera vez el 11 de agosto de 2016, la baja de Freebase y la API de Freebase requieren varios cambios relacionados con los IDs de temas. Los IDs de tema identifican los temas asociados con los recursos
channelyvideo, y también puedes usar el parámetro de búsquedatopicIdpara encontrar canales o videos relacionados con un tema en particular.El 10 de febrero de 2017, YouTube comenzará a devolver un pequeño conjunto de IDs de temas en lugar del conjunto mucho más detallado de IDs que se devolvieron hasta el momento. Además, ten en cuenta que no se garantiza que los canales y los videos estén asociados con algún tema, lo que coincide 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 para enumerar los IDs de temas que se admitirán después de ese momento. Ten en cuenta que la lista de categorías es la misma para todas las propiedades.
- La propiedad
topicDetails.topicIds[]del recursochannel. - La propiedad
topicDetails.relevantTopicIds[]del recursovideo. - Parámetro
topicIddel métodosearch.list.
- La propiedad
-
Nota: Este es un anuncio de baja.
Las siguientes propiedades dejarán de estar disponibles:
- La propiedad
topicDetails.topicIds[]del recursochannel. Esta propiedad será compatible hasta el 10 de noviembre de 2017. - La propiedad
topicDetails.relevantTopicIds[]del recursovideo. Esta propiedad será compatible hasta el 10 de noviembre de 2017. - La propiedad
topicDetails.topicIds[]del recursovideo. Esta propiedad no contendrá valores después del 10 de febrero de 2017. (Después de esa fecha, el valor de la propiedadtopicDetails.relevantTopicIds[]identificará todos los temas asociados con un video).
- La propiedad
-
Dado que Freebase ya se dio de baja, se quitó la guía Searching with Freebase Topics de la documentación. En esa guía, se proporcionaron muestras de código para mostrar cómo funcionaría una aplicación con la API de Freebase.
Además, se quitaron varias muestras de código relacionadas con los IDs de temas de la documentación del método
search.list.
2 de noviembre de 2016
Esta actualización incluye los siguientes cambios:
-
Nuevos parámetros y propiedades
-
El recurso
videocontiene varias propiedades nuevas:-
La propiedad
player.embedHtmlcontiene una etiqueta<iframe>que puedes usar para incorporar un reproductor que reproduzca el video. Las nuevas propiedadesplayer.embedHeightyplayer.embedWidthidentifican las dimensiones del reproductor integrado. Estas propiedades solo se devuelven si la solicitud a la API especifica un valor para al menos uno de los parámetrosmaxHeightomaxWidth. Esos dos parámetros nuevos se explican más adelante en esta entrada del historial de revisiones. -
La nueva propiedad
hasCustomThumbnailindica si el usuario que subió el video proporcionó una imagen en miniatura personalizada para el video. Ten en cuenta que esta propiedad solo la puede ver quien sube el video. -
El nuevo
fpbRatingReasons[]identifica los motivos por los que el video recibió su clasificación de la FPB (Sudáfrica). -
El nuevo
mcstRatingidentifica la calificación que recibió el video en Vietnam.
-
-
El método
videos.listadmite dos parámetros nuevos:maxHeightymaxWidth. Puedes usar cualquiera de los parámetros o ambos cuando recuperes la parteplayeren los recursosvideo.De forma predeterminada, la altura del
<iframe>que se muestra en la propiedadplayer.embedHtmles de 360 px. El ancho se ajusta para que coincida con la relación de aspecto del video, lo que garantiza que el reproductor incorporado no tenga barras negras que enmarquen el video. Por ejemplo, si la relación de aspecto de un video es de 16:9, el ancho del reproductor sería de 640 px.Con los nuevos parámetros, puedes especificar que, en lugar de las dimensiones predeterminadas, el código de inserción debe usar 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 integrado no tenga barras negras que enmarquen el video. Ten en cuenta que ambos parámetros especifican las dimensiones máximas del reproductor integrado. Por lo tanto, si se especifican ambos parámetros, una dimensión podría seguir siendo 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.embedHtmlcontendría un reproductor de 640 x 360 si no se establece el parámetromaxHeightomaxWidth.- Si el parámetro
maxHeightse establece en720y el parámetromaxWidthno se establece, la API devolverá un reproductor de 1280 x 720. - Si el parámetro
maxWidthse establece en960y el parámetromaxHeightno se establece, la API devolverá un reproductor de 960 x 540. - Si el parámetro
maxWidthse establece en960y el parámetromaxHeightse establece en450, la API devolverá un reproductor de 800 x 450.
Las nuevas propiedades
player.embedHeightyplayer.embedWidth, que se describen más arriba, identifican las dimensiones del reproductor. - Si el parámetro
-
-
Actualizaciones de métodos, propiedades y parámetros existentes
-
Se actualizó la descripción del recurso
channelSectionpara indicar que un canal puede crear un máximo de 10 estantes sin configurar datos de segmentación y un máximo de 100 estantes con datos de segmentación.Además, se actualizó la propiedad
targetingdel recursochannelSectionpara 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 del sitio web de YouTube. -
Se corrigió la definición de la propiedad
snippet.namedel recursoi18nLanguagepara reflejar que el valor representa el nombre de un idioma tal como se escribe en el idioma especificado por el parámetrohldel métodoi18nLanguage.list. -
Se actualizó la propiedad
contentDetails.notedel recursoplaylistItempara indicar que la longitud máxima del valor de la propiedad es de 280 caracteres. -
Las propiedades
contentDetails.startAtycontentDetails.endAtdel recursoplaylistItemdejaron de estar disponibles. Estos campos se ignoran si se configuran en solicitudesplaylistItems.insertoplaylistItems.update. -
Los métodos
playlistItems.deleteyplaylistItems.updateahora admiten el parámetroonBehalfOfContentOwner, que ya se admite en varios otros métodos. Las solicitudes que usan ese método también deben autorizarse con un token que proporcione acceso al alcancehttps://www.googleapis.com/auth/youtubepartner. -
Los parámetros
publishedBeforeypublishedAfterdel métodosearch.listse actualizaron para indicar que los valores de los parámetros son inclusivos. Por ejemplo, si se establece el parámetropublishedBefore, la API devuelve los recursos creados antes de la hora especificada o en ella. -
La propiedad
contentDetails.contentRating.grfilmRatingdel recursovideoadmite tres valores adicionales:grfilmK12,grfilmK15ygrfilmK18. -
Se actualizó la descripción del método
videos.insertpara indicar que el tamaño máximo de los archivos de video 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)homeParameterDeprecatedEl método activities.listdevuelve este error para indicar que los datos de actividad de la página principal del usuario no están disponibles a través de esta API. Este error puede ocurrir si configuras el parámetrohomecomotrueen una solicitud no autorizada.invalidValue (400)invalidContentDetailsEl método playlistItems.insertdevuelve este error para indicar que el objetocontentDetailsde la solicitud no es válido. Uno de los motivos por los que se produce este error es que el campocontentDetails.notetiene más de 280 caracteres.forbidden (403)watchHistoryNotAccessibleEl método playlistItems.listdevuelve este error para indicar que la solicitud intentó recuperar elementos de la playlist "Historial de reproducciones", pero estos no se pueden recuperar con la API.forbidden (403)watchLaterNotAccessibleEl método playlistItems.listdevuelve este error para indicar que la solicitud intentó recuperar elementos de la playlist "Mirar más tarde", pero estos no se pueden recuperar con la API.badRequest (400)uploadLimitExceededEl método videos.insertdevuelve este error para indicar que el canal superó la cantidad de videos que puede subir.forbidden (403)forbiddenEmbedSettingEl método videos.updatedevuelve este error para indicar que la solicitud a la API intenta establecer un parámetro de configuración de incorporación no válido para el video. Ten en cuenta que es posible que algunos canales no tengan permiso para ofrecer reproductores integrados para las transmisiones en vivo. Consulta el Centro de ayuda de YouTube para obtener más información. -
El método
playlistItems.insertya no devuelve un error si insertas un video duplicado en una playlist. Anteriormente, ese error se producía en algunas playlists, como las de videos favoritos, que no permitían duplicados, pero que ya no son compatibles. En general, las playlists permiten videos duplicados.
-
-
Otras actualizaciones
-
Se actualizó la entrada del historial de revisiones del 15 de septiembre de 2016 para aclarar que, cada vez que las propiedades
contentDetails.relatedPlaylists.watchHistoryycontentDetails.relatedPlaylists.watchLaterdel recursochannelse incluyen en una respuesta, siempre contienen los valoresHLyWL, respectivamente. Además, esas propiedades solo se incluyen si un usuario autorizado recupera datos sobre su propio canal.
-
15 de septiembre de 2016
Esta actualización incluye los siguientes cambios:
-
La actualización del historial de revisiones del 11 de agosto de 2016 abordó 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.
-
Los siguientes cambios ya están vigentes. El 11 de agosto de 2016, se notificaron estos cambios en la actualización del historial de revisiones:
-
Si se llama al método
activities.listcon el parámetrohomeestablecido entrue, la respuesta de la API ahora contiene elementos similares a los que vería un usuario de YouTube que no accedió a su cuenta en la página principal.Este es un cambio leve que tiene como objetivo brindar una mejor experiencia del usuario que el comportamiento descrito en la actualización del historial de revisiones del 11 de agosto de 2016. En esa actualización, se indicó que las solicitudes que usaran el parámetro
homedevolverían una lista vacía. -
Las propiedades
contentDetails.relatedPlaylists.watchHistoryycontentDetails.relatedPlaylists.watchLaterdel recursochannelahora contienen valores deHLyWL, respectivamente, para todos los canales.Para aclarar, estas propiedades solo son visibles para un usuario autorizado que recupera datos sobre su propio canal. Las propiedades siempre contienen los valores
HLyWL, incluso para un usuario autorizado que recupera datos sobre su propio canal. Por lo tanto, los IDs del historial de reproducciones y de la playlist Ver más tarde no se pueden recuperar a través de la API.Además, las solicitudes para recuperar detalles de playlists (
playlists.list) o elementos de playlists (playlistItems.list) para el historial de reproducciones o la playlist de Ver más tarde de un canal ahora devuelven listas vacías. Este comportamiento se aplica a los valores nuevos,HLyWL, así como a los IDs de las playlists de historial de reproducciones o Ver más tarde que tu cliente de API ya haya almacenado.
-
-
Ya no se muestra el objeto
fileDetails.recordingLocationdel recursovideoni sus propiedades secundarias. Anteriormente, solo el propietario de un video podía recuperar estos datos (como el objetofileDetailsprincipal).
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 de Ingeniería y Desarrollo de YouTube, proporcionan un amplio conjunto de actualizaciones a 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 complementarios para ayudar a explicar las políticas que deben seguir los desarrolladores.
El conjunto completo de documentos nuevos se describe en el historial de revisiones de las Condiciones Actualizadas. Además, en ese historial de revisión también se explicarán los cambios futuros en las Condiciones Actualizadas o en los documentos complementarios. Puedes suscribirte a un feed RSS que enumere los cambios en ese historial de revisiones desde un vínculo en ese documento.
-
La baja de Freebase y la API de Freebase está provocando varios cambios relacionados con los IDs de temas. Los IDs de temas se usan en los siguientes recursos y métodos de la API:
- La parte
topicDetailsdel recursochannelidentifica los temas asociados al canal. - La parte
topicDetailsdel recursovideoidentifica los temas asociados con el video. - El parámetro
topicIddel métodosearch.listte 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 devolver un pequeño conjunto de IDs de temas en lugar del conjunto mucho más detallado de IDs que se devolvieron hasta ahora. Ese conjunto de temas admitidos identificará categorizaciones de nivel superior, como Deportes o Básquetbol, pero, por ejemplo, no identificará equipos o jugadores específicos. Anunciaremos el conjunto de temas admitidos para que tengas tiempo de preparar tu aplicación para este cambio.
-
Los IDs de temas de Freebase que ya recuperaste se pueden usar para buscar contenido hasta el 10 de febrero de 2017. Sin embargo, después de ese momento, 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 se encuentre en el conjunto más pequeño de IDs de temas admitidos, la API devolverá un conjunto de resultados vacío.
- La parte
-
A partir del 12 de septiembre de 2016, dejarán de estar disponibles varios campos y parámetros de la API:
-
El parámetro
homedel métodoactivities.listpermitía 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.watchHistoryycontentDetails.relatedPlaylists.watchLaterdel recursochannelsolo son visibles para un usuario autorizado que recupera datos sobre su propio canal. Después del 12 de septiembre de 2016,contentDetails.relatedPlaylists.watchHistorydevolverá un valor deHLy la propiedadcontentDetails.relatedPlaylists.watchLaterdevolverá un valor deWLpara todos los canales.Las solicitudes para recuperar detalles de playlists (
playlists.list) del historial de reproducciones o la playlist de Ver más tarde de un canal devolverán una lista vacía después del 12 de septiembre de 2016. Las solicitudes para recuperar elementos de la playlist (playlistItems.list) en cualquiera de esas playlists también mostrarán una lista vacía después de ese momento. Esto se aplica a los valores nuevos,HLyWL, así como a los IDs de las listas de reproducción del historial de reproducciones o de Ver más tarde que tu cliente de API ya haya almacenado. -
El objeto
fileDetails.recordingLocationdel recursovideoo cualquiera de sus propiedades secundarias ya no se devolverán después del 12 de septiembre de 2016. Solo el propietario de un video puede recuperar estos datos, ya que solo él puede recuperar el objetofileDetailsprincipal.
-
13 de junio de 2016
Esta actualización incluye los siguientes cambios:
-
La propiedad
contentDetails.googlePlusUserIddel recursochanneldejó de estar disponible. Anteriormente, la propiedad solo estaba presente si el canal estaba asociado a un perfil de Google+. Después de la baja, la propiedad ya no se incluirá en ningún recurso dechannel. -
La propiedad
snippet.authorGoogleplusProfileUrldel recursocommentdejó de estar disponible. Anteriormente, la propiedad solo estaba presente si el canal estaba asociado a un perfil de Google+. Después de la baja, la propiedad ya no se incluirá en ningún recurso decomment.
Dado que ninguna de estas propiedades se devolverá después de la baja, ambas se quitaron de la documentación de recursos correspondiente.
31 de mayo de 2016
Esta actualización incluye los siguientes cambios:
-
El nuevo parámetro
myRecentSubscribersdel métodosubscriptions.listrecupera una lista de los suscriptores del canal del usuario autenticado en orden cronológico inverso de la hora en que se suscribieron al canal.Ten en cuenta que el nuevo parámetro solo admite la recuperación de los 1,000 suscriptores más recientes del canal del usuario autenticado. Para recuperar una lista completa de suscriptores, usa el parámetro
mySubscribers. Ese parámetro, que no devuelve suscriptores en un orden determinado, 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, search result, thumbnail y video para indicar que hay tamaños de imágenes en miniatura adicionales disponibles para algunos videos.- La imagen
standardtiene 640 px de ancho y 480 px de alto. - La imagen
maxrestiene 1,280 px de ancho y 720 px de alto.
- La imagen
-
Se actualizó la definición del parámetro
partdel métodochannelSection.listpara indicar que la partetargetingse puede recuperar a un costo de2unidades de cuota. -
El método
videos.listahora devuelve un error de prohibido (403) cuando una solicitud autorizada de forma incorrecta intenta recuperar las partesfileDetails,processingDetailsosuggestionsde un recursovideo. 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 YouTube Data proporciona fragmentos de código cortos para los casos de uso comunes de la API de YouTube Data. Actualmente, los fragmentos de código están disponibles para todos los métodos de la API de solo lectura en Apps Script, Go, JavaScript, PHP, Python y Ruby.
Para cada método, la herramienta muestra muestras de código para uno o más casos de uso. Por ejemplo, proporciona cinco fragmentos de código para el método search.list:
- Cómo listar videos por palabra clave
- Cómo ordenar los videos por ubicación
- Enumera eventos en vivo
- Cómo buscar los videos del usuario autenticado
- Enumera los videos relacionados
Para cada caso de uso, la herramienta muestra los parámetros que se usan en la solicitud a la API. Puedes modificar los valores de los parámetros, en cuyo caso la herramienta actualizará los fragmentos de código para reflejar los valores de los parámetros 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 basará en los valores de los parámetros que proporcionaste. Ten en cuenta que debes autorizar la herramienta para que envíe solicitudes en tu nombre y se muestren las respuestas de la API.
28 de abril de 2016
Esta actualización incluye los siguientes cambios:
-
La nueva propiedad
contentDetails.projectiondel recursovideoespecifica el formato de proyección del video. Los valores de propiedad válidos son360yrectangular. -
Las propiedades
recordingDetails.locationyfileDetails.recordingLocationdel recursovideose actualizaron para explicar la diferencia entre ambas:- La propiedad
recordingDetails.locationidentifica la ubicación que el propietario del video quiere asociar con él. Esta ubicación se puede editar, se puede buscar en los videos públicos y es posible que se muestre a los usuarios en los videos públicos. - El valor de la propiedad
fileDetails.recordingLocationes inmutable y representa la ubicación asociada con el archivo de video original subido. El valor solo es visible para el propietario del video.
- La propiedad
-
Se actualizó la definición de la propiedad
contentDetails.relatedPlaylists.favoritesdel recursochannelpara 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 dejó de estar disponible. Ten en cuenta que esta propiedad no está sujeta a la política de baja de la API. -
Se actualizó la definición del error
ineligibleAccount, que pueden devolver los métodoscomments.insert,comments.update,commentThreads.insertocommentThreads.update, para reflejar que el error se produce cuando la cuenta de YouTube que se usa para autorizar la solicitud de la API no se combinó 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
partdel métodochannels.updatepara indicar quelocalizationstambién es un valor válido para ese parámetro. -
Se actualizó la sección Uso de la cuota de la guía de introducción para incluir un vínculo a Google Developers Console, donde puedes ver tu 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
channelBannerpara indicar que el tamaño recomendado para la imagen del banner del canal subida es de 2,560 x 1,440 px. El tamaño mínimo (2,048 px por 1,152 px) no cambió. -
La nueva propiedad
snippet.customUrldel recursochannelidentifica la URL personalizada asociada al 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.watchdel recursochannely todas sus propiedades secundarias dejaron de estar disponibles. -
La respuesta de la API a una solicitud
search.listahora contiene una propiedadregionCode. La propiedad identifica el código de región que se usó para la búsqueda. El código de región indica a la API que muestre los 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.listdevuelve una lista de las regiones admitidas. El valor predeterminado esUS. Si se especifica una región no admitida, es posible que YouTube seleccione otra región, en lugar del valor predeterminado, para controlar la búsqueda. -
Se actualizaron las definiciones de las propiedades
snippet.labelysnippet.secondaryReasons[].labeldel recursovideoAbuseReportReasonpara indicar que contienen texto de etiquetas localizadas para los motivos de denuncia de abuso.Además, el método
videoAbuseReportReasons.listahora admite el parámetrohl, 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 esen_US. -
La nueva propiedad
contentDetails.contentRating.ecbmctRatingdel recursovideoidentifica la clasificación de un video del Consejo de Evaluación y Clasificación de Türkiye del Ministerio de Cultura y Turismo.Además, las propiedades de la API para otros sistemas de clasificación admiten los siguientes valores de propiedad nuevos:
contentDetails.contentRating.fpbRating(Sudáfrica)
Calificación: 10; valor de la propiedad:fpb10contentDetails.contentRating.moctwRating(Taiwán)
Clasificación: R-12; valor de propiedad:moctwR12contentDetails.contentRating.moctwRating(Taiwán)
Clasificación: R-15; valor de propiedad:moctwR15
-
La propiedad
liveStreamingDetails.activeLiveChatIddel recursovideocontiene el ID del chat en vivo activo asociado al video. El valor de la propiedad solo está presente si el video es una transmisión en vivo actual que tiene habilitado el chat en vivo. Después de que finaliza la transmisión y el chat en vivo, la propiedad ya no se devuelve para el video. -
La propiedad
status.rejectionReasondel recursovideoadmite el nuevo valor de propiedadlegal.
-
-
La API admite los siguientes errores nuevos:
Tipo de error Detalle del error Descripción badRequest (400)notEditableLos métodos channelSections.insert,channelSections.updateychannelSections.deletedevuelven este error para indicar que no se puede crear, actualizar ni borrar la sección del canal especificada.badRequest (400)styleRequiredLos métodos channelSections.insertychannelSections.updatemuestran este error para indicar que el recursochannelSectionenviado en la solicitud a la API debe especificar un valor para la propiedadsnippet.style.badRequest (400)typeRequiredLos métodos channelSections.insertychannelSections.updatemuestran este error para indicar que el recursochannelSectionenviado en la solicitud a la API debe especificar un valor para la propiedadsnippet.type.badRequest (400)processingFailureEl método commentThreads.listdevuelve este error para indicar que el servidor de la API no pudo procesar la solicitud correctamente. Si bien puede ser un error transitorio, suele indicar que la entrada de la solicitud no es válida. Verifica la estructura del recursocommentThreaden el cuerpo de la solicitud para asegurarte de que sea válida.forbidden (403)commentsDisabledEl método commentThreads.listdevuelve este error para indicar que el video identificado por el parámetrovideoIdtiene inhabilitados los comentarios.badRequest (400)commentTextTooLongEl método commentThreads.insertdevuelve este error para indicar que el recursocommentque se está insertando contiene demasiados caracteres en la propiedadsnippet.topLevelComment.snippet.textOriginal.invalidValue (400)videoAlreadyInAnotherSeriesPlaylistEl método playlistItems.insertdevuelve 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)subscriptionForbiddenEl método subscriptions.insertdevuelve este error para indicar que alcanzaste la cantidad máxima de suscripciones o que creaste demasiadas suscripciones recientemente. En este último caso, puedes volver a intentar la solicitud después de unas horas.badRequest (400)invalidCategoryIdEl método videos.updatedevuelve este error para indicar que la propiedadsnippet.categoryIddel recursovideosubido especificó un ID de categoría no válido. Usa el métodovideoCategories.listpara recuperar las categorías admitidas.badRequest (400)invalidDescriptionEl método videos.updatedevuelve este error para indicar que la propiedadsnippet.descriptiondel recursovideosubido especificó un valor no válido.badRequest (400)invalidPublishAtEl método videos.updatedevuelve este error para indicar que la propiedadstatus.publishAtdel recursovideosubido especificó una hora de publicación programada no válida.badRequest (400)invalidRecordingDetailsEl método videos.updatedevuelve este error para indicar que el objetorecordingDetailsen el recursovideosubido especificó detalles de grabación no válidos.badRequest (400)invalidTagsEl método videos.updatedevuelve este error para indicar que la propiedadsnippet.tagsdel recursovideosubido especificó un valor no válido.badRequest (400)invalidTitleEl método videos.updatedevuelve este error para indicar que la propiedadsnippet.titledel recursovideosubido especificó un título de video no válido o vacío.badRequest (400)invalidVideoMetadataEl método videos.updatedevuelve este error para indicar que los metadatos de la solicitud no son válidos. Este error se produce si la solicitud actualiza la partesnippetde un recursovideo, pero no establece un valor para las propiedadessnippet.titleysnippet.categoryId.
18 de diciembre de 2015
Las leyes de la Unión Europea (UE) exigen que se realicen ciertas divulgaciones y se obtenga el consentimiento de los usuarios finales en 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 sobre 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 al método
insertoupdatepara ese recurso. Para establecer valores localizados para un recurso, haz lo siguiente:-
Asegúrate de que se haya establecido un valor para la propiedad
snippet.defaultLanguagedel recurso. Esa propiedad identifica el idioma de las propiedadessnippet.titleysnippet.descriptiondel recurso. Su valor puede ser cualquier idioma de la 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 que tiene un título y una descripción en inglés, debes establecer la propiedadsnippet.defaultLanguageenen.Nota para actualizar recursos
channel: Para establecer la propiedadsnippet.defaultLanguagede un recursochannel, en realidad, debes actualizar la propiedadbrandingSettings.channel.defaultLanguage. -
Agrega el objeto
localizationsal recurso que estás actualizando. Cada clave de objeto es una cadena que identifica un idioma de la 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.El siguiente fragmento de código de ejemplo establece 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 actualices los datos localizados de un recurso, tu solicitud a la API debe incluir todas las versiones localizadas existentes de los datos. Por ejemplo, si envías una solicitud posterior para agregar datos en portugués al video del ejemplo anterior, la solicitud deberá incluir los datos localizados para 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
hla tu solicitudchannels.list,channelSections.list,playlists.listovideos.listpara recuperar datos localizados para un idioma de la aplicación específico que admite el sitio web de YouTube. Si los detalles del recurso localizado están disponibles en ese idioma, el objetosnippet.localizeddel recurso contendrá los valores localizados. Sin embargo, si no hay detalles localizados disponibles, el objetosnippet.localizedcontendrá detalles del recurso en el idioma predeterminado del recurso.Por ejemplo, supongamos que una solicitud de
videos.listrecuperó datos para el video descrito anteriormente con datos localizados en alemán y español. Si el parámetrohlse configurara comode, el recurso contendría 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
hlse estableciera enfr, el objetosnippet.localizedcontendría el título y la descripción en inglés, ya que este es el idioma predeterminado del recurso y no hay detalles localizados en francés disponibles.Importante: El parámetrohlsolo admite valores que identifican los idiomas de la aplicación que admite el sitio web de YouTube. Para determinar si hay texto localizado disponible para otros idiomas, debes recuperar la partelocalizationsdel recurso y filtrar para determinar si existe el texto localizado.
Por ejemplo, deberás recuperar la lista completa de localizaciones para determinar si hay texto localizado disponible en inglés de los Apalaches.
-
Cuando recuperes un recurso, incluye
localizationsen el valor del parámetropartpara recuperar todos los detalles localizados de ese recurso. Si recuperas datos localizados para un idioma que no es un idioma actual de la aplicación de YouTube, debes usar este enfoque para recuperar todas las localizaciones y, luego, filtrar para determinar si existen los datos localizados deseados.
-
-
Errores relacionados con los 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)defaultLanguageNotSetErrorEste error indica que una solicitud que intenta insertar o actualizar el objeto localizationspara un recurso falla porque la propiedadsnippet.defaultLanguageno está establecida para ese recurso. Los métodoschannels.update,channelSections.insert,channelSections.update,playlists.insert,playlists.update,videos.insertyvideos.updateadmiten este error.badRequest (400)localizationValidationErrorEste error indica que no se pudo validar uno de los valores del objeto localizationsde un recurso. Por ejemplo, este error puede ocurrir si el objeto contiene un código de idioma no válido. Los métodoschannels.update,channelSections.insert,channelSections.update,playlists.insertyplaylists.updateadmiten 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
orderdel métodosearch.listpara indicar que, si ordenas las transmisiones en vivo porviewCount, los resultados de la API se ordenan según la cantidad de usuarios simultáneos de las transmisiones mientras estas siguen en curso. -
Se actualizó el parámetro
relatedToVideoIddel métodosearch.listpara indicar que, si se configura el parámetro, los únicos otros parámetros admitidos sonpart,maxResults,pageToken,regionCode,relevanceLanguage,safeSearch,type(que debe establecerse envideo) yfields. Esta actualización no refleja un cambio en el comportamiento de la API. -
Se actualizó la definición de la propiedad
snippet.publishedAtdel recursovideopara indicar que el valor de la propiedad, que especifica la fecha y la hora en que se publicó el video, puede ser diferente de la hora en que se subió el video. Por ejemplo, si se sube un video como privado y, luego, se hace público, el valor de la propiedad especifica el momento en que se hizo público el video. La definición actualizada también explica cómo se completa el valor para los videos privados y no listados.Este cambio no refleja un cambio en el comportamiento de la API.
-
Se actualizó la definición de la propiedad
status.publishAtdel recursovideopara incluir la siguiente nota:- Si estableces el valor de esta propiedad cuando llamas al método
videos.update, también debes establecer el valor de la propiedadstatus.privacyStatusenprivate, 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.publishAten una fecha y hora pasadas es el mismo que el de cambiar elprivacyStatusdel video deprivateapublic.
- Si estableces el valor de esta propiedad cuando llamas al método
-
La propiedad
contentDetails.contentRating.cncRatingdel recursovideoespecifica la clasificación del video de la Commission de classification cinematographique de Francia. Esta propiedad reemplaza la propiedadcontentDetails.contentRating.fmocRating, que ahora está obsoleta. -
Se actualizó la definición del
brandingSettings.channel.keywordsdel recursochannelpara reflejar correctamente que el valor de la propiedad contiene una lista de cadenas separadas 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.setpara reflejar con precisión que el cuerpo de la solicitud contiene la imagen en miniatura que subes y asocias con un video. El cuerpo de la solicitud no contiene un recursothumbnail. Anteriormente, la documentación indicaba que no debías proporcionar un cuerpo de la solicitud cuando llamabas a este método. Esta actualización no refleja un cambio en el comportamiento de la API. -
Se actualizó la descripción del recurso
activitypara reflejar el hecho de que el métodoactivities.listactualmente no incluye recursos relacionados con los comentarios nuevos de los videos. También se actualizaron los campossnippet.typeycontentDetails.commentdel recurso.
-
-
Errores nuevos y actualizados
-
Ahora la API admite los siguientes errores:
Detalles del error activities.insertCódigo de respuesta HTTP badRequest (400)Motivo invalidMetadataDescripción La propiedad kindno coincide con el tipo de ID proporcionado.commentThreads.updatecomments.insertcomments.updateCódigo de respuesta HTTP badRequest (400)Motivo commentTextTooLongDescripción El recurso commentque se está insertando o actualizando contiene demasiados caracteres en la propiedadsnippet.topLevelComment.snippet.textOriginal.playlistItems.insertplaylistItems.updateCódigo de respuesta HTTP forbidden (403)Motivo playlistItemsNotAccessibleDescripción La solicitud no está autorizada correctamente para insertar, actualizar o borrar el elemento de playlist especificado. playlists.deleteplaylists.insertplaylists.updateCódigo de respuesta HTTP badRequest (400)Motivo playlistForbiddenDescripción Esta operación está prohibida o la solicitud no está autorizada correctamente. search.listCódigo de respuesta HTTP badRequest (400)Motivo invalidLocationDescripción El valor del parámetro locationolocationRadiustiene un formato incorrecto.search.listCódigo de respuesta HTTP badRequest (400)Motivo invalidRelevanceLanguageDescripción El valor del parámetro relevanceLanguageno tiene el formato correcto.subscriptions.insertCódigo de respuesta HTTP badRequest (400)Motivo subscriptionForbiddenDescripción Este error ocurre cuando se cumple alguna de las siguientes condiciones: - La suscripción que intentas crear ya existe
- Ya alcanzaste la cantidad máxima de suscripciones
- Estás intentando suscribirte a tu propio canal, lo cual no se admite.
- Creaste demasiadas suscripciones recientemente y debes esperar unas horas antes de volver a intentar la solicitud.
videos.updateCódigo de respuesta HTTP badRequest (400)Motivo invalidDefaultBroadcastPrivacySettingDescripción La solicitud intenta establecer un parámetro de configuración de privacidad no válido 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.favoriteCountdel recursovideodejó de estar disponible.De acuerdo con nuestra política de baja, esta propiedad seguirá incluida en los recursos de
videodurante al menos un año después de este anuncio. Sin embargo, el valor de la propiedad ahora siempre se establece en0.
-
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 recursovideopara 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.Específicamente, la definición ahora explica que, si una etiqueta contiene un espacio, el servidor de la API controla el valor de la etiqueta como si estuviera entre comillas, y las comillas se incluyen en el límite de caracteres. Por lo tanto, para los fines de los límites de caracteres, la etiqueta Foo-Baz contiene siete caracteres, pero la etiqueta Foo Baz contiene nueve caracteres.
-
El método
commentThreads.insertya no admite el parámetroshareOnGooglePlus, que antes indicaba si un comentario y las respuestas a ese comentario también debían publicarse en el perfil de Google+ del autor. Si una solicitud envía el parámetro, el servidor de la API lo ignora, pero controla la solicitud de todos modos.
-
18 de junio de 2015
Esta actualización incluye los siguientes cambios:
-
Actualizaciones de recursos y métodos existentes
-
El nuevo parámetro
orderdel métodocommentThreads.listespecifica el orden en el que la respuesta de la API debe enumerar los subprocesos de comentarios. Los hilos se pueden ordenar por hora o relevancia. El comportamiento predeterminado es ordenarlos por hora. -
La nueva propiedad
snippet.defaultAudioLanguagedel recursovideoespecifica el idioma que se habla en la pista de audio predeterminada del video. -
Se actualizó la definición de la propiedad
contentDetails.licensedContentdel recursovideopara aclarar que el contenido se debe haber subido originalmente a un canal vinculado a un socio de contenido de YouTube y, luego, ese socio debe haberlo reclamado. Esto no representa un cambio en el comportamiento real de la API. -
Los métodos
captions.delete,captions.download,captions.insert,captions.listycaptions.updateahora admiten el parámetroonBehalfOfContentOwner, que ya se admite en varios otros métodos. Las solicitudes que usan ese método también deben autorizarse con un token que proporcione acceso al alcancehttps://www.googleapis.com/auth/youtubepartner.
-
-
Errores nuevos y actualizados
-
Ahora la API admite los siguientes errores:
Detalles del error videos.rateCódigo de respuesta HTTP badRequest (400)Motivo emailNotVerifiedDescripción La usuaria debe verificar su dirección de correo electrónico antes de calificar el video. videos.rateCódigo de respuesta HTTP badRequest (400)Motivo videoPurchaseRequiredDescripción Solo los usuarios que alquilaron los videos pueden calificarlos. -
Los métodos
subscriptions.deleteysubscriptions.insertya no admiten los erroresaccountClosedyaccountSuspended.
-
27 de abril de 2015
Esta actualización incluye los siguientes cambios:
-
Nuevos recursos y métodos
-
El nuevo recurso
videoAbuseReportReasoncontiene información sobre un motivo por el que se marcaría un video por contener contenido abusivo. El métodovideoAbuseReportReasons.listte permite recuperar una lista de todos los motivos por los que se pueden marcar los videos. -
El nuevo método
videos.reportAbuseproporciona una forma de marcar realmente un video que contiene 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 contiene contenido abusivo. Los motivos válidos se pueden obtener del métodovideoAbuseReportReason.listdescrito anteriormente.También se actualizó la guía de migración con un ejemplo para denunciar un video abusivo. Con este cambio, la API v3 ahora admite todas las funciones de la API v2 que se prevé que admita. Todas estas funciones también se explican en la guía de migración.
-
-
Actualizaciones de recursos y métodos existentes
-
El nuevo parámetro de filtro
forDeveloperdel métodosearch.listrestringe una búsqueda para recuperar solo los videos subidos a través de la aplicación o el sitio web del desarrollador. El parámetroforDeveloperse puede usar junto con parámetros de búsqueda opcionales, como el parámetroq.En el caso de esta función, cada video subido se etiqueta automáticamente con el número de proyecto asociado a la aplicación del desarrollador en Google Developers Console.
Cuando una solicitud de búsqueda establece posteriormente el parámetro
forDeveloperentrue, el servidor de la API usa las credenciales de autorización de la solicitud para identificar al desarrollador. Por lo tanto, un desarrollador puede restringir los resultados a los videos subidos a través de su propia app o sitio web, pero no a los videos subidos a través de otras apps o sitios.La nueva función ofrece una funcionalidad similar, aunque no idéntica, a la funcionalidad de las etiquetas de desarrollador que admitía la API v2.
-
La nueva propiedad
snippet.countrydel recursochannelpermite que los propietarios de canales asocien sus canales con un país en particular.Nota: Para establecer la propiedad
snippet.countryde un recursochannel, en realidad, debes actualizar la propiedadbrandingSettings.channel.country. -
La API ahora admite la segmentación para los recursos
channelSection. La segmentación de secciones del canal proporciona una forma de restringir la visibilidad de una sección de contenido a los usuarios que cumplen con criterios particulares.La API expone tres opciones de segmentación. Para que se muestre una sección del canal, el usuario debe cumplir con todos los parámetros de configuración de segmentación.
-
targeting.languages[]: Es una lista de idiomas de la aplicación de YouTube. Los usuarios que eligieron uno de esos idiomas pueden ver la sección del canal correspondiente. -
targeting.regions[]: Es una lista de regiones de contenido preferido de YouTube. La sección del canal es visible para los usuarios que seleccionaron una de esas regiones, así como para los usuarios para los que se selecciona automáticamente una de esas regiones. -
targeting.countries[]: Es una lista de países en los que se ve la sección del canal. Cada valor de la lista es un código de país ISO 3166-1 alpha-2.
-
-
Se corrigió la definición de la propiedad
contentDetails.durationdel recursovideopara reflejar que el valor puede indicar horas, días, etcétera. -
Se corrigió la documentación de los métodos
channelSections.delete,playlistItems.delete,playlists.delete,subscriptions.deleteyvideos.deletepara reflejar que, cuando se ejecutan correctamente, todos esos métodos devuelven un código de respuesta HTTP204(No Content).
-
-
Errores nuevos y actualizados
-
Ahora la API admite los siguientes errores:
Tipo de error Detalle del error Descripción badRequest (400)targetInvalidCountryLos métodos channelSections.insertychannelSections.updatedevuelven este error si el recursochannelSectioninsertado contenía un valor no válido para la propiedadtargeting.countries[].badRequest (400)targetInvalidLanguageLos métodos channelSections.insertychannelSections.updatedevuelven este error si el recursochannelSectioninsertado contenía un valor no válido para la propiedadtargeting.languages[].badRequest (400)targetInvalidRegionLos métodos channelSections.insertychannelSections.updatedevuelven este error si el recursochannelSectioninsertado contenía un valor no válido para la propiedadtargeting.regions[].badRequest (400)operationNotSupportedEl método comments.insertdevuelve este error si el usuario de la API no puede insertar un comentario en respuesta al comentario de nivel superior identificado por la propiedadsnippet.parentId. En un recursocommentThread, la propiedadsnippet.canReplyindica si el usuario actual puede responder el hilo.badRequest (400)invalidChannelIdEl método search.listdevuelve este error si el parámetrochannelIdde la solicitud especificó un ID de canal no válido.badRequest (400)subscriptionForbiddenEl método subscriptions.insertdevuelve este error si el usuario de la API intenta suscribirse a su propio canal. -
El método
captions.updateya no admite los erroresinvalidMetadatayvideoNotFound.
-
16 de abril de 2015
Esta actualización incluye los siguientes cambios:
-
Se actualizó la guía de migración para explicar cómo migrar las aplicaciones que aún usan la función de comentarios de la API v2.
En la guía, también se mencionan varias funciones de comentarios que la API v2 no admitía, pero que sí se admiten en la API v3. Estos incluyen los siguientes:
- Cómo recuperar comentarios sobre un canal
- Recupera todos los subprocesos 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
- Cómo marcar un comentario como spam
- Cómo establecer el estado de moderación de un comentario
-
Se actualizó la guía Cómo suscribirse a las notificaciones push para reflejar el hecho de que las notificaciones solo se envían al hub de Google PubSubHubBub y no también al hub de Superfeedr, como se indicaba anteriormente.
9 de abril de 2015
Esta actualización incluye los siguientes cambios:
-
Los nuevos recursos
commentThreadycommentde la API te permiten recuperar, insertar, actualizar, borrar y moderar comentarios.-
Un recurso
commentThreadcontiene información sobre un hilo de comentarios de YouTube, que incluye un comentario de nivel superior y las respuestas a ese comentario, si existen. Un recursocommentThreadpuede representar comentarios sobre un video o un canal.El comentario de nivel superior y las respuestas son, en realidad, recursos
commentanidados dentro del recursocommentThread. Es importante tener en cuenta que el recursocommentThreadno necesariamente contiene todas las respuestas a un comentario, y debes usar el métodocomments.listsi deseas recuperar todas las respuestas a 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 hilos de comentarios. Usa este método para recuperar los comentarios asociados con un canal o video en particular.commentThreads.insert: Crea un comentario de nivel superior nuevo. (Usa el métodocomments.insertpara responder a un comentario existente).commentThreads.update: Modifica un comentario de nivel superior.
-
Un recurso
commentcontiene información sobre un solo comentario de YouTube. Un recursocommentpuede representar un comentario sobre un video o un canal. Además, el comentario puede ser 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. Usa 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, aprobar un comentario para que se muestre públicamente o rechazarlo por considerarlo inapropiado. El propietario del canal o del video asociado a los comentarios debe autorizar la solicitud a la API.comments.delete: Borra un comentario.
Ten en cuenta que el nuevo alcance
https://www.googleapis.com/auth/youtube.force-sslde la API, que se describe en el historial de revisiones del 2 de abril de 2015, es obligatorio para las llamadas a los métodoscomments.insert,comments.update,comments.markAsSpam,comments.setModerationStatus,comments.delete,commentThreads.insertycommentThreads.update. -
-
La nueva guía Subscribing to push notifications 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 feeds 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.
-
También se actualizó la guía de migración para incluir la nueva compatibilidad con las notificaciones push. Sin embargo, dado que la API v2 admitía muchos otros tipos de notificaciones push que no se admiten en la API v3, la mención de la compatibilidad con PubSubHubBub aún se incluye en la sección Obsoleto de esa guía.
-
El nuevo alcance
https://www.googleapis.com/auth/youtube.force-sslde la API ahora es un alcance válido para cualquier método de la API que anteriormente admitía el alcancehttps://www.googleapis.com/auth/youtube. -
Ahora la API admite los siguientes errores:
Tipo de error Detalle del error Descripción badRequest (400)invalidRatingEl método videos.ratedevuelve este error si la solicitud contenía un valor inesperado para el parámetrorating. -
El método
subscriptions.insertya no admite el errorsubscriptionLimitExceeded, que antes indicaba que el suscriptor identificado con la solicitud había superado el límite de frecuencia de suscripción.
2 de abril de 2015
Esta actualización incluye los siguientes cambios:
-
El nuevo recurso
captionsrepresenta un segmento de subtítulos de YouTube. Una pista de subtítulos se asocia con exactamente un 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 las aplicaciones que aún usan la función de subtítulos en la API v2.
-
El nuevo alcance
https://www.googleapis.com/auth/youtube.force-sslde la API requiere que la comunicación con el servidor de la API se realice a través de una conexión SSL.Este nuevo alcance otorga el mismo acceso que el alcance
https://www.googleapis.com/auth/youtube. De hecho, esos dos permisos son funcionalmente idénticos porque el servidor de la API de YouTube solo está disponible a través de un extremo HTTPS. Como resultado, aunque el alcance dehttps://www.googleapis.com/auth/youtubeno requiere una conexión SSL, en realidad no hay otra forma 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 YouTube Data (v3) contiene una nueva pestaña llamada Novedades de la API v3, en la que se enumeran las funciones que admite la API v3 y que no admitía la API v2. Las mismas funciones se mencionaron anteriormente y aún se mencionan en otras pestañas de la guía. Por ejemplo, la nueva función que explica cómo actualizar los datos de la campaña promocional en el video de un canal también se incluye en la pestaña Canales (perfiles).
-
Se actualizó la guía de migración de la API de YouTube Data (v3) para indicar que la API v3 admitirá la siguiente función de la API v2:
-
Se actualizó la guía de migración de la API de YouTube Data (v3) para indicar que las siguientes funciones de la API de v2 no serán compatibles con la API de v3:
-
Recupera 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.listy estableciendo el valor del parámetrohomeentrue.En la respuesta de la API, un recurso corresponde a un video recomendado si el valor de la propiedad
snippet.typeesrecommendation. En ese caso, las propiedadescontentDetails.recommendation.reasonycontentDetails.recommendation.seedResourceIdcontendrán información sobre por qué se recomendó el video. Ten en cuenta que no se garantiza que la respuesta contenga una cantidad específica de videos recomendados. -
Recuperar videos de suscripciones nuevas: La API v3 no recupera una lista que solo contenga videos que se hayan subido recientemente a los canales a los que se suscribe el usuario de la API. Sin embargo, puedes usar la API v3 para encontrar videos nuevos de suscripciones llamando al método
activities.listy estableciendo el valor del parámetrohomeentrue.En la respuesta de la API, un recurso corresponde a un video nuevo de suscripción si el valor de la propiedad
snippet.typeesupload. Ten en cuenta que no hay garantía de que la respuesta contenga una cantidad específica de videos nuevos de suscripciones. -
Notificaciones push para actualizaciones de feeds: La API v2 admitía notificaciones push, ya sea con el Protocolo de actualización simple (SUP) o PubSubHubbub, para supervisar los feeds de actividad de los usuarios de YouTube. Se proporcionaron notificaciones para las suscripciones a canales nuevos y cuando se calificaron, compartieron, marcaron como favoritos, comentaron o subieron videos.
La API v3 admitirá las notificaciones push con el protocolo PubSubHubbub, pero las notificaciones solo abarcarán las cargas de videos y las actualizaciones de los títulos o las descripciones de los videos.
-
Ubicación del canal: La API v2 usaba la etiqueta
<yt:location>para identificar la ubicación del usuario tal como se ingresó en el perfil público del canal de YouTube. 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 de desarrollador: La API v2 admitía la capacidad de asociar palabras clave o etiquetas de desarrollador con un video en el momento en que se subía. Las etiquetas de desarrollador no se mostrarían a los usuarios de YouTube, pero los propietarios de los videos podrían recuperar los videos que coincidieran con una etiqueta de desarrollador específica.
La API v3 proporcionará una función similar, pero no idéntica. Específicamente, un desarrollador podrá buscar videos subidos por su propia aplicación. En el caso de esta función, cada video subido se etiqueta automáticamente con el número de proyecto asociado a la aplicación del desarrollador en Google Developers Console. Luego, el desarrollador usa el mismo número de proyecto para buscar videos.
-
Ordenar videos por fecha de publicación, recuento de vistas o clasificación: En la API v2, el parámetro
orderbyte permite ordenar los videos de una playlist por posición, duración, fecha de publicación, título y varios otros valores. En la API v3, los elementos de la playlist suelen ordenarse por posición en orden ascendente, y no hay otras opciones de ordenamiento disponibles.Existen algunas excepciones. Los videos nuevos que se suben, los videos favoritos, los videos que se marcan como Me gusta o los videos que se miran recientemente se agregan automáticamente como el primer elemento (
snippet.position=0) en los siguientes tipos de playlists. Por lo tanto, cada una de estas listas se ordena de manera efectiva desde el elemento más nuevo hasta el más antiguo según las horas en que se agregaron los elementos a la lista.- Cargas de usuario
- videos favoritos
- videos con Me gusta
- historial de reproducciones
Sin embargo, ten en cuenta que los elementos nuevos que se agregan a la playlist "Mirar más tarde" se agregan como los últimos elementos de esa lista, por lo que la lista se ordena de forma efectiva del elemento más antiguo al más reciente.
-
Procesamiento por lotes: La API v3 admite uno de los casos de uso de procesamiento por lotes que admitía la API v2. Los métodos
channels.list,channelSections.list,guideCategories.list,playlistItems.list,playlists.list,subscriptions.list,videoCategories.listyvideos.listde la API v3 admiten un parámetroid, que se puede usar para especificar una lista de IDs delimitada por comas (IDs de video, IDs de canal, etcétera). 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 funciones que se admitían en la API anterior (v2) y que se dejarán de usar 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.deleteychannelSections.updateahora admiten el parámetroonBehalfOfContentOwner, que ya se admite para varios otros métodos. -
Las siguientes propiedades y sus propiedades secundarias dejaron de estar disponibles:
brandingSettings.image.backgroundImageUrlbrandingSettings.image.largeBrandedBannerImageImapScriptbrandingSettings.image.largeBrandedBannerImageUrlbrandingSettings.image.smallBrandedBannerImageImapScriptbrandingSettings.image.smallBrandedBannerImageUrl
Nota: Ninguna de estas propiedades estuvo sujeta a la Política de Baja de APIs.
-
La nueva propiedad
contentDetails.contentRating.contentDetails.contentRating.djctqRatingReasonsdel recursovideoidentifica los motivos que explican por qué el video recibió su clasificación del DJCQT (Brasil). -
Ahora la API admite los siguientes errores:
Tipo de error Detalle del error Descripción notFound (404)channelNotFoundEl método channels.updatedevuelve este error si el parámetroidde la solicitud especifica un canal que no se puede encontrar.badRequest (400)manualSortRequiredinvalidValueLos métodos playlistItems.insertyplaylistItems.updatedevuelven este error si la solicitud intenta establecer la posición del elemento de la playlist, pero la playlist no usa la clasificación manual. Por ejemplo, los elementos de la playlist se pueden ordenar por fecha o popularidad. Para corregir este error, quita el elementosnippet.positiondel recurso que se envió en el cuerpo de la solicitud. Si quieres que el elemento de la playlist tenga una posición específica en la lista, primero debes actualizar el parámetro de configuración de orden de la playlist a Manual. Este parámetro de configuración se puede ajustar en el Administrador de videos de YouTube.forbidden (403)channelClosedEl método playlists.listdevuelve este error si el parámetrochannelIdde la solicitud especifica un canal que se cerró.forbidden (403)channelSuspendedEl método playlists.listdevuelve este error si el parámetrochannelIdde la solicitud especifica un canal que se suspendió.forbidden (403)playlistForbiddenEl método playlists.listdevuelve este error si el parámetroidde la solicitud no admite la solicitud o si la solicitud no está autorizada correctamente.notFound (404)channelNotFoundEl método playlists.listdevuelve este error si el parámetrochannelIdde la solicitud especifica un canal que no se puede encontrar.notFound (404)playlistNotFoundEl método playlists.listdevuelve este error si el parámetroidde la solicitud especifica una playlist que no se puede encontrar.notFound (404)videoNotFoundEl método videos.listdevuelve este error si el parámetroidde la solicitud especifica un video que no se puede encontrar.badRequest (400)invalidRatingEl método videos.ratedevuelve este error si la solicitud contiene un valor inesperado para el parámetrorating.
2 de marzo de 2015
Esta actualización incluye los siguientes cambios:
-
El método
search.listahora admite el parámetrorelevanceLanguage, que te permite solicitar los resultados más relevantes para un idioma en particular.También se actualizó la guía de migración de la API de YouTube Data (v3) para explicar cómo usar este nuevo parámetro. El parámetro aborda una brecha de funciones que existía anteriormente entre la versión actual de la API (v3) y la versión anterior (v2), que ya dejó de estar disponible.
-
También se actualizó la guía de migración de la API de YouTube Data (v3) para indicar la baja de los feeds especiales y los campos de metadatos que proporcionaba la API v2 para describir películas, avances, programas de televisión, temporadas de televisión y episodios de televisión.
14 de enero de 2015
Esta actualización incluye los siguientes cambios:
-
Se actualizó la guía de migración de la API de YouTube Data (v3) para explicar cómo usar la API v3 para subir videos con JavaScript. (Consulta la sección Cómo subir un video para obtener más detalles). Esta funcionalidad es comparable a la 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 en la API, sino la disponibilidad de un nuevo código de muestra para subir videos con JavaScript del cliente.
Dado que se admite la carga de videos con la biblioteca cliente de JavaScript y CORS, la guía de migración ya no incluye la carga basada en el navegador como una función que podría quedar obsoleta en la API v3.
-
Se actualizó la documentación del método
videos.insertpara incluir la nueva muestra de código JavaScript que se describió anteriormente. También se actualizó la lista de ejemplos de código de JavaScript para la API de YouTube Data (v3).
11 de noviembre de 2014
Esta actualización incluye los siguientes cambios:
-
El costo de cuota para una llamada al método
search.listcambió a 100 unidades.Importante: En muchos casos, puedes usar otros métodos de la API para recuperar información a un costo de cuota más bajo. Por ejemplo, considera estas dos formas de encontrar videos subidos al canal de GoogleDevelopers.
-
Costo de cuota: 100 unidades
Llama al método
search.listy buscaGoogleDevelopers. -
Costo de cuota: 6 unidades
Llama al método
channels.listpara encontrar el ID del canal correcto. Establece el parámetroforUsernameenGoogleDevelopersy el parámetropartencontentDetails. En la respuesta de la API, la propiedadcontentDetails.relatedPlaylists.uploadsespecifica el ID de la playlist de los videos subidos del canal.Luego, llama al método
playlistItems.listy establece el parámetroplaylistIden el ID capturado y el parámetropartensnippet.
-
8 de octubre de 2014
Esta actualización incluye los siguientes cambios:
-
El recurso
channelcontiene dos propiedades nuevas:-
La propiedad
status.longUploadsStatusindica si el canal es apto para subir videos de más de 15 minutos. Esta propiedad solo se devuelve 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.eligible: El canal es apto para subir videos de más de 15 minutos, pero primero debe habilitar la función.disallowed: El canal no puede subir videos de más de 15 minutos o no cumple con los requisitos para hacerlo.
Consulta la definición de la 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.useSmartTimingindica si la campaña promocional del canal usa la "programación inteligente". Esta función intenta mostrar las promociones en un punto del video en el que es más probable que se haga clic en ellas y 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.titleysnippet.categoryIddel recursovideopara aclarar la forma en que la API controla las llamadas al métodovideos.update. Si llamas a ese método para actualizar la partesnippetde un recursovideo, debes establecer un valor para ambas propiedades.Si intentas actualizar la parte
snippetde un recursovideoy no estableces un valor para ambas propiedades, la API devolverá un errorinvalidRequest. También se actualizó la descripción de ese error. -
La propiedad
contentDetails.contentRating.oflcRatingdel recursovideo, que identifica la clasificación de un video de la Oficina de Clasificación de Cine y Literatura de Nueva Zelanda, ahora admite dos clasificaciones nuevas:oflcRp13yoflcRp16. Estos corresponden a las calificacionesRP13yRP16, respectivamente. -
El método
channelBanners.insertahora admite el siguiente error:Tipo de error Detalle del error Descripción badRequestbannerAlbumFullEl álbum de 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 álbumes y quitar algunas imágenes de ese álbum.
12 de septiembre de 2014
Esta actualización incluye los siguientes cambios:
-
El costo de cuota para una llamada al método
search.listcambió de 1 unidad a 2 unidades, además del costo de las partes del recurso especificadas.
13 de agosto de 2014
Esta actualización incluye los siguientes cambios:
-
El método
subscriptions.insertahora admite el siguiente error:Tipo de error Detalle del error Descripción badRequestsubscriptionLimitExceededEl suscriptor identificado con la solicitud superó el límite de frecuencia de suscripción. Puedes intentar suscribirte de nuevo en unas horas.
12 de agosto de 2014
Esta actualización incluye los siguientes cambios:
-
En una nueva guía, titulada Migrating Your Application to YouTube Data API (v3), se explica cómo usar la API de YouTube Data (v3) para realizar las funciones disponibles en la API de YouTube Data (v2). La API anterior quedó oficialmente obsoleta el 4 de marzo de 2014. El objetivo de la guía es ayudarte a migrar las 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.insertahora admite el siguiente error:Tipo de error Detalle del error Descripción badRequestmaxPlaylistExceededEste error se produce si no se puede crear una playlist porque el canal ya tiene la cantidad máxima de playlists permitidas.
18 de junio de 2014
Esta actualización incluye los siguientes cambios:
-
Se actualizó la descripción de cada método de la API para incluir el costo de cuota que genera una llamada a ese método. Del mismo modo, se actualizaron las definiciones de los parámetros
partpara especificar el costo de cuota de cada parte que se puede recuperar en una llamada a la API. Por ejemplo, una llamada al métodosubscriptions.inserttiene un costo de cuota de aproximadamente 50 unidades. El recursosubscriptiontambién contiene tres partes (snippet,contentDetailsysubscriberSnippet), y cada una de ellas tiene un costo de dos unidades.Recuerda que los costos de las cuotas pueden cambiar sin previo aviso.
-
El recurso
videoahora admite 43 nuevos sistemas de clasificación de contenido, que identifican las clasificaciones que recibieron los videos de varias agencias nacionales de clasificación. Los sistemas de clasificación recién admitidos son de Argentina, Austria, Bélgica, Bulgaria, Chile (televisión), Chile (películas), República Checa, Colombia, Dinamarca, Egipto, Estonia, Finlandia, Francia, Grecia, Hong Kong, Islandia, Indonesia, Irlanda, Israel, Italia, Kenia, Letonia, Luxemburgo, Malasia, Maldivas, Malta, Países Bajos, Nigeria, Noruega, Perú, Filipinas, Portugal, Rumania, Singapur, Eslovaquia, Sudáfrica, Suecia, Suiza, Taiwán, Tailandia y Venezuela.
28 de mayo de 2014
Esta actualización incluye los siguientes cambios:
-
El método
search.listahora admite los parámetroslocationylocationRadius, que te permiten buscar videos asociados a una ubicación geográfica. Una solicitud debe especificar un valor para ambos parámetros para recuperar resultados basados en la ubicación, y la API devolverá un error si una solicitud incluye solo uno de los dos parámetros.-
El parámetro
locationespecifica las coordenadas de latitud y longitud en el centro del área geográfica circular. -
El parámetro
locationRadiusespecifica la distancia máxima a la que puede estar la ubicación asociada con un video del centro del área para que el video se siga incluyendo 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 recursochannelpara indicar que, por lo general, solo puedes establecer un elemento promocionado para tu canal. Si intentas insertar demasiados elementos promocionados, la API devolverá un errortooManyPromotedItems, que tiene un código de estado HTTP400. -
El recurso
channelSectionahora puede contener información sobre algunos tipos nuevos de contenido destacado. La propiedadsnippet.typedel recursochannelSectionahora admite los siguientes valores:postedPlaylists: Playlists que el propietario del canal publicó en el feed de actividad del canalpostedVideos: Videos que el propietario del canal publicó en el feed de actividad del canalsubscriptions: Canales a los que se suscribió el propietario del canal
-
La nueva propiedad
contentDetails.contentRating.ifcoRatingdel recursovideoidentifica la clasificación que recibió un video de la Oficina de Clasificación de Cine de Irlanda. -
Se actualizó la definición de la propiedad
position.cornerPositiondel recursowatermarkpara indicar que la marca de agua siempre aparece en la esquina superior derecha del reproductor. -
Se actualizó la definición del parámetro
qpara el métodosearch.listpara 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 en particular. El valor también puede usar el operador booleano OR (|) para encontrar videos asociados con uno de varios términos de búsqueda. -
Se actualizó la definición de la propiedad
pageInfo.totalResultsque se devuelve en una respuesta de la API a una llamada desearch.listpara indicar que el valor es una aproximación y puede no representar 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 las propiedadesnextPageTokenyprevPageTokenpara determinar si se deben mostrar vínculos de paginación. -
Se actualizaron los métodos
watermarks.setywatermarks.unsetpara reflejar que la API devuelve un código de respuesta HTTP204para las solicitudes exitosas a esos métodos.
2 de mayo de 2014
Esta actualización incluye los siguientes cambios:
-
El nuevo recurso
i18nLanguageidentifica un idioma de la aplicación que admite el sitio web de YouTube. El idioma de la aplicación también se conoce como idioma de la IU. En el caso del sitio web de YouTube, se puede seleccionar automáticamente un idioma de la aplicación según la configuración de la Cuenta de Google, el idioma del navegador o la ubicación de la IP. Además, el usuario también puede seleccionar manualmente el idioma de la IU deseado en el pie de página del sitio de YouTube.La API admite un método para listar los idiomas de la aplicación admitidos. Los idiomas admitidos se pueden usar como el valor del parámetro
hlcuando se llaman a métodos de la API, comovideoCategories.listyguideCategories.list. -
El nuevo recurso
i18nRegionidentifica 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 configuración regional de contenido. En el caso del sitio web de YouTube, se podría seleccionar automáticamente una región de contenido en función de heurísticas como el dominio de YouTube o la ubicación de la IP del usuario, y el usuario también podría seleccionar manualmente la región de contenido deseada en el pie de página del sitio de YouTube.La API admite un método para listar las regiones de contenido admitidas. Los códigos de región admitidos se pueden usar como el valor del parámetro
regionCodecuando se llaman a métodos de la API comosearch.list,videos.list,activities.listyvideoCategories.list.
7 de abril de 2014
Esta actualización incluye los siguientes cambios:
-
El nuevo recurso
channelSectioncontiene información sobre un conjunto de videos que un canal eligió destacar. Por ejemplo, una sección podría mostrar las cargas más recientes o populares de un canal, o bien los videos de una o más playlists.La API admite métodos para listar, insertar, actualizar o borrar secciones de canales. Puedes recuperar una lista de secciones del canal del usuario autenticado especificando un ID de canal en particular o una lista de IDs únicos de secciones del canal.
También se actualizó la documentación de errores para describir los mensajes de error que admite la API específicamente para estos métodos nuevos.
-
Se actualizó la definición del objeto
fileDetailsdel recursovideopara explicar que ese objeto solo se devolverá si la propiedadprocessingDetails.fileDetailsAvailabilitydel video tiene un valor deavailable.Del mismo modo, se actualizó la definición del objeto
suggestionsdel recursovideopara explicar que ese objeto solo se devolverá si la propiedadprocessingDetails.tagSuggestionsAvailabilitydel video o su propiedadprocessingDetails.editorSuggestionsAvailabilitytienen un valor deavailable. -
Se actualizó la documentación de los métodos
videos.insertyvideos.updatepara reflejar que la propiedadstatus.publishAtse puede establecer cuando se llaman a esos métodos. -
Se actualizó la definición del objeto
invideoPromotiondel recursochannelpara explicar que solo el propietario del canal puede recuperar el objeto. -
Se actualizó la lista de parámetros del método
videos.ratepara reflejar que ese método no admite el parámetroonBehalfOfContentOwner. Se trató de un error de documentación, ya que las solicitudes devideos.rateque configuran este parámetro devuelven un error de500.
31 de marzo de 2014
Esta actualización incluye los siguientes cambios:
-
La nueva propiedad
status.publishAtdel recursovideote permite especificar la fecha y hora en que se programó la publicación de un video privado. Esta propiedad solo se puede establecer si el estado de privacidad del video esprivatey el video nunca se publicó. Esta nueva propiedad no está sujeta a la política de baja.
13 de marzo de 2014
Esta actualización incluye los siguientes cambios:
-
La API ahora admite la parte
contentOwnerDetailspara los recursoschannel. La parte nueva contiene datos del canal que son relevantes para los socios de YouTube vinculados con el canal, incluido el ID del propietario del contenido vinculado al canal y la fecha y hora en que se vincularon el propietario del contenido y el canal. Ten en cuenta que esta nueva parte 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 channelinvideoPromotion.items[].customMessage40 caracteres videosnippet.title100 caracteres videosnippet.description5,000 bytes videosnippet.tags500 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.featuredPlaylistIddel recursochanneldejó de estar disponible. La API mostrará un error si intentas establecer su valor. -
Se agregaron las siguientes propiedades de recursos
videoa la lista de valores que se pueden establecer cuando se inserta o actualiza un video: -
La documentación de errores ahora especifica el código de respuesta HTTP para cada tipo de error.
-
Ahora la API admite los siguientes errores:
Tipo de error Detalle del error Descripción badRequest (400)invalidCriteriaEl método channels.listdevuelve este error si la solicitud especifica parámetros de filtro que no se pueden usar en conjunto.badRequest (400)channelTitleUpdateForbiddenEl método channels.updatedevuelve este error si intentas actualizar la partebrandingSettingsde un canal y cambiar el valor de la propiedadbrandingSettings.channel.title. (Ten en cuenta que la API no devuelve el error si omites la propiedad).badRequest (400)invalidRecentlyUploadedByEl método channels.updatedevuelve este error si la propiedadinvideoPromotion.items[].id.recentlyUploadedByespecifica un ID de canal no válido.badRequest (400)invalidTimingOffsetEl método channels.updatedevuelve este error si la parteinvideoPromotionespecifica una compensación de tiempo no válida.badRequest (400)tooManyPromotedItemsEl método channels.updatedevuelve este error si la parteinvideoPromotionespecifica más elementos promocionados de los permitidos.forbidden (403)promotedVideoNotAllowedEl método channels.updatedevuelve este error si la propiedadinvideoPromotion.items[].id.videoIdespecifica un ID de video que no se puede encontrar o que no se puede usar como elemento promocionado.forbidden (403)websiteLinkNotAllowedEl método channels.updatedevuelve este error si la propiedadinvideoPromotion.items[].id.websiteUrlespecifica una URL que no está permitida.required (400)requiredTimingTypeEl método channels.updatedevuelve este error si una solicitud no especifica la configuración de tiempo predeterminada para el momento en que YouTube debe mostrar un elemento promocionado.required (400)requiredTimingEl método channels.updatedebe especificar un objetoinvideoPromotion.items[].timingpara cada elemento promocionado.required (400)requiredWebsiteUrlEl método channels.updatedebe especificar una propiedadinvideoPromotion.items[].id.websiteUrlpara cada elemento promocionado.badRequest (400)invalidPublishAtEl método videos.insertdevuelve 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:
-
La API de YouTube Data, v3 ahora está sujeta a la Política de Baja que se describe en las Condiciones del Servicio de las APIs de YouTube. Ten en cuenta que la página que enumera las APIs que están sujetas a la política de baja excluye específicamente algunas funciones de la API v3 de estar sujetas a la política.
5 de diciembre de 2013
Esta actualización incluye los siguientes cambios:
-
Se actualizó la documentación del método
search.listpara reflejar correctamente que no es necesario especificar un valor para exactamente un parámetro de filtro cuando se envía una solicitud de búsqueda. En cambio, puedes establecer un valor para cero o un parámetro de filtro. -
Se actualizaron las definiciones de los parámetros del método
search.listpara indicar que debes establecer el valor del parámetrotypeenvideosi también especificas un valor para cualquiera de los siguientes parámetros:eventTypevideoCaptionvideoCategoryIdvideoDefinitionvideoDimensionvideoDurationvideoEmbeddablevideoLicensevideoSyndicatedvideoType
-
Se redujo el tamaño mínimo de las imágenes de banner del canal subidas a 2,048 px por 1,152 px. (Anteriormente, el tamaño mínimo era de 2,120 px por 1,192 px). Además, ten en cuenta que la documentación del recurso
channelespecifica los tamaños máximos de todas las imágenes de banner que se publican desde la API. Por ejemplo, el tamaño máximo de la imagenbrandingSettings.image.bannerTvImageUrlpara aplicaciones de televisión es de 2,120 px por 1,192 px, pero la imagen real puede ser de 2,048 px por 1,152 px. El Centro de ayuda de YouTube proporciona orientación adicional para optimizar el diseño del canal y que se muestre en diferentes tipos de dispositivos. -
Se actualizaron varias definiciones de propiedades de recursos
channelpara reflejar la siguiente información:- El valor de la propiedad
brandingSettings.channel.descriptiontiene una longitud máxima de 1,000 caracteres. - La propiedad
brandingSettings.channel.featuredChannelsTitletiene una longitud máxima de 30 caracteres. - La propiedad
brandingSettings.channel.featuredChannelsUrls[]ahora puede mostrar hasta 100 canales. - Si se establece, el valor de la propiedad
brandingSettings.channel.unsubscribedTrailerdebe especificar el ID de video de YouTube de un video público o no listado que sea propiedad del propietario del canal.
- El valor de la propiedad
-
Ahora, el método
channels.updateadmite actualizaciones de la propiedadinvideoPromotion.items[].promotedByContentOwner. Esa propiedad indica si se mostrará el nombre del propietario del contenido cuando se muestre la promoción. Solo se puede establecer si la solicitud a la API que establece el valor de la propiedad se realiza en nombre del propietario del contenido con el parámetroonBehalfOfContentOwner. -
Los métodos
playlistItems.listyplaylistItems.insertahora admiten el parámetroonBehalfOfContentOwner, que ya se admite en varios otros métodos. -
La propiedad
contentDetails.contentRating.acbRatingahora puede especificar una clasificación del Australian Classification Board (ACB) para películas o de la Australian Communications and Media Authority (ACMA) para programas de televisión infantiles. -
Las nuevas propiedades
contentDetails.contentRating.catvRatingycontentDetails.contentRating.catvfrRatingidentifican las clasificaciones que recibió un video según el Canadian TV Classification System y el sistema de clasificación en francés de la Régie du cinéma, que se usa en Quebec, respectivamente. -
La nueva propiedad
snippet.assignabledel recursovideoCategoryindica si se pueden asociar videos actualizados o videos subidos recientemente con esa categoría de video. -
Se agregaron muestras de código para los siguientes métodos:
activities.insert(Go)channelBanners.insert(Python)channels.update(Python)playlistItems.list(Go)search.list(Go)thumbnails.set(Java)videos.insert(Go)
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 destacar el contenido de transmisiones en vivo:
La nueva propiedad
snippet.liveBroadcastContenten 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 sonupcoming,activeynone.-
La nueva propiedad
snippet.liveBroadcastContentdel recursovideoindica si el video es una transmisión en vivo activa o próxima. En la siguiente lista, se explican los valores posibles de la propiedad:upcoming: El video es una transmisión en vivo que aún no comenzó.active: El video es una transmisión en vivo en curso.none: El video no es una transmisión en vivo activa o próxima. Este será el valor de la propiedad para las transmisiones completadas que aún se pueden ver en YouTube.
-
La nueva propiedad
liveStreamingDetailsdel recursovideoes un objeto que contiene metadatos sobre una transmisión de video en vivo. Para recuperar estos metadatos, incluyeliveStreamingDetailsen la lista de partes de recursos del valor del parámetropart. Los metadatos incluyen las siguientes propiedades nuevas:liveStreamingDetails.actualStartTime: Es la hora en la que realmente comenzó la transmisión. (Este valor estará presente una vez que el estado de la transmisión seaactive).liveStreamingDetails.actualEndTime: Es la hora en la que finalizó la transmisión. (Este valor estará presente una vez que finalice la transmisión).liveStreamingDetails.scheduledStartTime: Es la hora programada para el inicio de la transmisión.liveStreamingDetails.scheduledEndTime: Es la hora en la que se programó que finalice la transmisión. Si el valor de la propiedad está vacío o la propiedad no está presente, la transmisión se programará para que continúe de forma indefinida.liveStreamingDetails.concurrentViewers: Es la cantidad de personas que miran la transmisión en vivo.
Para recuperar estos metadatos, incluye
liveStreamingDetailsen el valor del parámetropartcuando llames a los métodosvideos.list,videos.insertovideos.update.
Ten en cuenta que el 1 de octubre de 2013 se lanzaron otras dos funciones para identificar el contenido de transmisiones en vivo: el parámetro
eventTypedel métodosearch.listy la propiedadsnippet.liveBroadcastContentdel resultado de la búsqueda. -
-
El método
videos.insertahora admite el parámetronotifySubscribers, que indica si YouTube debe enviar una notificación sobre el video nuevo a los usuarios que se suscriban al canal del video. El valor predeterminado del parámetro esTrue, lo que indica que se notificará a los suscriptores sobre los videos que se suban recientemente. Sin embargo, es posible que el propietario de un canal que sube muchos videos prefiera establecer el valor enFalsepara evitar enviar una notificación 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.updatepara incluir las propiedadesinvideoPromotion.items[].customMessageyinvideoPromotion.items[].websiteUrl. Además, se modificó la lista para identificar las propiedades debrandingSettingsque se pueden modificar. Estas propiedades debrandingSettingsya 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.updateyplaylists.deleteahora admiten el parámetroonBehalfOfContentOwner, que ya se admite para varios otros métodos. -
El método
playlists.insertahora admite el parámetroonBehalfOfContentOwnerChannel, que ya se admite para varios otros métodos. -
La propiedad
contentDetails.contentRating.tvpgRatingdel recursovideoahora admite un valor depg14, que corresponde a una calificación deTV-14. -
Se corrigió la definición de la propiedad
snippet.liveBroadcastContent, que forma parte de los resultados de la búsqueda, para reflejar quelivees un valor de propiedad válido, peroactiveno lo es. -
La propiedad
contentDetails.contentRating.mibacRatingdel recursovideoahora 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[].promotedByContentOwnerdel recursochannelindica si se mostrará el nombre del propietario del contenido cuando se muestre la promoción. Este campo solo se puede establecer si la solicitud a la API que establece el valor se realiza en nombre del propietario del contenido. Consulta el parámetroonBehalfOfContentOwnerpara obtener más información.
1 de octubre de 2013
Esta actualización incluye los siguientes cambios:
-
El nuevo objeto
auditDetailsdel recursochannelcontiene datos del canal que una red multicanal (MCN) evaluaría para determinar si acepta o rechaza un canal en particular. Ten en cuenta que cualquier solicitud a la API que recupere esta parte del recurso debe proporcionar un token de autorización que contenga el alcancehttps://www.googleapis.com/auth/youtubepartner-channel-audit. Además, se debe revocar cualquier token que use ese alcance 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.typedel recursochannelahora admite un valor derecentUpload, 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 configuran los datos de la promoción en el video. Sin embargo, puedes promocionar el video subido más recientemente de otro canal configurando el valor de la nueva propiedad
invideoPromotion.items[].id.recentlyUploadedByen el ID de ese canal. -
El recurso
channelcontiene tres propiedades nuevas:brandingSettings.image.bannerTvLowImageUrl,brandingSettings.image.bannerTvMediumImageUrlybrandingSettings.image.bannerTvHighImageUrl, que especifican las URLs de las imágenes de banner que se muestran en las páginas de canales de las aplicaciones para televisores. -
La nueva propiedad
snippet.liveBroadcastContenten 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 sonupcoming,activeynone.- En el caso de un recurso
video, un valor deupcomingindica que el video es una transmisión en vivo que aún no comenzó, mientras que un valor deactiveindica que el video es una transmisión en vivo en curso. - En el caso de un recurso
channel, un valor deupcomingindica que el canal tiene una transmisión programada que aún no comenzó, mientras que un valor deaciveindica que el canal tiene una transmisión en vivo en curso.
- En el caso de un recurso
-
En el recurso
watermark, la propiedadtargetChannelIdcambió de un objeto a una cadena. En lugar de contener una propiedad secundaria que especifique el ID del canal de YouTube al que se vincula la imagen de la marca de agua, la propiedadtargetChannelIdahora especifica ese valor. Por lo tanto, se quitó la propiedadtargetChannelId.valuedel recurso. -
El método
thumbnails.setahora admite el parámetroonBehalfOfContentOwner, que ya se admite para varios otros métodos. -
El método
search.listahora admite el parámetroeventType, que restringe una búsqueda para que solo muestre eventos de transmisión activos, próximos o completados. -
La nueva propiedad
contentDetails.contentRating.mibacRatingidentifica la clasificación que recibió un video del Ministero dei Beni e delle Attività Culturali e del Turismo de Italia. -
Ahora la API admite los siguientes errores:
Tipo de error Detalle del error Descripción badRequestinvalidImageEl método thumbnails.setdevuelve este error si el contenido de la imagen proporcionada no es válido.forbiddenvideoRatingDisabledEl método videos.ratedevuelve este error si el propietario del video que se está calificando inhabilitó las calificaciones para ese video.
27 de agosto de 2013
Esta actualización incluye los siguientes cambios:
-
El nuevo recurso
watermarkidentifica una imagen que se muestra durante la reproducción de los videos de un canal especificado. 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.setsube y establece la imagen de marca de agua de un canal. El métodowatermarks.unsetborra la imagen de marca de agua de un canal.En la documentación de errores, se describen los mensajes de error que admite la API específicamente para los métodos
watermarks.setywatermarks.unset. -
La nueva propiedad
statistics.hiddenSubscriberCountdel recursochannelcontiene un valor booleano que indica si se oculta la cantidad de suscriptores del canal. Por lo tanto, el valor de la propiedad esfalsesi el recuento de suscriptores del canal es visible públicamente. -
El método
playlists.listahora admite los parámetrosonBehalfOfContentOwneryonBehalfOfContentOwnerChannel. Ambos parámetros ya son compatibles con varios otros métodos. -
El método
videos.listahora admite el parámetroregionCode, 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ámetrochart. El valor del parámetro es un código de país ISO 3166-1 alpha-2. -
El objeto
error documentationdescribe el siguiente error común nuevo de solicitud, que podría ocurrir para varios métodos de API:Tipo de error Detalle del error Descripción forbiddeninsufficientPermissionsLos 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
invideoPromotiondel recursochanneltiene las siguientes propiedades nuevas y actualizadas:-
La API ahora admite la capacidad de especificar un sitio web como elemento promocionado. Para ello, establece el valor de la propiedad
invideoPromotion.items[].id.typeenwebsitey usa la nueva propiedadinvideoPromotion.items[].id.websiteUrlpara especificar la URL. También puedes usar la nueva propiedadinvideoPromotion.items[].customMessagepara definir un mensaje personalizado que se mostrará para 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 sobre los sitios web asociados y los sitios de comercios para obtener más información sobre cómo habilitar vínculos en tu contenido.
Si agregas vínculos promocionales, aceptas que no se usarán para redireccionar el tráfico a sitios no autorizados y que cumplirán 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 tiempo para mostrar los elementos promocionados durante la reproducción de video:
-
El objeto
invideoPromotion.timingse movió ainvideoPromotion.items[].timing. Este objeto ahora te permite personalizar los datos de sincronización de cada elemento promocionado en la listainvideoPromotion.items[]. -
El nuevo objeto
invideoPromotion.defaultTimingespecifica la configuración de tiempo predeterminada para tu promoción. Estos parámetros de configuración definen cuándo se mostrará un elemento promocionado durante la reproducción de uno de los videos de tu canal. Puedes anular la sincronización predeterminada de cualquier elemento promocionado con el objetoinvideoPromotion.items[].timing. -
La nueva propiedad
invideoPromotion.items[].timing.durationMsespecifica la cantidad de tiempo, en milisegundos, durante la que se debe mostrar la promoción. El objetoinvideoPromotion.defaultTimingtambién contiene un campodurationMsque especifica la cantidad predeterminada de tiempo que se mostrará el elemento promocionado.
-
-
Las propiedades
invideoPromotion.items[].typeyinvideoPromotion.items[].videoIdse movieron al objetoinvideoPromotion.items[].id.
-
-
El método
subscriptions.listahora admite los parámetrosonBehalfOfContentOwneryonBehalfOfContentOwnerChannel. Ambos parámetros ya son compatibles con varios otros métodos. -
En la respuesta de la API a una solicitud de
thumbnails.set, el valor de la propiedadkindcambió deyoutube#thumbnailListResponseayoutube#thumbnailSetResponse. -
Se agregaron muestras de código para los siguientes métodos:
channels.update(Java, Python)playlists.insert(.NET, PHP)subscriptions.insert(PHP, Python)thumbnails.set(PHP, Python)videos.insert(PHP)videos.list(PHP)videos.rate(Python)videos.update(Java, PHP y Python)
Ten en cuenta que también se quitó el ejemplo de Python para el método
playlistItems.insert, ya que la funcionalidad que demostraba ahora la controla el métodovideos.rate. -
El
error documentationdescribe el siguiente error nuevo del contexto de la solicitud, que podría ocurrir para cualquier método de la API que admita el parámetro de solicitudmine:Tipo de error Detalle del error Descripción badRequestinvalidMineEl parámetro mineno se puede usar en solicitudes en las que el usuario autenticado sea socio de YouTube. Debes quitar el parámetromine, autenticarte como usuario de YouTube quitando el parámetroonBehalfOfContentOwnero actuar como uno de los canales del socio proporcionando el parámetroonBehalfOfContentOwnerChannelsi está disponible para el método llamado.
8 de agosto de 2013
Esta actualización incluye los siguientes cambios:
-
Se actualizó la sección Uso de la cuota de la guía Primeros pasos con la API de YouTube Data para reflejar un cambio en el costo de cuota de la carga de videos, que pasó de aproximadamente 16,000 unidades a aproximadamente 1,600 unidades.
30 de julio de 2013
Esta actualización incluye los siguientes cambios:
-
En un recurso
channelBanner, el valor de la propiedadkindcambió deyoutube#channelBannerInsertResponseayoutube#channelBannerResource. Este recurso se devuelve en respuesta a una solicitudchannelBanners.insert. -
La nueva propiedad
brandingSettings.channel.profileColordel recursochannelespecifica un color destacado que complementa el contenido del canal. El valor de la propiedad es un signo de libra (#) seguido de una cadena hexadecimal de seis caracteres, como#2793e6. -
La API ahora permite especificar si una suscripción es para todas las actividades de un canal o solo para las cargas nuevas. La nueva propiedad
contentDetails.activityTypedel recursosubscriptionidentifica los tipos de actividades sobre las que se notificará al suscriptor. Los valores de propiedad válidos sonallyuploads. -
El método
videos.listadmite parámetros nuevos para recuperar un ranking de los videos más populares en YouTube:- El parámetro
chartidentifica el gráfico que deseas recuperar. Por el momento, el único valor admitido esmostPopular. Ten en cuenta que el parámetrochartes un parámetro de filtro, lo que significa que no se puede usar en la misma solicitud que otros parámetros de filtro (idymyRating). - El parámetro
videoCategoryIdidentifica 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ámetrochart. De forma predeterminada, los gráficos no se restringen a una categoría en particular.
- El parámetro
-
La nueva propiedad
topicDetails.relevantTopicIds[]del recursovideoproporciona una lista de IDs de temas de Freebase que son relevantes para el video o su contenido. Es posible que los temas se mencionen o aparezcan en el video. -
Se cambió el nombre de la propiedad
recordingDetails.location.elevationdel recursovideoarecordingDetails.location.altitudey el de su propiedadfileDetails.recordingLocation.location.elevationafileDetails.recordingLocation.location.altitude. -
El objeto
contentDetails.contentRatingdel recursovideoespecifica las clasificaciones que recibió un video según varios esquemas de clasificación, incluidas las clasificaciones de la MPAA, las clasificaciones de TVPG, etcétera. Para cada sistema de clasificación, la API ahora admite un valor de clasificación que indica que el video no se clasificó. Ten en cuenta que, en el caso de las clasificaciones de la MPAA, se suele usar la clasificación "sin clasificación" para identificar las versiones sin cortes de las películas cuya versión con cortes sí recibió una clasificación oficial. -
La nueva propiedad
contentDetails.contentRating.ytRatingdel recursovideoidentifica el contenido con restricción de edad. El valor de la propiedad seráytAgeRestrictedsi YouTube identificó que el video contiene contenido inapropiado para usuarios menores de 18 años. Si la propiedad no está presente o si el valor de la propiedad está vacío, significa que el contenido no se identificó como restringido por edad. -
El parámetro
mySubscribersdel métodochannels.listdejó de estar disponible. Usa el métodosubscriptions.listy su parámetromySubscriberspara recuperar una lista de suscriptores al canal del usuario autenticado. -
Los métodos
channelBanners.insert,channels.update,videos.getRatingyvideos.rateahora admiten el parámetroonBehalfOfContentOwner. Ese parámetro indica que el usuario autenticado está actuando en nombre del propietario del contenido especificado en el valor del parámetro. -
Se actualizó la documentación del método
channels.updatepara reflejar el hecho de que ese método se puede usar para actualizar el objetobrandingSettingsdel recursochannely sus propiedades secundarias. La documentación también incluye la lista actualizada de propiedades que puedes establecer para el objetoinvideoPromotiondel recursochannel. -
El objeto
error documentationdescribe los siguientes errores nuevos:Tipo de error Detalle del error Descripción forbiddenaccountDelegationForbiddenEste error no es específico de un método de API en particular. Indica que el usuario autenticado no está autorizado a actuar en nombre de la Cuenta de Google especificada. forbiddenauthenticatedUserAccountClosedEste error no es específico de un método de API en particular. Indica que se cerró la cuenta de YouTube del usuario autenticado. Si el usuario actúa en nombre de otra Cuenta de Google, este error indicaría que esa otra cuenta está cerrada. forbiddenauthenticatedUserAccountSuspendedEste error no es específico de un método de API en particular. Indica que se suspendió la cuenta de YouTube del usuario autenticado. Si el usuario actúa en nombre de otra Cuenta de Google, este error indicaría que esa otra cuenta está suspendida. forbiddenauthenticatedUserNotChannelEste 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 a la solicitud de la API. Si la solicitud está autorizada y usa el parámetro onBehalfOfContentOwner, también debes establecer el parámetroonBehalfOfContentOwnerChannel.forbiddencmsUserAccountNotFoundEste 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. notFoundcontentOwnerAccountNotFoundEste error no es específico de un método de API en particular. No se encontró la cuenta del propietario del contenido especificada. badRequestinvalidPartEste error no es específico de un método de API en particular. El parámetro partde la solicitud especifica partes que no se pueden escribir al mismo tiempo.badRequestvideoChartNotFoundEl método videos.listdevuelve este error cuando la solicitud especifica un gráfico de video no disponible o no admitido.notFoundvideoNotFoundEl método videos.updatedevuelve este error para indicar que no se encontró el video que intentas actualizar. Verifica el valor de la propiedadiden 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
forUsernamedel métodochannels.listte permite recuperar información sobre un canal especificando su nombre de usuario de YouTube. -
El método
activities.listahora admite el parámetroregionCode, 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 playlist 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étodosplaylists.insertoplaylists.update. -
El parámetro
onBehalfOfContentOwner, que antes se admitía para los métodoschannels.listysearch.list, ahora también se admite para los métodosvideos.insert,videos.updateyvideos.delete. Ten en cuenta que, cuando se usa este parámetro en una llamada al métodovideos.insert, la solicitud también debe especificar un valor para el nuevo parámetroonBehalfOfContentOwnerChannel, que identifica el canal al que se agregará el video. El canal debe estar vinculado al propietario del contenido que especifica el parámetroonBehalfOfContentOwner.El parámetro indica que las credenciales de autorización de la solicitud identifican a un usuario del 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á destinado a los socios de contenido que poseen y administran muchos canales de YouTube diferentes. El parámetro permite que esos socios se autentiquen una vez y obtengan acceso a todos sus datos de canales y videos, sin tener que proporcionar credenciales de autenticación para cada canal individual.
Específicamente en relación con esta versión, 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 objeto
error documentationdescribe los siguientes errores nuevos:Tipo de error Detalle del error Descripción forbiddeninsufficientCapabilitiesEste error no es específico de un método de API en particular. Indica que el usuario del CMS que llama a la API no tiene permisos suficientes para realizar la operación solicitada. Este error se asocia con el uso del parámetro onBehalfOfContentOwner, que es compatible con varios métodos de la API.unauthorizedauthorizationRequiredEl método activities.listdevuelve este error cuando la solicitud usa el parámetrohome, pero no está autorizada correctamente. -
En el recurso
channels, se quitó la propiedadinvideoPromotion.channelIdporque el ID del canal ya se especifica con la propiedadiddel recurso. -
En la nueva guía Cómo trabajar con IDs de canales, se explica cómo la API usa los IDs de canales. 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
defaulto que se basan en la idea de que cada canal de YouTube tiene un nombre de usuario único, lo que ya no es así.
22 de mayo de 2013
Esta actualización incluye los siguientes cambios:
-
El nuevo método
channelBanners.insertte permite subir una imagen de banner que luego se puede establecer como la imagen de banner de un canal con la nueva propiedadbrandingSettings.image.bannerExternalUrldel recursochannel. -
Se actualizó la documentación del método
channels.updatepara incluir las propiedades que se pueden modificar cuando se llama al método. -
En la documentación del recurso
video, ya no se incluyeunspecifiedcomo un valor de propiedad válido para las propiedadessuggestions.processingErrors[],suggestions.processingHints[],suggestions.processingWarnings[]ysuggestions.editorSuggestions[]. -
El parámetro
maxResultsdel métodovideos.listahora tiene un valor predeterminado de5. -
El objeto
error documentationahora enumera los errores de los métodoschannelBanners.insertysubscriptions.list. También se enumeran varios errores nuevos para el métodochannels.update.
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 que enumera 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:
-
YouTube ya no identifica elementos y servicios experimentales de la API. En cambio, ahora se ofrece una lista de las API de YouTube que están sujetas a la política de baja.
8 de mayo de 2013
Esta actualización incluye los siguientes cambios:
-
Los recursos de canales ahora admiten el objeto
inVideoPromotion, que encapsula información sobre una campaña promocional asociada al canal. Un canal puede usar una campaña promocional en el video para mostrar imágenes en miniatura de un video promocionado dentro del reproductor de video durante la reproducción de los videos del canal.Puedes recuperar estos datos si incluyes
invideoPromotionen el valor del parámetroparten una solicitudchannels.list. -
El nuevo método
channels.updatese puede usar para actualizar los datos de la campaña promocional en el video de un canal. Ten en cuenta que el método solo admite actualizaciones en la parteinvideoPromotiondel recursochannely aún no admite actualizaciones en otras partes de ese recurso.
2 de mayo de 2013
Esta actualización incluye los siguientes cambios:
-
Los recursos de canales 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 los datos del fragmento del canal del suscriptor. -
La API ahora admite el método
videos.getRating, que recupera las calificaciones que el usuario autenticado otorgó a una lista de uno o más videos. -
El nuevo parámetro
myRatingdel métodovideos.listte permite recuperar una lista de los videos que el usuario autenticado calificó con una calificación delikeodislike.Ahora, tanto el parámetro
myRatingcomo el parámetroidse 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ámetroidera obligatorio para este método).El método devuelve un error
forbiddenpara las solicitudes que intentan recuperar información de clasificación de videos, pero no están debidamente autorizadas para hacerlo. -
Con la introducción del parámetro
myRating, también se actualizó el métodovideos.listpara admitir la paginación. Sin embargo, ten en cuenta que los parámetros de paginación solo se admiten para las solicitudes que usan el parámetromyRating. (No se admiten los parámetros ni la información de paginación para las solicitudes que usan el parámetroid).-
El parámetro
maxResultsespecifica la cantidad máxima de videos que la API puede devolver en el conjunto de resultados, y el parámetropageTokenidentifica una página específica en el conjunto de resultados que deseas recuperar. -
El recurso
youtube#videoListResponse, que se devuelve en respuesta a una solicitudvideos.list, ahora contiene el objetopageInfo, que incluye detalles como la cantidad total de resultados y la cantidad de resultados incluidos en el conjunto de resultados actual. El recursoyoutube#videoListResponsetambién puede incluir propiedadesnextPageTokenyprevPageToken, cada una de las cuales proporciona un token que se podría usar para recuperar una página específica en el conjunto de resultados.
-
-
El método
videos.insertadmite los siguientes parámetros nuevos:autoLevels: Establece el valor de este parámetro entruepara indicarle a YouTube que mejore automáticamente la iluminación y el color del video.stabilize: Establece el valor de este parámetro entruepara indicarle a YouTube que ajuste el video quitando la inestabilidad que se produce por los movimientos de la cámara.
-
Se agregó la propiedad
channelTitleasnippetpara 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 se suscribió.
-
Se agregaron muestras de código para los siguientes métodos:
activities.insert(Ruby)playlistItems.list(.NET)search.list(.NET)subscriptions.insert(Java, Ruby)videos.insert(.NET, Ruby)
-
El nuevo parámetro
mySubscribersdel métodosubscriptions.listte 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 está diseñada para reemplazar el parámetro
mySubscribersque actualmente se admite para el métodochannels.list. Ese parámetro dejará de estar disponible. -
En un recurso
video, el valor de la propiedadunspecifiedya no es un valor 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 esunexpectedParameter. -
Se actualizó el error que devuelve el método
playlistItems.insertcuando la playlist ya contiene la cantidad máxima de elementos permitidos. Ahora, el error se informa como un error deforbidden, y el motivo del error esplaylistContainsMaximumNumberOfVideos.
19 de abril de 2013
Esta actualización incluye los siguientes cambios:
-
El nuevo método
videos.ratepermite que un usuario establezca una calificaciónlikeodislikeen un video, o bien que quite una calificación de un video.También se actualizó la documentación de errores para enumerar los errores que la API podría devolver en respuesta a una llamada al método
videos.rate. -
Ahora, las imágenes en miniatura se identifican en la documentación de la API como un recurso independiente, y el nuevo método
thumbnails.sette permite subir una miniatura de video personalizada a YouTube y establecerla para un video.También se actualizó la documentación de errores para enumerar los errores que la API podría devolver en respuesta a una llamada al método
thumbnails.set.Ten en cuenta que este cambio no afecta realmente 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 ahora la documentación enumera los nombres de los diferentes tamaños de miniatura que puede devolver la API.
-
La parte
brandingSettingsnueva del recursochannelidentifica la configuración, el texto y las imágenes de la página del canal y las páginas de reproducción de videos del canal. -
El recurso
playlistItemcontiene las siguientes propiedades nuevas:-
El nuevo objeto
statusencapsula información de estado sobre el elemento de la playlist, y la propiedadstatus.privacyStatusidentifica el estado de privacidad del elemento de la playlist.
-
-
El recurso
videocontiene las siguientes propiedades nuevas:-
La propiedad
status.publicStatsViewableindica si las estadísticas extendidas del video en la página de reproducción se pueden ver públicamente. De forma predeterminada, esas estadísticas se pueden ver, y las estadísticas como el recuento de vistas y las calificaciones de un video seguirán siendo visibles públicamente, incluso si el valor de esta propiedad se establece enfalse. Puedes establecer el valor de esta propiedad cuando llames al métodovideos.insertovideos.update. -
El objeto
contentDetails.contentRatingencapsula las calificaciones que recibió el video en varios esquemas de calificación. En la siguiente lista, se identifican los sistemas de clasificación admitidos y se proporciona un vínculo a la propiedad asociada con cada sistema de clasificación. Las definiciones de propiedad identifican los valores de calificación admitidos para cada sistema.País Sistema de clasificación Propiedad United StatesAsociación Cinematográfica de Estados Unidos (MPAA) contentDetails.contentRating.mpaaRatingUnited StatesPautas de televisión para los padres contentDetails.contentRating.tvpgRatingAustraliaAustralian Classification Board (ACB) contentDetails.contentRating.acbRatingBrazilDepartamento de Justiça, Classificação, Qualificação e Títulos contentDetails.contentRating.djctqRatingCanadaSistema Canadiense de Clasificación de Videos (CHVRS) contentDetails.contentRating.chvrsRatingFranceCentre national du cinéma et de l'image animée (Ministerio de Cultura de Francia) contentDetails.contentRating.fmocRatingGermanyFreiwillige Selbstkontrolle der Filmwirtschaft (FSK) contentDetails.contentRating.fskRatingGreat BritainBritish Board of Film Classification (BBFC) contentDetails.contentRating.bbfcRatingIndiaCentral Board of Film Certification (CBFC) contentDetails.contentRating.cbfcRatingJapan映倫管理委員会 (EIRIN) contentDetails.contentRating.eirinRatingKorea영상물등급위원회 (KMRB) contentDetails.contentRating.kmrbRatingMexicoDirección General de Radio, Televisión y Cinematografía (RTC) contentDetails.contentRating.rtcRatingNew ZealandOffice of Film and Literature Classification contentDetails.contentRating.oflcRatingRussiaRegistro Nacional de Películas de la Federación Rusa contentDetails.contentRating.russiaRatingSpainInstituto de la Cinematografía y de las Artes Audiovisuales (ICAA)contentDetails.contentRating.icaaRating
-
-
Se actualizó la documentación del método
playlistItems.updatepara reflejar el hecho de que la propiedadsnippet.resourceIdse debe especificar en el recurso que se envía como cuerpo de la solicitud. -
El método
search.listahora admite la siguiente funcionalidad:-
El nuevo parámetro
forMinerestringe la búsqueda para recuperar solo los videos del usuario autenticado. -
El parámetro
orderahora 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
safeSearchindica si los resultados de la búsqueda deben incluir contenido restringido.
-
-
El método
videos.insertadmite varios errores nuevos, que se enumeran en la siguiente tabla:Tipo de error Detalle del error Descripción badRequestinvalidCategoryIdLa propiedad snippet.categoryIdespecifica un ID de categoría no válido. Usa el métodovideoCategories.listpara recuperar las categorías admitidas.badRequestinvalidRecordingDetailsEl objeto metadataespecifica detalles de grabación no válidos.badRequestinvalidVideoGameRatingLos metadatos de la solicitud especifican una calificación de videojuego no válida. badRequestinvalidVideoMetadataLos metadatos de la solicitud no son válidos. -
Se quitó el parámetro
onBehalfOfContentOwnerde la lista de parámetros admitidos para los métodosvideos.updateyvideos.delete.
12 de marzo de 2013
Esta actualización incluye los siguientes cambios:
-
Se agregó la propiedad
channelTitleasnippetpara los siguientes recursos: -
El método
search.listadmite los siguientes parámetros nuevos:-
El parámetro
channelTypete permite restringir una búsqueda de canales para recuperar todos los canales o solo los programas. -
El parámetro
videoTypete permite restringir una búsqueda de videos para recuperar todos los videos o solo películas o episodios de programas.
-
-
Se actualizó la definición de la parte
recordingDetailsdel recursovideopara indicar que el objeto solo se devolverá para un video si se configuraron los datos de ubicación geográfica o la hora de grabación del video. -
El método
playlistItems.updateahora devuelve un errorinvalidSnippet, que se muestra si la solicitud a la API no especifica un fragmento válido. -
Varios métodos de la API admiten parámetros nuevos que están destinados exclusivamente a los socios de contenido de YouTube. Entre los socios de contenido de YouTube, se incluyen estudios de cine y televisión, sellos discográficos y otros creadores de contenido que ponen su contenido a disposición en YouTube.
-
El parámetro
onBehalfOfContentOwnerindica que las credenciales de autorización de la solicitud identifican a un usuario del 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á destinado a los socios de contenido que poseen y administran muchos canales de YouTube diferentes. El parámetro permite que esos socios se autentiquen una vez y obtengan acceso a todos sus datos de canales y videos, sin tener que proporcionar credenciales de autenticación para cada canal individual.
Los métodos
channels.list,search.list,videos.delete,videos.listyvideos.updateadmiten este parámetro. -
El parámetro
managedByMe, que admite el métodochannels.list, indica a la API que muestre todos los canales que pertenecen al propietario del contenido que especifica el parámetroonBehalfOfContentOwner. -
El parámetro
forContentOwner, que admite el métodosearch.list, indica a la API que restrinja los resultados de la búsqueda para que solo incluyan los recursos que son propiedad del propietario del contenido que especifica el parámetroonBehalfOfContentOwner.
-
25 de febrero de 2013
Esta actualización incluye los siguientes cambios:
-
La API admite varias partes y propiedades nuevas para los recursos
video:-
Las nuevas partes
fileDetails,processingDetailsysuggestionsproporcionan información a los propietarios de los videos sobre los videos que subieron. Estos datos son muy útiles en las aplicaciones que permiten subir videos y se incluyen los siguientes:- Estado y progreso del procesamiento
- Errores o problemas que se producen durante el procesamiento de un video
- Disponibilidad de imágenes en miniatura
- Sugerencias para mejorar la calidad de los videos o los metadatos
- 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 en la documentación del recurso
video, se definen todas las propiedades que contiene cada parte.-
El objeto
fileDetailscontiene información sobre el archivo de video que se subió a YouTube, incluida la resolución, la duración, los códecs de audio y video, las tasas de bits de transmisión y mucho más. -
El objeto
processingProgresscontiene información sobre el progreso de YouTube en el procesamiento del archivo de video subido. 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 que se sondee y, de esta manera, el usuario que sube el video pueda hacer un seguimiento del progreso que YouTube ha logrado en el procesamiento del archivo de video subido.
-
El objeto
suggestionscontiene sugerencias que identifican oportunidades para mejorar la calidad del video o los metadatos del video subido.
-
La parte
contentDetailscontiene cuatro propiedades nuevas. Estas propiedades se pueden recuperar con solicitudes no autenticadas.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 los subtítulos están disponibles para el video.licensedContent: Indica si el video contiene contenido que reclamó un socio de contenido de YouTube.
-
La parte
statuscontiene dos propiedades nuevas. Los propietarios de los videos pueden establecer valores para ambas propiedades cuando insertan o actualizan un video. Estas propiedades también se pueden recuperar con solicitudes no autenticadas.embeddable: Indica si el video se puede incorporar en otro sitio web.license: Especifica la licencia del video. Los valores válidos soncreativeCommonyyoutube.
-
-
Se actualizó la definición del parámetro
partpara los métodosvideos.list,videos.insertyvideos.updatede modo que se incluyan las partes agregadas recientemente que se describieron anteriormente, así como la parterecordingDetails, que se había omitido por error. -
La nueva propiedad
contentDetails.googlePlusUserIddel recursochannelespecifica el ID del perfil de Google+ asociado al 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,subscriptionyvideo. -
El objeto
playlistItems.listahora admite el parámetrovideoId, que se puede usar junto con el parámetroplaylistIdpara recuperar solo el elemento de la playlist que representa el video especificado.La API devuelve un error
notFoundsi no se encuentra en la playlist el video que identifica el parámetro. -
La documentación de errores describe un nuevo error
forbidden, que indica que una solicitud no está autorizada correctamente para la acción solicitada. -
Se quitó la propiedad
snippet.channelIddel recursochannel. La propiedadiddel recurso proporciona el mismo valor.
30 de enero de 2013
Esta actualización incluye los siguientes cambios:
-
En la nueva página error, se enumeran los errores que puede mostrar la API. 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:
-
Ahora hay muestras de código disponibles para los métodos y lenguajes que se muestran en la siguiente lista:
activities.insert: JavaplaylistItems.insert: PythonplaylistItems.list: Java, JavaScript, PHP, Python y Rubyplaylists.insert: Java, JavaScript y Pythonsearch.list: Java, JavaScript, Python y Rubyvideos.insert: Java
-
Ahora, un recurso
activitypuede informar una acciónchannelItem, que se produce cuando YouTube agrega un video a un canal de YouTube generado automáticamente. (El algoritmo de YouTube identifica los temas que tienen una presencia significativa en el sitio web de YouTube y genera automáticamente canales para esos temas). -
Se actualizaron los siguientes parámetros de
search.list:- El parámetro
qya no se designa como filtro, lo que significa que… - Se cambió el nombre del parámetro
relatedToVideoarelatedToVideoId. - El parámetro
publishedse reemplazó por dos parámetros nuevos,publishedAfterypublishedBefore, que se describen a continuación.
- El parámetro
-
El método
search.listadmite los siguientes parámetros nuevos:Nombre del parámetro Valor Descripción channelIdstringDevuelve los recursos creados por el canal especificado. publishedAfterdatetimeDevuelve los recursos creados después de la fecha y hora especificadas. publishedBeforedatetimeDevuelve los recursos creados antes de la fecha y hora especificadas. regionCodestringDevuelve recursos para el país especificado. videoCategoryIdstringFiltrar los resultados de la búsqueda de videos para incluir solo los videos asociados a la categoría de video especificada videoEmbeddablestringFiltra los resultados de la búsqueda de videos para incluir solo los videos que se pueden reproducir en un reproductor incorporado en una página web. Establece el valor del parámetro en truepara recuperar solo los videos que se pueden incorporar.videoSyndicatedstringFiltra los resultados de la búsqueda de videos para incluir solo los videos que se pueden reproducir fuera de YouTube.com. Establece el valor del parámetro en truepara recuperar solo los videos sindicados. -
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 activitycontentDetails.playlistItem.playlistItemIdstringEs el ID del elemento de la playlist que YouTube asignó para identificar de forma única el elemento en la playlist. activitycontentDetails.channelItemobjectEs un objeto que contiene información sobre un recurso que se agregó a un canal. Esta propiedad solo está presente si snippet.typeeschannelItem.activitycontentDetails.channelItem.resourceIdobjectEs un objeto que identifica el recurso que se agregó al canal. Al igual que otras propiedades de resourceId, contiene una propiedad dekindque especifica el tipo de recurso, como video o playlist. También contiene exactamente una de varias propiedades (videoId,playlistId, etcétera) que especifica el ID que identifica de forma única ese recurso.channelstatusobjectEste objeto encapsula información sobre el estado de privacidad del canal. channelstatus.privacyStatusstringEs el estado de privacidad del canal. Los valores válidos son privateypublic.playlistcontentDetailsobjectEste objeto contiene metadatos sobre el contenido de la playlist. playlistcontentDetails.itemCountunsigned integerNúmero de videos en la lista de reproducción. playlistplayerobjectEste objeto contiene información que usarías para reproducir la playlist en un reproductor incorporado. playlistplayer.embedHtmlstringUna etiqueta <iframe>que incorpora un reproductor de video que reproduce la playlist.videorecordingDetailsobjectEste objeto encapsula la información que identifica o describe el lugar y la hora en que se grabó el video. videorecordingDetails.locationobjectEste objeto contiene información de ubicación geográfica asociada con el video. videorecordingDetails.location.latitudedoubleEs la latitud en grados. videorecordingDetails.location.longitudedoubleEs la longitud en grados. videorecordingDetails.location.elevationdoubleAltitud sobre la Tierra, en metros. videorecordingDetails.locationDescriptionstringEs una descripción de texto de la ubicación en la que se grabó el video. videorecordingDetails.recordingDatedatetimeFecha y hora en que se grabó el video. El valor se especifica en formato ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ). -
La documentación de varios métodos de la API ahora identifica las propiedades que se deben especificar en el cuerpo de la solicitud o que se actualizan según los valores del cuerpo de la solicitud. En la siguiente tabla, se enumeran esos métodos, así como las propiedades obligatorias o modificables.
Nota: Es posible que la documentación de otros métodos ya incluya una lista de las propiedades obligatorias y modificables.
Método Propiedades activities.insertPropiedades obligatorias: snippet.description
snippet.descriptioncontentDetails.bulletin.resourceId
playlists.updatePropiedades obligatorias: id
playlistItems.updatePropiedades obligatorias: id
videos.updatePropiedades obligatorias: id
-
La API ya no informa un error
playlistAlreadyExistssi intentas crear o actualizar una playlist que tendría el mismo título que una playlist que ya existe en el mismo canal. -
Varios métodos de la API admiten nuevos tipos de errores. En la siguiente tabla, se identifican el método y los errores recién admitidos:
Método Tipo de error Detalle del error Descripción guideCategories.listnotFoundnotFoundNo se puede encontrar la categoría de guía identificada por el parámetro id. Usa el método guideCategories.list para recuperar una lista de valores válidos.playlistItems.deleteforbiddenplaylistItemsNotAccessibleLa solicitud no está debidamente autorizada para eliminar el elemento de la lista de reproducción especificada. videoCategories.listnotFoundvideoCategoryNotFoundNo se puede encontrar la categoría de video identificada por el parámetro id. Usa el método videoCategories.list para recuperar una lista de valores válidos.