Vidéo · YouTube
API de données vidéo YouTube
L’API de données vidéo YouTube vous fournit des données YouTube en direct au moment où vous les demandez, sous une forme propre et structurée – prêtes pour votre application, un tableur ou un assistant IA. Sans scraping, rien à maintenir.
100 requêtes gratuites chaque mois · sans carte bancaire · une clé API pour toutes les plateformes
L’essentiel
Mis à jour le
Chaque page de lecture YouTube contient un riche bloc de métadonnées publiques : titre et description, la chaîne qui publie la vidéo, les totaux de vues, de likes et de commentaires, la date de publication, la durée, la catégorie, les mots-clés, les miniatures et les pistes de sous-titres disponibles. L'API de données vidéo YouTube d'everydata.io renvoie ce bloc sous forme d'un objet JSON unique pour n'importe quel ID ou URL de vidéo. Pas d'écran de consentement OAuth, pas de projet Google Cloud, pas de quota quotidien d'unités à rationner – juste un GET HTTPS avec votre clé everydata.io, servi depuis la page en direct.
- Plateforme
- YouTube
- Endpoint principal
- /youtube-video-details
- Quota par appel
- 1 requête
- Offre gratuite
- 100 req. / moispuis à partir de 30 € / mois
Des données YouTube prêtes à l’emploi
GET /ytb/youtube-video-details accepte id sous forme d'ID de vidéo seul (kJQP7kiw5Fk), de lien court youtu.be ou d'URL de lecture complète : vous pouvez lui passer tout ce que vos utilisateurs collent. La réponse contient videoId, title, description, channelId, channelName, channelUrl et subscriberCountText pour l'auteur, puis les chiffres d'engagement en entiers : viewCount, likeCount et commentCount, avec likeCountText pour la valeur arrondie affichée. publishedAt et uploadDate sont des horodatages ISO avec décalage, duration est en secondes avec durationText au format m:ss, et category, keywords et tags reprennent la classification choisie par l'auteur.
Des indicateurs booléens décrivent l'état de la vidéo : isLive, isLiveNow, isFamilySafe, isUnlisted, isPrivate, isShortsEligible et allowRatings. availableCountries liste les pays où la lecture est autorisée, embedUrl est prêt pour une iframe, et captions[] contient chaque piste de sous-titres avec languageCode, name et isTranslatable.
- ID de vidéo, lien youtu.be ou URL de lecture complète acceptés dans le même paramètre id
- viewCount, likeCount, commentCount en entiers simples, plus les variantes lisibles *Text
- publishedAt, uploadDate, duration, durationText, category, keywords[] et tags[]
- Contexte de la chaîne inclus : channelId, channelName, channelUrl, channelThumbnails, subscriberCountText
- Indicateurs d'état : isLive, isLiveNow, isFamilySafe, isUnlisted, isPrivate, isShortsEligible, allowRatings
- thumbnails[] en plusieurs tailles, embedUrl, availableCountries[] et captions[] avec langue et possibilité de traduction
- Endpoints complémentaires pour la recherche par mot-clé, les vidéos associées et les tendances – tous paginés par curseur, sans clé API Google
Ce que les équipes construisent avec
Reporting d'influence et de campagnes
Récupérez à intervalles réguliers viewCount, likeCount et commentCount des vidéos sponsorisées et tracez leur courbe depuis la date de publication – sans budget d'unités à répartir entre vos clients.
Surveillance de contenus et brand safety
Résolvez chaque URL soumise par un utilisateur, enregistrez title, channelName, category et isFamilySafe, et signalez les vidéos qui deviennent ensuite privées ou non répertoriées grâce à la réponse 404.
Suivi de la recherche et des tendances
Lancez chaque jour le même mot-clé dans youtube-search-videos avec différentes valeurs de countryCode et mesurez quelles chaînes et quels formats dominent les résultats sur chaque marché.
Aperçus de liens et intégrations
Transformez un lien YouTube collé en fiche avec miniature, titre, chaîne et durée, et intégrez la vidéo avec embedUrl – le cas d'usage oEmbed classique, sans identifiants Google.
Exemple de requête et de réponse
Un seul appel renvoie tout le bloc de la page de lecture ; l'exemple utilise Despacito, les compteurs sont donc réels et élevés. Pour la découverte, GET /ytb/youtube-search-videos?query=lofi+hip+hop renvoie items[] avec videoId, title, channelName, viewCount, duration et isLive, plus un cursor ; /ytb/youtube-video-related-contents liste les recommandations de la colonne latérale d'une vidéo, et /ytb/youtube-trending-videos renvoie l'onglet Tendances.
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"Réponse (abrégée)
{
"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 vaut PAGE_FOUND lorsque la page de lecture s'est affichée. Une vidéo privée, supprimée ou bloquée dans la région produit un 404 avec un corps vnd.error plutôt qu'un objet à moitié rempli : vérifiez le statut HTTP avant d'analyser la réponse. viewCount est le chiffre exact de la page au moment de la requête ; YouTube le met lui-même à jour avec un léger décalage, deux appels à quelques minutes d'intervalle peuvent donc renvoyer le même nombre pour les vidéos peu actives.
Les réponses de recherche et de contenus associés sont paginées avec une chaîne cursor opaque. Passez la valeur cursor d'une réponse dans le paramètre cursor de l'appel suivant pour continuer ; omettez-la pour la première page. Chaque page compte pour une requête. Dans la recherche, estimatedResults est le total approximatif de YouTube, pas une garantie du nombre de pages parcourables.
languageCode et countryCode (par défaut en, US) influencent ce que YouTube affiche : titres localisés lorsque l'auteur a fourni des traductions, et liste des tendances du pays. Chaque requête est en temps réel ; les endpoints YouTube n'ont pas de cacheTtl, car les compteurs évoluent en permanence.
Endpoints associés
Détails de la vidéo. Métadonnées d'une vidéo par id ou URL.
Rechercher des vidéos. Recherche par mot-clé avec pagination par curseur.
Vidéos associées. Contenus associés à une vidéo.
Tendances. Vidéos en tendance.
Payez à la requête, toutes les plateformes incluses
Un appel de détails vidéo, une page de recherche ou une page de contenus associés correspond à une requête. Comme il n'y a pas de quota Google distinct, la seule limite est votre offre everydata.io : les 100 requêtes mensuelles de l'offre gratuite couvrent un test d'intégration ; l'offre Starter (5 000 requêtes, 30 €) suit environ 160 vidéos par jour ; l'offre Production (50 000, 80 €) permet un reporting à l'échelle d'une agence sur des centaines de chaînes. Les erreurs 5xx côté source ne sont jamais décomptées.
- Free
- 100 req. / mois
- Starter
- 5 000 req. · 30 €
- Production
- 50 000 req. · 80 €
- Business
- 300 000 req. · 300 €
API de données vidéo YouTube : questions fréquentes
Ai-je besoin d'une clé API Google ou d'un jeton OAuth ?
Non. Les requêtes sont authentifiées uniquement avec votre clé everydata.io. Les données proviennent des pages publiques de lecture, de recherche et de chaînes de YouTube : aucun projet Google Cloud, aucun flux de consentement, aucun quota quotidien de 10 000 unités.
Quels formats d'id sont acceptés ?
L'ID de vidéo à 11 caractères, un lien court youtu.be, une URL complète www.youtube.com/watch?v= et les URL de Shorts. Le même paramètre id les gère tous ; la réponse contient toujours le videoId normalisé.
Puis-je obtenir le nombre de dislikes ou les statistiques de durée de visionnage ?
Non. YouTube a supprimé l'affichage public des dislikes en 2021 et la durée de visionnage n'est visible que par le propriétaire de la chaîne dans YouTube Studio. L'API renvoie les compteurs publics : viewCount, likeCount et commentCount.
Comment paginer les résultats de recherche ?
Chaque réponse de recherche contient une chaîne cursor. Renvoyez-la dans le paramètre cursor pour récupérer la page suivante, et continuez jusqu'à ce qu'aucun cursor ne soit renvoyé. Les pages contiennent généralement une vingtaine d'éléments, y compris des lives signalés par isLive.
Les vidéos soumises à une limite d'âge ou privées sont-elles prises en charge ?
Les vidéos privées renvoient 404, car leur page n'est pas publique. Les vidéos soumises à une limite d'âge renvoient les métadonnées que YouTube expose sans connexion ; lorsque la page exige une connexion, l'appel renvoie également 404.
Cas d’usage associés
Consultez votre première vidéo
Créez un compte gratuit et appelez GET /ytb/youtube-video-details?id=kJQP7kiw5Fk – toutes les métadonnées dans une seule réponse JSON, 100 requêtes par mois offertes.