Hati za API za Downloader.org
Kwa maelezo kamili ya bei ya API bofya hapa .
API ya Downloader.org inapangishwa downloader.org
na huwapa wasanidi programu zana rahisi na za kutegemewa za kuunganisha huduma zetu za upakuaji kwenye programu yoyote.
Uthibitishaji
Ili kufikia API ya Downloader.org, lazima ujumuishe ufunguo wako wa kipekee wa API. Unaweza kupata ufunguo wa API kwa kujiandikisha na anwani yako ya barua pepe. Weka ufunguo wako wa API salama na usiwahi kuushiriki hadharani.
Maombi yote yanahitaji kichwa cha Authorization
chenye ufunguo wako wa API katika umbizo: YOUR_API_KEY
, ambapo YOUR_API_KEY
inapatikana kutoka kwa ukurasa wa akaunti yako ya Downloader.org.
Kwa usalama, maombi yote ya API lazima yatumwe kupitia HTTPS ili kuhakikisha utumaji uliosimbwa na salama wa data yako.
Pakua URL yoyote ya midia
Ukiwa na API ya Downloader.org unaweza kutoa na kupakua maudhui kutoka kwa vyanzo vingi. Hii hurahisisha kuunganisha kipakuaji chenye nguvu cha midia kwenye miradi yako mwenyewe.
Ombi la mfano:
Badilisha YOUR_API_KEY
na ufunguo wako wa kipekee wa API (unapatikana katika akaunti yako ya Downloader.org) na ubadilishe URL
na rasilimali ya midia unayotaka kupakua.
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"