v1.0 API

EczaneAPI Dokümantasyonu

EczaneAPI, Türkiye genelindeki nöbetçi eczane verilerine programatik erişim sağlayan bir RESTful API servisidir. API'miz her gece 00:00'da güncellenerek en güncel nöbetçi eczane bilgilerini sunar.

Base URL

https://eczaneapi.com/api/v1

Response Format

application/json

Önemli Bilgi

Nöbetçi eczane verileri her gece 00:00'da (Türkiye saati) otomatik olarak güncellenir. Veriler 81 il ve tüm ilçeler için mevcuttur.

Kimlik Doğrulama

Tüm API isteklerinde X-API-Key header'ı gereklidir. API anahtarınızı dashboard'dan alabilirsiniz.

bash
curl -X GET "https://eczaneapi.com/api/v1/pharmacies/on-duty?city=istanbul" \
  -H "X-API-Key: eczane_api_xxxxx..."

Rate Limits & Kotalar

API kullanımınız planınıza göre sınırlandırılmıştır. Kota aşımında 429 hatası alırsınız.

PlanAylık LimitFiyat
Free200 istekÜcretsiz
Pro5.000 istek$5.99/ay
UnlimitedSınırsız$19.99/ay

Nöbetçi Eczaneler

GET
/pharmacies/on-duty

Belirtilen il ve/veya ilçedeki nöbetçi eczaneleri döndürür. Tarih belirtilmezse bugünkü nöbetçiler döner.

Query Parameters

ParametreTipZorunluAçıklama
citystring
Hayır
İl adı veya slug (örn: istanbul, İstanbul)
districtstring
Hayır
İlçe adı veya slug (örn: kadikoy)
datestring
Hayır
Tarih (YYYY-MM-DD formatı, varsayılan: bugün)

Örnek İstek

bash
GET /v1/pharmacies/on-duty?city=istanbul&district=kadikoy

Örnek Response

json
{
  "success": true,
  "data": {
    "date": "2024-12-26",
    "count": 3,
    "pharmacies": [
      {
        "id": "uuid-xxx",
        "name": "Şifa Eczanesi",
        "address": "Caferağa Mah. Moda Cad. No:45",
        "phone": "0216 345 67 89",
        "phone2": null,
        "location": {
          "latitude": 40.9876,
          "longitude": 29.0234
        },
        "city": {
          "id": "city-uuid",
          "name": "İstanbul",
          "slug": "istanbul"
        },
        "district": {
          "id": "district-uuid",
          "name": "Kadıköy",
          "slug": "kadikoy"
        },
        "duty": {
          "date": "2024-12-26T00:00:00.000Z",
          "startTime": null,
          "endTime": null,
          "isVerified": true
        }
      }
    ]
  },
  "meta": {
    "requestId": "api-key-id"
  }
}

Eczane Detayı

GET
/pharmacies/:pharmacyId

Belirtilen eczanenin detaylı bilgilerini ve yaklaşan nöbet tarihlerini döndürür.

Örnek Response

json
{
  "success": true,
  "data": {
    "id": "uuid-xxx",
    "name": "Şifa Eczanesi",
    "address": "Caferağa Mah. Moda Cad. No:45",
    "phone": "0216 345 67 89",
    "phone2": null,
    "email": "sifa@example.com",
    "ownerName": "Ecz. Ahmet Yılmaz",
    "location": {
      "latitude": 40.9876,
      "longitude": 29.0234
    },
    "city": {
      "id": "city-uuid",
      "name": "İstanbul",
      "slug": "istanbul"
    },
    "district": {
      "id": "district-uuid",
      "name": "Kadıköy",
      "slug": "kadikoy"
    },
    "is24Hour": false,
    "hasDelivery": true,
    "workingHours": {
      "monday": "08:30-19:00",
      "tuesday": "08:30-19:00"
    },
    "upcomingDuties": [
      {
        "date": "2024-12-28T00:00:00.000Z",
        "startTime": null,
        "endTime": null
      }
    ]
  }
}

İller

GET
/cities

Türkiye'deki tüm illeri, plaka kodları ve eczane/ilçe sayılarıyla birlikte listeler.

Örnek Response

json
{
  "success": true,
  "data": [
    {
      "id": "uuid-xxx",
      "name": "Adana",
      "slug": "adana",
      "plateCode": "01",
      "districtsCount": 15,
      "pharmaciesCount": 245
    },
    {
      "id": "uuid-yyy",
      "name": "İstanbul",
      "slug": "istanbul",
      "plateCode": "34",
      "districtsCount": 39,
      "pharmaciesCount": 3450
    }
  ]
}

İlçeler

GET
/cities/:citySlug/districts

Belirtilen ilin tüm ilçelerini ve eczane sayılarını listeler.

Örnek İstek

bash
GET /v1/cities/istanbul/districts

Örnek Response

json
{
  "success": true,
  "data": {
    "city": {
      "id": "city-uuid",
      "name": "İstanbul",
      "slug": "istanbul"
    },
    "districts": [
      {
        "id": "district-uuid-1",
        "name": "Kadıköy",
        "slug": "kadikoy",
        "pharmaciesCount": 156
      },
      {
        "id": "district-uuid-2",
        "name": "Üsküdar",
        "slug": "uskudar",
        "pharmaciesCount": 134
      }
    ]
  }
}

Hata Kodları

API standart HTTP durum kodlarını ve tutarlı hata formatı kullanır.

Hata Response Formatı

json
{
  "success": false,
  "error": "Aylık istek kotanız doldu",
  "code": "QUOTA_EXCEEDED",
  "quota": {
    "limit": 10,
    "used": 10
  }
}
KodHTTPAçıklama
MISSING_API_KEY
401
X-API-Key header'ı eksik
INVALID_API_KEY
401
API anahtarı geçersiz veya deaktif
NO_SUBSCRIPTION
403
Aktif abonelik bulunamadı
QUOTA_EXCEEDED
429
Aylık istek kotası doldu
CITY_NOT_FOUND
404
İl bulunamadı
DISTRICT_NOT_FOUND
404
İlçe bulunamadı
PHARMACY_NOT_FOUND
404
Eczane bulunamadı
INTERNAL_ERROR
500
Sunucu hatası

Hemen Başlayın

Ücretsiz hesap oluşturun ve API anahtarınızı alarak nöbetçi eczane verilerine erişmeye başlayın.