Notifikasi Pub/Sub FHIR

Halaman ini menjelaskan cara menggunakan Pub/Sub untuk mendapatkan notifikasi saat terjadi peristiwa klinis di toko FHIR.

Anda dapat menggunakan notifikasi Pub/Sub untuk beberapa kasus penggunaan, termasuk memicu pemrosesan downstream atau analisis data baru. Misalnya, model machine learning dapat menerima notifikasi saat data baru tersedia untuk pelatihan dan menghasilkan insight atau prediksi guna meningkatkan kualitas perawatan pasien.

Ringkasan

Anda dapat menerima notifikasi Pub/Sub saat resource FHIR dibuat, diupdate, di-patch, atau dihapus di penyimpanan FHIR. Cloud Healthcare API tidak mengirim notifikasi saat resource FHIR diimpor dari Cloud Storage.

Untuk menerima notifikasi, Anda harus membuat topik dan langganan Pub/Sub, lalu mengonfigurasi penyimpanan FHIR untuk mengirim notifikasi ke topik tersebut.

Diagram berikut menunjukkan cara notifikasi Pub/Sub dibuat dan dikirim saat resource FHIR dibuat di penyimpanan FHIR menggunakan metode fhir.create. Langkah-langkahnya sama saat resource FHIR diupdate, di-patch, atau dihapus.

Notifikasi FHIR Pub/Sub.

Gambar 1. Menggunakan notifikasi Pub/Sub untuk perubahan di penyimpanan FHIR.

Gambar 1 menunjukkan langkah-langkah berikut:

  1. Pemanggil membuat permintaan fhirStores.fhir.create untuk membuat resource FHIR.
  2. Penyimpanan FHIR menerima permintaan, membuat pesan Pub/Sub, dan mengirimkannya ke topik Pub/Sub yang dikonfigurasi di penyimpanan FHIR.
  3. Pub/Sub meneruskan pesan ke langganan yang dilampirkan ke topik.
  4. Pelanggan akan menerima notifikasi dalam bentuk pesan Pub/Sub dari langganan mereka. Setiap langganan dapat memiliki satu atau beberapa pelanggan agar paralelisme dapat meningkat.

Konfigurasi notifikasi

Anda dapat mengonfigurasi notifikasi Pub/Sub dan perilakunya dalam objek FhirNotificationConfig di penyimpanan FHIR. Setiap penyimpanan FHIR dapat memiliki satu FhirNotificationConfig yang dikonfigurasi.

Tabel berikut menjelaskan kolom dalam objek FhirNotificationConfig.

Kolom Deskripsi Contoh
pubsubTopic Topik Pub/Sub untuk dilampirkan ke penyimpanan FHIR. Notifikasi dikirim ke topik yang ditentukan. projects/my-project/topics/my-topic
sendFullResource Apakah akan menyertakan konten lengkap resource FHIR yang dibuat, diupdate, atau di-patch dalam notifikasi. Kolom ini tidak berpengaruh pada notifikasi yang dikirim saat resource FHIR dihapus. Untuk menyertakan konten lengkap resource yang dihapus, tetapkan sendPreviousResourceOnDelete ke true. true
sendPreviousResourceOnDelete Apakah akan menyertakan konten lengkap resource FHIR yang dihapus dalam notifikasi. Kolom ini tidak berpengaruh pada notifikasi yang dikirim saat resource FHIR dibuat, diperbarui, atau di-patch. true

Format dan konten notifikasi

Setiap notifikasi Pub/Sub berisi objek message yang menyimpan informasi tentang peristiwa klinis. Objek message terlihat mirip dengan contoh berikut:

{
  "message": {
    "attributes": {
      "action": "ACTION",
      "lastUpdatedTime": "RFC_1123_FORMAT_DATETIME",
      "payloadType": "PAYLOAD_TYPE",
      "resourceType": "FHIR_RESOURCE_TYPE",
      "storeName": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
      "versionId": "VERSION_ID"
    },
    "data": "BASE_64_ENCODED_DATA",
    "messageId": "MESSAGE_ID",
    "publishTime": "YYYY-MM-DDTHH:MM:SS+ZZ:ZZ"
  }
}

Untuk mengetahui informasi tentang kolom tambahan yang disertakan dalam setiap pesan Pub/Sub, lihat ReceivedMessage dan PubsubMessage.

Tabel berikut menjelaskan setiap kolom di objek attributes:

Atribut Deskripsi Contoh
action Tindakan yang terjadi pada resource FHIR. Nilai yang memungkinkan mencakup:
  • CreateResource
  • PatchResource
  • UpdateResource
  • DeleteResource
CreateResource
resourceType Jenis resource FHIR yang dimodifikasi. Nilai yang memungkinkan mencakup semua jenis resource FHIR yang didukung dalam Cloud Healthcare API. Patient
payloadType Jenis payload pesan, salah satu dari NameOnly atau FullResource. FullResource
storeName Nama resource lengkap penyimpanan FHIR tempat tindakan terjadi. projects/my-project/locations/us/datasets/my-dataset/fhirStores/my-fhir-store
lastUpdatedTime Stempel waktu terakhir kali resource FHIR diubah. Stempel waktu menggunakan format RFC 1123. Mon, 01 Jan 2020 00:00:00 UTC
versionId ID resource FHIR versi terbaru tempat tindakan terjadi. Untuk mengetahui informasi selengkapnya tentang ID versi, lihat Mencantumkan versi resource FHIR. MTY4MzA2MDQzOTI5NjIxMDAwMA

Tabel berikut menjelaskan kolom yang tersisa di objek message:

Kolom Deskripsi Contoh
data String berenkode basis 64 dari nama resource FHIR atau konten resource FHIR, bergantung pada nilai yang ditentukan dalam FhirNotificationConfig.
messageId ID untuk pesan Pub/Sub.
publishTime Waktu saat server Pub/Sub memublikasikan pesan.

Menentukan informasi yang akan disertakan dalam notifikasi

Notifikasi Pub/Sub, seperti dijelaskan dalam Format dan konten notifikasi, mencakup sekumpulan kolom standar. Anda dapat menyertakan resource FHIR lengkap atau namanya saja dalam setiap notifikasi. Nama resource berisi jalur lengkap ke resource dan ID resource dalam format ini:

projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/RESOURCE_TYPE/RESOURCE_ID

Informasi resource FHIR disimpan di kolom data sebagai string berenkode base 64.

Dengan menyertakan konten lengkap resource FHIR, Anda tidak perlu membuat kueri Pub/Sub dan Cloud Healthcare API secara terpisah untuk detail resource.

Mendapatkan nama resource FHIR

Untuk menyertakan nama resource FHIR hanya saat Anda membuat, mengupdate, atau mem-patch resource, tetapkan sendFullResource ke false. Untuk menyertakan nama hanya saat Anda menghapus resource FHIR, tetapkan sendPreviousResourceOnDelete ke false.

Saat Anda melihat notifikasi, objek message akan terlihat seperti berikut:

{
  "message": {
    "attributes": {
      "action": "{CreateResource|PatchResource|UpdateResource|DeleteResource}",
      "lastUpdatedTime": "RFC_1123_FORMAT_DATETIME",
      "payloadType": "NameOnly",
      "resourceType": "FHIR_RESOURCE_TYPE",
      "storeName": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
      "versionId": "VERSION_ID"
    },
    "data": "BASE64_ENCODED_FHIR_RESOURCE_NAME",
    "messageId": "MESSAGE_ID",
    "publishTime": "YYYY-MM-DDTHH:MM:SS+ZZ:ZZ"
  }
}

Perhatikan hal-hal berikut dalam notifikasi:

  • Kolom payloadType ditetapkan ke NameOnly untuk menunjukkan hal berikut terkait permintaan:

    • Untuk operasi pembuatan, update, dan patch, sendFullResource disetel ke false.
    • Untuk operasi penghapusan, sendPreviousResourceOnDelete ditetapkan ke false.
  • Hanya nama resource FHIR yang disertakan di kolom data. Nama ini dienkode sebagai string berenkode base 64.

Mendapatkan konten resource FHIR yang dibuat, diupdate, atau di-patch

Untuk menyertakan konten lengkap resource FHIR saat Anda membuat, mengupdate, atau mem-patch resource, tetapkan sendFullResource ke true.

Perilaku ini tidak berlaku jika Anda menghapus resource FHIR. Jika Anda menghapus resource FHIR, dan sendFullResource disetel ke true tetapi sendPreviousResourceOnDelete ditetapkan ke false, notifikasinya akan sama seperti ketika Anda hanya mengambil nama resource FHIR. Untuk menyertakan konten resource FHIR saat resource FHIR dihapus, lihat Menghapus konten resource FHIR.

Saat Anda melihat notifikasi, objek message akan terlihat seperti berikut:

{
  "message": {
    "attributes": {
      "action": "{CreateResource|PatchResource|UpdateResource}",
      "lastUpdatedTime": "RFC_1123_FORMAT_DATETIME",
      "payloadType": "FullResource",
      "resourceType": "FHIR_RESOURCE_TYPE",
      "storeName": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
      "versionId": "VERSION_ID"
    },
    "data": "BASE64_ENCODED_FHIR_RESOURCE_CONTENTS",
    "messageId": "MESSAGE_ID",
    "publishTime": "YYYY-MM-DDTHH:MM:SS+ZZ:ZZ"
  }
}

Perhatikan hal-hal berikut dalam notifikasi:

  • payloadType disetel ke FullResource untuk menunjukkan bahwa sendFullResource ditetapkan ke true. Konten lengkap resource FHIR disertakan dalam kolom data sebagai string berenkode basis 64.
  • Kolom data berisi konten resource FHIR sebagai string berenkode base 64.

Mengambil konten resource FHIR yang telah dihapus

Untuk menyertakan konten lengkap resource FHIR saat Anda menghapusnya, tetapkan sendPreviousResourceOnDelete ke true.

Saat Anda melihat notifikasi, objek message akan terlihat seperti berikut:

{
  "message": {
    "attributes": {
      "action": "DeleteResource",
      "lastUpdatedTime": "RFC_1123_FORMAT_DATETIME",
      "payloadType": "FullResource",
      "resourceType": "FHIR_RESOURCE_TYPE",
      "storeName": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
      "versionId": "VERSION_ID"
    },
    "data": "BASE64_ENCODED_FHIR_RESOURCE_CONTENTS",
    "messageId": "MESSAGE_ID",
    "publishTime": "YYYY-MM-DDTHH:MM:SS+ZZ:ZZ"
  }
}

Perhatikan nilai di kolom berikut:

  • payloadType disetel ke FullResource meskipun sendFullResource ditetapkan ke false.

    Konten lengkap resource FHIR disertakan dalam kolom data sebagai string berenkode basis 64.

  • Kolom data berisi konten resource FHIR sebagai string berenkode base 64 sebelum resource dihapus.

Mengonfigurasi dan melihat notifikasi FHIR

Contoh berikut menunjukkan cara melihat notifikasi Pub/Sub yang dihasilkan saat resource FHIR dibuat di penyimpanan FHIR.

Sebelum memulai

Sebelum mengonfigurasi dan menggunakan notifikasi Pub/Sub, selesaikan bagian berikut:

Tinjau kuota Pub/Sub

Pahami kuota dan batas Pub/Sub. Untuk mengetahui informasi tentang cara melihat kuota, meminta lebih banyak kuota, dan apa yang terjadi jika kuota habis, lihat Bekerja dengan kuota.

Mengaktifkan Pub/Sub API

Di Konsol Google Cloud, aktifkan Pub/Sub API:

Mengaktifkan API

Mengonfigurasi izin Pub/Sub

Untuk mengizinkan pesan dipublikasikan dari Cloud Healthcare API ke Pub/Sub, Anda harus menambahkan peran pubsub.publisher ke akun layanan Cloud Healthcare Service Agent project Anda. Lihat izin Pub/Sub toko DICOM, FHIR, dan HL7v2 guna mengetahui langkah-langkah untuk menambahkan peran yang diperlukan.

Membuat topik Pub/Sub

Untuk membuat topik, lihat Membuat topik.

Setiap penyimpanan data dapat memiliki topik Pub/Sub-nya sendiri, atau beberapa penyimpanan data dapat berbagi topik yang sama.

Gunakan format berikut saat menentukan topik Pub/Sub:

projects/PROJECT_ID/topics/TOPIC_NAME

PROJECT_ID adalah project ID Google Cloud Anda dan TOPIC_NAME adalah nama topik Pub/Sub.

Membuat langganan Pub/Sub

Untuk menerima pesan yang dipublikasikan ke suatu topik, Anda perlu membuat langganan Pub/Sub. Setiap topik Pub/Sub memerlukan setidaknya satu langganan Pub/Sub. Langganan menghubungkan topik ke aplikasi pelanggan yang menerima dan memproses pesan yang dipublikasikan ke topik.

Untuk membuat langganan dan melampirkannya ke topik Pub/Sub, lihat Membuat langganan.

Membuat atau mengedit penyimpanan FHIR

Buat atau edit penyimpanan FHIR dengan objek FhirNotificationConfig yang dikonfigurasi.

Contoh berikut menunjukkan cara mengedit penyimpanan FHIR yang sudah ada. Kolom sendFullResource dan sendPreviousResourceOnDelete disetel ke true yang berarti notifikasi berisi konten resource FHIR lengkap saat resource dibuat, diperbarui, di-patch, atau dihapus.

REST

Untuk mengedit penyimpanan FHIR, gunakan metode projects.locations.datasets.fhirStores.patch.

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
  • PUBSUB_TOPIC_ID: ID topik Pub/Sub

Meminta isi JSON:

{
  "notificationConfigs": [
    {
      "pubsubTopic": "projects/PROJECT_ID/topics/PUBSUB_TOPIC_ID",
      "sendFullResource": true,
      "sendPreviousResourceOnDelete": true
    }
  ]
}

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'
{
  "notificationConfigs": [
    {
      "pubsubTopic": "projects/PROJECT_ID/topics/PUBSUB_TOPIC_ID",
      "sendFullResource": true,
      "sendPreviousResourceOnDelete": true
    }
  ]
}
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; charset=utf-8" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=notificationConfigs"

PowerShell

Simpan isi permintaan dalam file bernama request.json. Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:

@'
{
  "notificationConfigs": [
    {
      "pubsubTopic": "projects/PROJECT_ID/topics/PUBSUB_TOPIC_ID",
      "sendFullResource": true,
      "sendPreviousResourceOnDelete": true
    }
  ]
}
'@  | 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; charset=utf-8" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=notificationConfigs" | Select-Object -Expand Content

Anda akan melihat respons JSON seperti berikut:

Membuat resource FHIR

Buat resource FHIR di penyimpanan FHIR. Permintaan tersebut menyebabkan Cloud Healthcare API memublikasikan pesan ke topik Pub/Sub yang dikonfigurasi.

Melihat notifikasi Pub/Sub

Lihat pesan yang dipublikasikan ke topik Pub/Sub. Pesan berikut dibuat saat resource Pasien dibuat di penyimpanan FHIR.

Dalam contoh output, konten resource FHIR berada dalam string berenkode base64 di kolom data. Anda harus mendekode nilai berenkode base64 untuk mendapatkan kontennya. Sebagian besar platform dan sistem operasi memiliki alat untuk mendekode teks base64.

REST

Untuk melihat pesan yang dipublikasikan ke topik Pub/Sub, gunakan metode projects.subscriptions.pull. Contoh berikut menggunakan parameter kueri ?maxMessages=10 untuk menentukan jumlah maksimum pesan yang akan ditampilkan dalam permintaan. Anda dapat menyesuaikan nilainya berdasarkan kebutuhan.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: ID project Google Cloud Anda
  • PUBSUB_SUBSCRIPTION_ID: ID langganan yang dilampirkan ke topik Pub/Sub yang dikonfigurasi di FHIR store

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Jalankan perintah berikut:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://pubsub.googleapis.com/v1/projects/PROJECT_ID/subscriptions/PUBSUB_SUBSCRIPTION_ID:pull?maxMessages=10"

PowerShell

Jalankan perintah berikut:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://pubsub.googleapis.com/v1/projects/PROJECT_ID/subscriptions/PUBSUB_SUBSCRIPTION_ID:pull?maxMessages=10" | Select-Object -Expand Content

Anda akan menerima respons JSON yang mirip dengan yang berikut ini:

gcloud

Untuk melihat pesan yang dipublikasikan ke topik Pub/Sub, jalankan perintah gcloud pubsub subscriptions pull.

Contoh ini menggunakan flag Google Cloud CLI berikut:

Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

  • PROJECT_ID: ID project Google Cloud Anda
  • PUBSUB_SUBSCRIPTION_ID: ID langganan yang dilampirkan ke topik Pub/Sub yang dikonfigurasi di FHIR store

Jalankan perintah berikut:

Linux, macOS, atau Cloud Shell

gcloud pubsub subscriptions pull \
    projects/PROJECT_ID/subscriptions/PUBSUB_SUBSCRIPTION_ID \
    --auto-ack \
    --format=json

Windows (PowerShell)

gcloud pubsub subscriptions pull `
    projects/PROJECT_ID/subscriptions/PUBSUB_SUBSCRIPTION_ID `
    --auto-ack `
    --format=json

Windows (cmd.exe)

gcloud pubsub subscriptions pull ^
    projects/PROJECT_ID/subscriptions/PUBSUB_SUBSCRIPTION_ID ^
    --auto-ack ^
    --format=json

Anda akan melihat respons seperti berikut:

[
  {
    "ackId": "RFAGFixdRkhRNxkIaFEOT14jPzUgKEUaAggUBXx9cEFLdVhUcGhRDRlyfWB9bQ5GAgpGWixfURsHaE5tdR",
    "ackStatus": "SUCCESS",
    "message": {
      "attributes": {
        "action": "CreateResource",
        "lastUpdatedTime": "Mon, 01 Jan 2020 00:00:00 UTC",
        "payloadType": "FullResource",
        "resourceType": "Patient",
        "storeName": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
        "versionId": "MTY4MzA2MDQzOTI5NjIxMDAwMA"
      },
      "data": "wogICJiaXJ0aERhdGUiOiAiMTk3MC0wMS0wMSIsCiAgImdlbmRlciI6ICJmZW1hbGUiLAogICJpZCI6ICIyYmMwODg4Yi00MGRmLTQwYzctOWRhYi0wMzc4YTFiZWE0MGIiLAogICJtZXRhIjogewogICAgImxhc3RVcGRhdGVkIjogIjIwMjMtMDUtMDJUMjA6NDc6MTkuMjk2MjEwKzAwOjAwIiwKICAgICJ2ZXJzaW9uSWQiOiAiTVRZNE16QTJNRFF6T1RJNU5qSXhNREF3TUEiCiAgfSwKICAibmFtZSI6IFsKICAgIHsKICAgICAgImZhbWlseSI6ICJTbWl0aCIsCiAgICAgICJnaXZlbiI6IFsKICAgICAgICAiRGFyY3kiCiAgICAgIF0sCiAgICAgICJ1c2UiOiAib2ZmaWNpYWwiCiAgICB9CiAgXSwKICAicmVzb3VyY2VUeXBlIjogIlBhdGllbnQiCn0=",
      "messageId": "7586159156345265",
      "publishTime": "YYYY-MM-DDTHH:MM:SS+ZZ:ZZ"
    }
  }
]

Perilaku saat resource FHIR terlalu besar atau traffic tinggi

Jika ukuran resource FHIR terlalu besar, atau server Cloud Healthcare API mengalami traffic yang tinggi, kolom attributes mungkin hanya berisi nama resource, bukan konten resource lengkap. Perilaku ini terjadi meskipun sendFullResource dan sendPreviousResourceOnDelete ditetapkan ke true.

Untuk memastikan apakah notifikasi Pub/Sub berisi resource FHIR lengkap atau tidak, periksa kolom payloadType dalam respons agar tidak melihat notifikasi. Jika payloadType ditetapkan ke nameOnly, berarti kolom attributes tidak sepenuhnya mengisi data resource FHIR. Kemudian, Anda harus mendapatkan konten resource FHIR secara manual dari penyimpanan FHIR, bukan dari pesan Pub/Sub.

Kebijakan penyimpanan pesan Cloud Healthcare API dan Pub/Sub

Untuk memastikan bahwa data Cloud Healthcare API dan data terkait dalam pesan Pub/Sub berada di region yang sama, Anda harus menetapkan kebijakan penyimpanan pesan Pub/Sub.

Anda harus secara eksplisit menetapkan kebijakan penyimpanan pesan pada topik Pub/Sub yang dikonfigurasi di penyimpanan data untuk memastikan bahwa data tetap berada di region yang sama. Misalnya, jika set data Cloud Healthcare API dan penyimpanan FHIR Anda berada di us-central1, kebijakan penyimpanan pesan hanya boleh mengizinkan region us-central1.

Untuk mengonfigurasi kebijakan penyimpanan pesan, lihat Mengonfigurasi kebijakan penyimpanan pesan.

Memecahkan masalah pesan Pub/Sub yang terlewat

Jika notifikasi tidak dapat dipublikasikan ke Pub/Sub, error akan dicatat ke Cloud Logging. Untuk mengetahui informasi lebih lanjut, baca bagian Melihat log error di Cloud Logging.

Jika tingkat pembuatan error melebihi batas, error yang melebihi batas tidak akan dikirimkan ke Cloud Logging.

Lihat notifikasi FHIR menggunakan konfigurasi NotificationConfig (Tidak digunakan lagi)

Resource FhirStore berisi objek NotificationConfig tempat Anda dapat menentukan topik Pub/Sub. Perubahan pada resource FHIR selalu berisi ID berikut di kolom data pada pesan Pub/Sub:

projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/RESOURCE_TYPE/RESOURCE_ID

Kumpulan key:value pair berikut selalu disertakan di kolom attributes pesan:

Nama atribut Nilai yang memungkinkan Contoh Deskripsi
action
  • CreateResource
  • PatchResource
  • UpdateResource
  • DeleteResource
CreateResource Jenis peristiwa yang baru saja terjadi.
resourceType Semua jenis resource FHIR. Patient Jenis resource yang diubah.

Langkah selanjutnya