Derssis Logo

Kurumsal API Dokümantasyonu v1.0.0.0

🔄 Bu dokümantasyon otomatik olarak oluşturulmuştur. Yeni endpoint'ler eklendikçe güncellenir.

Genel Bilgiler

Base URL: https://kurumsal.derssis.net.tr
Content-Type: application/json
Encoding: UTF-8
Toplam Endpoint: 36

Kimlik Doğrulama

⚠️ Önemli: Tüm API endpoint'leri JWT token gerektirir (Health ve Documentation hariç).

API'yi kullanmak için önce login endpoint'i ile token almanız gerekmektedir.

API Endpoint'leri

Kimlik Doğrulama

POST /api/Auth/login
Action: Login
🔓 Kimlik doğrulama gerekmez
Kullanıcı girişi yapar ve JWT token döner. IP adresi kontrolü yapılır.
Örnek İstek:
{
  "username": "api_user",
  "password": "password123"
}
Örnek Yanıt:
{
  "token": "eyJhbGciOiJIUzI1NiIs...",
  "expires_in": 86400,
  "user": {
    "id": 1,
    "username": "api_user",
    "firmaNo": 123
  }
}
POST /api/Auth/validate
Action: ValidateToken
🔓 Kimlik doğrulama gerekmez
Mevcut token'ın geçerliliğini kontrol eder.

Dokümantasyon

GET /Documentation
Action: Get
🔓 Kimlik doğrulama gerekmez
API'nin sağlık durumunu kontrol eder.
GET /Documentation/endpoints
Action: GetEndpoints
🔓 Kimlik doğrulama gerekmez
Endpoints bilgilerini getirir.

Sistem Durumu

GET /Health
Action: Get
🔓 Kimlik doğrulama gerekmez
API'nin sağlık durumunu kontrol eder.

OgrenciVeli

POST /api/OgrenciVeli/ogrenciCreate
Action: OgrenciCreate
OgrenciCreate işlemini gerçekleştirir.
POST /api/OgrenciVeli/ogrenciListesiGetir
Action: OgrenciListesiGetir
OgrenciListesiGetir işlemini gerçekleştirir.
POST /api/OgrenciVeli/ogrenciSil
Action: OgrenciDelete
OgrenciDelete işlemini gerçekleştirir.
Parametreler:
ogrenciNo (Int64)
POST /api/OgrenciVeli/ogrenciUpdate
Action: OgrenciUpdate
OgrenciUpdate işlemini gerçekleştirir.
POST /api/OgrenciVeli/veliCreate
Action: veliCreate
veliCreate işlemini gerçekleştirir.
POST /api/OgrenciVeli/veliSil
Action: VeliDelete
VeliDelete işlemini gerçekleştirir.
Parametreler:
veliNo (Int64), ogrenciNo (Int64)
POST /api/OgrenciVeli/veliUpdate
Action: veliUpdate
veliUpdate işlemini gerçekleştirir.

OgrenciYoklama

POST /api/OgrenciYoklama/getYoklamaCalismaZamani
Action: GetYoklamaCalismaZamani
YoklamaCalismaZamani bilgilerini getirir.
POST /api/OgrenciYoklama/yoklamaOgrenciCreate
Action: YoklamaOgrenciCreate
YoklamaOgrenciCreate işlemini gerçekleştirir.

Okul İşlemleri

GET /api/Okul/{id}
Action: GetByIdOkul
Belirtilen ID'ye sahip okulun detaylarını getirir.
Parametreler:
id (Int64)
GET /api/Okul/all
Action: GetAllOkul
Firma'ya ait tüm okulları listeler.
GET /api/Okul/bursluluk/{id}
Action: GetBurslulukBasvuruOkullariList
Bursluluk başvurusu için uygun okulları listeler.
Parametreler:
id (Int64)
GET /api/Okul/ilce/{ilceId}
Action: GetOkulListByIlceId
Belirtilen ilçedeki okulları listeler.
Parametreler:
ilceId (Int64)
POST /api/Okul/kayitli-ogrenci
Action: GetKayitliOgrenciOkullariList
Kayıtlı öğrencilerin okullarını listeler.

SabitAlanlar

GET /api/SabitAlanlar/allDonem
Action: GetAllDonemList
AllDonemList bilgilerini getirir.
GET /api/SabitAlanlar/allIl
Action: GetAllIl
AllIl bilgilerini getirir.
GET /api/SabitAlanlar/allIlIlce
Action: GetAllIlIlce
AllIlIlce bilgilerini getirir.
GET /api/SabitAlanlar/allSinavDonem
Action: GetAllSinavDonemList
AllSinavDonemList bilgilerini getirir.
GET /api/SabitAlanlar/allSinif
Action: GetAllSinifList
AllSinifList bilgilerini getirir.
GET /api/SabitAlanlar/allSube
Action: GetAllSubeList
AllSubeList bilgilerini getirir.

Sinav

GET /api/Sinav/allSinav
Action: GetAllSinavList
AllSinavList bilgilerini getirir.
Parametreler:
sinavKategoriNo (Int64)
GET /api/Sinav/allSinavKategori
Action: GetAllSubeList
AllSubeList bilgilerini getirir.
Parametreler:
donemNo (Int64)
GET /api/Sinav/allSinavOturum
Action: GetAllSinavOturumList
AllSinavOturumList bilgilerini getirir.
Parametreler:
SinavNo (Int64)
GET /api/Sinav/allSinavOturumOgrenciSonuclari
Action: GetAllSinavOturumOgrenciSonuclar
AllSinavOturumOgrenciSonuclar bilgilerini getirir.
Parametreler:
seansNo (Int64)
GET /api/Sinav/ogrenciKarne
Action: GetOgrenciKarne
OgrenciKarne bilgilerini getirir.
GET /api/Sinav/SinavKitapcikBilgileri
Action: SinavKitapcikBilgileri
SinavKitapcikBilgileri işlemini gerçekleştirir.
Parametreler:
SinavNo (Int64)
GET /api/Sinav/sinavOturumOgrenciSonuclari
Action: GetSinavOturumOgrenciSonuc
SinavOturumOgrenciSonuc bilgilerini getirir.
Parametreler:
seansNo (Int64), ogrenciNo (Int64)
POST /api/Sinav/allSinavOgrenci
Action: GetAllSinavOgrenci
AllSinavOgrenci bilgilerini getirir.
POST /api/Sinav/OgrenciSinavBaslat
Action: OgrenciSinavBaslat
OgrenciSinavBaslat işlemini gerçekleştirir.
POST /api/Sinav/OgrenciSinavKaydet
Action: OgrenciSinavKaydet
OgrenciSinavKaydet işlemini gerçekleştirir.

Sistem İşlemleri

GET /api/Sistem/sabitler
Action: GetSabitListesi
Sistem sabitlerini (enum değerleri) listeler.

Kullanım Örnekleri

1. Login İşlemi

curl -X POST https://kurumsal.derssis.net.tr/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username": "api_user", "password": "password123"}'

2. Okul Listesi Alma

curl -X GET https://kurumsal.derssis.net.tr/api/okul/all \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"

Güvenlik Notları

🔒 Güvenlik Önlemleri:
• Tüm istekler IP adresi kontrolüne tabidir
• Rate limiting uygulanmaktadır (dakikada 100, saatte 1000 istek)
• JWT token'lar 24 saat geçerlidir
• Tüm istekler ve yanıtlar loglanmaktadır

Hata Kodları

200: Başarılı
400: Geçersiz istek
401: Kimlik doğrulama gerekli
403: IP adresi yetkisiz
429: Çok fazla istek (Rate limit)
500: Sunucu hatası
📚 Ek Dokümantasyon: Detaylı API dokümantasyonu için Swagger UI'ı kullanabilirsiniz.