Hujjat

API hujjati

Barcha endpointlar faqat GETso'rovini qabul qiladi va application/json qaytaradi.

Baza manzil

https://meteo.gisdev.uz/api

Eng oddiy so'rov — kalitsiz
curl "https://meteo.gisdev.uz/api/weather/daily?latitude=41.31&longitude=69.28&date=2026-07-24"

Autentifikatsiya

Kalitni kabinetdan oling va har so'rovda Authorization sarlavhasida yuboring.

Kalit bilan so'rov
curl -H "Authorization: Bearer agw_live_..." \
  "https://meteo.gisdev.uz/api/weather/history?latitude=41.31&longitude=69.28&start_date=2026-07-20&end_date=2026-07-24"

Sinab ko'rish uchun ?api_key= parametri ham ishlaydi, lekin u server jurnallariga tushadi — ishchi kodda sarlavhadan foydalaning.

Limitlar

Har tarifda kunlik so'rovlar soni cheklangan. Hisob barcha kalitlar bo'yicha umumiy va har kuni yarim tunda noldan boshlanadi. Joriy holat kabinetda ko'rinadi, tariflar — narxlar sahifasida.

Xato javoblari

KodNomiQachon
400Bad RequestParametr noto'g'ri yoki koordinata O'zbekiston hududidan tashqarida
401UnauthorizedKalit yo'q yoki noto'g'ri
404Not FoundSo'ralgan sana va nuqta uchun ma'lumot topilmadi
429Too Many RequestsKunlik limit tugadi
401 — kalit yo'q
{
  "detail": "Bu endpoint uchun API kalit kerak. Kabinetdan kalit oling va 'Authorization: Bearer <kalit>' sarlavhasida yuboring."
}
429 — kunlik limit tugadi
{
  "detail": "Request was throttled. Expected available in 58967 seconds."
}

Javobda Retry-Aftersarlavhasi bo'ladi — qayta urinishgacha necha soniya qolgani.

Endpointlar

GET/weather/dailyKalit ixtiyoriy

Kunlik ma'lumot

Bitta koordinata va sana uchun kunlik yozuv. Koordinata eng yaqin 0.1° (~10 km) katak markaziga bog'lanadi.

ParametrTuriMajburiyIzoh
latitudefloatHaO'zbekiston chegarasida
longitudefloatHaO'zbekiston chegarasida
dateYYYY-MM-DDHaBazada mavjud sana
So'rov
curl "https://meteo.gisdev.uz/api/weather/daily?latitude=41.31&longitude=69.28&date=2026-07-24"
Javob
{
  "date": "2026-07-24",
  "requested_point": { "latitude": 41.31, "longitude": 69.28 },
  "temperature":   { "min": 19.08, "max": 32.56, "mean": 26.55, "unit": "C" },
  "humidity":      { "mean": 41.63, "unit": "percent" },
  "precipitation": { "sum": 0.0, "unit": "mm" }
}
GET/weather/historyKalit majburiy

Sana oralig'i

Bir nuqta uchun bir necha kunlik ma'lumot. Oraliq ko'pi bilan 366 kun.

ParametrTuriMajburiyIzoh
latitudefloatHaO'zbekiston chegarasida
longitudefloatHaO'zbekiston chegarasida
start_dateYYYY-MM-DDHaOraliq boshi (kiritiladi)
end_dateYYYY-MM-DDHaOraliq oxiri (kiritiladi)
So'rov
curl -H "Authorization: Bearer agw_live_..." \
  "https://meteo.gisdev.uz/api/weather/history?latitude=41.31&longitude=69.28&start_date=2026-07-20&end_date=2026-07-24"
Javob
{
  "requested_point": { "latitude": 41.31, "longitude": 69.28 },
  "count": 3,
  "days": [
    {
      "date": "2026-07-22",
      "temperature":   { "min": 21.89, "max": 31.32, "mean": 26.73, "unit": "C" },
      "humidity":      { "mean": 37.3, "unit": "percent" },
      "precipitation": { "sum": 0.0, "unit": "mm" }
    },
    {
      "date": "2026-07-23",
      "...": "har kun uchun yuqoridagi shakldagi obyekt"
    }
  ]
}

Javob maydonlari

temperature
min, max, mean — °C, yer sathidan 2 m balandlikda.
humidity
Faqat mean— foizda. Eng past va eng yuqori namlik berilmaydi: ular kun davomida turli soatlarda kuzatiladi va kunlik qiymat sifatida chalg'itardi.
precipitation
sum— bir kunda tushgan yog'in, mm.
null qiymatlar
Maydon nullbo'lishi mumkin — o'sha ko'rsatkich shu kun uchun mavjud emas degani.