Revelator Logo API

YouTube

The YouTube API allows you to retrieve and search metadata for YouTube channels and videos. This includes channel statistics, video details, engagement metrics, and video categories.

This is a read-only API—you can query channel and video data but cannot modify YouTube content directly through these endpoints.

These endpoints provide access to YouTube channels and videos that have been synced with the Revelator platform. Ensure the channels or videos you’re querying have been previously imported or linked to your account.


List YouTube Channels

GET /catalog/v1/youtube/channels

Returns a paginated list of YouTube channels based on filters and sorting options.

Query Parameters

Parameter Description
isAssignedToChild boolean

Filter by whether the channel is assigned to a child entity (`true` or `false`).

youTubeId string

YouTube channel ID string (the official YouTube channel identifier).

handle string

YouTube channel handle or custom URL.

title string

Channel title or name.

isDeleted boolean

Filter by deletion state (`true` for deleted, `false` for active).

publishedFrom string (date-time)

Include channels published on or after this UTC date-time.

publishedTo string (date-time)

Include channels published on or before this UTC date-time.

viewCountFrom integer

Minimum view count filter.

viewCountTo integer

Maximum view count filter.

subscriberCountFrom integer

Minimum subscriber count filter.

subscriberCountTo integer

Maximum subscriber count filter.

videoCountFrom integer

Minimum video count filter.

videoCountTo integer

Maximum video count filter.

visibility string

Channel visibility status. Note: We only import public channels, so this will generally be "public".

madeForKids boolean

Filter by whether the channel is marked as made for kids (`true` or `false`).

isMonetized boolean

Filter by monetization status (`true` for monetized, `false` for non-monetized).

lastImportedFrom string (date-time)

Include channels last imported on or after this UTC date-time.

lastImportedTo string (date-time)

Include channels last imported on or before this UTC date-time.

creationDateFrom string (date-time)

Include channels created on or after this UTC date-time.

creationDateTo string (date-time)

Include channels created on or before this UTC date-time.

enterpriseIds integer[]

Filter by one or more enterprise IDs.

tenantIds integer[]

Filter by one or more tenant IDs.

searchText string

Free-text search applied to channel title, handle, and other searchable fields.

pageNumber integer

Page number for paginated results.

pageSize integer

Number of items per page.

orderByProperty string

Property name used for sorting (e.g., "title", "viewCount", "subscriberCount").

orderByDescending boolean

Set to `true` for descending order, `false` for ascending.

Responses

object
pageNumber integer
The current page number in the paginated result set (1-indexed)
pageSize integer
The number of items per page in the paginated result set
totalItemsCount integer
The total number of items available across all pages
totalPagesCount number
The total number of pages available based on the page size
youTubeChannelId integer | null
multiChannelNetworkId integer | null
tenantId integer | null
tenantName string | null
tenantLogoImageId string | null
enterpriseId integer | null
enterpriseName string | null
youTubeId string | null
handle string | null
title string | null
description string | null
publishedAt string (date-time) | null
viewCount integer | null
subscriberCount integer | null
videoCount integer | null
visibility string | null
madeForKids boolean | null
isMonetized boolean | null
imageDefaultUrl string | null
imageMediumUrl string | null
imageHighUrl string | null
lastUpdatedDate string (date-time) | null
creationDate string (date-time) | null
assetId integer | null
isDeleted boolean | null
deletionDate string (date-time) | null
GET /catalog/v1/youtube/channels
curl -X GET "https://platform.revelator.com/catalog/v1/youtube/channels?pageNumber=1&pageSize=20&orderByProperty=viewCount&orderByDescending=true" -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Example response 200
{
"pageNumber": 1,
"pageSize": 20,
"totalItemsCount": 5,
"totalPagesCount": 1,
"items": [
  {
    "youTubeChannelId": 123456,
    "multiChannelNetworkId": null,
    "tenantId": 2001,
    "enterpriseId": 3001,
    "youTubeId": "UCabc123def456",
    "handle": "@mymusicalchannel",
    "title": "My Musical Channel",
    "description": "Music and entertainment content from independent artists.",
    "publishedAt": "2020-03-15T10:30:00Z",
    "viewCount": 1500000,
    "subscriberCount": 125000,
    "videoCount": 342,
    "visibility": "public",
    "madeForKids": false,
    "isMonetized": true,
    "imageDefaultUrl": "https://img.jpg",
    "imageMediumUrl": "https://img.jpg",
    "imageHighUrl": "https://img.jpg",
    "lastUpdatedDate": "2026-04-10T14:22:10Z",
    "creationDate": "2020-03-15T10:30:00Z",
    "assetId": 5000012,
    "isDeleted": false,
    "deletionDate": null
  }
]
}

Get YouTube Channel

GET /catalog/v1/youtube/channels/{channelId}

Retrieves detailed information for a specific YouTube channel by its internal ID.

Path Parameters

Parameter Description
channelId * integer

The internal Revelator YouTube channel ID (not the YouTube channel ID).

Responses

object
youTubeChannelId integer | null
Internal Revelator ID for this YouTube channel.
multiChannelNetworkId integer | null
Multi-Channel Network (MCN) ID if the channel is part of an MCN partnership.
tenantId integer | null
Tenant ID associated with this channel.
enterpriseId integer | null
Enterprise ID associated with this channel.
youTubeId string | null
The official YouTube channel ID (e.g., "UCabc123def456").
handle string | null
YouTube channel handle or custom URL (e.g., "@channelname").
title string | null
Official channel title from YouTube.
description string | null
Channel description from YouTube.
publishedAt string (date-time) | null
Date when the channel was first published on YouTube.
viewCount integer | null
Total lifetime views on the channel.
subscriberCount integer | null
Current subscriber count.
videoCount integer | null
Number of videos published on the channel.
visibility string | null
Channel visibility status (e.g., "public"). Note: The system currently only retrieves public channels.
madeForKids boolean | null
Indicates whether the channel is marked as made for kids.
isMonetized boolean | null
Indicates whether the channel has YouTube Partner monetization enabled.
imageDefaultUrl string | null
URL to the channel's default profile image (88x88 pixels).
imageMediumUrl string | null
URL to the channel's medium profile image (240x240 pixels).
imageHighUrl string | null
URL to the channel's high-quality profile image (800x800 pixels).
lastUpdatedDate string (date-time) | null
Last date when the channel metadata was updated from YouTube.
creationDate string (date-time) | null
Date when the channel was added to the Revelator platform.
assetId integer | null
Universal asset ID for this YouTube channel in the Revelator system.
isDeleted boolean | null
Indicates whether this channel record has been marked as deleted.
deletionDate string (date-time) | null
Date when the channel was marked as deleted (if applicable).
GET /catalog/v1/youtube/channels/{channelId}
curl -X GET "https://platform.revelator.com/catalog/v1/youtube/channels/123456" -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Example response 200
{
"youTubeChannelId": 123456,
"multiChannelNetworkId": null,
"tenantId": 2001,
"enterpriseId": 3001,
"youTubeId": "UCabc123def456",
"handle": "@mymusicalchannel",
"title": "My Musical Channel",
"description": "Music and entertainment content from independent artists.",
"publishedAt": "2020-03-15T10:30:00Z",
"viewCount": 1500000,
"subscriberCount": 125000,
"videoCount": 342,
"visibility": "public",
"madeForKids": false,
"isMonetized": true,
"imageDefaultUrl": "https://img.jpg",
"imageMediumUrl": "https://img.jpg",
"imageHighUrl": "https://img.jpg",
"lastUpdatedDate": "2026-04-10T14:22:10Z",
"creationDate": "2020-03-15T10:30:00Z",
"assetId": 5000012,
"isDeleted": false,
"deletionDate": null
}

List YouTube Videos

GET /catalog/v1/youtube/videos

Returns a paginated list of YouTube videos based on filters and sorting options.

Query Parameters

Parameter Description
pageNumber integer

Page number for paginated results.

pageSize integer

Number of items per page.

orderByProperty string

Property name used for sorting (e.g., "title", "publishedAt", "viewCount").

orderByDescending boolean

Set to `true` for descending order, `false` for ascending.

youTubeVideoIds integer[]

Filter by one or more internal YouTube video IDs (Revelator IDs).

youTubeChannelIds integer[]

Filter by one or more YouTube channel IDs (Revelator channel IDs).

videoTitle string

Filter by video title.

channelTitle string

Filter by channel title that uploaded the video.

searchText string

Free-text search applied to video title, description, and channel name.

publishedFrom string (date-time)

Include videos published on or after this UTC date-time.

publishedTo string (date-time)

Include videos published on or before this UTC date-time.

lastImportedFrom string (date-time)

Include videos last imported on or after this UTC date-time.

lastImportedTo string (date-time)

Include videos last imported on or before this UTC date-time.

creationDateFrom string (date-time)

Include videos created on or after this UTC date-time.

creationDateTo string (date-time)

Include videos created on or before this UTC date-time.

categoryIds string[]

Filter by one or more YouTube video category IDs.

defaultLanguage string

Filter by video default language.

defaultAudioLanguage string

Filter by video audio language.

durationFrom string

Minimum video duration in seconds.

durationTo string

Maximum video duration in seconds.

definition string

Filter by video definition (e.g., "sd" for standard, "hd" for high definition).

visibility string

Filter by visibility status. Note: We only import public videos, so this will generally be "public".

madeForKids boolean

Filter by whether the video is marked as made for kids (`true` or `false`).

viewCountFrom integer

Minimum view count filter.

viewCountTo integer

Maximum view count filter.

likeCountFrom integer

Minimum like count filter.

likeCountTo integer

Maximum like count filter.

favoriteCountFrom integer

Minimum favorite count filter.

favoriteCountTo integer

Maximum favorite count filter.

commentCountFrom integer

Minimum comment count filter.

commentCountTo integer

Maximum comment count filter.

monetizationStatus string

Filter by monetization status. Note: This data is not currently retrieved and will default to `null`.

isDeleted boolean

Filter by deletion state (`true` for deleted, `false` for active).

Responses

object
pageNumber integer
The current page number in the paginated result set (1-indexed)
pageSize integer
The number of items per page in the paginated result set
totalItemsCount integer
The total number of items available across all pages
totalPagesCount number
The total number of pages available based on the page size
youTubeVideoId integer | null
title string | null
channelTitle string | null
youTubeChannelId integer | null
isDeleted boolean | null
youTubeEtag string | null
youTubeId string | null
description string | null
publishedAt string (date-time) | null
categoryId string | null
defaultLanguage string | null
defaultAudioLanguage string | null
duration string | null
definition string | null
visibility string | null
license string | null
madeForKids boolean | null
viewCount integer | null
likeCount integer | null
favoriteCount integer | null
commentCount integer | null
monetizationStatus string | null
imageDefaultUrl string | null
imageMediumUrl string | null
imageHighUrl string | null
creationDate string (date-time) | null
lastUpdatedDate string (date-time) | null
deletionDate string (date-time) | null
assetId integer | null
GET /catalog/v1/youtube/videos
curl -X GET "https://platform.revelator.com/catalog/v1/youtube/videos?youTubeChannelIds=123456&pageNumber=1&pageSize=10" -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Example response 200
{
"pageNumber": 1,
"pageSize": 10,
"totalItemsCount": 342,
"totalPagesCount": 35,
"items": [
  {
    "youTubeVideoId": 987654,
    "title": "New Song Premiere",
    "channelTitle": "My Musical Channel",
    "youTubeChannelId": 123456,
    "isDeleted": false,
    "youTubeEtag": "xyz789",
    "youTubeId": "dQw4w9WgXcQ",
    "description": "Exclusive premiere of our new single.",
    "publishedAt": "2026-04-01T15:30:00Z",
    "categoryId": "10",
    "defaultLanguage": "en-US",
    "defaultAudioLanguage": "en",
    "duration": "PT3M45S",
    "definition": "hd",
    "visibility": "public",
    "license": "youtube",
    "madeForKids": false,
    "viewCount": 45000,
    "likeCount": 3200,
    "favoriteCount": 450,
    "commentCount": 1250,
    "monetizationStatus": null,
    "imageDefaultUrl": "https://img.jpg",
    "imageMediumUrl": "https://img.jpg",
    "imageHighUrl": "https://img.jpg",
    "creationDate": "2026-04-01T15:30:00Z",
    "lastUpdatedDate": "2026-04-10T08:15:22Z",
    "deletionDate": null,
    "assetId": 5000045
  }
]
}

Get YouTube Video

GET /catalog/v1/youtube/videos/{videoId}

Retrieves detailed information for a specific YouTube video by its internal ID.

Path Parameters

Parameter Description
videoId * integer

The internal Revelator YouTube video ID (not the YouTube video ID).

Responses

object
youTubeVideoId integer | null
Internal Revelator ID for this YouTube video.
title string | null
Video title from YouTube.
isDeleted boolean | null
Indicates whether this video record has been marked as deleted.
youTubeEtag string | null
Entity tag from YouTube API for change tracking.
youTubeId string | null
The official YouTube video ID (e.g., "dQw4w9WgXcQ").
description string | null
Video description from YouTube.
publishedAt string (date-time) | null
Date when the video was published on YouTube.
categoryId string | null
YouTube video category ID (e.g., "10" for music, "24" for entertainment).
defaultLanguage string | null
Default language of the video content.
defaultAudioLanguage string | null
Default audio language of the video.
duration string | null
Video duration in ISO 8601 format (e.g., "PT3M45S" for 3 minutes 45 seconds).
definition string | null
Video definition quality ("sd" for standard, "hd" for high definition).
visibility string | null
Visibility status. Note: We only import public videos, so this will generally return "public".
license string | null
License type of the video (e.g., "youtube", "creativeCommon").
madeForKids boolean | null
Indicates whether the video is marked as made for kids.
viewCount integer | null
Total view count for the video.
likeCount integer | null
Total like count for the video.
favoriteCount integer | null
Total favorite count for the video.
commentCount integer | null
Total comment count on the video.
monetizationStatus string | null
Monetization status of the video. Note: This data is not currently retrieved and will default to `null`.
imageDefaultUrl string | null
URL to the default video thumbnail (120x90 pixels).
imageMediumUrl string | null
URL to the medium video thumbnail (320x180 pixels).
imageHighUrl string | null
URL to the high-quality video thumbnail (480x360 pixels).
creationDate string (date-time) | null
Date when the video was added to the Revelator platform.
lastUpdatedDate string (date-time) | null
Last date when the video metadata was updated from YouTube.
deletionDate string (date-time) | null
Date when the video was marked as deleted (if applicable).
assetId integer | null
Universal asset ID for this YouTube video in the Revelator system.
GET /catalog/v1/youtube/videos/{videoId}
curl -X GET "https://platform.revelator.com/catalog/v1/youtube/videos/987654" -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Example response 200
{
"youTubeVideoId": 987654,
"title": "New Song Premiere",
"isDeleted": false,
"youTubeEtag": "xyz789",
"youTubeId": "dQw4w9WgXcQ",
"description": "Exclusive premiere of our new single.",
"publishedAt": "2026-04-01T15:30:00Z",
"categoryId": "10",
"defaultLanguage": "zh-Hant",
"defaultAudioLanguage": "zh",
"duration": "PT3M45S",
"definition": "hd",
"visibility": "public",
"license": "youtube",
"madeForKids": false,
"viewCount": 45000,
"likeCount": 3200,
"favoriteCount": 450,
"commentCount": 1250,
"monetizationStatus": null,
"imageDefaultUrl": "https://img..jpg",
"imageMediumUrl": "https://img..jpg",
"imageHighUrl": "https://img..jpg",
"creationDate": "2026-04-01T15:30:00Z",
"lastUpdatedDate": "2026-04-10T08:15:22Z",
"deletionDate": null,
"assetId": 5000045
}

List Video Categories

GET /catalog/v1/youtube/videos/categories

Retrieves the list of all available YouTube video categories. Use these IDs to filter the List YouTube Videos endpoint.

Responses

object
youTubeVideoCategoryId integer
title string
GET /catalog/v1/youtube/videos/categories
curl -X GET "https://platform.revelator.com/catalog/v1/youtube/videos/categories" -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Example response 200
{
  "items": [
      {
          "youTubeVideoCategoryId": 1,
          "title": "Film & Animation"
      },
      {
          "youTubeVideoCategoryId": 2,
          "title": "Autos & Vehicles"
      },
      {
          "youTubeVideoCategoryId": 10,
          "title": "Music"
      },
      {
          "youTubeVideoCategoryId": 15,
          "title": "Pets & Animals"
      }
  ]
}