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
  ]
}


İ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.