Observation Resource
Resource Observation digunakan untuk mengelola data hasil observasi, pemeriksaan, dan pengukuran terhadap pasien dalam ekosistem SATUSEHAT.
Endpoint
GET /Observation
POST /Observation
GET /Observation/{id}
PUT /Observation/{id}
PATCH /Observation/{id}
Base URL
- Sandbox:
https://api-satusehat-stg.dto.kemkes.go.id/fhir-r4/v1
- Production:
https://api-satusehat.kemkes.go.id/fhir-r4/v1
Headers
Header | Value | Required |
---|---|---|
Authorization | Bearer {access_token} | ✅ |
Content-Type | application/fhir+json | ✅ |
Structure
Mandatory Fields
resourceType
: "Observation"status
: Status observasi (registered, preliminary, final, amended)category
: Kategori observasicode
: Kode observasi (LOINC)subject
: Referensi ke Patientencounter
: Referensi ke Encounter
Optional Fields
identifier
: Identifikasi unik observasieffectiveDateTime
: Waktu observasi dilakukanissued
: Waktu hasil dikeluarkanperformer
: Petugas yang melakukan observasivalueQuantity
: Nilai dengan satuanvalueString
: Nilai berupa teksinterpretation
: Interpretasi hasilreferenceRange
: Rentang nilai normal
Contoh Request
POST /Observation - Vital Signs (Tekanan Darah)
{
"resourceType": "Observation",
"status": "final",
"category": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/observation-category",
"code": "vital-signs",
"display": "Vital Signs"
}
]
}
],
"code": {
"coding": [
{
"system": "http://loinc.org",
"code": "85354-9",
"display": "Blood pressure panel with all children optional"
}
]
},
"subject": {
"reference": "Patient/100000030009"
},
"encounter": {
"reference": "Encounter/693c4ac9-c79a-44c0-b8bc-37126c3bf6db"
},
"effectiveDateTime": "2024-01-01T08:00:00+00:00",
"component": [
{
"code": {
"coding": [
{
"system": "http://loinc.org",
"code": "8480-6",
"display": "Systolic blood pressure"
}
]
},
"valueQuantity": {
"value": 120,
"unit": "mmHg",
"system": "http://unitsofmeasure.org",
"code": "mm[Hg]"
}
},
{
"code": {
"coding": [
{
"system": "http://loinc.org",
"code": "8462-4",
"display": "Diastolic blood pressure"
}
]
},
"valueQuantity": {
"value": 80,
"unit": "mmHg",
"system": "http://unitsofmeasure.org",
"code": "mm[Hg]"
}
}
]
}
POST /Observation - Laboratory Test
{
"resourceType": "Observation",
"status": "final",
"category": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/observation-category",
"code": "laboratory",
"display": "Laboratory"
}
]
}
],
"code": {
"coding": [
{
"system": "http://loinc.org",
"code": "2093-3",
"display": "Cholesterol [Mass/volume] in Serum or Plasma"
}
]
},
"subject": {
"reference": "Patient/100000030009"
},
"encounter": {
"reference": "Encounter/693c4ac9-c79a-44c0-b8bc-37126c3bf6db"
},
"effectiveDateTime": "2024-01-01T08:00:00+00:00",
"valueQuantity": {
"value": 180,
"unit": "mg/dL",
"system": "http://unitsofmeasure.org",
"code": "mg/dL"
},
"interpretation": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation",
"code": "H",
"display": "High"
}
]
}
],
"referenceRange": [
{
"low": {
"value": 0,
"unit": "mg/dL"
},
"high": {
"value": 200,
"unit": "mg/dL"
}
}
]
}
Kategori Observation
Category | Code | Description |
---|---|---|
Social History | social-history | Riwayat sosial |
Vital Signs | vital-signs | Tanda vital |
Imaging | imaging | Pencitraan |
Laboratory | laboratory | Laboratorium |
Procedure | procedure | Prosedur |
Survey | survey | Survei |
Exam | exam | Pemeriksaan fisik |
Therapy | therapy | Terapi |
Status Observation
Status | Description |
---|---|
registered | Terdaftar |
preliminary | Hasil awal |
final | Hasil final |
amended | Hasil diperbaiki |
corrected | Hasil dikoreksi |
cancelled | Dibatalkan |
entered-in-error | Kesalahan entri |
unknown | Tidak diketahui |
Common LOINC Codes
LOINC Code | Display | Category |
---|---|---|
8310-5 | Body temperature | vital-signs |
8480-6 | Systolic blood pressure | vital-signs |
8462-4 | Diastolic blood pressure | vital-signs |
8867-4 | Heart rate | vital-signs |
9279-1 | Respiratory rate | vital-signs |
2093-3 | Cholesterol total | laboratory |
2571-8 | Triglyceride | laboratory |
33747-0 | Glucose | laboratory |
Search Parameters
Parameter | Type | Description |
---|---|---|
patient | reference | Pencarian berdasarkan pasien |
code | token | Pencarian berdasarkan kode observasi |
category | token | Pencarian berdasarkan kategori |
date | date | Pencarian berdasarkan tanggal |
status | token | Pencarian berdasarkan status |
encounter | reference | Pencarian berdasarkan encounter |
Error Handling
Common Error Codes
400 Bad Request
: Format data tidak sesuai401 Unauthorized
: Token tidak valid404 Not Found
: Observation tidak ditemukan422 Unprocessable Entity
: Validasi data gagal