20 % de descuento en todos los planes de pago con el código

Vídeo · YouTube

API de datos de vídeos de YouTube

La API de datos de vídeos de YouTube te da datos de YouTube en tiempo real en el momento en que los pides, limpios y estructurados, listos para tu propia app, una hoja de cálculo o un asistente de IA. Sin scraping, nada que mantener.

100 solicitudes gratis al mes · sin tarjeta de crédito · una clave de API para todas las plataformas

Datos clave

Actualizado el

Cada página de reproducción de YouTube contiene un bloque completo de metadatos públicos: título y descripción, el canal que lo publica, totales de visualizaciones, me gusta y comentarios, fecha de publicación, duración, categoría, etiquetas, miniaturas y las pistas de subtítulos disponibles. La API de datos de vídeos de YouTube de everydata.io devuelve ese bloque como un único objeto JSON para cualquier ID o URL de vídeo. Sin pantalla de consentimiento OAuth, sin proyecto de Google Cloud y sin cuota diaria de unidades que racionar: solo un GET por HTTPS con tu clave de everydata.io, respondido desde la página en directo.

Plataforma
YouTube
Endpoint principal
/youtube-video-details
Cuota por llamada
1 solicitud
Plan gratuito
100 solicitudes / mesdespués, desde 30 € / mes
Lo que obtienes

Datos de YouTube, listos para usar

GET /ytb/youtube-video-details acepta id como ID de vídeo simple (kJQP7kiw5Fk), enlace corto youtu.be o URL completa de reproducción, así que puedes pasarle lo que peguen tus usuarios. La respuesta incluye videoId, title, description, channelId, channelName, channelUrl y subscriberCountText del autor, y después las cifras de interacción como enteros: viewCount, likeCount y commentCount, con likeCountText para el valor redondeado que se muestra. publishedAt y uploadDate son marcas de tiempo ISO con desfase horario, duration está en segundos con durationText como m:ss, y category, keywords y tags contienen la clasificación que eligió el autor.

Indicadores booleanos describen el estado del vídeo: isLive, isLiveNow, isFamilySafe, isUnlisted, isPrivate, isShortsEligible y allowRatings. availableCountries lista dónde se permite la reproducción, embedUrl está listo para un iframe y captions[] contiene cada pista de subtítulos con languageCode, name e isTranslatable.

  • ID de vídeo, enlace youtu.be o URL completa de reproducción en el mismo parámetro id
  • viewCount, likeCount y commentCount como enteros simples, más variantes *Text legibles
  • publishedAt, uploadDate, duration, durationText, category, keywords[] y tags[]
  • Contexto del canal incluido: channelId, channelName, channelUrl, channelThumbnails, subscriberCountText
  • Indicadores de estado: isLive, isLiveNow, isFamilySafe, isUnlisted, isPrivate, isShortsEligible, allowRatings
  • thumbnails[] en varios tamaños, embedUrl, availableCountries[] y captions[] con idioma y posibilidad de traducción
  • Endpoints complementarios para búsqueda por palabra clave, vídeos relacionados y tendencias, todos con paginación por cursor y sin clave de API de Google
Casos de uso

Lo que los equipos construyen con esto

Informes de influencers y campañas

Obtén de forma programada viewCount, likeCount y commentCount de los vídeos patrocinados y representa la curva desde la fecha de publicación, sin un presupuesto de unidades que repartir entre clientes.

Monitorización de contenido y brand safety

Resuelve cada URL que envía un usuario, guarda title, channelName, category e isFamilySafe y marca los vídeos que después pasan a privados u ocultos gracias a la respuesta 404.

Seguimiento de búsquedas y tendencias

Pasa cada día la misma palabra clave por youtube-search-videos con distintos valores de countryCode y mide qué canales y formatos dominan los resultados en cada mercado.

Vistas previas de enlaces e inserciones

Convierte un enlace de YouTube pegado en una tarjeta con miniatura, título, canal y duración, e insértalo con embedUrl: el caso de uso clásico de oEmbed sin credenciales de Google.

Cómo funciona

Solicitud y respuesta de ejemplo

Una sola llamada devuelve todo el bloque de la página de reproducción; el ejemplo usa Despacito, así que los contadores son reales y enormes. Para descubrir vídeos, GET /ytb/youtube-search-videos?query=lofi+hip+hop devuelve items[] con videoId, title, channelName, viewCount, duration e isLive, además de un cursor; /ytb/youtube-video-related-contents lista las recomendaciones laterales de un vídeo y /ytb/youtube-trending-videos devuelve la pestaña de tendencias.

GET /ytb/youtube-video-details

curl "https://api.everydata.io/ytb/youtube-video-details?id=kJQP7kiw5Fk&languageCode=en&countryCode=US" \
  -H "x-api-key: YOUR_API_KEY"

Respuesta (abreviada)

200 OK · application/json
{
  "responseStatus": "PAGE_FOUND",
  "responseMessage": "Page successfully found!",
  "videoId": "kJQP7kiw5Fk",
  "title": "Luis Fonsi - Despacito ft. Daddy Yankee",
  "channelId": "UCLp8RBhQHu9wSsq62j_Md6A",
  "channelName": "LuisFonsiVEVO",
  "subscriberCountText": "32.5M subscribers",
  "viewCount": 9125159593,
  "likeCount": 56673581,
  "likeCountText": "56M",
  "commentCount": 4300000,
  "publishedAt": "2017-01-12T21:00:02-08:00",
  "duration": 282,
  "durationText": "4:42",
  "category": "Music",
  "keywords": [
    "Luis",
    "Fonsi"
  ],
  "tags": [
    "Calypso",
    "Despacito"
  ],
  "thumbnails": [
    {
      "url": "https://i.ytimg.com/vi/kJQP7kiw5Fk/hqdefault.jpg",
      "width": 168,
      "height": 94
    }
  ],
  "isLive": false,
  "isFamilySafe": true,
  "embedUrl": "https://www.youtube.com/embed/kJQP7kiw5Fk"
}

responseStatus es PAGE_FOUND cuando la página de reproducción se ha cargado. Un vídeo privado, eliminado o bloqueado por región produce un 404 con cuerpo vnd.error en lugar de un objeto a medio rellenar, así que comprueba el estado HTTP antes de analizar. viewCount es la cifra exacta de la página en el momento de la solicitud; YouTube la actualiza con un pequeño retraso, así que dos llamadas separadas por unos minutos pueden devolver el mismo número en vídeos con poco movimiento.

Las respuestas de búsqueda y de contenido relacionado se paginan con una cadena cursor opaca. Pasa el valor cursor de una respuesta como parámetro cursor de la siguiente llamada para continuar; omítelo para la primera página. Cada página es una solicitud. estimatedResults en la búsqueda es el total aproximado de YouTube, no una garantía de cuántas páginas podrás recorrer.

languageCode y countryCode (por defecto en y US) influyen en lo que muestra YouTube: títulos localizados cuando el autor aportó traducciones y la lista de tendencias del país. Cada solicitud es en tiempo real; los endpoints de YouTube no tienen cacheTtl porque los contadores cambian constantemente.

Endpoints relacionados

GET/ytb/youtube-video-details

Detalles del vídeo. Metadatos de un vídeo por ID o URL.

GET/ytb/youtube-search-videos

Buscar vídeos. Búsqueda por palabra clave con paginación por cursor.

GET/ytb/youtube-video-related-contents

Vídeos relacionados. Contenido relacionado con un vídeo.

GET/ytb/youtube-trending-videos

Tendencias. Vídeos en tendencia.

Referencia completa de la API
Precios

Paga por solicitud, con todas las plataformas incluidas

Una llamada de detalles de vídeo, una página de búsqueda o una página de contenido relacionado equivale a una solicitud. Como no hay una cuota de Google aparte, el único límite es tu plan de everydata.io: las 100 solicitudes al mes del nivel gratuito cubren una prueba de integración; Starter (5000 solicitudes, 30 €) sigue unos 160 vídeos al día; Production (50.000, 80 €) permite informes a escala de agencia para cientos de canales. Los errores 5xx del sitio de origen nunca se descuentan.

Free
100 solicitudes / mes
Starter
5000 solicitudes · 30 €
Production
50.000 solicitudes · 80 €
Business
300.000 solicitudes · 300 €

API de datos de vídeos de YouTube: preguntas frecuentes

¿Necesito una clave de API de Google o un token OAuth?

No. Las solicitudes se autentican solo con tu clave de everydata.io. Los datos proceden de las páginas públicas de reproducción, búsqueda y canales de YouTube, así que no intervienen ni un proyecto de Google Cloud, ni un flujo de consentimiento, ni una cuota diaria de 10.000 unidades.

¿Qué formatos de id se aceptan?

El ID de vídeo de 11 caracteres, un enlace corto youtu.be, una URL completa www.youtube.com/watch?v= y URL de Shorts. El mismo parámetro id los admite todos; la respuesta siempre contiene el videoId normalizado.

¿Puedo obtener el número de «no me gusta» o estadísticas de tiempo de visualización?

No. YouTube eliminó el recuento público de «no me gusta» en 2021, y el tiempo de visualización solo lo ve el propietario del canal en YouTube Studio. La API devuelve los contadores públicos: viewCount, likeCount y commentCount.

¿Cómo recorro las páginas de resultados de búsqueda?

Cada respuesta de búsqueda incluye una cadena cursor. Envíala de vuelta como parámetro cursor para obtener la página siguiente y continúa hasta que no se devuelva cursor. Las páginas suelen tener unos 20 elementos, incluidas las emisiones en directo marcadas con isLive.

¿Se admiten vídeos privados o con restricción de edad?

Los vídeos privados devuelven 404 porque su página no es pública. Los vídeos con restricción de edad devuelven metadatos cuando YouTube los muestra sin iniciar sesión; si la página requiere iniciar sesión, la llamada también devuelve 404.

Relacionados

Casos de uso relacionados

Todos los casos de uso

Consulta tu primer vídeo

Crea una cuenta gratuita y llama a GET /ytb/youtube-video-details?id=kJQP7kiw5Fk: metadatos completos en una respuesta JSON, 100 solicitudes al mes, invitamos nosotros.