Channels and Playlists
Channels are creator spaces that hold catalog content (features, series, episodes, streams) and playlists. This guide covers how the API exposes them.
Channels
Getting a channel
Single channel:
channel(id: DID!)— Returns the channel ornullif not found or not accessible.List channels:
channels(limit, start)— Paginated list of all channels (auth required).
MCP: get_channel (with id), list_channels (with optional limit, start).
Channel fields
A channel has:
id (DID), metadata (name, summary, shortSummary, keywords, categories)
assets — Images (and empty videos) for the channel
playlists(limit, start) — Playlists belonging to the channel
followersCount, isFollowed — Follower count and whether the current user follows
Catalog — Use these fields to list content; there is no legacy
contentfield:features(limit, start) — Feature-length content
series(limit, start) — TV series
miniseries(limit, start) — Miniseries
seasons(limit, start) — Seasons
episodes(limit, start) — Episodes
streams(limit, start) — Streams
Always use channel.features(...), channel.series(...), etc., not a single content field.
Example: channel with catalog and likes
Playlists
Creating and updating playlists
Create:
createPlaylist(channel: DID, input: PlaylistInput)— Optionally pass a channel DID.Update:
updatePlaylist(id: DID!, input: PlaylistInput)— Update metadata (title, summary).
MCP: create_playlist (title, summary, optional channel), update_playlist (id, title, summary).
Playlist image upload
Call createPlaylistAsset(id, input) (GraphQL) or create_playlist_asset (MCP) with playlist DID, filename, and optional size.
POST the image to the returned endpoint with Bearer auth and multipart/form-data.
Playlist fields
id (DID), metadata (title, summary, etc.), assets
items(limit, start) — Playlist items (each has content reference and index)
Categories
Content and channel metadata can include categories for filtering. Query all categories with:
GraphQL:
categories(limit, start)(auth required)MCP:
list_categories(optionallimit,start)
Categories have id (DID), and metadata (name, summary, shortSummary). Use them in filters and UI.
Follow / unfollow
GraphQL:
followChannel(channel: DID!),unfollowChannel(channel: DID!)MCP:
follow_channel,unfollow_channelwithchannel(DID)
The current user’s followed channels: me.followedChannels (GraphQL) or list_followed_channels (MCP).
Last updated

