# Sağlık Uygulaması Mimarisi

> Diyagramlar ve veri akışları: hastadan uygulamaya, Anpheros API'sine, FHIR kaydına ve harici hizmetlere, ayrıca yapay zeka aracından bağlam API'sine yetkilendirilmiş verilere.

Source: https://developers.anpheros.com/tr/guides/architecture

Anpheros, uygulamanız (veya yapay zeka aracınız) ile hastanın kaydı arasındaki tıbbi veri katmanıdır. Uygulamanız kendi kullanıcı arayüzünü ve iş mantığını korur; tıbbi kayıt, onay, kaynak ve denetim Anpheros'ta yaşar ve tek bir API aracılığıyla erişilir.

```
  Your application, backend or AI agent
  (mobile app, web app, clinic system, lab system, LLM-based assistant)
                        │  HTTPS · API key (sk_test_ / sk_live_) or OAuth token (at_…)
                        ▼
  Anpheros Platform API
  ├─ /v1        simplified REST: patients, observations, conditions, medications,
  │             documents, timeline, provenance, context, labs, webhooks
  ├─ /fhir/R4   strict FHIR R4: 26 resource types, search, history, transactions,
  │             $everything, $summary (IPS), $validate
  └─ /oauth     OAuth 2.1 + PKCE, SMART on FHIR, OpenID Connect
                        │  every request: project isolation · scopes · rate limits
                        ▼
  One FHIR R4 record per patient
  ├─ versions of every resource (history)   ├─ Provenance for every write
  ├─ Consent resources for every grant      └─ access log visible to the patient
                        │
                        ▼
  Events out: signed webhooks to your server (ids only, never clinical content)
```

## Hastanın Görünümü: Kişiden Harici Hizmetlere

```
Patient
   ↓   uses an app, chooses what to share, sees every access
Healthcare application          Anpheros Daily, or your own app
   ↓   REST v1 / FHIR R4 over HTTPS, API key or OAuth token
Anpheros API
   ↓   isolation, scopes, idempotency, provenance
FHIR medical data               the patient's record: 26 resource types, every version kept
   ↓   only what the patient allowed, only for as long as allowed
External healthcare services    laboratories (lab import), clinics (directory, acting-as),
                                other apps (OAuth / SMART), your backend (webhooks)
```

## Yapay Zeka Görünümü: Acenteden Yetkilendirilmiş Veriye

```
AI agent or LLM application     runs the model you choose — hosted or local
   ↓   POST /v1/context  {patient, task, question, budget_tokens}
Medical context API             plans which parts of the record matter, fits them into the budget,
   ↓                            labels every item with author type and source, records a manifest
Authorised medical data         only records the project created or the patient granted;
                                the read appears in the patient's access log
```

Model hiçbir zaman kimlik bilgileri almaz ve Anpheros'u kendisi çağırmaz; bağlamı uygulamanız ister ve modele ne gönderileceğine karar verir. API çağrılarını içeren iki tam örnek: [Yapay Zeka Sağlık Uygulamaları](https://developers.anpheros.com/tr/guides/ai-healthcare) bölümünde bir yapay zeka sağlık uygulaması ve [Yapay Zeka Acenteleri ve Tıbbi Veriler](https://developers.anpheros.com/tr/guides/ai-agents-medical-data) bölümünde onaylı bir acente. Detaylar: [Yapay Zeka Acenteleri ve Tıbbi Veriler](https://developers.anpheros.com/tr/guides/ai-agents-medical-data), [LLM Uygulamaları ve Sağlık Verileri](https://developers.anpheros.com/tr/guides/llm-healthcare-data).

## Kayıt

Her hastanın FHIR R4 kaynaklarından oluşan bir kaydı vardır: `Observation` yaşamsal belirtiler, laboratuvar sonuçları, semptomlar ve günlük aktivite özetleri için, `Condition` ve `EpisodeOfCare`, `MedicationStatement` ve `MedicationAdministration`, `DocumentReference`, `Immunization`, `AllergyIntolerance` ve diğerleri — toplamda 26 tür, CapabilityStatement (`GET /fhir/R4/metadata`) içinde canlı olarak listelenmiştir. Öğrenilecek özel bir şema yoktur: REST API, aynı kimliklere sahip aynı kaynakların daha basit bir görünümüdür.

Hiçbir şey sessizce üzerine yazılmaz. Her güncelleme yeni bir sürüm (`/fhir/R4/{type}/{id}/_history`) oluşturur ve her sürüm, onu yazan projeyi ve adına yazıldığı kuruluşu kaydeder.

## İki Giriş Yolu

| | API anahtarı | OAuth erişim belirteci |
|---|---|---|
| Görünümü | `sk_test_…` / `sk_live_…` | `at_…` |
| Kullanım Alanı | sunucunuz | bir hasta adına hareket eden bir uygulama |
| Görüntüler | projenizin oluşturduğu hastalar | hastanın izin verdiği kapsamlar dahilinde tam olarak bir hasta |
| Tipik Kullanım | kendi uygulamanızın arka ucu, bir laboratuvar sistemi, bir klinik entegrasyonu | hastanın zaten sahip olduğu bir kayda ulaşan üçüncü taraf bir uygulama veya yapay zeka asistanı |

Bir proje, hasta izin vermediği sürece başka bir projenin hastalarını göremez. Her proje, aynı kişi için kendi tanımlayıcısını (eşleştirilmiş kimlikler) alır, bu nedenle kimlikler uygulamalar arasında ilişkilendirilemez ve erişiminizin dışındaki bir kayıt `404` yanıtını verir, asla `403` yanıtını vermez.

## İki Ortam

Sandbox ve üretim ortamları ayrı veritabanlarıdır. Bir sandbox anahtarı (`sk_test_`) fiziksel olarak gerçek hastalara ulaşamaz; her sandbox projesi, serbestçe değiştirebileceği ve sıfırlayabileceği 30 sentetik hastanın kendi kopyasını alır. Üretim anahtarları (`sk_live_`) doğrulanmış kuruluşlara verilir.

## Veri Akışları

**Uygulamanız Yazar.** `POST /v1/patients/{id}/observations` ile bir `Idempotency-Key`. Platform, bir FHIR `Observation` depolar, bir `Provenance` (yazar türü: patient, practitioner, device, import veya ai) yazar, erişimi günlüğe kaydeder ve abone olunan uç noktalara bir `resource.created` webhook gönderir.

**Başka Bir Uygulama Onay ile Okur.** Hasta, barındırılan onay sayfasında (`/oauth/authorize`) kaydı ve süreyi (30–365 gün) seçerek bunu onaylar. Uygulama, kodu belirteçlerle değiştirir ve yalnızca kapsamların izin verdiği şeyleri okur. Hasta, uygulamayı, kapsamlarını ve erişim günlüğündeki her okumayı görür ve istediği zaman iptal edebilir.

**Bir Laboratuvar Sonuçları Teslim Eder.** `POST /v1/patients/{id}/labs/import` ile bir CSV, HL7 v2 ORU^R01 veya JSON raporu; her sonuç, bilindiği yerlerde LOINC kodlarıyla bir laboratuvar `Observation` haline gelir ve aynı raporu yeniden göndermek güvenlidir.

**Bir Yapay Zeka Modeli Bağlama İhtiyaç Duyar.** `POST /v1/context`, bir belirteç bütçesi dahilinde, bir göreve ilişkin kaydın bölümlerini, her öğe kaynağıyla etiketlenmiş olarak döndürür; çağrı bir manifest kimliğiyle kaydedilir. Modelin kendisi seçtiğiniz yerde çalışır.

## Anpheros'un Kendi Kendine Geliştirme ile Karşılaştırılması

| Konu | Kendi Kendine Geliştirme | Anpheros ile |
|---|---|---|
| Tıbbi veri modeli | Her kayıt türü için tablolar tasarlayın | FHIR R4 kaynakları, 26 tür |
| Birlikte çalışabilirlik | Özel dışa aktarma formatları | FHIR R4, International Patient Summary, SMART on FHIR |
| Onay | İzin, kapsam, geçerlilik ve iptal mantığı oluşturun | OAuth 2.1 izinleri FHIR `Consent` olarak yansıtılır |
| Denetim | Günlük kaydı oluşturun ve bunu hastalara göstermenin bir yolunu sağlayın | Her okuma ve yazma kaydedilir ve hastanın görebileceği şekilde sunulur |
| Laboratuvar entegrasyonu | Her laboratuvarın formatını ayrıştırın | CSV, HL7 v2 ORU ve JSON içe aktarma |
| Yapay zeka bağlamı | Geri alma ve özetleme kodu yazın | Token bütçesi ve köken etiketleri ile bağlam API'si |

## İlgili Kaynaklar

- [Anpheros Nedir?](https://developers.anpheros.com/tr/guides/what-is-anpheros)
- [Sağlık Yazılımı Geliştirme](https://developers.anpheros.com/tr/guides/healthcare-software)
- [Tıbbi Uygulama Arka Ucu ve Veritabanı](https://developers.anpheros.com/tr/guides/medical-app-backend)
- [Sağlık Uygulaması Oluşturma](https://developers.anpheros.com/tr/guides/build-a-healthcare-app)
- [Onay ve Erişim Modeli](https://developers.anpheros.com/tr/guides/consent)
- [Güvenlik, Gizlilik ve Veri Konumu](https://developers.anpheros.com/tr/guides/security)
