Proje: OkulUp API · Hub: OkulUp API — Domain

OkulUp API — Kayıt ve Enrollment Akışı

Kullanıcı Kayıt Akışı

  1. POST /register → user oluşturulur, Sanctum token döner
  2. school_id opsiyonel — kayıtta okul seçilebilir veya sonradan enrollment request ile ilişkilendirilebilir
  3. Kayıtta is_active: true set edilir

Okul Kayıt Talebi (EnrollmentRequest)

Kullanıcı kayıtlandıktan sonra bir okula bağlanmak için enrollment request açar.

[pending] --approve--> user.school_id set edilir
         --reject-->   kullanıcı onaysız kalır

API Endpoint’leri

MethodPathKim Kullanır
POST/school-enrollment-requestsKullanıcı (parent self-registration)
GET/school-enrollment-requests/meKullanıcı kendi taleplerini görür
GET/school-enrollment-requestsAdmin/Manager bekleyen talepleri görür
PUT/school-enrollment-requests/{id}Admin/Manager onay/ret

EnrollmentRequest Model Scopeları

scopePending($query)           // status = 'pending'
scopeByUser($query, $userId)   // belirli kullanıcının talepleri

Veli-Öğrenci İlişkisi

// Parent bağlama
POST /users/{user}/children     // parent_id olan user'a student bağla
DELETE /users/{user}/children/{student}  // bağı kaldır
 
// student_parent pivot: parent_id, student_id, relationship

Sosyal Login

POST /auth/social → Google/Apple OAuth ile giriş (Laravel Socialite). Kullanıcı yoksa oluşturulur, varsa token üretilir.

Şifremi Unuttum

POST /forgot-password (throttled) — email gönderir, password_reset_tokens tablosu.