Skip to content

SHARED DATA MODELS

Creator Summary Object

json
{
  "id": "creator_001",
  "name": "Chris Spencer",
  "initials": "CS",
  "avatar_color": "#4A90D9",
  "avatar_url": null,
  "tier": "ambassador",
  "category": "comedy",
  "subscribers": 124000,
  "subscribers_formatted": "124K",
  "is_live": true,
  "is_verified": true,
  "is_hot": false,
  "watching_now": 13000,
  "watching_now_formatted": "13K",
  "channel_url": "/creators/chris-spencer"
}

Show Summary Object

json
{
  "show_id": "show_001",
  "title": "Chris Spencer Presents",
  "thumbnail_url": "https://cdn.droptv.com/shows/show_001/thumb.jpg",
  "thumbnail_color": "#E8A838",
  "category": "comedy",
  "creator": { "id": "creator_001", "name": "Chris Spencer", "is_verified": true },
  "seasons": 3,
  "rating": "TV-14",
  "tags": ["new", "featured"],
  "is_new": true,
  "is_featured": true,
  "channel_url": "/shows/chris-spencer-presents"
}

Episode Object

json
{
  "episode_id": "ep_001",
  "season": 1,
  "episode_number": 1,
  "title": "E1: Pilot Episode",
  "duration_seconds": 1472,
  "duration_formatted": "24:32",
  "views": 1200000,
  "views_formatted": "1.2M",
  "is_free": true,
  "is_premium": false,
  "stream_url": "https://cdn.droptv.com/episodes/ep_001/stream.m3u8",
  "air_date": "2023-01-15T00:00:00Z"
}

EPG Program Object

json
{
  "program_id": "prog_002",
  "title": "Behind the Laughs",
  "thumbnail_url": "https://cdn.droptv.com/programs/prog_002/thumb.jpg",
  "start_time": "2024-11-01T18:00:00-05:00",
  "end_time": "2024-11-01T18:45:00-05:00",
  "start_time_formatted": "6:00 PM",
  "end_time_formatted": "6:45 PM",
  "duration_minutes": 45,
  "elapsed_minutes": 15,
  "remaining_minutes": 30,
  "progress_percent": 33,
  "is_past": false,
  "is_current": true,
  "is_upcoming": false,
  "content_type": "episode",
  "content_id": "ep_005",
  "rating": "TV-14"
}

Stream Object

json
{
  "stream_id": "stream_abc123",
  "stream_url": "https://cdn.droptv.com/streams/stream_abc123/stream.m3u8",
  "dvr_url": "https://cdn.droptv.com/streams/stream_abc123/dvr.m3u8",
  "thumbnail_url": "https://cdn.droptv.com/streams/stream_abc123/thumb.jpg",
  "quality": "auto",
  "token": "stream_token_xyz_abc",
  "token_expires_at": "2024-11-01T23:59:59Z",
  "latency_mode": "low",
  "health": "good"
}

Viewers Object

json
{
  "watching_now": 13245,
  "watching_now_formatted": "13.2K",
  "peak_today": 18500,
  "peak_today_formatted": "18.5K",
  "peak_all_time": 52000,
  "peak_all_time_formatted": "52K",
  "by_device": {
    "web": 5200,
    "ios": 3800,
    "android": 2400,
    "roku": 1100,
    "firetv": 600,
    "appletv": 145
  }
}

Pagination Object

json
{
  "total": 18,
  "page": 1,
  "limit": 20,
  "total_pages": 1
}