Proje: Okul B2B App · Hub: Okul B2B App — Architecture

API Endpoint Listesi

Base URL: https://api.okul.com.tr (production) / https://api.okul.work (Expo Go dev)

Auth

MethodEndpointAçıklama
POST/auth/loginEmail+şifre veya OTP doğrulama
POST/auth/otpSMS kodu gönder
POST/auth/logoutÇıkış
POST/auth/refreshToken yenile
POST/change-passwordŞifre değiştir

Firma & Okul

MethodEndpointAçıklama
GET/customer/me/firmsKullanıcının firmaları
GET/customer/{id}/schoolsFirmanın okulları

Leads

MethodEndpointAçıklama
GET/customer/leadsLead listesi (sayfalı)
GET/customer/leads/{id}Lead detayı
PATCH/customer/leads/{id}Lead güncelleme

Notlar

MethodEndpointAçıklama
GET/customer/notes?cid={}&lead_id={}Lead notları
POST/customer/notesNot ekle
PUT/customer/notes/{id}Not güncelle
DELETE/customer/notes/{id}Not sil

Medya (Galeri)

MethodEndpointAçıklama
GET/schools/{id}/mediaGaleri fotoğrafları (sayfalı)
GET/schools/{id}/media/coverKapak fotoğrafı
POST/customer/mediaFotoğraf yükle (FormData)
DELETE/customer/media/{id}Fotoğraf sil
PUT/customer/media/sortSıra güncelle
POST/customer/media/tempGeçici yükleme
POST/customer/media/moveGeçiciden kalıcıya taşı

İçerikler

MethodEndpointPattern
GET/customer/school-content/{type}Liste (sayfalı)
GET/customer/school-content/{type}/{id}Detay
POST/customer/school-content/{type}Oluştur
PUT/customer/school-content/{type}/{id}Güncelle
DELETE/customer/school-content/{type}/{id}Sil

{type}: announcements | events | achievements

İstatistikler

MethodEndpointAçıklama
GET/customer/statisticsDashboard istatistikleri

Genel Querystring Pattern

?page={n}
&per-page={size}           (leads)
&per_page={size}           (contents)
&include=rel1,rel2         (veya includes[]= format)
&filter[field]=value
&sort=-created_at          (azalan)
&_t={timestamp}            (cache bypass)