API Dokümantasyonu
OktaSoft REST API — Hava Durumu, Tarım ve IoT veri servisleri.
Hesap oluşturun — kayıt formunu doldurun, email doğrulama linkine tıklayın.
Token üretin — Token'larım sayfasından yeni token oluşturun. Scope seçin: read / write / full.
İlk isteği gönderin:
Tüm /api/v1/* endpoint'leri (ping hariç) Bearer token gerektirir.
Her istekte Authorization header'ı gönderilmelidir:
Token'larınızı Token'larım sayfasından yönetin. Her hesaba birden fazla token ekleyebilirsiniz.
| Özellik | Free | Starter | Pro | Enterprise |
|---|---|---|---|---|
| Fiyat | 0 ₺ | 99 ₺/ay | 299 ₺/ay | Teklif |
| Günlük İstek | 1,000 | 10,000 | 100,000 | Sınırsız |
| /weather/current | ✓ | ✓ | ✓ | ✓ |
| /weather/forecast, /hourly, /historical | — | ✓ | ✓ | ✓ |
| /agri/field, /soil, /et0, /frost, /forecast | — | ✓ | ✓ | ✓ |
| /agri/irrigation, /gdd | — | — | ✓ | ✓ |
| /iot/* (tüm IoT endpoint'leri) | — | — | ✓ | ✓ |
Planınızı yükseltmek için: /plan
| Scope | Açıklama | Kullanım |
|---|---|---|
| read | Sadece GET endpoint'leri | Salt okunur dashboard, veri görüntüleme |
| write | POST + GET endpoint'leri | IoT cihazından sensör yazma (/iot/write) |
| full | Tüm endpoint'ler | Tam erişim gerektiğinde |
| HTTP | error | Açıklama |
|---|---|---|
| 200 | — | Başarılı |
| 401 | unauthorized | Authorization header eksik |
| 401 | invalid_token | Token geçersiz veya devre dışı |
| 403 | plan_required | Bu endpoint için planınız yetersiz |
| 403 | insufficient_scope | Token scope'u yetki vermiyor |
| 404 | not_found | İstenen kayıt bulunamadı |
| 422 | invalid_data | Gönderilen veri geçersiz |
| 429 | rate_limit_exceeded | Günlük istek limitine ulaşıldı (gece 00:00 UTC sıfırlanır) |
| 502 | query_failed / write_failed | Upstream servis (InfluxDB / Open-Meteo) hatası |
Örnek 403 yanıtı
Yanıt
Örnek Yanıt
Örnek Yanıt
Query Parametreleri
| Parametre | Zorunlu | Açıklama |
|---|---|---|
| city | city veya lat/lon | Şehir adı (ör. "Istanbul", "Ankara") |
| lat | city veya lat/lon | Enlem (ör. 39.92) |
| lon | city veya lat/lon | Boylam (ör. 32.85) |
Örnek İstek
Örnek Yanıt
Query Parametreleri
| Parametre | Zorunlu | Varsayılan | Açıklama |
|---|---|---|---|
| city | city veya lat/lon | — | Şehir adı |
| lat | city veya lat/lon | — | Enlem |
| lon | city veya lat/lon | — | Boylam |
| days | Hayır | 7 | Tahmin günü sayısı (1–16) |
Örnek Yanıt (kısaltılmış)
Query Parametreleri
| Parametre | Zorunlu | Varsayılan | Açıklama |
|---|---|---|---|
| city | city veya lat/lon | — | Şehir adı |
| lat / lon | city veya lat/lon | — | Koordinat |
| date | Hayır | Bugün | YYYY-MM-DD formatında tarih |
Örnek Yanıt (kısaltılmış)
Query Parametreleri
| Parametre | Zorunlu | Varsayılan | Açıklama |
|---|---|---|---|
| city / lat / lon | Evet | — | Konum |
| start_date | Hayır | 7 gün önce | YYYY-MM-DD |
| end_date | Hayır | Dün | YYYY-MM-DD |
Örnek Yanıt (kısaltılmış)
Query Parametreleri
| Parametre | Zorunlu | Açıklama |
|---|---|---|
| city / lat / lon | Evet | Tarla konumu |
Örnek Yanıt
Query Parametreleri
| Parametre | Zorunlu | Açıklama |
|---|---|---|
| city / lat / lon | Evet | Konum |
Örnek Yanıt
Query Parametreleri
| Parametre | Zorunlu | Varsayılan | Açıklama |
|---|---|---|---|
| city / lat / lon | Evet | — | Konum |
| days | Hayır | 7 | Gün sayısı (1–16) |
Örnek Yanıt
Risk Seviyeleri
| Seviye | Min Sıcaklık | Açıklama |
|---|---|---|
| critical | ≤ 0°C | Don oluşumu, acil önlem gerekli |
| high | ≤ 2°C | Yüksek don riski |
| medium | ≤ 4°C | Orta risk, izle |
| low | ≤ 6°C | Düşük risk |
| none | > 6°C | Don riski yok |
Örnek Yanıt
Query Parametreleri
| Parametre | Zorunlu | Varsayılan | Açıklama |
|---|---|---|---|
| city / lat / lon | Evet | — | Konum |
| days | Hayır | 7 | Gün sayısı |
Aciliyet Seviyeleri
| Aciliyet | Net Su İhtiyacı |
|---|---|
| none | ≤ 0 mm (yağmur yeterliydi) |
| low | 0–2 mm |
| medium | 2–5 mm |
| high | > 5 mm |
Örnek Yanıt
Query Parametreleri
| Parametre | Zorunlu | Varsayılan | Açıklama |
|---|---|---|---|
| city / lat / lon | Evet | — | Konum |
| days | Hayır | 7 | Gün sayısı |
| base_temp | Hayır | 10.0 | Baz sıcaklık °C (buğday=0, mısır=10) |
GDD Formülü
Örnek Yanıt
Query Parametreleri
| Parametre | Zorunlu | Açıklama |
|---|---|---|
| city / lat / lon | Evet | Konum |
Örnek Yanıt
user_id etiketi ile filtrelenir — diğer kullanıcıların verisi görünmez.
Tüm endpoint'ler Pro+ plan gerektirir.
Request Body (JSON)
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
| device_id | string | Evet | Cihaz kimliği (ör. "TR-FLD-001"), max 100 karakter |
| measurements | object | Evet | Alan→değer sözlüğü (sayısal değerler) |
| timestamp | string | Hayır | ISO 8601 (ör. "2026-04-06T14:00:00Z"), boşsa sunucu zamanı |
Desteklenen Alanlar
| Alan | Birim | Açıklama |
|---|---|---|
| soil_temp | °C | Toprak sıcaklığı (0 cm) |
| soil_temp_6cm | °C | Toprak sıcaklığı (6 cm) |
| soil_temp_18cm | °C | Toprak sıcaklığı (18 cm) |
| soil_moisture | m³/m³ | Toprak nemi (hacimsel) |
| air_temp | °C | Hava sıcaklığı |
| humidity | % | Bağıl nem |
| dew_point | °C | Çiğ noktası |
| pressure_hpa | hPa | Atmosfer basıncı |
| wind_speed_ms | m/s | Rüzgar hızı |
| rainfall_mm | mm | Yağış miktarı |
| uv_index | — | UV indeksi |
| light_lux | lux | Işık yoğunluğu |
| co2_ppm | ppm | CO₂ konsantrasyonu |
| battery_pct | % | Batarya yüzdesi |
| rssi | dBm | Sinyal gücü |
Örnek İstek
Örnek Yanıt
Query Parametreleri
| Parametre | Varsayılan | Açıklama |
|---|---|---|
| device_id | — | Cihaz ID filtresi (boşsa tüm cihazlar) |
| start | -24h | Başlangıç: -24h, -7d, 2026-04-01T00:00:00Z |
| end | now() | Bitiş: now() veya ISO tarih |
| window | — | Gruplama aralığı: 5m, 1h, 1d (ortalama alır) |
| fields | — | Virgülle ayrılmış alan listesi: soil_temp,humidity |
Örnek İstek
Örnek Yanıt
Örnek Yanıt
Path Parametresi
| Parametre | Açıklama |
|---|---|
| device_id | Cihaz kimliği (ör. TR-FLD-001) |
Örnek İstek
Örnek Yanıt
Örnek İstek
Örnek Yanıt