API Docs / Channels

Channels

Endpoints for searching, viewing, and analyzing YouTube channels.

Endpoints

Method Path Description
GET /api/v1/channels/search Search channels by keyword
GET /api/v1/channels/:id Get channel details
GET /api/v1/channels/:id/profile Get AI-generated channel profile
GET /api/v1/channels/:id/videos List channel videos
GET /api/v1/channels/:id/competitors List channel competitors
GET /api/v1/channels/:id/keywords Get channel and audience keywords
GET /api/v1/channels/:id/skool Get Skool community data

Search Channels

GET /api/v1/channels/search

Search for YouTube channels by keyword, subscriber count, or tier.

Parameters

Parameter Type Required Description
q string Yes Search query (matches title or handle)
min_subs integer No Minimum subscriber count
max_subs integer No Maximum subscriber count
tier string No Quality tier filter (see values below)
has_skool string No Set to true to filter channels with Skool communities
sort_by string No Sort field: subscribers (default), views, outliers, skool_mrr
page integer No Page number (default: 1)
per_page integer No Results per page (default: 25, max: 100)

Channel Tiers

Value Description
dormant Fewer than 5 videos or no uploads in the past 12 months — inactive channel
steady Active but modest performance — consistently publishing without breakout growth
rising Gaining momentum with above-average engagement and growing view counts
established 250K+ subscribers and 10M+ total views — a proven player in their niche
viral Producing breakout content with high outlier ratios and strong engagement
mega_viral Exceptional viral performance — consistently generating massive view-to-subscriber ratios
mega_channel 10M+ subscribers — one of YouTube's largest channels

Example Request

curl -X GET "https://tuberalytics.com/api/v1/channels/search?q=ai+automation&min_subs=10000" \
  -H "Authorization: Bearer sk_live_your_api_key"

Example Response

{
  "data": [
    {
      "id": 170,
      "youtube_channel_id": "UCbo-KbSjJDG6JWQ_MTZ_rNA",
      "title": "Nick Saraev",
      "handle": "@nicksaraev",
      "thumbnail_url": "https://yt3.ggpht.com/example",
      "country": "CA",
      "subscriber_count": 336000,
      "view_count": 12741587,
      "video_count": 291,
      "average_views": 42598,
      "quality_classification": "rising",
      "has_skool": true,
      "skool_estimated_mrr": 3864,
      "positive_outliers_count": 30
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total_pages": 3,
    "total_count": 67
  }
}

Get Channel

GET /api/v1/channels/:id

Retrieve full details for a single channel.

Example Request

curl -X GET "https://tuberalytics.com/api/v1/channels/170" \
  -H "Authorization: Bearer sk_live_your_api_key"

Example Response

{
  "data": {
    "id": 170,
    "youtube_channel_id": "UCbo-KbSjJDG6JWQ_MTZ_rNA",
    "title": "Nick Saraev",
    "handle": "@nicksaraev",
    "thumbnail_url": "https://yt3.ggpht.com/example",
    "banner_url": "https://yt3.ggpht.com/banner_example",
    "country": "CA",
    "description": "AI automation educator teaching entrepreneurs to build and sell AI services...",
    "subscriber_count": 336000,
    "view_count": 12741587,
    "video_count": 291,
    "average_views": 42598,
    "median_views": 20271,
    "quality_classification": "rising",
    "has_skool": true,
    "skool_estimated_mrr": 3864,
    "positive_outliers_count": 30,
    "avg_views_to_subs_ratio": 0.131,
    "is_faceless": false,
    "is_verified": false,
    "is_viral": false,
    "last_published_at": "2026-03-28T14:00:00Z",
    "channel_created_at": "2023-01-15T00:00:00Z",
    "niches": ["AI Automation", "AI Business & Monetization"],
    "created_at": "2026-01-15T10:00:00Z",
    "updated_at": "2026-03-30T12:00:00Z"
  }
}

Get Channel Profile

GET /api/v1/channels/:id/profile

Get the AI-generated profile for a channel, including content style analysis, title formulas, and thumbnail patterns.

Returns 404 if the channel has not been analyzed yet.

Example Request

curl -X GET "https://tuberalytics.com/api/v1/channels/170/profile" \
  -H "Authorization: Bearer sk_live_your_api_key"

Example Response

{
  "data": {
    "summary": "AI automation educator teaching entrepreneurs to build profitable businesses with no-code tools...",
    "language": "English",
    "content_style": "educational",
    "title_writing_style": "dollar amounts, time frames, ALL CAPS course titles",
    "content_angles": ["AI automation tutorials", "business case studies", "tool reviews", "income reports"],
    "title_formulas": ["[TOOL] FULL COURSE [Duration] (Build & Sell [Type])", "$[Amount] of [Skill] Hacks in [Duration]"],
    "thumbnail_styles": ["face with laptop screen", "income proof screenshots", "bold text with dollar amounts"]
  }
}

List Channel Videos

GET /api/v1/channels/:id/videos

List videos for a specific channel, with optional outlier filtering.

Parameters

Parameter Type Required Description
kind string No Filter by video kind
outliers string No Set to true for positive outliers only
page integer No Page number (default: 1)
per_page integer No Results per page (default: 25)

Example Request

curl -X GET "https://tuberalytics.com/api/v1/channels/170/videos?outliers=true" \
  -H "Authorization: Bearer sk_live_your_api_key"

Example Response

{
  "data": [
    {
      "id": 789,
      "youtube_video_id": "dQw4w9WgXcQ",
      "title": "N8N FULL COURSE 6 HOURS (Build & Sell AI Automations)",
      "published_at": "2026-03-20T10:00:00Z",
      "view_count": 917263,
      "like_count": 28000,
      "comment_count": 1800,
      "is_positive_outlier": true,
      "average_views_ratio": 21.5,
      "views_per_day": 12500
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total_pages": 50,
    "total_count": 291
  }
}

List Channel Competitors

GET /api/v1/channels/:id/competitors

Get the discovered competitors for a channel, including keyword and niche overlap data.

Example Request

curl -X GET "https://tuberalytics.com/api/v1/channels/170/competitors" \
  -H "Authorization: Bearer sk_live_your_api_key"

Example Response

{
  "data": [
    {
      "id": 201,
      "title": "Nate Herk",
      "handle": "@nateherk",
      "subscriber_count": 592000,
      "tracked": true,
      "keyword_overlap_count": 18,
      "niche_overlap_count": 2
    },
    {
      "id": 305,
      "title": "The AI Advantage",
      "handle": "@aiadvantage",
      "subscriber_count": 429000,
      "tracked": false,
      "keyword_overlap_count": 12,
      "niche_overlap_count": 1
    }
  ]
}

Get Channel Keywords

GET /api/v1/channels/:id/keywords

Get the channel keywords (what the channel creates content about) and audience keywords (what the channel's audience searches for).

Example Request

curl -X GET "https://tuberalytics.com/api/v1/channels/170/keywords" \
  -H "Authorization: Bearer sk_live_your_api_key"

Example Response

{
  "data": {
    "channel_keywords": [
      { "name": "n8n ai automation", "position": 1 },
      { "name": "ai agent building", "position": 2 },
      { "name": "no-code automation", "position": 3 }
    ],
    "audience_keywords": [
      { "name": "best ai automation tools 2026", "position": 1 },
      { "name": "how to sell ai services", "position": 2 }
    ]
  }
}

Get Skool Communities

GET /api/v1/channels/:id/skool

Get Skool community data for a channel, including membership count and estimated revenue.

Returns an empty data array if the channel has no Skool community.

Example Request

curl -X GET "https://tuberalytics.com/api/v1/channels/170/skool" \
  -H "Authorization: Bearer sk_live_your_api_key"

Example Response

{
  "data": [
    {
      "name": "Maker School",
      "url": "https://www.skool.com/makerschool",
      "member_count": 2100,
      "price_cents": 18400,
      "is_paid": true,
      "estimated_mrr_cents": 38640000
    }
  ]
}