API Tendances YouTube

Récupérez les vidéos « les plus populaires » pour n'importe quel pays ou catégorie en temps réel.

Que pouvez-vous faire ?
Obtenez le flux tendances quotidien

Tirez la liste officielle « Les plus populaires » directement de YouTube.

Filtrez par pays

Spécifiez n'importe quel code pays ISO-3166 (US, GB, IN...).

Options de catégorie et de limite

Affinez par Musique (10), Gaming (20) et plus, max 50 résultats.

Essayer en direct
99.9 % Disponibilité
80.9ms Réponse
20 req/s
0.01 Crédits / requête

Trending List


POST https://api.yeb.to/v1/youtube/trending
ParamètreTypeReq.Description
api_key string oui Your API key
country string opt. ISO-3166 code (default US)
category int opt. YouTube category ID (e.g. 10 = Music)
limit int opt. 1-50 results (default 20)

Exemple

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
}'

Exemple de réponse

{
  "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}

Codes de réponse

CodeDescription
200 SuccessRequête traitée avec succès.
400 Bad RequestValidation d'entrée échouée.
401 UnauthorizedClé API manquante ou incorrecte.
403 ForbiddenClé inactive ou non autorisée.
429 Rate LimitTrop de requêtes.
500 Server ErrorErreur inattendue.

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 Tendances 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.

Questions fréquemment posées

YouTube actualise la liste environ toutes les 15 minutes ; l'API affiche ce qui est en direct au moment de la requête.

Ils sont numériques : 10 = Musique, 17 = Sport, 20 = Gaming, 24 = Divertissement, etc. Consultez la documentation YouTube Data API pour le tableau complet.

Oui. Chaque requête, même celles qui entraînent des erreurs, consomme des crédits. Vos crédits sont liés au nombre de requêtes, indépendamment du succès ou de l'échec. Si l'erreur est clairement due à un problème de plateforme de notre côté, nous restaurerons les crédits affectés (pas de remboursement en espèces).

Contactez-nous à [email protected]. Nous prenons les retours au sérieux—si votre rapport de bug ou demande de fonctionnalité est pertinent, nous pouvons corriger ou améliorer l'API rapidement et vous accorder 50 crédits gratuits en guise de remerciement.

Cela dépend de l'API et parfois même du endpoint. Certains endpoints utilisent des données de sources externes, qui peuvent avoir des limites plus strictes. Nous imposons également des limites pour prévenir les abus et maintenir la stabilité de notre plateforme. Consultez la documentation pour la limite spécifique de chaque endpoint.

Nous fonctionnons avec un système de crédits. Les crédits sont des unités prépayées et non remboursables que vous dépensez pour les appels API et les outils. Les crédits sont consommés en FIFO (les plus anciens en premier) et sont valables 12 mois à compter de la date d'achat. Le tableau de bord affiche chaque date d'achat et son expiration.

Oui. Tous les crédits achetés (y compris les soldes fractionnaires) sont valables 12 mois à compter de l'achat. Les crédits inutilisés expirent automatiquement et sont définitivement supprimés à la fin de la période de validité. Les crédits expirés ne peuvent être restaurés ni convertis en espèces ou autre valeur. Règle transitoire : les crédits achetés avant le 22 sept. 2025 sont traités comme achetés le 22 sept. 2025 et expirent le 22 sept. 2026 (sauf si une expiration antérieure a été indiquée lors de l'achat).

Oui—dans leur période de validité. Les crédits inutilisés restent disponibles et sont reportés de mois en mois jusqu'à leur expiration 12 mois après l'achat.

Les crédits sont non remboursables. N'achetez que ce dont vous avez besoin—vous pouvez toujours recharger plus tard. Si une erreur de plateforme cause un échec de facturation, nous pouvons restaurer les crédits affectés après enquête. Pas de remboursement en espèces.

Les prix sont fixés en crédits, pas en dollars. Chaque endpoint a son propre coût—voir le badge « Crédits / requête » ci-dessus. Vous saurez toujours exactement ce que vous dépensez.
← Retour aux APIs