Deprem.cc API Dokümantasyonu
Deprem.cc API, Türkiye ve çevresindeki deprem verilerine programatik erişim sağlayan bir RESTful API hizmetidir.
Önemli: API hizmetimiz araştırma, eğitim ve geliştirme amaçlıdır. Verilerin doğruluğu garanti edilmez. Kritik sistemlerde kullanmadan önce lütfen resmi kaynaklarla doğrulayın.
Temel URL
https://deprem.cc/api/
Genel Bilgiler
- Tüm istekler GET metoduyla yapılmalıdır.
- Yanıtlar JSON formatında döner.
- Tarih formatı ISO 8601 standardındadır (YYYY-MM-DD HH:MM:SS).
- Deprem büyüklükleri ML (Richter) veya Mw (Moment) ölçeğindedir ve kaynak kurumun sağladığı değerdir.
Kimlik Doğrulama
API'ye erişmek için bir API anahtarı gereklidir. API anahtarınızı isteğinize iki şekilde ekleyebilirsiniz:
1. URL Parametresi Olarak
https://deprem.cc/api/?endpoint=recent&api_key=SİZİN_API_ANAHTARINIZ
2. Authorization Header Olarak
Authorization: Bearer SİZİN_API_ANAHTARINIZ
Not: API anahtarınızı güvenli tutun ve paylaşmayın. API anahtarı olmadan yalnızca yardım ve dokümantasyon endpointlerine erişebilirsiniz.
İstek Limitleri
API istekleriniz, hizmetin sağlıklı çalışması için limitlendirilmiştir. Varsayılan limit günlük 1000 istektir.
Limit aşımı durumunda 429 Too Many Requests
yanıt kodu alırsınız. Rate limit hakkında bilgi almak için yanıt başlıklarına bakabilirsiniz:
X-RateLimit-Limit: 1000 X-RateLimit-Remaining: 985 X-RateLimit-Reset: 1625097600
Daha yüksek istek limitleri için api@deprem.cc adresine başvurabilirsiniz.
Son Depremler Endpoint
Bu endpoint, en son depremleri listeler.
URL
https://deprem.cc/api/?endpoint=recent
Parametreler
Parametre | Zorunlu | Açıklama | Varsayılan |
---|---|---|---|
limit |
Hayır | Dönecek sonuç sayısı (maksimum 100) | 20 |
min_mag |
Hayır | Minimum büyüklük filtresi | 0 |
hours |
Hayır | Son kaç saatteki depremler (maksimum 168) | 24 |
source |
Hayır | Veri kaynağı (kandilli, afad, all) | all |
format |
Hayır | Yanıt formatı (json, geojson) | json |
Örnek İstek
https://deprem.cc/api/?endpoint=recent&limit=10&min_mag=4.0&hours=48&source=kandilli
Örnek Yanıt
{ "status": "success", "message": "Son depremler başarıyla getirildi.", "metadata": { "count": 5, "generated": "2025-05-31T21:59:59+03:00", "params": { "limit": 10, "min_mag": 4, "hours": 48, "source": "kandilli" } }, "data": [ { "id": "1234", "zaman": "2025-05-31 18:30:22", "lat": "38.5234", "lon": "39.2178", "derinlik": "7.6", "buyukluk": "4.5", "konum": "ELAZIG", "kaynak": "kandilli" }, // ... diğer sonuçlar ] }
Deprem Arama Endpoint
Bu endpoint, belirli kriterlere göre deprem araması yapar.
URL
https://deprem.cc/api/?endpoint=search
Parametreler
Parametre | Zorunlu | Açıklama | Varsayılan |
---|---|---|---|
start_date |
Hayır | Başlangıç tarihi (YYYY-MM-DD) | 30 gün önce |
end_date |
Hayır | Bitiş tarihi (YYYY-MM-DD) | Bugün |
min_mag |
Hayır | Minimum büyüklük | 0 |
max_mag |
Hayır | Maksimum büyüklük | 10 |
min_depth |
Hayır | Minimum derinlik (km) | 0 |
max_depth |
Hayır | Maksimum derinlik (km) | 1000 |
location |
Hayır | Konum adı içeren depremler | - |
limit |
Hayır | Dönecek sonuç sayısı (maksimum 100) | 20 |
source |
Hayır | Veri kaynağı (kandilli, afad, all) | all |
format |
Hayır | Yanıt formatı (json, geojson) | json |
Örnek İstek
https://deprem.cc/api/?endpoint=search&start_date=2025-01-01&end_date=2025-05-31&min_mag=5.0&location=IZMIR
İstatistikler Endpoint
Bu endpoint, deprem istatistiklerini sunar.
URL
https://deprem.cc/api/?endpoint=stats
Parametreler
Parametre | Zorunlu | Açıklama | Varsayılan |
---|---|---|---|
period |
Hayır | İstatistik periyodu (daily, weekly, monthly, yearly) | monthly |
start_date |
Hayır | Başlangıç tarihi (YYYY-MM-DD) | 1 yıl önce |
end_date |
Hayır | Bitiş tarihi (YYYY-MM-DD) | Bugün |
min_mag |
Hayır | Minimum büyüklük | 0 |
group_by |
Hayır | Gruplama türü (magnitude, location, depth) | magnitude |
Örnek İstek
https://deprem.cc/api/?endpoint=stats&period=monthly&min_mag=3.0&group_by=location
Konum Bazlı Arama Endpoint
Bu endpoint, belirli bir coğrafi konuma yakın depremleri listeler.
URL
https://deprem.cc/api/?endpoint=location
Parametreler
Parametre | Zorunlu | Açıklama | Varsayılan |
---|---|---|---|
lat |
Evet | Enlem (Derece) | - |
lon |
Evet | Boylam (Derece) | - |
radius |
Hayır | Arama yarıçapı (km) | 100 |
days |
Hayır | Son kaç gündeki depremler (maksimum 365) | 30 |
min_mag |
Hayır | Minimum büyüklük | 0 |
limit |
Hayır | Dönecek sonuç sayısı (maksimum 100) | 20 |
format |
Hayır | Yanıt formatı (json, geojson) | json |
Örnek İstek
https://deprem.cc/api/?endpoint=location&lat=39.9208&lon=32.8541&radius=50&min_mag=3.0
API Anahtarı Alma
API anahtarı almak için giriş yapmalısınız. Henüz hesabınız yoksa, ücretsiz kayıt olabilirsiniz.
Giriş Yap
Kayıt Ol
API Kullanım Koşulları
- API verilerini kullanırken kaynak olarak Deprem.cc'yi belirtmelisiniz.
- API'yi kötüye kullanmak, istek limitlerini aşmak ve benzeri davranışlar API erişiminizin askıya alınmasına neden olabilir.
- Verilerin doğruluğu garanti edilmez. Veriler AFAD, Kandilli Rasathanesi ve diğer resmi kaynaklardan alınmaktadır.
- API kullanımı ücretsizdir, ancak aşırı yüklenme durumunda hizmet kısıtlanabilir.
Kod Örnekleri
// JavaScript ile API kullanımı (fetch kullanarak)
const apiKey = 'YOUR_API_KEY';
const apiUrl = 'https://deprem.cc/api/';
// Son depremler - Büyüklüğü 4+ olanlar
fetch(`${apiUrl}?endpoint=recent&min_mag=4.0&api_key=${apiKey}`)
.then(response => response.json())
.then(data => {
if (data.status === 'success') {
console.log('Son depremler:', data.data);
// Verileri işle...
} else {
console.error('Hata:', data.message);
}
})
.catch(error => console.error('API hatası:', error));
// PHP ile API kullanımı (cURL)
$apiKey = 'YOUR_API_KEY';
$apiUrl = 'https://deprem.cc/api/';
// Son depremler - Büyüklüğü 4+ olanlar
$url = $apiUrl . '?endpoint=recent&min_mag=4.0&api_key=' . $apiKey;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, false);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
if ($data['status'] === 'success') {
echo "Son depremler:\n";
foreach ($data['data'] as $deprem) {
echo $deprem['zaman'] . " - " . $deprem['konum'] . " - Büyüklük: " . $deprem['buyukluk'] . "\n";
}
} else {
echo "Hata: " . $data['message'];
}
# Python ile API kullanımı (requests kütüphanesi)
import requests
import json
api_key = 'YOUR_API_KEY'
api_url = 'https://deprem.cc/api/'
# Son depremler - Büyüklüğü 4+ olanlar
params = {
'endpoint': 'recent',
'min_mag': 4.0,
'api_key': api_key
}
response = requests.get(api_url, params=params)
data = response.json()
if data['status'] == 'success':
print('Son depremler:')
for deprem in data['data']:
print(f"{deprem['zaman']} - {deprem['konum']} - Büyüklük: {deprem['buyukluk']}")
else:
print(f"Hata: {data['message']}")
Hata Kodları
HTTP Kodu | Açıklama |
---|---|
200 OK | İstek başarılı. |
400 Bad Request | İstek parametreleri hatalı veya eksik. |
401 Unauthorized | API anahtarı geçersiz veya eksik. |
403 Forbidden | İstenen kaynağa erişim yetkiniz yok. |
404 Not Found | İstenen kaynak bulunamadı. |
429 Too Many Requests | İstek limiti aşıldı. |
500 Internal Server Error | Sunucu hatası oluştu. |