Skip to main content

Channel Finder

The Channel Finder API generates a list of related channels simply from the required channelType and url query params in an http GET request.

warning

The DMT API is current in pre-alpha. This means you should not rely on its availability, and that it may change without warning, although we will certainly make a best effort to contact you in advance.

Get early access!

If you wish to get early access, sign up using this form here

Request examples

Requesting with the URL param

The url parameter is exclusive to the YouTube channelType param and will accept either a youtube video or channel url

cURL Channel Finder: URL
--request GET
--url 'https://stg.directmessage.tech/api/v0/analytics/creators/find?url={{URL}}&channelType=youtube'
--header 'Authorization: Bearer {{YOUR_API_KEY}}

Requesting with the Keywords param

The keywords parameter is currently exclusive to the YouTube channelType param

cURL Channel Finder: Keywords
--request GET
--url 'https://stg.directmessage.tech/api/v0/analytics/creators/find&keywords=snacks,health+snacks,fitness,lifestyle&channelType=youtube'
--header 'Authorization: Bearer {{YOUR_API_KEY}}

Requesting with the ChannelName param

Use the channelName param to identify similar Instagram and Tiktok channels

cURL Channel Finder: channelName
curl -H 'Authorization: Bearer {{YOUR_API_KEY}}' \
-X GET \
'https://stg.directmessage.tech/api/v0/analytics/creators/find?channelType=tiktok&channelName={{channelName}}'
Input validation

The channelType query param is required. Any one (and only one) of these params is also required:

  • url - expects the url of a (currently only YouTube) channel for identifying "look alikes" of that channel
  • channelName - expects the @channelName of a channel for identifying "look alikes" of that channel
  • keywords - expects comma separated keywords for returning channels related to the keywords

Paginating with this iteration

The current iteration of the /find API endpoint does not support conventional pagination methods using a cursor or offset.

Instead, we recommend that you "chain" the /find results together by passing in either the @channelname value from the relevant array object item, or constructing a url using the channelid value.

Using the @channelname param

For example, using the @channelname found in each object item nested in the data.channels[] array, you can construct your subsequent request like this:

curl -H 'Authorization: Bearer {{YOUR_API_KEY}}' \
-X GET \
'https://stg.directmessage.tech/api/v0/analytics/creators/find?channelType=youtube&channelName=@channelname'

Response example

200 status

Channel Finder response
{
"data": {
"channels": [
{
"id": "UCLMuXbUwSMiQrkouXTc0lNA",
"name": "ethanolodj",
"username": "@ethanolodj",
"type": "youtube",
"url": "https://www.youtube.com/channel/UCLMuXbUwSMiQrkouXTc0lNA",
"followers": 198000,
"totalViews": 55664590,
"totalPosts": 227,
"description": "my views/sub ratio so bad HELP ME SUBSCRIBE\n\n\nI upload whenever I want.\n",
"createdDate": "2019-10-15T15:30:19.450342Z",
"categoryName": "Gaming",
"sampleVideo": "https://www.youtube.com/watch?v=Vq0b-6Zir88",
"country": "FR",
"profileImg": "https://yt3.ggpht.com/ytc/AIdro_nVICEDEtYaOIRjeVCtNx-CgR9oHk4FFDoZUKue=s88-c-k-c0x00ffffff-no-rj"
},
{
"id": "UCTVleVqZ2YKv0hFyFOddY1w",
"name": "Ache",
"username": "@ache00",
"type": "youtube",
"url": "https://www.youtube.com/channel/UCTVleVqZ2YKv0hFyFOddY1w",
"followers": 5440,
"totalViews": 1849552,
"totalPosts": 221,
"description": "fr'",
"createdDate": "2023-02-07T23:59:10.608777Z",
"categoryName": "Gaming",
"sampleVideo": "https://www.youtube.com/watch?v=vTsk953_8qs",
"country": null,
"profileImg": "https://yt3.ggpht.com/A9bfxK_IhSbW7YpZo2Ny2HIHPlWmiKSOBIKvQUUjzfh6MFhFtpInnToU3Xm6_XUjDh4obQYAdA=s88-c-k-c0x00ffffff-no-rj"
},
],
"find": {
"url": null,
"keywords": "jackfrags|fps|battlefield%202",
"source": {
"videoId": null,
"channelId": null
}
}
}
}
info

The find nested object within the "data" payload contains information about the keywords and other related parameters that informed the search results

422 Error Status

The 422 Unprocessable Content error status code is expected to return if you attempted to submit an invalid body or query param request to the Estimator API endpoint.

Channel Finder 422 Error response
{
"error": {
"message": "Invalid user input.\n
Please reference docs for how to submit requests to the API:\n
https://docs.directmessage.tech/api/api-finder#422-error-status",
"statusCode": 422
}
}