The following examples demonstrate how to check AI training permissions for a specific YouTube video.
cURL Python Node.js HTTP PHP Golang C# Java JSON
Copy curl 'https://realtime.oxylabs.io/v1/queries' \
--user 'USERNAME:PASSWORD' \
-H 'Content-Type: application/json' \
-d '{
"source": "youtube_video_trainability",
"query": "rFNDylrjn_w"
}'
Copy import requests
url = "https://realtime.oxylabs.io/v1/queries"
payload = {
"source": "youtube_video_trainability",
"query": "rFNDylrjn_w"
}
headers = {
"Content-Type": "application/json"
}
auth = ("USERNAME", "PASSWORD")
response = requests.post(url, json=payload, headers=headers, auth=auth)
print(response.text)
Copy const fetch = require('node-fetch');
const url = 'https://realtime.oxylabs.io/v1/queries';
const payload = {
source: 'youtube_video_trainability',
query: 'rFNDylrjn_w'
};
const options = {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Basic ' + Buffer.from('USERNAME:PASSWORD').toString('base64')
},
body: JSON.stringify(payload)
};
fetch(url, options)
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
Copy POST /v1/queries HTTP/1.1
Host: realtime.oxylabs.io
Authorization: Basic [BASE64_ENCODED_CREDENTIALS]
Content-Type: application/json
{
"source": "youtube_video_trainability",
"query": "rFNDylrjn_w"
}
Copy <?php
$url = 'https://realtime.oxylabs.io/v1/queries';
$payload = [
'source' => 'youtube_video_trainability',
'query' => 'rFNDylrjn_w'
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_USERPWD, 'USERNAME:PASSWORD');
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
Copy package main
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
)
func main() {
url := "https://realtime.oxylabs.io/v1/queries"
payload := map[string]string{
"source": "youtube_video_trainability",
"query": "rFNDylrjn_w",
}
jsonPayload, _ := json.Marshal(payload)
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(jsonPayload))
req.Header.Set("Content-Type", "application/json")
req.SetBasicAuth("USERNAME", "PASSWORD")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
}
Copy using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
using (var client = new HttpClient())
{
var url = "https://realtime.oxylabs.io/v1/queries";
var payload = @"{
""source"": ""youtube_video_trainability"",
""query"": ""rFNDylrjn_w""
}";
var content = new StringContent(payload, Encoding.UTF8, "application/json");
var byteArray = Encoding.ASCII.GetBytes("USERNAME:PASSWORD");
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(
"Basic", Convert.ToBase64String(byteArray));
var response = await client.PostAsync(url, content);
var responseContent = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseContent);
}
}
}
Copy import java.io.IOException;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.Base64;
public class OxylabsRequest {
public static void main(String[] args) throws IOException, InterruptedException {
String url = "https://realtime.oxylabs.io/v1/queries";
String payload = "{\"source\":\"youtube_video_trainability\",\"query\":\"rFNDylrjn_w\"}";
String auth = "USERNAME:PASSWORD";
String encodedAuth = Base64.getEncoder().encodeToString(auth.getBytes());
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Content-Type", "application/json")
.header("Authorization", "Basic " + encodedAuth)
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}
Copy {
"source": "youtube_video_trainability",
"query": "rFNDylrjn_w"
}
Copy {
"videoId": "<YOUTUBE_VIDEO_ID>",
"kind": "youtube#videoTrainability",
"etag": "<ETAG_VALUE>",
"permitted": ["<PERMISSION_LEVEL>"]
}
Copy {
"videoId": "rFNDylrjn_w",
"kind": "youtube#videoTrainability",
"etag": "oXToFpOwrHWvoiN1YbOa0tkzOn0",
"permitted": ["None"]
}