Halaman ini menjelaskan cara membuat, memperbarui, mem-patch, melihat, mencantumkan, mengambil, dan menghapus resource FHIR.
Resource FHIR dapat berisi data tentang pasien, perangkat, observasi, dan banyak lagi. Untuk daftar lengkap resource FHIR, lihat Indeks Resource FHIR (DSTU2, STU3, atau R4).
Contoh curl
dan PowerShell di halaman ini berfungsi dengan penyimpanan FHIR R4,
dan tidak dijamin akan berfungsi jika Anda menggunakan penyimpanan DSTU2 atau STU3 FHIR.
Jika Anda menggunakan penyimpanan DSTU2 atau STU3 FHIR, lihat dokumentasi FHIR resmi
untuk mengetahui informasi tentang cara mengonversi sampel ke versi FHIR yang Anda gunakan.
Contoh Go, Java, Node.js, dan Python berfungsi dengan penyimpanan STU3 FHIR.
Membuat resource FHIR
Agar dapat membuat resource FHIR, Anda harus membuat penyimpanan FHIR.
Contoh curl
, PowerShell, dan Python menunjukkan cara membuat
resource FHIR berikut:
- Referensi Pasien (DSTU2, STU3, dan R4)
- Referensi (DSTU2, STU3, dan R4) untuk Pasien
- Resource Observation (DSTU2, STU3, dan R4) untuk Transaksi
Contoh untuk semua bahasa lain menunjukkan cara membuat resource FHIR generik.
Untuk informasi selengkapnya, lihat
projects.locations.datasets.fhirStores.fhir.create
.
Contoh curl
dan PowerShell berikut berfungsi dengan penyimpanan FHIR R4. Contoh Go, Java, Node.js, dan Python dapat digunakan dengan penyimpanan FHIR STU3.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: ID project Google Cloud Anda
- LOCATION: lokasi set data
- DATASET_ID: set data induk penyimpanan FHIR
- FHIR_STORE_ID: ID toko FHIR
Meminta isi JSON:
{ "name": [ { "use": "official", "family": "Smith", "given": [ "Darcy" ] } ], "gender": "female", "birthDate": "1970-01-01", "resourceType": "Patient" }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
cat > request.json << 'EOF' { "name": [ { "use": "official", "family": "Smith", "given": [ "Darcy" ] } ], "gender": "female", "birthDate": "1970-01-01", "resourceType": "Patient" } EOF
Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/fhir+json" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Patient"
PowerShell
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
@' { "name": [ { "use": "official", "family": "Smith", "given": [ "Darcy" ] } ], "gender": "female", "birthDate": "1970-01-01", "resourceType": "Patient" } '@ | Out-File -FilePath request.json -Encoding utf8
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/fhir+json" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Patient" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
Go
Java
Node.js
Python
Setelah membuat resource Pasien, buat resource Meetup untuk menjelaskan interaksi antara pasien dan tenaga kesehatan.
Di kolom PATIENT_ID, ganti ID dari respons yang ditampilkan oleh server saat Anda membuat resource Pasien.
Contoh curl
dan PowerShell berikut berfungsi dengan penyimpanan FHIR R4. Contoh Python dapat digunakan dengan penyimpanan STU3 FHIR.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: ID project Google Cloud Anda
- LOCATION: lokasi set data
- DATASET_ID: set data induk penyimpanan FHIR
- FHIR_STORE_ID: ID toko FHIR
- PATIENT_ID: respons yang ditampilkan oleh server saat Anda membuat resource Pasien
Meminta isi JSON:
{ "status": "finished", "class": { "system": "http://hl7.org/fhir/v3/ActCode", "code": "IMP", "display": "inpatient encounter" }, "reasonCode": [ { "text": "The patient had an abnormal heart rate. She was concerned about this." } ], "subject": { "reference": "Patient/PATIENT_ID" }, "resourceType": "Encounter" }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
cat > request.json << 'EOF' { "status": "finished", "class": { "system": "http://hl7.org/fhir/v3/ActCode", "code": "IMP", "display": "inpatient encounter" }, "reasonCode": [ { "text": "The patient had an abnormal heart rate. She was concerned about this." } ], "subject": { "reference": "Patient/PATIENT_ID" }, "resourceType": "Encounter" } EOF
Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/fhir+json" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Encounter"
PowerShell
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
@' { "status": "finished", "class": { "system": "http://hl7.org/fhir/v3/ActCode", "code": "IMP", "display": "inpatient encounter" }, "reasonCode": [ { "text": "The patient had an abnormal heart rate. She was concerned about this." } ], "subject": { "reference": "Patient/PATIENT_ID" }, "resourceType": "Encounter" } '@ | Out-File -FilePath request.json -Encoding utf8
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/fhir+json" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Encounter" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
Python
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di panduan memulai Cloud Healthcare API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Python Cloud Healthcare API.
Untuk melakukan autentikasi ke Cloud Healthcare API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Setelah membuat resource Meetup, buat resource Pengamatan yang terkait dengan resource Engage. Resource Pengamatan memberikan pengukuran detak jantung pasien dalam denyut per menit (BPM) (80
dalam bpm
).
Contoh curl
dan PowerShell berikut berfungsi dengan penyimpanan FHIR R4. Contoh Python dapat digunakan dengan penyimpanan STU3 FHIR.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: ID project Google Cloud Anda
- LOCATION: lokasi set data
- DATASET_ID: set data induk penyimpanan FHIR
- FHIR_STORE_ID: ID toko FHIR
- PATIENT_ID: ID dalam respons yang ditampilkan oleh server saat Anda membuat resource Pasien
- ENCOUNTER_ID: ID dalam respons yang ditampilkan oleh server saat Anda membuat resource Meetup
Meminta isi JSON:
{ "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "identifier": [ { "system": "my-code-system", "value": "ABC-12345" } ], "code": { "coding": [ { "system": "http://loinc.org", "code": "8867-4", "display": "Heart rate" } ] }, "valueQuantity": { "value": 80, "unit": "bpm" }, "encounter": { "reference": "Encounter/ENCOUNTER_ID" } }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
cat > request.json << 'EOF' { "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "identifier": [ { "system": "my-code-system", "value": "ABC-12345" } ], "code": { "coding": [ { "system": "http://loinc.org", "code": "8867-4", "display": "Heart rate" } ] }, "valueQuantity": { "value": 80, "unit": "bpm" }, "encounter": { "reference": "Encounter/ENCOUNTER_ID" } } EOF
Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/fhir+json" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation"
PowerShell
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
@' { "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "identifier": [ { "system": "my-code-system", "value": "ABC-12345" } ], "code": { "coding": [ { "system": "http://loinc.org", "code": "8867-4", "display": "Heart rate" } ] }, "valueQuantity": { "value": 80, "unit": "bpm" }, "encounter": { "reference": "Encounter/ENCOUNTER_ID" } } '@ | Out-File -FilePath request.json -Encoding utf8
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/fhir+json" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
Python
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di panduan memulai Cloud Healthcare API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Python Cloud Healthcare API.
Untuk melakukan autentikasi ke Cloud Healthcare API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Membuat resource FHIR secara bersyarat
Contoh curl
berikut menunjukkan cara menggunakan
metode projects.locations.datasets.fhirStores.fhir.create
untuk membuat resource FHIR secara bersyarat. Metode ini mengimplementasikan
interaksi create
bersyarat FHIR (DSTU2, STU3, R4).
Gunakan create kondisional untuk menghindari pembuatan duplikat resource FHIR. Misalnya, setiap resource Pasien di server FHIR memiliki ID unik, seperti nomor rekam medis (MRN). Untuk membuat resource Pasien baru dan memverifikasi tidak ada resource Pasien dengan MRN yang sama, buat resource baru secara kondisional. Cloud Healthcare API hanya membuat resource baru jika tidak ada kecocokan untuk kueri penelusuran.
Respons server bergantung pada jumlah resource yang cocok dengan kueri penelusuran:
Mencocokkan dengan | Kode respons HTTP | Perilaku |
---|---|---|
Nol | 200 OK |
Membuat resource baru. |
Satu | 200 OK |
Tidak membuat fasilitas baru. |
Lebih dari satu | 412 Precondition Failed |
Tidak membuat resource baru dan menampilkan error "search criteria are not selective enough" . |
Untuk menggunakan interaksi create
bersyarat, bukan interaksi create
,
tentukan header HTTP If-None-Exist
yang berisi kueri penelusuran FHIR
dalam permintaan Anda:
If-None-Exist: FHIR_SEARCH_QUERY
Di Cloud Healthcare API v1, operasi bersyarat secara eksklusif menggunakan parameter penelusuran identifier
, jika ada untuk jenis resource FHIR, guna menentukan resource FHIR mana yang cocok dengan kueri penelusuran bersyarat.
REST
Contoh berikut menunjukkan cara membuat resource Observation menggunakan
header HTTP If-None-Exist: identifier=my-code-system|ABC-12345
. Cloud Healthcare API
membuat resource jika dan hanya jika tidak ada resource Observation yang cocok dengan
kueri identifier=my-code-system|ABC-12345
.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/fhir+json" \ -H "If-None-Exist: identifier=my-code-system|ABC-12345" \ -d @request.json \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation"
Contoh output berikut sengaja menampilkan permintaan gagal. Untuk melihat respons dari permintaan yang berhasil, lihat Membuat resource FHIR.
Jika beberapa resource Observation cocok dengan kueri, Cloud Healthcare API akan menampilkan respons berikut, dan permintaan pembuatan bersyarat akan gagal:
{
"issue": [
{
"code": "conflict",
"details": {
"text": "ambiguous_query"
},
"diagnostics": "search criteria are not selective enough",
"severity": "error"
}
],
"resourceType": "OperationOutcome"
}
Memperbarui resource FHIR
Contoh berikut menunjukkan cara menggunakan metode projects.locations.datasets.fhirStores.fhir.update
untuk mengupdate resource FHIR. Metode ini menerapkan interaksi
update standar FHIR (DSTU2,
STU3,
dan R4).
Saat mengupdate resource, Anda akan mengupdate seluruh konten resource. Hal ini berbeda dengan patching resource, yang hanya mengubah sebagian resource.
Jika penyimpanan FHIR telah menetapkan
enableUpdateCreate
,
permintaan akan diperlakukan sebagai pembaruan dan penyisipan (update atau penyisipan) yang mengupdate
resource jika ada, atau menyisipkannya menggunakan ID yang menentukan permintaan jika
tidak ada.
Isi permintaan harus berisi resource FHIR yang dienkode JSON dan header
permintaan harus berisi Content-Type: application/fhir+json
. Resource ini harus berisi elemen id
yang memiliki nilai identik dengan ID di jalur REST permintaan.
Contoh curl
dan PowerShell berikut berfungsi dengan penyimpanan FHIR R4. Contoh Go, Java, Node.js, dan Python dapat digunakan dengan penyimpanan FHIR STU3.
REST
Contoh berikut menunjukkan cara mengupdate denyut per menit (BPM) dalam resource Observation.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: ID project Google Cloud Anda
- LOCATION: lokasi set data
- DATASET_ID: set data induk penyimpanan FHIR
- FHIR_STORE_ID: ID toko FHIR
- OBSERVATION_ID: ID resource Observation
- PATIENT_ID: ID resource Pasien
- ENCOUNTER_ID: ID resource Interaksi
- BPM_VALUE: nilai denyut per menit (BPM) di resource Pengamatan yang diperbarui
Meminta isi JSON:
{ "resourceType": "Observation", "id": "OBSERVATION_ID", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "identifier": [ { "system": "my-code-system", "value": "ABC-12345" } ], "code": { "coding": [ { "system": "http://loinc.org", "code": "8867-4", "display": "Heart rate" } ] }, "valueQuantity": { "value": BPM_VALUE, "unit": "bpm" }, "encounter": { "reference": "Encounter/ENCOUNTER_ID" } }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
cat > request.json << 'EOF' { "resourceType": "Observation", "id": "OBSERVATION_ID", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "identifier": [ { "system": "my-code-system", "value": "ABC-12345" } ], "code": { "coding": [ { "system": "http://loinc.org", "code": "8867-4", "display": "Heart rate" } ] }, "valueQuantity": { "value": BPM_VALUE, "unit": "bpm" }, "encounter": { "reference": "Encounter/ENCOUNTER_ID" } } EOF
Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:
curl -X PUT \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation/OBSERVATION_ID"
PowerShell
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
@' { "resourceType": "Observation", "id": "OBSERVATION_ID", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "identifier": [ { "system": "my-code-system", "value": "ABC-12345" } ], "code": { "coding": [ { "system": "http://loinc.org", "code": "8867-4", "display": "Heart rate" } ] }, "valueQuantity": { "value": BPM_VALUE, "unit": "bpm" }, "encounter": { "reference": "Encounter/ENCOUNTER_ID" } } '@ | Out-File -FilePath request.json -Encoding utf8
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PUT `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation/OBSERVATION_ID" | Select-Object -Expand Content
APIs Explorer
Salin isi permintaan dan buka halaman referensi metode. Panel APIs Explorer akan terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Tempelkan isi permintaan di alat ini, lengkapi kolom lainnya yang wajib diisi, lalu klik Jalankan.
Anda akan melihat respons JSON seperti berikut:
Go
Node.js
Python
Mengupdate resource FHIR secara bersyarat
Contoh berikut menunjukkan cara memanggil metode
projects.locations.datasets.fhirStores.fhir.conditionalUpdate
untuk mengupdate resource FHIR yang cocok dengan kueri
penelusuran, bukan mengidentifikasi resource berdasarkan ID-nya. Metode ini mengimplementasikan
interaksi update bersyarat standar FHIR (DSTU2,
STU3,
dan R4).
Update bersyarat hanya dapat diterapkan ke satu resource FHIR dalam satu waktu.
Respons yang ditampilkan dari server bergantung pada jumlah kecocokan yang terjadi berdasarkan kriteria penelusuran:
- Satu kecocokan: Resource berhasil diperbarui atau error ditampilkan.
- Lebih dari satu kecocokan: Permintaan
menampilkan error
412 Precondition Failed
. - Nol cocok dengan
id
: Jika kriteria penelusuran mengidentifikasi nol kecocokan, isi permintaan yang diberikan berisiid
, dan penyimpanan FHIR memilikienableUpdateCreate
yang ditetapkan ketrue
, resource FHIR akan dibuat denganid
dalam isi permintaan. - Nol cocok tanpa
id
: Jika kriteria penelusuran mengidentifikasi nol kecocokan dan isi permintaan yang diberikan tidak berisiid
, resource FHIR akan dibuat dengan ID yang ditetapkan server seolah-olah resource dibuat menggunakanprojects.locations.datasets.fhirStores.fhir.create
.
Isi permintaan harus berisi resource FHIR yang dienkode JSON dan header
permintaan harus berisi Content-Type: application/fhir+json
.
Di Cloud Healthcare API v1, operasi bersyarat secara eksklusif menggunakan parameter penelusuran identifier
, jika ada untuk jenis resource FHIR, guna menentukan resource FHIR mana yang cocok dengan kueri penelusuran bersyarat.
REST
Contoh berikut menunjukkan cara mengirim permintaan PUT
menggunakan curl
dan PowerShell untuk mengedit resource Observation menggunakan ID Observation (ABC-12345
dalam my-code-system
). Pengamatan memberikan pengukuran detak jantung per menit (BPM) pasien.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: ID project Google Cloud Anda
- LOCATION: lokasi set data
- DATASET_ID: set data induk penyimpanan FHIR
- FHIR_STORE_ID: ID toko FHIR
- PATIENT_ID: ID resource Pasien
- ENCOUNTER_ID: ID resource Interaksi
- BPM_VALUE: nilai denyut per menit (BPM) di resource Observation
Meminta isi JSON:
{ "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "identifier": [ { "system": "my-code-system", "value": "ABC-12345" } ], "code": { "coding": [ { "system": "http://loinc.org", "code": "8867-4", "display": "Heart rate" } ] }, "valueQuantity": { "value": BPM_VALUE, "unit": "bpm" }, "encounter": { "reference": "Encounter/ENCOUNTER_ID" } }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
cat > request.json << 'EOF' { "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "identifier": [ { "system": "my-code-system", "value": "ABC-12345" } ], "code": { "coding": [ { "system": "http://loinc.org", "code": "8867-4", "display": "Heart rate" } ] }, "valueQuantity": { "value": BPM_VALUE, "unit": "bpm" }, "encounter": { "reference": "Encounter/ENCOUNTER_ID" } } EOF
Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:
curl -X PUT \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation?identifier=my-code-system|ABC-12345"
PowerShell
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
@' { "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "identifier": [ { "system": "my-code-system", "value": "ABC-12345" } ], "code": { "coding": [ { "system": "http://loinc.org", "code": "8867-4", "display": "Heart rate" } ] }, "valueQuantity": { "value": BPM_VALUE, "unit": "bpm" }, "encounter": { "reference": "Encounter/ENCOUNTER_ID" } } '@ | Out-File -FilePath request.json -Encoding utf8
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PUT `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation?identifier=my-code-system|ABC-12345" | Select-Object -Expand Content
APIs Explorer
Salin isi permintaan dan buka halaman referensi metode. Panel APIs Explorer akan terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Tempelkan isi permintaan di alat ini, lengkapi kolom lainnya yang wajib diisi, lalu klik Jalankan.
Anda akan melihat respons JSON seperti berikut:
Mem-patch resource FHIR
Contoh berikut menunjukkan cara memanggil metode
projects.locations.datasets.fhirStores.fhir.patch
untuk mem-patch resource FHIR. Metode ini menerapkan interaksi patch
standar FHIR (DSTU2,
STU3,
dan R4).
Saat mem-patch resource, Anda akan memperbarui sebagian resource dengan menerapkan operasi yang ditentukan dalam dokumen Patch JSON.
Permintaan harus berisi dokumen patch JSON, dan header permintaan harus berisi Content-Type: application/json-patch+json
.
Contoh berikut menunjukkan cara mem-patch resource Observation. Pengamatan detak jantung per
menit (BPM) pasien diperbarui menggunakan operasi patch replace
.
Contoh curl
dan PowerShell berikut berfungsi dengan penyimpanan FHIR R4. Contoh Go, Java, Node.js, dan Python dapat digunakan dengan penyimpanan FHIR STU3.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: ID project Google Cloud Anda
- LOCATION: lokasi set data
- DATASET_ID: set data induk penyimpanan FHIR
- FHIR_STORE_ID: ID toko FHIR
- OBSERVATION_ID: ID resource Observation
- BPM_VALUE: nilai denyut per menit (BPM) di resource Observation yang di-patch
Meminta isi JSON:
[ { "op": "replace", "path": "/valueQuantity/value", "value": BPM_VALUE } ]
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
cat > request.json << 'EOF' [ { "op": "replace", "path": "/valueQuantity/value", "value": BPM_VALUE } ] EOF
Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json-patch+json" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation/OBSERVATION_ID"
PowerShell
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
@' [ { "op": "replace", "path": "/valueQuantity/value", "value": BPM_VALUE } ] '@ | Out-File -FilePath request.json -Encoding utf8
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json-patch+json" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation/OBSERVATION_ID" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
Go
Java
Node.js
Python
Mengeksekusi permintaan PATCH
dalam paket FHIR
Anda dapat menentukan permintaan PATCH
dalam paket FHIR (khusus FHIR R4).
Dengan menjalankan permintaan PATCH
dalam paket FHIR, Anda dapat mem-patch banyak
resource FHIR sekaligus, sehingga Anda tidak harus membuat permintaan patch
satu per satu untuk setiap resource FHIR.
Untuk membuat permintaan PATCH
dalam paket, tentukan informasi berikut dalam objek resource
dalam permintaan:
- Kolom
resourceType
ditetapkan keBinary
- Kolom
contentType
ditetapkan keapplication/json-patch+json
- Isi patch dienkode dalam base64
Pastikan objek resource
terlihat seperti berikut:
"resource": {
"resourceType": "Binary",
"contentType": "application/json-patch+json",
"data": "WyB7ICJvcCI6ICJyZXBsYWNlIiwgInBhdGgiOiAiL2JpcnRoRGF0ZSIsICJ2YWx1ZSI6ICIxOTkwLTAxLTAxIiB9IF0K"
}
Berikut ini isi patch yang dienkode ke base64 di kolom data
:
[
{
"op": "replace",
"path": "/birthdate",
"value": "1990-01-01"
}
]
Contoh berikut menunjukkan cara menggunakan permintaan PATCH
dalam paket untuk mem-patch
resource Pasien yang Anda buat di
Membuat resource FHIR agar memiliki nilai
birthDate
1990-01-01
:
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: project ID Google Cloud Anda
- LOCATION: lokasi set data induk
- DATASET_ID: set data induk penyimpanan FHIR
- FHIR_STORE_ID: ID toko FHIR
- PATIENT_ID: ID resource Pasien yang ada
Meminta isi JSON:
{ "type": "transaction", "resourceType": "Bundle", "entry": [ { "request": { "method": "PATCH", "url": "Patient/PATIENT_ID" }, "resource": { "resourceType": "Binary", "contentType": "application/json-patch+json", "data": "WyB7ICJvcCI6ICJyZXBsYWNlIiwgInBhdGgiOiAiL2JpcnRoRGF0ZSIsICJ2YWx1ZSI6ICIxOTkwLTAxLTAxIiB9IF0K" } } ] }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
cat > request.json << 'EOF' { "type": "transaction", "resourceType": "Bundle", "entry": [ { "request": { "method": "PATCH", "url": "Patient/PATIENT_ID" }, "resource": { "resourceType": "Binary", "contentType": "application/json-patch+json", "data": "WyB7ICJvcCI6ICJyZXBsYWNlIiwgInBhdGgiOiAiL2JpcnRoRGF0ZSIsICJ2YWx1ZSI6ICIxOTkwLTAxLTAxIiB9IF0K" } } ] } EOF
Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/fhir+json" \
-d @request.json \
"https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir"
PowerShell
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
@' { "type": "transaction", "resourceType": "Bundle", "entry": [ { "request": { "method": "PATCH", "url": "Patient/PATIENT_ID" }, "resource": { "resourceType": "Binary", "contentType": "application/json-patch+json", "data": "WyB7ICJvcCI6ICJyZXBsYWNlIiwgInBhdGgiOiAiL2JpcnRoRGF0ZSIsICJ2YWx1ZSI6ICIxOTkwLTAxLTAxIiB9IF0K" } } ] } '@ | Out-File -FilePath request.json -Encoding utf8
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/fhir+json" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
Mem-patch resource FHIR secara bersyarat
Contoh berikut menunjukkan cara memanggil metode
projects.locations.datasets.fhirStores.fhir.conditionalPatch
untuk mem-patch resource FHIR yang cocok dengan kueri penelusuran, bukan
mengidentifikasi resource berdasarkan ID-nya. Metode ini menerapkan interaksi patch
bersyarat standar FHIR (DSTU2,
STU3,
dan R4).
Patch bersyarat hanya dapat diterapkan ke satu resource dalam satu waktu. Jika kriteria penelusuran mengidentifikasi lebih dari satu kecocokan, permintaan
akan menampilkan error 412 Precondition Failed
.
Di Cloud Healthcare API v1, operasi bersyarat secara eksklusif menggunakan parameter penelusuran identifier
, jika ada untuk jenis resource FHIR, guna menentukan resource FHIR mana yang cocok dengan kueri penelusuran bersyarat.
REST
Contoh berikut menunjukkan cara mengirim permintaan PATCH
menggunakan curl
dan PowerShell
untuk mengedit resource Observation jika ID Observation adalah
ABC-12345
di my-code-system
.
Pengamatan detak jantung per menit (BPM) pasien
diperbarui menggunakan operasi patch replace
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: ID project Google Cloud Anda
- LOCATION: lokasi set data
- DATASET_ID: set data induk penyimpanan FHIR
- FHIR_STORE_ID: ID toko FHIR
- BPM_VALUE: nilai denyut per menit (BPM) di resource Observation
Meminta isi JSON:
[ { "op": "replace", "path": "/valueQuantity/value", "value": BPM_VALUE } ]
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
cat > request.json << 'EOF' [ { "op": "replace", "path": "/valueQuantity/value", "value": BPM_VALUE } ] EOF
Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json-patch+json" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation?identifier=my-code-system|ABC-12345"
PowerShell
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
@' [ { "op": "replace", "path": "/valueQuantity/value", "value": BPM_VALUE } ] '@ | Out-File -FilePath request.json -Encoding utf8
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json-patch+json" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation?identifier=my-code-system|ABC-12345" | Select-Object -Expand Content
APIs Explorer
Salin isi permintaan dan buka halaman referensi metode. Panel APIs Explorer akan terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Tempelkan isi permintaan di alat ini, lengkapi kolom lainnya yang wajib diisi, lalu klik Jalankan.
Anda akan melihat respons JSON seperti berikut:
Mendapatkan resource FHIR
Contoh berikut menunjukkan cara menggunakan metode
projects.locations.datasets.fhirStores.fhir.read
untuk mendapatkan konten resource FHIR.
Contoh curl
dan PowerShell berikut berfungsi dengan penyimpanan FHIR R4.
Contoh Go, Java, Node.js, dan Python dapat digunakan dengan penyimpanan FHIR STU3.
Konsol
Untuk mendapatkan konten resource FHIR, ikuti langkah-langkah berikut:
Di konsol Google Cloud, buka halaman FHIR viewer.
Di menu drop-down FHIR Store, pilih set data, lalu pilih penyimpanan FHIR dalam set data tersebut.
Untuk memfilter daftar jenis resource, telusuri jenis resource yang ingin Anda tampilkan.
Klik kolom Resource Type.
Di menu drop-down Properties yang muncul, pilih Resource Type.
Masukkan jenis fasilitas.
Untuk menelusuri jenis resource lain, pilih ATAU dari menu drop-down Operator yang muncul, lalu masukkan jenis resource lain.
Dalam daftar jenis resource, pilih jenis resource untuk resource yang ingin Anda dapatkan kontennya.
Pada tabel resource yang muncul, pilih atau telusuri resource.
REST
Contoh berikut menunjukkan cara mendapatkan detail resource Observation yang dibuat di bagian sebelumnya.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: ID project Google Cloud Anda
- LOCATION: lokasi set data
- DATASET_ID: set data induk penyimpanan FHIR
- FHIR_STORE_ID: ID toko FHIR
- OBSERVATION_ID: ID resource Observation
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation/OBSERVATION_ID"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation/OBSERVATION_ID" | Select-Object -Expand Content
APIs Explorer
Buka halaman referensi metode. Panel APIs Explorer akan terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Lengkapi kolom yang wajib diisi, lalu klik Jalankan.
Anda akan melihat respons JSON seperti berikut:
Go
Java
Node.js
Python
Mendapatkan semua resource kompartemen pasien
Contoh berikut menunjukkan cara mendapatkan semua resource yang terkait dengan
kompartemen pasien tertentu
(DSTU2,
STU3,
dan R4).
Untuk informasi selengkapnya, lihat
projects.locations.datasets.fhirStores.fhir.Patient-everything
.
Contoh curl
dan PowerShell berikut berfungsi dengan penyimpanan FHIR R4. Contoh Go, Java, Node.js, dan Python dapat digunakan dengan penyimpanan FHIR STU3.
curl
Untuk mendapatkan resource di kompartemen pasien, buat permintaan GET
dan
tentukan informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Tanda pengenal pasien
- Token akses
Contoh berikut menunjukkan permintaan GET
yang menggunakan curl
:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Patient/PATIENT_ID/\$everything"
Jika permintaan berhasil, server akan menampilkan respons yang mirip dengan contoh berikut dalam format JSON:
{ "entry": [ { "resource": { "birthDate": "1970-01-01", "gender": "female", "id": "PATIENT_ID", "name": [ { "family": "Smith", "given": [ "Darcy" ], "use": "official" } ], "resourceType": "Patient" } }, { "resource": { "class": { "code": "IMP", "display": "inpatient encounter", "system": "http://hl7.org/fhir/v3/ActCode" }, "id": "ENCOUNTER_ID", "reasonCode": [ { "text": "The patient had an abnormal heart rate. She was concerned about this." } ], "resourceType": "Encounter", "status": "finished", "subject": { "reference": "Patient/PATIENT_ID" } } }, { "resource": { "encounter": { "reference": "Encounter/ENCOUNTER_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } } } ], "resourceType": "Bundle", "type": "searchset" }
PowerShell
Untuk mendapatkan resource di kompartemen pasien, buat permintaan GET
dan
tentukan informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Tanda pengenal pasien
- Token akses
Contoh berikut menunjukkan permintaan GET
menggunakan PowerShell:
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-RestMethod ` -Method Get ` -Headers $headers ` -Uri 'https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Patient/RESOURCE_ID/$everything' | ConvertTo-Json
Jika permintaan berhasil, server akan menampilkan respons yang mirip dengan contoh berikut dalam format JSON:
{ "entry": [ { "resource": { "birthDate": "1970-01-01", "gender": "female", "id": "PATIENT_ID", "name": [ { "family": "Smith", "given": [ "Darcy" ], "use": "official" } ], "resourceType": "Patient" } }, { "resource": { "class": { "code": "IMP", "display": "inpatient encounter", "system": "http://hl7.org/fhir/v3/ActCode" }, "id": "ENCOUNTER_ID", "reasonCode": [ { "text": "The patient had an abnormal heart rate. She was concerned about this." } ], "resourceType": "Encounter", "status": "finished", "subject": { "reference": "Patient/PATIENT_ID" } } }, { "resource": { "encounter": { "reference": "Encounter/ENCOUNTER_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } } } ], "resourceType": "Bundle", "type": "searchset" }
Go
Java
Node.js
Python
Mendapatkan resource kompartemen pasien yang difilter menurut jenis atau tanggal
Contoh berikut menunjukkan cara mendapatkan semua resource yang terkait dengan
kompartemen pasien (R4)
tertentu yang difilter menurut daftar jenis dan sejak tanggal dan waktu yang ditentukan.
Untuk informasi selengkapnya, lihat projects.locations.datasets.fhirStores.fhir.Patient-everything
.
Contoh curl
dan PowerShell berikut berfungsi dengan penyimpanan FHIR R4.
curl
Untuk mendapatkan resource di kompartemen pasien dari jenis yang ditentukan dan sejak
tanggal yang ditentukan, buat permintaan GET
dan tentukan informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Tanda pengenal pasien
- String kueri berisi daftar jenis resource yang dipisahkan koma dan tanggal mulai
- Token akses
Contoh berikut menunjukkan permintaan GET
yang menggunakan curl
:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Patient/PATIENT_ID/\$everything?_type=RESOURCE_TYPES&_since=DATE"
Jika permintaan berhasil, server akan menampilkan resource apa pun yang cocok dengan kriteria yang ditentukan dalam format JSON.
PowerShell
Untuk mendapatkan resource di kompartemen pasien dari jenis yang ditentukan dan sejak
tanggal yang ditentukan, buat permintaan GET
dan tentukan informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Tanda pengenal pasien
- String kueri berisi daftar jenis resource yang dipisahkan koma dan tanggal mulai
- Token akses
Contoh berikut menunjukkan permintaan GET
menggunakan PowerShell:
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-RestMethod ` -Method Get ` -Headers $headers ` -Uri 'https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Patient/RESOURCE_ID/$everything?_type=RESOURCE_TYPES&_since=DATE' | ConvertTo-Json
Jika permintaan berhasil, server akan menampilkan resource apa pun yang cocok dengan kriteria yang ditentukan dalam format JSON.
Mencantumkan versi resource FHIR
Contoh berikut menunjukkan cara menampilkan semua versi historis resource
FHIR. Untuk informasi selengkapnya, lihat
projects.locations.datasets.fhirStores.fhir.history
.
Contoh ini menggunakan resource yang dibuat dalam Membuat resource FHIR dan menunjukkan cara mencantumkan versi resource Observation.
Contoh curl
dan PowerShell berikut berfungsi dengan penyimpanan FHIR R4. Contoh Go, Java, Node.js, dan Python dapat digunakan dengan penyimpanan FHIR STU3.
curl
Contoh berikut menunjukkan cara menampilkan daftar semua versi resource Observation. Pengamatan telah diperbarui satu kali setelah pembuatan aslinya untuk mengubah detak jantung per menit (BPM) pasien.
Untuk menampilkan daftar semua versi resource FHIR, termasuk versi saat ini dan versi yang dihapus, buat permintaan GET
dan tentukan informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Jenis dan ID resource
- Token akses
Contoh berikut menunjukkan permintaan GET
yang menggunakan curl
.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/RESOURCE_TYPE/RESOURCE_ID/_history"
Jika permintaan berhasil, server akan menampilkan respons dalam format JSON. Dalam contoh ini, metode ini menampilkan dua versi Observation. Pada versi pertama, detak jantung pasien adalah 75 BPM. Pada versi kedua, detak jantung pasien adalah 85 BPM.
{ "entry": [ { "resource": { "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-02T00:00:00+00:00", "versionId": "MTU0MTE5MDk5Mzk2ODcyODAwMA" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": 85 } } }, { "resource": { "encounter": { "reference": "Encounter/ENCOUNTER_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "MTU0MTE5MDg4MTY0MzQ3MjAwMA" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": 75 } } } ], "resourceType": "Bundle", "type": "history" }
PowerShell
Contoh berikut menunjukkan cara menampilkan daftar semua versi resource Observation. Pengamatan telah diperbarui satu kali setelah pembuatan aslinya untuk mengubah detak jantung per menit (BPM) pasien.
Untuk menampilkan daftar semua versi resource FHIR, termasuk versi saat ini dan versi yang dihapus, buat permintaan GET
dan tentukan informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Jenis dan ID resource
- Token akses
Contoh berikut menunjukkan permintaan GET
menggunakan PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-RestMethod ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/RESOURCE_TYPE/RESOURCE_ID/_history" | Select-Object -Expand Content
Jika permintaan berhasil, server akan menampilkan respons dalam format JSON. Dalam contoh ini, metode ini menampilkan dua versi Observation. Pada versi pertama, detak jantung pasien adalah 75 BPM. Pada versi kedua, detak jantung pasien adalah 85 BPM.
{ "entry": [ { "resource": { "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-02T00:00:00+00:00", "versionId": "MTU0MTE5MDk5Mzk2ODcyODAwMA" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": 85 } } }, { "resource": { "encounter": { "reference": "Encounter/ENCOUNTER_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "MTU0MTE5MDg4MTY0MzQ3MjAwMA" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": 75 } } } ], "resourceType": "Bundle", "type": "history" }
Go
Java
Node.js
Python
Mengambil versi resource FHIR
Contoh berikut menunjukkan cara mengambil versi resource tertentu.
Untuk informasi selengkapnya, lihat
projects.locations.datasets.fhirStores.fhir.vread
.
ID versi untuk resource Observation dari Mencantumkan versi resource FHIR diperjelas di bawah ini:
{ "entry": [ { "resource": { "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-02T00:00:00+00:00", "versionId": "MTU0MTE5MDk5Mzk2ODcyODAwMA" }, ... { "resource": { "encounter": { "reference": "Encounter/ENCOUNTER_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "MTU0MTE5MDg4MTY0MzQ3MjAwMA" }, ... }
Contoh berikut menggunakan resource yang dibuat dalam Membuat resource FHIR dan menunjukkan cara melihat resource Observation.
Contoh curl
dan PowerShell berikut berfungsi dengan penyimpanan FHIR R4. Contoh Go, Node.js, dan Python berfungsi dengan penyimpanan FHIR STU3.
curl
Untuk mendapatkan versi resource FHIR tertentu, buat permintaan GET
dan
tentukan informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Jenis dan ID resource
- Versi resource
- Token akses
Contoh berikut menunjukkan permintaan GET
yang menggunakan curl
.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/RESOURCE_TYPE/RESOURCE_ID/_history/RESOURCE_VERSION"
Jika permintaan berhasil, server akan menampilkan respons dalam format JSON. Dalam contoh ini, versi pertama Observation, dengan detak jantung pasien 75 BPM, ditampilkan.
{ "encounter": { "reference": "Encounter/ENCOUNTER_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "MTU0MTE5MDg4MTY0MzQ3MjAwMA" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": 75 } }
PowerShell
Untuk mendapatkan versi resource FHIR tertentu, buat permintaan GET
dan
tentukan informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Jenis dan ID resource
- Versi resource
- Token akses
Contoh berikut menunjukkan permintaan GET
yang menggunakan curl
.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-RestMethod ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/RESOURCE_TYPE/RESOURCE_ID/RESOURCE_VERSION/_history" | Select-Object -Expand Content
Jika permintaan berhasil, server akan menampilkan respons dalam format JSON. Dalam contoh ini, versi pertama Observation, dengan detak jantung pasien 75 BPM, ditampilkan.
{ "encounter": { "reference": "Encounter/ENCOUNTER_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "MTU0MTE5MDg4MTY0MzQ3MjAwMA" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": 75 } }
Go
Java
Node.js
Python
Menghapus resource FHIR
Contoh berikut menunjukkan cara memanggil metode
projects.locations.datasets.fhirStores.fhir.delete
untuk menghapus resource FHIR Observation.
Terlepas dari apakah operasi berhasil atau gagal, server akan menampilkan kode status HTTP 200 OK
. Untuk memeriksa apakah resource berhasil
dihapus, telusuri atau dapatkan
resource dan lihat apakah resource tersebut ada.
Contoh curl
dan PowerShell berikut berfungsi dengan penyimpanan FHIR R4. Contoh Go, Java, Node.js, dan Python dapat digunakan dengan penyimpanan FHIR STU3.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: ID project Google Cloud Anda
- LOCATION: lokasi set data
- DATASET_ID: set data induk penyimpanan FHIR
- FHIR_STORE_ID: ID toko FHIR
- OBSERVATION_ID: ID resource Observation
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation/OBSERVATION_ID"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation/OBSERVATION_ID" | Select-Object -Expand Content
APIs Explorer
Buka halaman referensi metode. Panel APIs Explorer akan terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Lengkapi kolom yang wajib diisi, lalu klik Jalankan.
Anda akan melihat respons JSON seperti berikut:
Go
Java
Node.js
Python
Menghapus resource FHIR secara bersyarat
Di Cloud Healthcare API v1, operasi bersyarat secara eksklusif menggunakan parameter penelusuran identifier
, jika ada untuk jenis resource FHIR, guna menentukan resource FHIR mana yang cocok dengan kueri penelusuran bersyarat.
Resource FHIR cocok dengan kueri ?identifier=my-code-system|ABC-12345
jika dan hanya jika identifier.system
resource
adalah my-code-system
dan identifier.value
-nya adalah ABC-12345
. Jika resource FHIR cocok dengan kueri, Cloud Healthcare API akan menghapus resource tersebut.
Jika kueri menggunakan parameter penelusuran identifier
dan cocok dengan beberapa resource FHIR, Cloud Healthcare API akan menampilkan error "412 - Condition not selective enough"
.
Untuk menghapus resource satu per satu, ikuti langkah-langkah berikut:
- Telusuri setiap resource untuk mendapatkan ID unik yang ditetapkan server.
- Hapus setiap resource satu per satu menggunakan ID.
Contoh berikut menunjukkan cara menghapus resource FHIR yang cocok dengan kueri penelusuran secara bersyarat,
bukan mengidentifikasi resource FHIR berdasarkan ID-nya.
Kueri penelusuran mencocokkan dan menghapus resource Observation menggunakan
ID Pengamatan (ABC-12345
dalam my-code-system
).
REST
Gunakan metode projects.locations.datasets.fhirStores.fhir.conditionalDelete
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: ID project Google Cloud AndaLOCATION
: lokasi set dataDATASET_ID
: set data induk penyimpanan FHIRFHIR_STORE_ID
: ID toko FHIR
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation?identifier=my-code-system|ABC-12345"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation?identifier=my-code-system|ABC-12345" | Select-Object -Expand Content
APIs Explorer
Buka halaman referensi metode. Panel APIs Explorer akan terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Lengkapi kolom yang wajib diisi, lalu klik Jalankan.
Anda akan menerima kode status yang berhasil (2xx), serta respons yang kosong.
Menghapus versi historis resource FHIR
Contoh berikut menunjukkan cara menghapus semua versi historis resource
FHIR. Untuk informasi selengkapnya, lihat
projects.locations.datasets.fhirStores.fhir.Resource-purge
.
Pemanggilan metode projects.locations.datasets.fhirStores.fhir.Resource-purge
dibatasi untuk pengguna (pemanggil) dengan
peran roles/healthcare.fhirStoreAdmin
;
pengguna dengan peran roles/healthcare.fhirResourceEditor
tidak dapat
memanggil metode ini. Untuk mengizinkan pemanggil menghapus versi historis resource
FHIR:
- Pastikan pemanggil memiliki peran
roles/healthcare.fhirStoreAdmin
. - Buat peran IAM khusus dengan izin
healthcare.fhirResources.purge
dan tetapkan peran kepada pemanggil.
Contoh ini menggunakan resource yang dibuat dalam Membuat resource FHIR dan menunjukkan cara menghapus versi historis resource Observation.
Contoh curl
dan PowerShell berikut berfungsi dengan penyimpanan FHIR R4. Contoh Go, Java, Node.js, dan Python dapat digunakan dengan penyimpanan FHIR STU3.
curl
Untuk menghapus semua versi historis resource FHIR, buat permintaan DELETE
dan tentukan informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Jenis dan ID resource
- Token akses
Contoh berikut menunjukkan permintaan DELETE
yang menggunakan curl
.
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/fhir+json; charset=utf-8" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/RESOURCE_TYPE/RESOURCE_ID/\$purge"
Jika permintaan berhasil, server akan menampilkan isi respons kosong dalam format JSON:
{}
PowerShell
Untuk menghapus semua versi historis resource FHIR, buat permintaan DELETE
dan tentukan informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Jenis dan ID resource
- Token akses
Contoh berikut menunjukkan permintaan DELETE
menggunakan PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-RestMethod ` -Method Delete ` -Headers $headers ` -ContentType: "application/fhir+json; charset=utf-8" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/RESOURCE_TYPE/RESOURCE_ID/$purge" | ConvertTo-Json
Jika permintaan berhasil, server akan menampilkan isi respons kosong dalam format JSON:
{}