Downloader API დოკუმენტაცია
API-ის ფასების სრული დეტალებისთვის დააჭირეთ აქ .
Downloader API განთავსებულია downloader.org ზე და დეველოპერებს სთავაზობს მარტივ და საიმედო ინსტრუმენტებს ჩვენი ჩამოტვირთვის სერვისების ნებისმიერ აპლიკაციაში ინტეგრირებისთვის.
ავთენტიფიკაცია
Downloader API-ზე წვდომისთვის, თქვენ უნდა შეიყვანოთ თქვენი უნიკალური API გასაღები. API გასაღების მიღება შეგიძლიათ თქვენი ელექტრონული ფოსტის მისამართით რეგისტრაციით. შეინახეთ თქვენი API გასაღები უსაფრთხოდ და არასოდეს გააზიაროთ ის საჯაროდ.
ყველა მოთხოვნას სჭირდება Authorization სათაური თქვენი API გასაღებით შემდეგ ფორმატში: YOUR_API_KEY , სადაც YOUR_API_KEY ხელმისაწვდომია თქვენი Downloader ანგარიშის გვერდიდან.
უსაფრთხოების მიზნით, ყველა API მოთხოვნა უნდა გაიგზავნოს HTTPS-ის საშუალებით, რათა უზრუნველყოფილი იყოს თქვენი მონაცემების დაშიფრული და უსაფრთხო გადაცემა.
ჩამოტვირთეთ ნებისმიერი მედია URL
Downloader API-ის საშუალებით შეგიძლიათ ამოიღოთ და ჩამოტვირთოთ კონტენტი მრავალი წყაროდან. ეს აადვილებს ძლიერი მედია ჩამოტვირთვის პროგრამის ინტეგრირებას თქვენს პროექტებში.
მოთხოვნის მაგალითი:
შეცვალეთ YOUR_API_KEY თქვენი უნიკალური API გასაღებით (ხელმისაწვდომია თქვენს Downloader ანგარიშზე) და URL შეცვალეთ იმ მედია რესურსით, რომლის ჩამოტვირთვაც გსურთ.
from time import sleep
import requests
headers = {"Authorization": "API_KEY"}
r = requests.post(
url="https://downloader.org/api/v1/submit/",
headers=headers,
data={
"url": "URL"
}
)
if r.status_code == 200:
response = r.json()
uuid = response.get("uuid")
results = None
while not results:
r = requests.post(
url="https://downloader.org/api/v1/results/",
headers=headers,
data={
"uuid": uuid
}
)
if r.status_code == 200:
response = r.json()
if response.get("loading"):
print("processing ...")
sleep(5)
continue
results = response.get("results")
print("Download links")
print(results)
break
else:
print("Error getting result:")
print(f"Status code: {r.status_code}")
print(f"Response: {r.text}")
break
else:
print("Error submitting your URL:")
print(f"Status code: {r.status_code}")
print(f"Response: {r.text}")const axios = require('axios');
const sleep = ms => new Promise(resolve => setTimeout(resolve, ms));
async function submitAndFetchResults() {
const headers = {
"Authorization": "API_KEY",
"Content-Type": "application/x-www-form-urlencoded"
};
try {
// Submit URL
const submitResponse = await axios.post(
'https://downloader.org/api/v1/submit/',
new URLSearchParams({
url: "URL"
}),
{ headers }
);
if (submitResponse.status === 200) {
const uuid = submitResponse.data.uuid;
let results = null;
while (!results) {
const resultResponse = await axios.post(
'https://downloader.org/api/v1/results/',
new URLSearchParams({
uuid: uuid
}),
{ headers }
);
if (resultResponse.status === 200) {
if (resultResponse.data.loading) {
console.log('processing ...');
await sleep(5000);
continue;
}
results = resultResponse.data.results;
console.log('Download links');
console.log(results);
break;
} else {
console.log('Error getting result:');
console.log(`Status code: ${resultResponse.status}`);
console.log(`Response: ${resultResponse.data}`);
break;
}
}
} else {
console.log('Error submitting your URL:');
console.log(`Status code: ${submitResponse.status}`);
console.log(`Response: ${submitResponse.data}`);
}
} catch (error) {
if (error.response) {
console.error('Error response from server:');
console.error(`Status code: ${error.response.status}`);
console.error(error.response.data);
} else {
console.error('An error occurred:', error.message);
}
}
}
submitAndFetchResults();
<?php
function sleep_ms($milliseconds) {
usleep($milliseconds * 1000); // usleep usa microsegundos
}
function postRequest($url, $headers, $data) {
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
return [$statusCode, $response];
}
// Setup
$apiKey = "API_KEY";
$headers = [
"Authorization: $apiKey",
"Content-Type: application/x-www-form-urlencoded"
];
// Submit URL
list($statusCode, $responseBody) = postRequest(
"https://downloader.org/api/v1/submit/",
$headers,
["url" => "URL"]
);
if ($statusCode === 200) {
$response = json_decode($responseBody, true);
$uuid = $response['uuid'] ?? null;
$results = null;
while (!$results) {
list($resultStatusCode, $resultBody) = postRequest(
"https://downloader.org/api/v1/results/",
$headers,
["uuid" => $uuid]
);
if ($resultStatusCode === 200) {
$resultData = json_decode($resultBody, true);
if (!empty($resultData['loading'])) {
echo "processing ...\n";
sleep_ms(5000); // 5 segundos
continue;
}
$results = $resultData['results'] ?? null;
echo "Download links:\n";
print_r($results);
break;
} else {
echo "Error getting result:\n";
echo "Status code: $resultStatusCode\n";
echo "Response: $resultBody\n";
break;
}
}
} else {
echo "Error submitting your URL:\n";
echo "Status code: $statusCode\n";
echo "Response: $responseBody\n";
}
?>
// Submit URL
// You will get the response UUID
curl -X POST "https://downloader.org/api/v1/submit/" \
-H "Authorization: API_KEY" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "url=URL"
// Fetch results
curl -X POST "https://downloader.org/api/v1/results/" \
-H "Authorization: API_KEY" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "uuid=UUID"
გამოგვყევით BlueSky-ზე