Sunucu saati — **PUBLIC**, oturum istemez, veritabanına HİÇ gitmez.
İki işi birden yapar ve bu yüzden ayrı iki uç açılmamıştır:
1. **Saat referansı.** Panel, cihaz saatinin sapmasını ölçüp kullanıcıya söyler
(frontend lib/clock.ts). Sapma yalnız kozmetik değildir: >45 sn kaymış bir
cihazın TOTP kodu reddedilir ve kullanıcı bunu "2FA bozuk" diye okur.
2. **Bağlantı yoklaması.** Kesintide panel bu ucu geri-çekilmeli olarak yoklar
(frontend lib/connection.ts). Kenarın /healthz'i bu soruyu yanıtlamaz:
Caddy ayakta, arkadaki auth ölü olabilir — bu uç yanıt veriyorsa panelin
gerçekten konuştuğu servis ayaktadır.
🔴 Gövde KASITLI olarak minik ve DB'siz: kesinti sırasında saniyede birden çok
istemci tarafından yoklanır; zaten zorlanan bir sisteme yük bindirmemeli.
GET /api/v1/i18n/locales — **PUBLIC**. Platformun sunduğu diller.
PUBLIC olmak ZORUNDA: giriş ekranının da dil seçicisi vardır ve oturum açmadan
önce dil seçebilmek, kullanıcının paneli okuyabilmesinin ön koşuludur.
core.languages (mig 0023) yerine core.locales okunur: eskisi yalnız
code/name/enabled taşıyordu, yön (rtl) ve fallback zinciri yoktu.
POST /api/v1/docs/feedback — **PUBLIC**. Doküman sayfası geri bildirimi.
# Neden oturumsuz
apidocs.blesyum.com herkese açıktır; okuyucularının önemli bir kısmı henüz
müşteri değildir. Giriş isteyen bir kutu, tam da duymamız gereken kitleyi
susturur.
# Mükerrer koruması SUNUCUDADIR
İstemcideki localStorage işareti yalnız bir KOLAYLIKTIR (aynı sayfaya
dönene "zaten oy verdin" demek için). İşareti silen biri yine ikinci kez oy
veremez, çünkü kapı doc_feedback_visitor_uk unique indeksidir. (Aynı ders
geçici-parola vakasında alınmıştı: *"paneldeki pencere çözüm değildi"*.)
Karar ve SQL blesyum_site::dokumandadır — bu servis ham SQL yazmaz.
curl -X POST "https://api.blesyum.com/api/v1/docs/feedback" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}