Adres Yönetim Paneli

Türkiye Konum Veritabanı Yönetim Sistemi

Varsayılan: admin / Admin123!

Gösterge Paneli

En Çok İlçesi Olan İller
Son Kayıtlar
    İller
    Plakaİl AdıİlçeDurumİşlem
    İlçeler
    İlİlçe AdıMahalleDurumİşlem
    Mahalleler
    İlİlçeMahallePostaSokakDurumİşlem
    Sokaklar
    İlİlçeMahalleSokakTipDurumİşlem
    API İstek Logları
    ZamanIPKullanıcıMetodEndpointDurumSüreDetay
    Güvenlik Logları
    ZamanSeviyeTipIPKullanıcıDetay
    Otomatik Eklenen Adresler
    Müşteriler listede bulamadığı mahalle/sokağı yazdığında sistem otomatik olarak veritabanına ekler.
    ZamanSiteMahalle DurumuSokak Durumuİlçe ID
    IP Bazlı Trafik (Son 24 Saat)
    IP AdresiToplam İstekFarklı EndpointHatalıOrt. Yanıtİşlem
    Engelli IP'ler
    IPSebepİşlem
    Hızlı IP Engelleme
    Kullanıcı Yönetimi
    IDKullanıcı AdıE-postaAd SoyadRolDurumSon GirişAktif TokenToplam İstekİşlem
    Adım 1: Dosya Yükle
    Desteklenen: SQL, CSV, JSON (max 300MB)

    Dosyayı buraya sürükle veya tıklayarak seç

    SQL (MySQL/PostgreSQL dump), CSV veya JSON

    Tehlikeli Bölge
    API Kaynağı Ayarları
    Adres verisi çekilecek API'nin temel URL'i. Sonunda / olmasın.

    mebularts/tr-adres-api kaynağından güncel Türkiye adres verilerini çeker. Sadece yeni veya değişen kayıtları günceller — mevcut verileriniz korunur.
    Kaynak: 81 İl, 973 İlçe, 61.182 Mahalle, 1.254.406 Sokak/Cadde

    Senkronizasyon

    Veya tek tek senkronize et (sıralı yapmanız önerilir):

    Tek il senkronize et (test amaçlı):

    API Kullanım Rehberi

    Dışarıdan veri çekmek isteyen kullanıcılar aşağıdaki adımları izlemelidir. Kullanıcı adı ve şifre olmadan hiçbir endpoint'e erişilemez.

    1. Token Alma (Login)
    POST /api/auth.php?action=login
    Content-Type: application/json
    
    {
      "kullanici_adi": "kullaniciadiniz",
      "sifre": "sifreniz"
    }
    
    // Yanıt:
    {
      "access_token": "eyJ...",
      "refresh_token": "a3f8...",
      "suresi": 86400
    }
    2. Veri Çekme (Token ile)
    GET /api/iller.php
    Authorization: Bearer eyJ...TOKEN_BURAYA...
    
    GET /api/ilceler.php?il_kodu=34
    Authorization: Bearer eyJ...TOKEN_BURAYA...
    
    GET /api/mahalleler.php?ilce_kodu=5
    Authorization: Bearer eyJ...TOKEN_BURAYA...
    
    GET /api/sokaklar.php?mahalle_kodu=12
    Authorization: Bearer eyJ...TOKEN_BURAYA...
    3. Token Yenileme
    POST /api/auth.php?action=refresh
    Content-Type: application/json
    
    {
      "refresh_token": "a3f8...REFRESH_TOKEN..."
    }
    4. cURL Örnekleri
    # Token al
    curl -X POST https://SITE_ADRESINIZ/api/auth.php?action=login \
      -H "Content-Type: application/json" \
      -d '{"kullanici_adi":"api_user","sifre":"guclu_sifre"}'
    
    # İlleri çek
    curl https://SITE_ADRESINIZ/api/iller.php \
      -H "Authorization: Bearer TOKEN_BURAYA"
    
    # İstanbul ilçelerini çek
    curl "https://SITE_ADRESINIZ/api/ilceler.php?il_kodu=34" \
      -H "Authorization: Bearer TOKEN_BURAYA"
    
    # Kadıköy mahallelerini çek
    curl "https://SITE_ADRESINIZ/api/mahalleler.php?ilce_kodu=5" \
      -H "Authorization: Bearer TOKEN_BURAYA"
    
    # Arama
    curl "https://SITE_ADRESINIZ/api/sokaklar.php?search=atatürk" \
      -H "Authorization: Bearer TOKEN_BURAYA"
    5. PHP Örneği
    <?php
    // 1. Token al
    $ch = curl_init('https://SITE/api/auth.php?action=login');
    curl_setopt_array($ch, [
        CURLOPT_POST => true,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
        CURLOPT_POSTFIELDS => json_encode([
            'kullanici_adi' => 'api_user',
            'sifre' => 'guclu_sifre'
        ])
    ]);
    $login = json_decode(curl_exec($ch), true);
    $token = $login['access_token'];
    
    // 2. Veri çek
    $ch = curl_init('https://SITE/api/iller.php');
    curl_setopt_array($ch, [
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HTTPHEADER => ["Authorization: Bearer $token"]
    ]);
    $iller = json_decode(curl_exec($ch), true);
    print_r($iller);
    6. JavaScript Örneği
    // 1. Token al
    const login = await fetch('/api/auth.php?action=login', {
        method: 'POST',
        headers: { 'Content-Type': 'application/json' },
        body: JSON.stringify({
            kullanici_adi: 'api_user',
            sifre: 'guclu_sifre'
        })
    }).then(r => r.json());
    
    const token = login.access_token;
    
    // 2. Veri çek
    const iller = await fetch('/api/iller.php', {
        headers: { 'Authorization': `Bearer ${token}` }
    }).then(r => r.json());
    
    console.log(iller.data); // 81 il
    Endpoint Tablosu
    EndpointMetodMin. RolAçıklama
    auth.php?action=loginPOST-Token al
    auth.php?action=refreshPOST-Token yenile
    iller.phpGETviewerİl listesi (?search=&page=&limit=)
    ilceler.phpGETviewerİlçe listesi (?il_kodu=&search=)
    mahalleler.phpGETviewerMahalle listesi (?ilce_kodu=&il_kodu=&search=)
    sokaklar.phpGETviewerSokak listesi (?mahalle_kodu=&ilce_kodu=&search=)
    iller.phpPOST/PUTeditorİl ekle/güncelle
    *.php?id=XDELETEadminKayıt sil
    Hata Kodları
    401Token yok / geçersiz / süresi dolmuş → Yeniden login yapın
    403Yetki yetersiz veya IP engelli
    423Hesap kilitli (çok fazla hatalı giriş)
    429Rate limit aşıldı (dakikada 100 istek)