YouTube Search
curl --request GET \
--url https://api.aisa.one/apis/v1/youtube/search \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aisa.one/apis/v1/youtube/search"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.aisa.one/apis/v1/youtube/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aisa.one/apis/v1/youtube/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.aisa.one/apis/v1/youtube/search"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.aisa.one/apis/v1/youtube/search")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/youtube/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"search_metadata": {
"id": "<string>",
"status": "<string>",
"created_at": "<string>",
"request_time_taken": 123,
"parsing_time_taken": 123,
"total_time_taken": 123,
"request_url": "<string>",
"html_url": "<string>",
"json_url": "<string>"
},
"search_parameters": {},
"search_information": {
"total_results": 123
},
"videos": [
{
"position": 123,
"id": "<string>",
"title": "<string>",
"link": "<string>",
"description": "<string>",
"thumbnail": "<string>",
"published_time": "<string>",
"length": "<string>",
"views": 123,
"channel": {},
"is_live": true,
"badges": [
"<string>"
]
}
],
"channels": [
{
"position": 123,
"id": "<string>",
"title": "<string>",
"link": "<string>",
"description": "<string>",
"thumbnail": "<string>",
"subscribers": "<string>"
}
],
"shorts": [
{
"position": 123,
"section_title": "<string>",
"items": [
{}
]
}
],
"sections": [
{
"position": 123,
"section_title": "<string>",
"items": [
{}
]
}
],
"playlists": [
{}
],
"ads": [
{}
],
"pagination": {
"next_page_token": "<string>"
}
}Search API
YouTube Search API
Search YouTube and get back matching videos, channels, and playlists.
GET
https://api.aisa.one/apis/v1
/
youtube
/
search
YouTube Search
curl --request GET \
--url https://api.aisa.one/apis/v1/youtube/search \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aisa.one/apis/v1/youtube/search"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.aisa.one/apis/v1/youtube/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aisa.one/apis/v1/youtube/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.aisa.one/apis/v1/youtube/search"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.aisa.one/apis/v1/youtube/search")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/youtube/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"search_metadata": {
"id": "<string>",
"status": "<string>",
"created_at": "<string>",
"request_time_taken": 123,
"parsing_time_taken": 123,
"total_time_taken": 123,
"request_url": "<string>",
"html_url": "<string>",
"json_url": "<string>"
},
"search_parameters": {},
"search_information": {
"total_results": 123
},
"videos": [
{
"position": 123,
"id": "<string>",
"title": "<string>",
"link": "<string>",
"description": "<string>",
"thumbnail": "<string>",
"published_time": "<string>",
"length": "<string>",
"views": 123,
"channel": {},
"is_live": true,
"badges": [
"<string>"
]
}
],
"channels": [
{
"position": 123,
"id": "<string>",
"title": "<string>",
"link": "<string>",
"description": "<string>",
"thumbnail": "<string>",
"subscribers": "<string>"
}
],
"shorts": [
{
"position": 123,
"section_title": "<string>",
"items": [
{}
]
}
],
"sections": [
{
"position": 123,
"section_title": "<string>",
"items": [
{}
]
}
],
"playlists": [
{}
],
"ads": [
{}
],
"pagination": {
"next_page_token": "<string>"
}
}Search YouTube and get back matching videos, channels, and playlists. Set
engine=youtube and pass the query in q; both are required. Optionally narrow by country (gl) and interface language (hl), or pass a YouTube filter token in sp for pagination and advanced filters such as upload date, duration, or result type. Use this to find video content on a topic, track a channel’s recent uploads, or gauge how much video coverage a subject has.
Note: this is served through the AIsa mapped path /apis/v1/youtube/search; the upstream provider’s canonical path is not mounted directly.Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
SearchApi engine identifier. Use youtube for this YouTube endpoint.
Available options:
youtube Search query. Required by runtime and upstream SearchApi.
YouTube filter token (pagination or advanced filters)
Country code (e.g. us, jp)
Interface language
Response
Successful YouTube search response
YouTube search result payload returned by SearchApi through the AIsa wrapper.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes