Skip to main content
Tüm isteklerde X-Tenant header’ı zorunludur. Dosyalar her zaman belirli bir varlığa (hasta, personel vb.) bağlanmak zorundadır ve hiçbir dosya başka bir tenant’a ait bir varlığa yüklenemez/ilişkilendirilemez.
Dosyalar için güncelleme (PUT) endpoint’i bulunmamaktadır. Değişiklik gerekirse mevcut dosya silinip yenisi yüklenmelidir.

Endpoint özeti

MetotEndpointAçıklama
GET/api/v1/filesDosyaları filtreli olarak listeler
GET/api/v1/files/{id}Tek bir dosyanın detaylarını getirir
POST/api/v1/filesYeni dosya yükler (multipart/form-data)
DELETE/api/v1/files/{id}Dosyayı soft delete eder
DELETE/api/v1/files/{id}/forceDosyayı kalıcı olarak siler (storage dahil)
Tüm parametreler, alanlar ve örnek istek/yanıtlar için API Referansı sekmesine bakın.

Dosya kavramı

Sistemdeki dosyalar; hastalara (müşterilere), personellere (kullanıcılara), tenant’ın kendisine veya sistemdeki diğer kayıtlara (yapay zeka raporları, sohbet kayıtları vb.) eklenen doküman, görsel veya raporları temsil eder.
API size doğrudan fiziksel dosyayı (byte array olarak) dönmez; bunun yerine dosyanın meta verilerini ve dosyaya güvenli bir şekilde erişebileceğiniz kısa ömürlü geçici linkleri (temporary_url) döner.

İş kuralları

Dosya yükleme formatı: Bu istek JSON olarak yapılamaz. Body formatı kesinlikle multipart/form-data olmalıdır. Maksimum dosya boyutu 50 MB (51200 KB)‘dır.
Tenant izolasyonu: fileable_id ile belirtilen varlık, işlemi yapan tenant’a ait olmak zorundadır.Hata mesajı: The selected fileable does not belong to this tenant.

Silme kuralları

Force delete (DELETE /api/v1/files/{id}/force)

Geri alınamaz. Dosya hem veritabanından kalıcı olarak silinir hem de fiziksel storage (S3 vb.) üzerinden temizlenmesi tetiklenir.

Yetkilendirme

Uygulama izinleri (permissions)

İşlemPermission
ListelemeViewAny:File
Detay / Tek göstermeView:File
Dosya yüklemeCreate:File
Silme (soft delete)Delete:File
Kalıcı silme (force delete)ForceDelete:File

Token scope’ları (Passport)

İşlemScope
Okuma (index, show)files:read
Yazma (store, destroy, forceDelete)files:write