Tüm isteklerde X-Tenant header’ı zorunludur. İşlemler yalnızca belirtilen tenant’a ait randevular ile sınırlandırılmıştır.
Endpoint özeti
| Metot | Endpoint | Açıklama |
|---|
GET | /api/v1/appointments | Randevuları filtreli olarak listeler |
GET | /api/v1/appointments/{id} | Tek bir randevuyu detaylı getirir |
POST | /api/v1/appointments | Yeni randevu oluşturur |
PUT | /api/v1/appointments/{id} | Randevuyu kısmi günceller |
DELETE | /api/v1/appointments/{id} | Randevuyu soft delete eder |
DELETE | /api/v1/appointments/{id}/force | Randevuyu kalıcı olarak siler |
Tüm parametreler, alanlar ve örnek istek/yanıtlar için API Referansı sekmesine bakın.
Randevu kavramı
Appointment (randevu), bir hastanın belirli bir tarih/saatte belirli bir doktorla — ve isteğe bağlı olarak oda ve asistan ile — ilişkilendirilmiş ziyaretini temsil eder.
Bir randevu; hasta, doktor, tedaviler, zaman, durum, asistan ve oda bilgileri ile birlikte yönetilir.
İş kuralları
code alanı sistem tarafından otomatik üretilir; istek gövdesinde gönderilmez.
scheduled_at alanı, tenant’ın zaman dilimine göre parse edilir ve UTC olarak saklanır. Tarih filtreleri de tenant zaman dilimine göre UTC’ye çevrilir.
treatments[] içindeki her tedavi, hem ilgili tenant’a ait hem de seçilen doktora atanmış olmalıdır. Aksi halde: The selected treatment is not assigned to the selected doctor.
parent_appointment_id oluşturma sonrasında değiştirilemez.Hata: parent_appointment_id cannot be changed after creation.
customer_id yalnızca şu koşulda değiştirilebilir: randevu bir parent appointment olmalı ve hiç child appointment’ı olmamalıdır.Aksi halde: Customer can only be changed for parent appointments without any child appointments.
Silme kuralları
Soft delete (DELETE /api/v1/appointments/{id})
Randevu soft delete edilir.
Child appointment varsa silinemez. Hata: Bu randevunun alt randevuları olduğu için silinemez.
Force delete (DELETE /api/v1/appointments/{id}/force)
Geri alınamaz. Child appointment varsa kalıcı olarak da silinemez.
Yetkilendirme
Uygulama izinleri (permissions)
| İşlem | Permission |
|---|
| Listeleme | ViewAny:Appointment |
| Detay | View:Appointment |
| Oluşturma | Create:Appointment |
| Güncelleme | Update:Appointment |
| Silme | Delete:Appointment |
| Kalıcı silme | ForceDelete:Appointment |
Token scope’ları (Passport)
| İşlem | Scope |
|---|
Okuma (index, show) | appointments:read |
Yazma (store, update, delete, force) | appointments:write |