API de Tendencias YouTube

Obtén videos "más populares" para cualquier país o categoría en tiempo real.

¿Qué puedes hacer?
Obtén el feed de tendencias diario

Extrae la lista oficial "Más Popular" directamente de YouTube.

Filtra por cualquier país

Especifica cualquier código de país ISO-3166 (US, GB, IN...).

Opciones de categoría y límite

Filtra por Música (10), Gaming (20) y más, máx. 50 resultados.

Probar en vivo
99.9 % Disponibilidad
80.9ms Respuesta
20 req/s
0.01 Créditos / solicitud

Trending List


POST https://api.yeb.to/v1/youtube/trending
ParámetroTipoReq.Descripción
api_key string Your API key
country string opc. ISO-3166 code (default US)
category int opc. YouTube category ID (e.g. 10 = Music)
limit int opc. 1-50 results (default 20)

Ejemplo

curl -X POST https://api.yeb.to/v1/youtube/trending \
  -H "Content-Type: application/json" \
  -d '{
  "api_key":  "YOUR_KEY",
  "country":  "GB",
  "category": "10",
  "limit":    25
}'

Ejemplo de respuesta

{
  "data": {
    "country":     "GB",
    "category":    "10",
    "cnt_results": 1,
    "videos": [
      {
        "id":           "abc123XYZ",
        "title":        "Top UK Hit 2025",
        "description":  "Official video…",
        "channelId":    "UCmusic",
        "channelTitle": "HitsNow",
        "publishedAt":  "2025-07-06T17:01:02Z",
        "categoryId":   "10",
        "durationISO":  "PT3M12S",
        "viewCount":    4500000,
        "likeCount":    128000,
        "commentCount": 9800,
        "thumb":        "https://i.ytimg.com/vi/abc123XYZ/hqdefault.jpg"
      }
    ]
  }
}
{"error":"Invalid country code. Use ISO 3166-1 alpha-2 format.","code":400}

Códigos de respuesta

CódigoDescripción
200 SuccessSolicitud procesada correctamente.
400 Bad RequestValidación de entrada fallida.
401 UnauthorizedClave API faltante o incorrecta.
403 ForbiddenClave inactiva o no permitida.
429 Rate LimitDemasiadas solicitudes.
500 Server ErrorError inesperado.

Trending List

youtube/trending 0.0100 credits

Parameters

API Key
body · string · required
Country
body · string
Category
body · string
Limit
body · string

Code Samples


                
                
                
            

Response

Status:
Headers

                
Body

                

API de Tendencias YouTube — Practical Guide

A hands-on guide to building “what’s hot now” experiences with YouTube Trending: when to use it, the few parameters that matter, how to read the payload, and how to turn results into cards, playlists, and editorial blocks.

#What YouTube Trending solves

youtube/trending gives a live snapshot of the most popular videos per country, optionally focused on a specific YouTube category (e.g., 10 = Music). Use it for landing pages, auto-curated playlists, “Top Today” widgets, and weekly editorial picks.

#Endpoint & when to use it

  • Best for: Country dashboards, “New & Hot” rows, music-only charts (category=10).
  • Output: Compact list of videos with id, title, channelId/channelTitle, publishedAt, categoryId, durationISO, counts, and a ready-to-use thumb.
  • Tip: Cache per country for 5–10 minutes to reduce feed jitter and API costs.

#Quick start

# GB Music — Top 25
curl -X POST "https://api.yeb.to/v1/youtube/trending" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: <YOUR_API_KEY>" \
  -d '{
    "country":  "GB",
    "category": "10",
    "limit":    25
  }'
# US default — Mixed categories, 12 items
curl -X POST "https://api.yeb.to/v1/youtube/trending" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: <YOUR_API_KEY>" \
  -d '{ "limit": 12 }'

#Parameters that actually matter

ParamTypeRequiredPractical guidance
api_key string Yes Your API credential. Keep it server-side or use a signed token at the edge.
country string No ISO-3166-1 alpha-2 (e.g., US, GB, DE). Defaults to US. Match your site’s locale.
category int No YouTube category ID. Use 10 for Music. See the YouTube ID reference.
limit int No 1–50 (default 20). Trim to your UI grid (e.g., 8, 12, 24).

#Reading & acting on responses

{
  "data": {
    "country": "GB",
    "category": "10",
    "cnt_results": 1,
    "videos": [
      {
        "id":           "abc123XYZ",
        "title":        "Top UK Hit 2025",
        "description":  "Official video…",
        "channelId":    "UCmusic",
        "channelTitle": "HitsNow",
        "publishedAt":  "2025-07-06T17:01:02Z",
        "categoryId":   "10",
        "durationISO":  "PT3M12S",
        "viewCount":    4500000,
        "likeCount":    128000,
        "commentCount": 9800,
        "thumb":        "https://i.ytimg.com/vi/abc123XYZ/hqdefault.jpg"
      }
    ]
  }
}
  • id — YouTube Video ID. Build links: https://www.youtube.com/watch?v={id}.
  • channelId — Channel ID for badges or deep links: https://www.youtube.com/channel/{channelId}.
  • thumb — Ready “high” thumbnail. Derive sizes via i.ytimg.com/vi/{id}/….
  • durationISO — ISO-8601 (PT#M#S). Convert to mm:ss labels for cards.
  • publishedAt — UTC timestamp. Show “NEW” if < 72h old.
  • viewCount — Snapshot for social proof; trending is volatile, don’t over-sort by it alone.
PHP helper — ISO-8601 duration → mm:ss
$int = new DateInterval('PT3M12S'); $sec = $int->h*3600 + $int->i*60 + $int->s; $label = sprintf('%02d:%02d', floor($sec/60), $sec%60);

#Practical recipes

  • Music-only grid: Call with {"country":"DE","category":10,"limit":12}. Render thumb, title, channel, mm:ss, and a small views chip.
  • Weekly editorial: Cache by country for 7 days, but refresh every hour to catch breakouts; pin manually selected IDs on top.
  • Playlist builder: De-dupe by channelId to avoid stacking multiple uploads from the same channel.
  • Edge caching: Key on country + category; TTL 300–600s keeps UIs stable without feeling stale.

#YouTube IDs you’ll work with

FieldWhat it isHow to use
id (Video ID) 11-char video identifier Watch URL: https://www.youtube.com/watch?v={id} · Thumbs: https://i.ytimg.com/vi/{id}/hqdefault.jpg
channelId Channel identifier Channel URL: https://www.youtube.com/channel/{channelId}
categoryId Numeric category See common IDs below; 10 = Music

#Common YouTube Category IDs

IDCategory
1Film & Animation
2Autos & Vehicles
10Music
17Sports
20Gaming
22People & Blogs
23Comedy
24Entertainment
25News & Politics
26Howto & Style
27Education
28Science & Technology
29Nonprofits & Activism

Availability of categories can vary by region; 10 is universally safe for music use-cases.

#Errors & troubleshooting

  • 400 "Invalid country code. Use ISO 3166-1 alpha-2 format." — Two uppercase letters (e.g., US, GB).
  • 400 "Invalid category. Must be a numeric YouTube category ID." — Provide an integer like 10.
  • 502 "YouTube API error: …" — Upstream hiccup. Retry with exponential backoff (1s → 2s → 4s) and respect quotas.

#API Changelog (youtube/trending)

2026-03-07
Field guidance added. Practical notes for id, channelId, durationISO, and thumb; added YouTube ID reference section.
2026-03-07
Category docs. Clarified category=10 for Music and listed common Category IDs for quick selection.
2026-02-21
Unified wrapper. Standardized the top-level payload to {"data":{...}} and added cnt_results.
2026-02-14
Error surface. Consistent 400 validation (country, category) and 502 for upstream YouTube failures.

Preguntas frecuentes

YouTube actualiza la lista aproximadamente cada 15 minutos; la API muestra lo que está en vivo al momento de la solicitud.

Son numéricos: 10 = Música, 17 = Deportes, 20 = Gaming, 24 = Entretenimiento, etc. Consulta la documentación de YouTube Data API para la tabla completa.

Sí. Cada solicitud, incluso las que resultan en errores, consume créditos. Tus créditos están vinculados al número de solicitudes, independientemente del éxito o fracaso. Si el error se debe claramente a un problema de la plataforma de nuestro lado, restauraremos los créditos afectados (sin reembolsos en efectivo).

Contáctanos en [email protected]. Tomamos los comentarios en serio—si tu reporte de error o solicitud de función es significativo, podemos corregir o mejorar la API rápidamente y otorgarte 50 créditos gratuitos como agradecimiento.

Depende de la API y a veces incluso del endpoint. Algunos endpoints usan datos de fuentes externas, que pueden tener límites más estrictos. También imponemos límites para prevenir abusos y mantener nuestra plataforma estable. Consulta la documentación para el límite específico de cada endpoint.

Operamos con un sistema de créditos. Los créditos son unidades prepagadas y no reembolsables que gastas en llamadas API y herramientas. Los créditos se consumen FIFO (los más antiguos primero) y son válidos por 12 meses desde la fecha de compra. El panel muestra cada fecha de compra y su vencimiento.

Sí. Todos los créditos comprados (incluidos saldos fraccionarios) son válidos por 12 meses desde la compra. Los créditos no utilizados expiran automáticamente y se eliminan permanentemente al final del período de validez. Los créditos expirados no pueden restaurarse ni convertirse en efectivo u otro valor. Regla transitoria: los créditos comprados antes del 22 de sep. de 2025 se tratan como comprados el 22 de sep. de 2025 y expiran el 22 de sep. de 2026 (a menos que se indicara un vencimiento anterior en la compra).

Sí—dentro de su período de validez. Los créditos no utilizados permanecen disponibles y se transfieren de mes a mes hasta que expiran 12 meses después de la compra.

Los créditos son no reembolsables. Compra solo lo que necesites—siempre puedes recargar después. Si un error de la plataforma causa un cargo fallido, podemos restaurar los créditos afectados tras investigación. Sin reembolsos en efectivo.

Los precios se establecen en créditos, no en dólares. Cada endpoint tiene su propio costo—consulta la insignia "Créditos / solicitud" arriba. Siempre sabrás exactamente cuánto gastas.
← Volver a las APIs