YouTube
Add filters to YouTube advanced search
Add filters from a predefined list to your YouTube search. For the list of supported filters, see Configuring Filters for YouTube Advanced Search.
POST
/
youtubeAdvancedSearch
cURL
curl --request POST \
--url https://dev.creatordb.app/v2/youtubeAdvancedSearch \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'apiId: LE6DPZQkR3TQShxofXoD2j8qCBu1-f0jti665m1t50dwDD12W' \
--data '{
"maxResults": 3,
"sortBy": "subscribers",
"offset": 0,
"desc": true,
"filters": [
{
"filterKey": "subscribers",
"op": ">",
"value": 10000
}
]
}'
const options = {
method: 'POST',
headers: {apiId: '<apiid>', 'Content-Type': 'application/json'},
body: JSON.stringify({
maxResults: 3,
sortBy: 'subscribers',
offset: 0,
desc: true,
filters: [{filterKey: 'subscribers', op: '>', value: 10000}]
})
};
fetch('https://dev.creatordb.app/v2/youtubeAdvancedSearch', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://dev.creatordb.app/v2/youtubeAdvancedSearch"
payload = {
"maxResults": 3,
"sortBy": "subscribers",
"offset": 0,
"desc": True,
"filters": [
{
"filterKey": "subscribers",
"op": ">",
"value": 10000
}
]
}
headers = {
"apiId": "<apiid>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://dev.creatordb.app/v2/youtubeAdvancedSearch",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'maxResults' => 3,
'sortBy' => 'subscribers',
'offset' => 0,
'desc' => true,
'filters' => [
[
'filterKey' => 'subscribers',
'op' => '>',
'value' => 10000
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"apiId: <apiid>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://dev.creatordb.app/v2/youtubeAdvancedSearch")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["apiId"] = '<apiid>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"maxResults\": 3,\n \"sortBy\": \"subscribers\",\n \"offset\": 0,\n \"desc\": true,\n \"filters\": [\n {\n \"filterKey\": \"subscribers\",\n \"op\": \">\",\n \"value\": 10000\n }\n ]\n}"
response = http.request(request)
puts response.read_bodypackage main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://dev.creatordb.app/v2/youtubeAdvancedSearch"
payload := strings.NewReader("{\n \"maxResults\": 3,\n \"sortBy\": \"subscribers\",\n \"offset\": 0,\n \"desc\": true,\n \"filters\": [\n {\n \"filterKey\": \"subscribers\",\n \"op\": \">\",\n \"value\": 10000\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("apiId", "<apiid>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://dev.creatordb.app/v2/youtubeAdvancedSearch")
.header("apiId", "<apiid>")
.header("Content-Type", "application/json")
.body("{\n \"maxResults\": 3,\n \"sortBy\": \"subscribers\",\n \"offset\": 0,\n \"desc\": true,\n \"filters\": [\n {\n \"filterKey\": \"subscribers\",\n \"op\": \">\",\n \"value\": 10000\n }\n ]\n}")
.asString();{
"data": [
"UCX6OQ3DkcsbYNE6H8uQQuVA",
"UCq-Fj5jknLsUf-MWSy4_brA",
"UCbCmjCuTUZos6Inko4u57UQ"
],
"quotaUsed": 1,
"quotaUsedTotal": 6025,
"remainingPlanCredit": 993975,
"remainingPrepurchasedCredit": 0,
"timestamp": 1755503517048,
"error": "",
"success": true
}{
"data": null,
"quotaUsed": 0,
"quotaUsedTotal": 0,
"remainingPlanCredit": 0,
"remainingPrepurchasedCredit": 0,
"timestamp": 1755503513912,
"error": "AdvancedSearchSortByNotExistOrInvalid",
"success": false
}Headers
Example:
"LE6DPZQkR3TQShxofXoD2j8qCBu1-f0jti665m1t50dwDD12W"
Body
application/json
For the list of available filterKey, please see here.
Response
OK
API credits that were used to make this call.
Total API credits used since the last billing cycle.
The number of remaining free API credits that come with your subscription plan. These API credits are renewed every billing cycle.
The number of remaining extra purchased API credits. These API credits do not expire until used.
Unix timestamp of the call request that the server received.
Errors that occurred during the API call.
It is TRUE when the call is successful.
Last modified on February 25, 2026
⌘I
cURL
curl --request POST \
--url https://dev.creatordb.app/v2/youtubeAdvancedSearch \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'apiId: LE6DPZQkR3TQShxofXoD2j8qCBu1-f0jti665m1t50dwDD12W' \
--data '{
"maxResults": 3,
"sortBy": "subscribers",
"offset": 0,
"desc": true,
"filters": [
{
"filterKey": "subscribers",
"op": ">",
"value": 10000
}
]
}'
const options = {
method: 'POST',
headers: {apiId: '<apiid>', 'Content-Type': 'application/json'},
body: JSON.stringify({
maxResults: 3,
sortBy: 'subscribers',
offset: 0,
desc: true,
filters: [{filterKey: 'subscribers', op: '>', value: 10000}]
})
};
fetch('https://dev.creatordb.app/v2/youtubeAdvancedSearch', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://dev.creatordb.app/v2/youtubeAdvancedSearch"
payload = {
"maxResults": 3,
"sortBy": "subscribers",
"offset": 0,
"desc": True,
"filters": [
{
"filterKey": "subscribers",
"op": ">",
"value": 10000
}
]
}
headers = {
"apiId": "<apiid>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://dev.creatordb.app/v2/youtubeAdvancedSearch",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'maxResults' => 3,
'sortBy' => 'subscribers',
'offset' => 0,
'desc' => true,
'filters' => [
[
'filterKey' => 'subscribers',
'op' => '>',
'value' => 10000
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"apiId: <apiid>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://dev.creatordb.app/v2/youtubeAdvancedSearch")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["apiId"] = '<apiid>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"maxResults\": 3,\n \"sortBy\": \"subscribers\",\n \"offset\": 0,\n \"desc\": true,\n \"filters\": [\n {\n \"filterKey\": \"subscribers\",\n \"op\": \">\",\n \"value\": 10000\n }\n ]\n}"
response = http.request(request)
puts response.read_bodypackage main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://dev.creatordb.app/v2/youtubeAdvancedSearch"
payload := strings.NewReader("{\n \"maxResults\": 3,\n \"sortBy\": \"subscribers\",\n \"offset\": 0,\n \"desc\": true,\n \"filters\": [\n {\n \"filterKey\": \"subscribers\",\n \"op\": \">\",\n \"value\": 10000\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("apiId", "<apiid>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://dev.creatordb.app/v2/youtubeAdvancedSearch")
.header("apiId", "<apiid>")
.header("Content-Type", "application/json")
.body("{\n \"maxResults\": 3,\n \"sortBy\": \"subscribers\",\n \"offset\": 0,\n \"desc\": true,\n \"filters\": [\n {\n \"filterKey\": \"subscribers\",\n \"op\": \">\",\n \"value\": 10000\n }\n ]\n}")
.asString();{
"data": [
"UCX6OQ3DkcsbYNE6H8uQQuVA",
"UCq-Fj5jknLsUf-MWSy4_brA",
"UCbCmjCuTUZos6Inko4u57UQ"
],
"quotaUsed": 1,
"quotaUsedTotal": 6025,
"remainingPlanCredit": 993975,
"remainingPrepurchasedCredit": 0,
"timestamp": 1755503517048,
"error": "",
"success": true
}{
"data": null,
"quotaUsed": 0,
"quotaUsedTotal": 0,
"remainingPlanCredit": 0,
"remainingPrepurchasedCredit": 0,
"timestamp": 1755503513912,
"error": "AdvancedSearchSortByNotExistOrInvalid",
"success": false
}