Skip to content

Discover Creators

Search YouTube for rising creators by niche. Results are real-time — no stale database.

GET /api/discover

Query Parameters

ParameterRequiredDefaultDescription
nicheYesNiche to search (e.g. gaming, fitness, finance, tech, music)
min_followersNo0Minimum subscriber count
max_followersNononeMaximum subscriber count
sortNoopportunity_scoreSort by: opportunity_score, subscribers, views, niche_relevance
alert_levelNononeFilter by alert level: HIGH_GROWTH, RISING, WATCH, STABLE
orderNoviewCountYouTube search order: viewCount (default), relevance, date
offsetNo0Number of results to skip
limitNo20Max results (1-100)

Supported Niches

gaming · fitness · finance · tech · entertainment · education · music · beauty · cooking · travel · sports

Any other string works as a custom niche search (e.g. minecraft, podcasting, asmr).

Response

json
{
  "status": "ok",
  "niche": "gaming",
  "filters": {
    "min_followers": 50000,
    "max_followers": "none",
    "sort": "opportunity_score",
    "alert_level": null,
    "order": "viewCount"
  },
  "pagination": {
    "total": 19,
    "offset": 0,
    "limit": 5,
    "has_more": true
  },
  "count": 5,
  "creators": [
    {
      "channel_id": "UC_iQdD0AKPC44T7Hir_i8hA",
      "title": "Fail Game Armaan",
      "handle": "@failgamearmaan",
      "avatar": "https://yt3.ggpht.com/...",
      "current_subscribers": 85200,
      "total_views": 5039560,
      "video_count": 90,
      "niche_relevance": 29,
      "growth_score": 55,
      "opportunity_score": 47,
      "alert_level": "WATCH",
      "has_history": false
    }
  ]
}

Fields

FieldDescription
opportunity_scoreCombined score (0-100). Blends growth potential (70%) + niche relevance (30%). Higher = more growth momentum in the right niche.
growth_scoreRaw growth momentum score based on views/subs ratio, subs/video ratio, channel size, and account age.
niche_relevanceHow well the channel matches the niche (0-100). Based on title + description keyword matches.
alert_levelHIGH_GROWTH (75+), RISING (50+), WATCH (25+), STABLE (<25). Based on opportunity_score.
has_historytrue if we have snapshot history from our daily cron. When true, scores use real velocity data instead of heuristics.

About HIGH_GROWTH

HIGH_GROWTH alert level requires real snapshot history from our daily cron job. Channels without history (has_history: false) will show RISING, WATCH, or STABLE based on heuristic signals. To get HIGH_GROWTH results, track creators via POST /api/track and wait for cron snapshots to build up.

How Scoring Works

When has_history: false (most results), scores are heuristic:

  1. Views/Subs ratio — High = viral content potential (max 35 pts)

    • 10,000 views per sub = 35 pts

    • 5,000 views per sub = 30 pts

    • 3,000 views per sub = 25 pts

    • 2,000 views per sub = 20 pts

    • 1,000 views per sub = 12 pts

  2. Subs/Video ratio — Each video pulls subscribers (max 30 pts)

    • 15,000 subs per video = 30 pts

    • 10,000 subs per video = 25 pts

    • 5,000 subs per video = 22 pts

    • 2,000 subs per video = 18 pts

    • 1,000 subs per video = 12 pts

  3. Channel size sweet spot — 10K-500K subs = prime rising zone (max 25 pts)

    • 10K-100K subs = 25 pts (prime rising zone)
    • 100K-500K subs = 18 pts (growth stage)
    • 1K-10K subs = 12 pts (early stage)
    • 500K+ subs = 5 pts (already big, less upside)
  4. Video output — Active but not oversaturated (max 15 pts)

    • 50-500 videos = 15 pts (established but still growing)
    • 500+ videos = 10 pts (prolific)
    • 10-50 videos = 7 pts (getting started)
  5. Account age — Young channels growing fast get bonus points (max 10 pts)

    • <1 year old with 10K+ subs = 10 pts
    • <2 years old with 50K+ subs = 8 pts
    • ❤️ years old with 100K+ subs = 5 pts

When has_history: true, real velocity data from daily snapshots replaces the heuristic scores.

Sorting

By Opportunity Score (default)

Returns creators ranked by combined growth + niche relevance score. Best for finding the most promising creators overall.

bash
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=gaming&min_followers=50000&sort=opportunity_score"

By Subscribers

Returns the largest channels first. Good for finding established creators in a niche.

bash
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=fitness&min_followers=50000&sort=subscribers"

By Views

Returns the most-viewed channels first. Good for finding channels with high engagement.

bash
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=tech&min_followers=10000&sort=views"

By Niche Relevance

Returns channels with the best keyword matches first. Good for finding highly specialized creators.

bash
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=cooking&sort=niche_relevance"

YouTube Search Order

The order parameter controls how YouTube sorts search results before our scoring:

OrderDescriptionBest For
viewCount (default)Channels with most views firstFinding channels with proven engagement
relevanceMost relevant to the search queryBroad discovery, more results
dateMost recently created channelsFinding brand-new channels

About order=date

order=date returns the most recently created channels, which are often brand new with 0-100 subscribers. Use order=viewCount (default) or order=relevance for more useful results.

Filtering by Alert Level

Filter results to only show creators at a specific growth stage:

bash
# Only RISING channels (opportunity_score 50+)
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=fitness&alert_level=RISING&min_followers=10000"

# Only WATCH channels (opportunity_score 25-49)
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=gaming&alert_level=WATCH&min_followers=50000"

Pagination

Use offset and limit to paginate through results:

bash
# Page 1 (results 1-10)
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=gaming&min_followers=50000&limit=10&offset=0"

# Page 2 (results 11-20)
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=gaming&min_followers=50000&limit=10&offset=10"

# Page 3 (results 21-30)
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=gaming&min_followers=50000&limit=10&offset=20"

The response includes pagination info:

json
{
  "pagination": {
    "total": 19,
    "offset": 0,
    "limit": 10,
    "has_more": true
  }
}

When has_more: false, you've reached the end.

Real-World Examples

Rising gaming creators for a brand deal

bash
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=gaming&min_followers=50000&max_followers=500000&sort=opportunity_score&limit=10"

Small finance creators (10K-100K subs), sorted by subscribers

bash
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=finance&min_followers=10000&max_followers=100000&sort=subscribers"

Top fitness channels sorted by views

bash
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=fitness&sort=views&min_followers=10000&limit=10"

Beauty niche, highly relevant channels first

bash
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=beauty&sort=niche_relevance&min_followers=50000&limit=10"

Custom niche (e.g. "minecraft")

bash
curl -H "X-API-Key: YOUR_KEY" \
  "https://beta.pushapi.xyz/api/discover?niche=minecraft&min_followers=50000&max_followers=300000&limit=10"

Cost

Each call costs 1 request from your daily quota. Internally it makes ~2 YouTube API calls (search + batch channel stats).

Rising creator detection API.