mukellefler
68 uç · /api/musavir/v1/mukellefler
İstek örnekleri ucun GERÇEK metodu ve yolundan üretilir. 68 ucun elle doğrulanmış gövde örneği henüz yok; o uçlarda iskelet gövdesizdir — uydurma bir alan yazmıyoruz.
Personel ekle. **Koltuk kotası** (musavir.staff_seats) burada zorlanır: kota dolduysa
403 MUSAVIR/CAP/1 (upsell). Kota kapısı YAZMADAN ÖNCE — aksi halde plan aşılır ve
geri alınması gereken bir kayıt doğar.
curl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}Uyum özeti — BÜRO GENELİ sayılar.
id🔴 aktarim_uyum_ozeti security definerdır: kapsam kilidi DETAYI gizler (bir müvekkilin
adı, onu göremeyen personele sızmaz) ama uyum SAYISI eksik okunmamalıdır. Kapsamlı bir
personel "3 dayanaksız aktarım" yerine "0" görseydi, gördüğü sıfır bir güvence olurdu —
P7'nin 72 saat sayacının birebir aynı ayrımı. Fonksiyon hiçbir müvekkil kimliği döndürmez.
curl -X GET "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/360" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X DELETE "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/atama/<aid>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}GET — seçili sağlayıcı + sağlık paneli verisi (BLE2-8271).
idcurl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/durum" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}Sözleşme değişiklik geçmişi (BLE-7292) — çekirdek blesyum_audit üzerinden okunur.
idModül kendi log tablosunu YAZMAZ: kendi tablosunu yazan bir modül çekirdeğin WORM garantilerini kaybeder ve "denetim izi" adını hak etmeyen, silinebilir bir log elde eder.
curl -X GET "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/durum-gecmisi" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X GET "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/earsiv-kanali" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/earsiv-kanali" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}Etiket kaldir
idetiketcurl -X DELETE "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/etiketler/<etiket>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X DELETE "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/faaliyetler/<kod>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X GET "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/grup/konsolide" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X GET "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/hizmet-kapsam" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X PUT "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/hizmet-kapsam" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X DELETE "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/hizmet-kapsam/<kod>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X PATCH "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/iletisim/<kid>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X DELETE "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/iletisim/<kid>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X GET "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/imza-sirkuleri" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/imza-sirkuleri" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}GET /api/musavir/v1/gorevler/{id}/denetim
idİzin .view — kardeş uçlarla (detay/durum/ilerleme) aynı sınıf: kendi işini gören personel
o işin geçmişini de görmeli. IP/user-agent bu yüzden [IzSatiri]'nda hiç YOK.
curl -X GET "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/iz" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}Şablon listesi — her tür için ETKİN metin, kaynağıyla birlikte.
idEkran "büro yazdı" ile "hazır kütüphane"yi ayırt edebilmelidir: ayırt edemeseydi, hiç metin yazmamış bir büro kendi yazdığını sanır ve Blesyum kütüphaneyi güncellediğinde mektubu "kendiliğinden değişmiş" görünürdü.
curl -X GET "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/kimlikler" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}Taslak faturayı sil (BLE2-7893). **Onaylı fatura silinmez** — iptal edilir.
idkidcurl -X DELETE "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/kimlikler/<kid>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/ortaklar/<oid>/kapat" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}GET — belgeyi görüntüle (görünüm + ham XML birlikte).
idHam XML de döner: görüntüleyicinin gösterdiğinden şüphelenen kullanıcı belgenin kendisine bakabilmeli. Yalnız yorumlanmış görünüm dönmek, ayrıştırıcı hatasını denetlenemez kılardı.
curl -X GET "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/portal" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}Büro: bir müvekkille yazışma + onay defteri.
idcurl -X GET "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/portal-yazisma" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/portal-yazisma" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/portal-yazisma/okundu" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}Davet AÇ — bağlantı e-postaya gider, yanıta basılmaz.
idcurl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/portal/davet" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}Tek müvekkilin risk profili (detay paneli).
idcurl -X GET "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/risk-profili" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/risk/degerlendir" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/temsilci/<tid>/kapat" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X GET "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/usul-davranisi" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}Elle bir senkron turu — ekran açılışında da çağrılır.
id🔴 CHAN-01 (*"kurulumun SON adımı kullanıcıya ödev bırakılmaz"*): worker bayrağı kapalı bir kurulumda gelen kutusu ebediyen boş kalmasın diye ekran bu ucu açılışta çağırır. Kullanıcının bir "senkronla" düğmesi ARAMASI gerekmez; düğme yine vardır, ama yolun tamamı ona bağlı değildir.
curl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/yazismalar/senkron" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}Şablon listesi — her tür için ETKİN metin, kaynağıyla birlikte.
idEkran "büro yazdı" ile "hazır kütüphane"yi ayırt edebilmelidir: ayırt edemeseydi, hiç metin yazmamış bir büro kendi yazdığını sanır ve Blesyum kütüphaneyi güncellediğinde mektubu "kendiliğinden değişmiş" görünürdü.
curl -X GET "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/yukumluluk" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}🔴 "Bugün" İSTEKTEN GELMEZ (MÜF22 · BLE22-15280): ?tarih= ile GELECEK dönemin faturaları
iderken kesilebiliyordu (dönem tekilliği yalnız ikinci kesimi önler, erkenini değil). Saati
sunucu verir (worker ile aynı); zamanı ileri alan test ureti doğrudan çağırır.
curl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/<id>/yukumluluk/uret" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}CSV gövdesi düz metin olarak alınır (multipart gerekmez; Next tarafı dosyayı okuyup
gönderir). 1 MiB body tavanı apply_standard_middleware'den gelir.
?onizleme=true ile AYNI uç, yazmadan çalışır: sihirbazın "önce göster" adımı gerçek
akışın kod yolundan geçer (bkz. [Kip::Dogrula]) — ayrı bir doğrulama ucu yazsaydık iki
kural kümesi ayrışır ve ön izleme yalan söylerdi.
curl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/import" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}Liste rozeti için TOPLU risk.
🔴 **POST, çünkü gövde id LİSTESİDİR.** 100 UUID bir query string'e sığmaz (≈3,7 KB) ve
kenardaki WAF uzun sorguları kesebilir. Uç hiçbir şey YAZMAZ; POST burada bir taşıma
kararıdır, bir mutasyon değil — bu yüzden izni de okuma iznidir.
🔴 Kapsam kapısı **HEPSİ ya da HİÇBİRİ** (hepsi_gorunur_mu): kapsam dışı id'yi sessizce
elemek, ekranda rozeti eksik bir satır bırakır ve müşavir bunu "risk ölçülmedi" sanardı.
curl -X POST "https://{slug}.musavir.blesyum.app/api/musavir/v1/mukellefler/risk-profili" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}