API Dokümanı

UdesQuake API, gerçek zamanlı deprem verilerine, sistem durumuna ve istatistiklere erişim sağlar. REST tabanlı API, güvenli ve ölçeklenebilir uygulamalar oluşturmak için tasarlanmıştır.

Hızlı Başlangıç

Başlamak için basit bir istek gönderin:

curl https://api.udesquake.com.tr/api/status

Python ile:

import requests response = requests.get('https://api.udesquake.com.tr/api/status') data = response.json() print(data)

API Anahtarı

API herkese açıktır; anahtarsız da kullanılabilir. Ücretsiz bir API anahtarı, isteklerinizi size bağlar ve istek sınırınızı yükseltir. Anahtarı X-API-Key başlığıyla gönderin:

X-API-Key: uqk_...
Anahtar nasıl alınır? Giriş yapın, Panelim sayfasında anahtar oluşturun. Anahtar yalnızca oluşturulduğunda bir kez gösterilir; en fazla 5 etkin anahtarınız olabilir ve istediğinizde iptal edebilirsiniz.

Status Endpoint

GET /api/status

Sistem durumunu ve mevcut deprem istatistiklerini döndürür. Kimlik doğrulama gerektirmez.

Request Örneği

curl https://api.udesquake.com.tr/api/status

Response Örneği

{ "status": "running", "active_events": 30, "event_count": 850, "uptime": "99.9%", "sources": ["AFAD", "Kandilli", "EMSC"] }

Response Alanları

Alan Tür Açıklama
status string Sistem durumu: running, maintenance
active_events number Şu anda aktif deprem olayları
event_count number Toplam izlenen deprem sayısı
uptime string Sistem çalışma süresi yüzdesi
sources array Aktif veri kaynakları listesi

Events Endpoint

GET /api/events

Son deprem olaylarının detaylı listesini döndürür. Anahtar gerekmez; isterseniz X-API-Key ekleyin.

Request Örneği

curl https://api.udesquake.com.tr/api/events \ -H "X-API-Key: uqk_..." \ -H "Content-Type: application/json"

Query Parameters

Parametre Tür Açıklama Default
limit number Kaç olayı döndüreceği (max: 500) 50
offset number Kaç olay atlayacağı (pagination) 0
magnitude_min number Minimum büyüklük filtresi 0
magnitude_max number Maksimum büyüklük filtresi 10

Response Örneği

{ "events": [ { "event_id": "eq_2026_07_25_001", "timestamp": 1785005995, "magnitude": 3.5, "latitude": 40.7128, "longitude": 29.0833, "depth": 18.2, "region": "İstanbul", "source": "Kandilli" } ], "total": 850, "timestamp": 1785005995 }

History Endpoint

GET /api/seismic_history

Belirli bir bölge ve zaman aralığı için deprem geçmişini döndürür.

Query Parameters

Parametre Tür Açıklama
region string Bölge adı (örn: İstanbul, İzmir)
days number Kaç günlük geçmiş (max: 365)

Location Update Endpoint

POST /api/location/update

Kullanıcı konumunu günceller. Konum spoofing algılaması yapılır.

Uyarı: Konumun GPS doğruluğu 100 metreden büyük ise (spoofing şüphesi) reddedilir.

Request Body

{ "latitude": 40.7128, "longitude": 29.0833, "accuracy": 15.5 }

İstek Sınırı

Sınır, tüm uç noktalar için ortaktır ve bir dakikalık kayan pencerede sayılır:

İstemciSınırPencere
Anahtarsız (IP başına)100 istek1 dakika
Geçerli API anahtarıyla500 istek1 dakika
Sınır aşılırsa: Sunucu 429 döner. Bir dakika bekleyip tekrar deneyin. Geçersiz ya da iptal edilmiş anahtar anonim sayılır.

Hata Kodları

Kod Mesaj Açıklama
200 OK İstek başarılı
400 Bad Request Geçersiz parametre
401 Unauthorized Token eksik veya geçersiz
429 Too Many Requests Rate limit aşılı
500 Internal Server Error Sunucu hatası

Destek & İletişim

API ile ilgili sorularınız için bize ulaşın:

Email Status
Sürüm: API v2.0 | Son Güncelleme: 2026-07-25