Do'ppim Do'ppim API
Do'ppim API · hujjatlar

API'dan foydalanish oddiy va tezkor

Valyuta kursi, ob-havo, ijtimoiy tarmoqlardan media yuklash va musiqa qidiruv — barchasi bitta oddiy HTTP so'rov orqali, autentifikatsiyasiz ishlaydi.

Barcha xizmatlar faol
Format: JSON
Token talab qilinmaydi
so'rov
$
{ "status": "ok", "valyuta": "USD", "kurs": 12750.43 }

Valyuta kursi

O'zbekiston Markaziy banki asosidagi joriy valyuta kurslarini qaytaradi. Bitta valyuta yoki barcha valyutalar ro'yxatini so'rash mumkin.

GET /api?kurs=1&valyuta=USD

So'rov parametrlari

ParametrTurIzoh
kursmajburiyintHar doim 1 qiymatida yuboriladi — bu endpointni faollashtiradi.
valyutaixtiyoriystringISO kod (masalan USD, EUR, RUB). Berilmasa, barcha valyutalar ro'yxati qaytadi.

So'rov namunasi

curl -s "https://api.doppim.uz/api?kurs=1&valyuta=USD"
const res = await fetch('https://api.doppim.uz/api?kurs=1&valyuta=USD');
const data = await res.json();
console.log(data);
<?php
$json = file_get_contents('https://api.doppim.uz/api?kurs=1&valyuta=USD');
$data = json_decode($json, true);
print_r($data);

Javob

200 OK
{ "status": "ok", "valyuta": "USD", "kurs": 12750.43, "sana": "2026-09-02" }

Ob-havo

Berilgan shahar bo'yicha joriy ob-havo ma'lumotlarini (harorat, namlik, shamol tezligi) qaytaradi.

GET /api?ob-havo=1&shahar=Tashkent

So'rov parametrlari

ParametrTurIzoh
ob-havomajburiyintHar doim 1 qiymatida yuboriladi.
shaharmajburiystringLotin harflarida shahar nomi (masalan Tashkent, Samarkand).

So'rov namunasi

curl -s "https://api.doppim.uz/api?ob-havo=1&shahar=Tashkent"
const res = await fetch('https://api.doppim.uz/api?ob-havo=1&shahar=Tashkent');
const data = await res.json();
<?php
$data = json_decode(file_get_contents('https://api.doppim.uz/api?ob-havo=1&shahar=Tashkent'), true);

Javob

200 OK400 shahar topilmadi
{ "status": "ok", "shahar": "Tashkent", "harorat": 27, "namlik": 41, "shamol": 3.2 }

Media yuklovchi

Instagram, TikTok, YouTube kabi manbalardagi ochiq havola bo'yicha video yoki rasmni to'g'ridan-to'g'ri yuklab olish havolasini qaytaradi.

GET /api?url=<havola>

So'rov parametrlari

ParametrTurIzoh
urlmajburiystringURL-encode qilingan manba havolasi (Instagram, TikTok, YouTube va h.k).
url qiymati albatta encodeURIComponent() orqali kodlanishi kerak, aks holda havoladagi & va ? belgilari so'rovni buzadi.

So'rov namunasi

curl -s "https://api.doppim.uz/api?url=https%3A%2F%2Fwww.instagram.com%2Freel%2Fxxxxx%2F"
const link = encodeURIComponent('https://www.instagram.com/reel/xxxxx/');
const res = await fetch(`https://api.doppim.uz/api?url=${link}`);
const data = await res.json();
<?php
$link = urlencode('https://www.instagram.com/reel/xxxxx/');
$data = json_decode(file_get_contents("https://api.doppim.uz/api?url={$link}"), true);

Javob

200 OK400 havola qo'llab-quvvatlanmaydi
{ "status": "ok", "manba": "instagram", "sarlavha": "...", "yuklab_olish": "https://cdn.doppim.uz/media/xxxxx.mp4" }

Musiqa qidiruv

Nomi, matni yoki ijrochisi bo'yicha musiqa qidiradi va topilgan har bir qo'shiq uchun keyingi bosqichda kerak bo'ladigan id ni qaytaradi.

GET /api?music=<matn>

So'rov parametrlari

ParametrTurIzoh
musicmajburiystringQo'shiq nomi yoki ijrochi ismi bo'yicha qidiruv so'rovi.

So'rov namunasi

curl -s "https://api.doppim.uz/api?music=sardor+rahimxon"
const q = encodeURIComponent('sardor rahimxon');
const res = await fetch(`https://api.doppim.uz/api?music=${q}`);
const data = await res.json();
<?php
$q = urlencode('sardor rahimxon');
$data = json_decode(file_get_contents("https://api.doppim.uz/api?music={$q}"), true);

Javob

200 OK
{ "status": "ok", "natijalar": [ { "id": "a1b2c3", "nomi": "...", "ijrochi": "...", "davomiylik": "03:24" } ] }
Qidiruvdan olingan id ni Musiqa yuklash endpointida ishlating.

Musiqa yuklash

Qidiruv natijasidagi id asosida MP3 faylni to'g'ridan-to'g'ri yuklab olish havolasini qaytaradi. Token talab qilinmaydi.

GET /api?mode=download&id=<id>

So'rov parametrlari

ParametrTurIzoh
modemajburiystringHar doim download qiymatida yuboriladi.
idmajburiystringMusiqa qidiruv natijasidan olingan noyob identifikator.

So'rov namunasi

curl -sL -o musiqa.mp3 "https://api.doppim.uz/api?mode=download&id=a1b2c3"
const res = await fetch('https://api.doppim.uz/api?mode=download&id=a1b2c3');
const blob = await res.blob();
<?php
file_put_contents('musiqa.mp3', file_get_contents('https://api.doppim.uz/api?mode=download&id=a1b2c3'));

Javob

200 · audio/mpeg oqimi400 id topilmadi

Muvaffaqiyatli so'rovda JSON emas, balki audio/mpeg turidagi MP3 faylning o'zi qaytariladi.

Umumiy API (v2)

Kengaytirilgan va yangi qo'shilayotgan xizmatlar shu yo'nalish ostida joylashadi. Har bir sub-endpoint alohida hujjatlashtiriladi va bu yerga qo'shib boriladi.

GET /api/v2/<xizmat>
Bu yo'nalish faol rivojlanmoqda. Yangi xizmat qo'shilganda, u shu bo'limga alohida kichik hujjat sifatida qo'shiladi.

Xato kodlari

Barcha endpointlar bir xil formatdagi xato tuzilmasidan foydalanadi, shuning uchun xatolarni bitta joyda qayta ishlashingiz mumkin.

KodMa'noSabab
200MuvaffaqiyatliSo'rov to'g'ri bajarildi.
400Noto'g'ri so'rovMajburiy parametr yo'q yoki qiymati noto'g'ri.
500Server xatosiTashqi manba (bank, ob-havo provayderi va h.k) javob bermadi.

Xato javob tuzilmasi

{ "status": "error", "xabar": "shahar parametri kiritilmagan" }