Ana içeriğe geç

API v1 Giriş

Hotspot Yönetim Sistemi API v1, hotspot kullanıcı yönetimi için RESTful bir API sağlar. Tüm endpoint'ler API token ile korumalıdır.

Temel Bilgiler​

Base URL​

API v1 endpoint'leri şu base URL altında bulunur:

http://localhost:3000/api/v1

Production ortamında base URL değişebilir. Lütfen sistem yöneticinizden doğru URL'yi öğrenin.

API Versiyonu​

Mevcut API versiyonu: v1

Kimlik Doğrulama​

Tüm API istekleri Authorization header'ında Bearer token kullanmalıdır:

Authorization: Bearer <your-api-token>

Token Alma​

API token'ları admin panelinden oluşturulabilir. Token oluştururken aşağıdaki izinleri belirleyebilirsiniz:

  • read: Okuma izni
  • write: Yazma izni
  • delete: Silme izni

Detaylı bilgi için Kimlik Doğrulama sayfasına bakın.

İstek Formatı​

Content-Type​

Tüm POST ve PUT istekleri application/json content-type kullanmalıdır:

Content-Type: application/json

Örnek İstek​

curl -X GET "http://localhost:3000/api/v1" \
-H "Authorization: Bearer your-api-token-here"

Yanıt Formatı​

Başarılı Yanıt​

Başarılı istekler genellikle şu formatta yanıt döner:

{
"success": true,
"data": { ... },
"message": "İşlem başarılı"
}

Hata Yanıtı​

Hata durumlarında şu formatta yanıt döner:

{
"success": false,
"message": "Hata mesajı",
"errors": [
{
"field": "username",
"message": "Kullanıcı adı gereklidir"
}
]
}

HTTP Durum Kodları​

  • 200 OK: İstek başarılı
  • 201 Created: Kaynak başarıyla oluşturuldu
  • 400 Bad Request: Hatalı istek veya validasyon hatası
  • 401 Unauthorized: Yetkilendirme hatası (token eksik veya geçersiz)
  • 403 Forbidden: İzin hatası (token yeterli izne sahip değil)
  • 404 Not Found: Kaynak bulunamadı
  • 500 Internal Server Error: Sunucu hatası

Sayfalama​

Listeleme endpoint'leri sayfalama desteği sağlar:

Query Parametreleri​

  • page: Sayfa numarası (varsayılan: 1)
  • limit: Sayfa başına kayıt sayısı (varsayılan: 20, maksimum: 100)

Yanıt Formatı​

{
"success": true,
"data": [ ... ],
"pagination": {
"page": 1,
"limit": 20,
"total": 100,
"pages": 5
}
}

Filtreleme​

Birçok endpoint filtreleme parametreleri destekler. Örneğin:

GET /api/v1/hotspot-users?status=active&venueId=507f1f77bcf86cd799439011

Rate Limiting​

API kullanımında rate limiting uygulanabilir. Detaylar için sistem yöneticinize danışın.

API Durum Kontrolü​

API'nin aktif olup olmadığını kontrol etmek için:

GET /api/v1

Yanıt:

{
"success": true,
"message": "Server API aktif"
}

Sonraki Adımlar​