YouTube Trending API

Hent "mest populære" videoer for ethvert land eller kategori i sanntid.

Hva kan du gjøre?
Hent daglig trending-feed

Hent den offisielle "Mest populære"-listen direkte fra YouTube.

Filtrer etter ethvert land

Angi hvilken som helst ISO-3166-landkode (US, GB, IN...).

Kategori- og begrensningsalternativer

Begrens til Musikk (10), Gaming (20) og mer, maks 50 resultater.

Prøv live
99.9 % Oppetid
80.9ms Svar
20 req/s
0.01 Kreditter / forespørsel

Trending List


POST https://api.yeb.to/v1/youtube/trending
ParameterTypePåkrevdBeskrivelse
api_key string ja Your API key
country string valgfri ISO-3166 code (default US)
category int valgfri YouTube category ID (e.g. 10 = Music)
limit int valgfri 1-50 results (default 20)

Eksempel

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

Svareksempel

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

Svarkoder

KodeBeskrivelse
200 SuccessForespørsel behandlet OK.
400 Bad RequestInngangsvalidering mislyktes.
401 UnauthorizedManglende / feil API-nøkkel.
403 ForbiddenNøkkel inaktiv eller ikke tillatt.
429 Rate LimitFor mange forespørsler.
500 Server ErrorUventet feil.

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

                

YouTube Trending API — 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.

Ofte stilte spørsmål

YouTube selv oppdaterer listen omtrent hvert 15. minutt; API-en viser det som er live på forespørselstidspunktet.

De er numeriske: 10 = Musikk, 17 = Sport, 20 = Gaming, 24 = Underholdning osv. Se YouTube Data API-dokumentasjonen for den fullstendige tabellen.

Ja. Hver forespørsel, selv de som resulterer i feil, forbruker kreditter. Kredittene dine er knyttet til antall forespørsler, uavhengig av suksess eller feil. Hvis feilen tydelig skyldes et plattformproblem på vår side, gjenoppretter vi de berørte kredittene (ingen kontantrefusjon).

Kontakt oss på [email protected]. Vi tar tilbakemeldinger på alvor—hvis feilrapporten eller funksjonsforespørselen din er meningsfull, kan vi fikse eller forbedre API-et raskt og gi deg 50 gratis kreditter som takk.

Det avhenger av API-et og noen ganger til og med av endepunktet. Noen endepunkter bruker data fra eksterne kilder, som kan ha strengere grenser. Vi håndhever også grenser for å forhindre misbruk og holde plattformen stabil. Sjekk dokumentasjonen for den spesifikke grensen for hvert endepunkt.

Vi opererer med et kredittsystem. Kreditter er forhåndsbetalte, ikke-refunderbare enheter du bruker på API-kall og verktøy. Kreditter forbrukes etter FIFO-prinsippet (eldste først) og er gyldige i 12 måneder fra kjøpsdatoen. Dashbordet viser hver kjøpsdato og dens utløp.

Ja. Alle kjøpte kreditter (inkludert brøkdeler) er gyldige i 12 måneder fra kjøpet. Ubrukte kreditter utløper automatisk og slettes permanent ved slutten av gyldighetsperioden. Utløpte kreditter kan ikke gjenopprettes eller konverteres til kontanter eller annen verdi. Overgangsregel: kreditter kjøpt før 22. sep. 2025 behandles som kjøpt 22. sep. 2025 og utløper 22. sep. 2026 (med mindre en tidligere utløpsdato ble oppgitt ved kjøpet).

Ja—innenfor gyldighetsperioden. Ubrukte kreditter forblir tilgjengelige og overføres fra måned til måned til de utløper 12 måneder etter kjøpet.

Kreditter er ikke-refunderbare. Kjøp bare det du trenger—du kan alltid fylle på senere. Hvis en plattformfeil forårsaker en mislykket belastning, kan vi gjenopprette de berørte kredittene etter undersøkelse. Ingen kontantrefusjon.

Prisene er satt i kreditter, ikke dollar. Hvert endepunkt har sin egen pris—se merket «Kreditter / forespørsel» ovenfor. Du vet alltid nøyaktig hva du bruker.
← Tilbake til API-er