View a markdown version of this page

Menghapus sumber daya FHIR - AWS HealthLake

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menghapus sumber daya FHIR

deleteInteraksi FHIR menghapus sumber daya FHIR yang ada dari penyimpanan HealthLake data. Untuk informasi tambahan, lihat dokument delete asi FHIR R4 RESTful API.

Untuk menghapus sumber daya FHIR

  1. Kumpulkan HealthLake region dan datastoreId nilai. Untuk informasi selengkapnya, lihat Mendapatkan properti penyimpanan data.

  2. Tentukan jenis FHIR Resource untuk menghapus dan mengumpulkan id nilai terkait. Untuk informasi selengkapnya, lihat Jenis sumber daya.

  3. Buat URL untuk permintaan menggunakan nilai yang dikumpulkan untuk HealthLake region dandatastoreId. Juga termasuk Resource jenis FHIR dan yang terkaitid. Untuk melihat seluruh jalur URL dalam contoh berikut, gulir ke atas tombol Salin.

    DELETE https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Resource/id
  4. Kirim permintaan . deleteInteraksi FHIR menggunakan DELETE permintaan dengan Tanda Tangan AWS Versi 4 atau SMART pada otorisasi FHIR. curlContoh berikut menghapus Patient sumber daya FHIR yang ada dari penyimpanan HealthLake data. Untuk melihat seluruh contoh, gulir ke atas tombol Salin.

    SigV4

    Otorisasi SIGv4

    curl --request DELETE \ 'https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/id' \ --aws-sigv4 'aws:amz:region:healthlake' \ --user "$AWS_ACCESS_KEY_ID:$AWS_SECRET_ACCESS_KEY" \ --header "x-amz-security-token:$AWS_SESSION_TOKEN" \ --header 'Accept: application/json'

    Server mengembalikan kode status 204 HTTP yang mengonfirmasi sumber daya telah dihapus dari HealthLake penyimpanan data. Jika permintaan penghapusan gagal, Anda akan menerima kode status HTTP 400 seri yang menunjukkan mengapa permintaan gagal.

    SMART on FHIR

    SMART pada contoh otorisasi FHIR untuk tipe IdentityProviderConfiguration data.

    { "AuthorizationStrategy": "SMART_ON_FHIR", "FineGrainedAuthorizationEnabled": true, "IdpLambdaArn": "arn:aws:lambda:your-region:your-account-id:function:your-lambda-name", "Metadata": "{\"issuer\":\"https://ehr.example.com\", \"jwks_uri\":\"https://ehr.example.com/.well-known/jwks.json\",\"authorization_endpoint\":\"https://ehr.example.com/auth/authorize\",\"token_endpoint\":\"https://ehr.token.com/auth/token\",\"token_endpoint_auth_methods_supported\":[\"client_secret_basic\",\"foo\"],\"grant_types_supported\":[\"client_credential\",\"foo\"],\"registration_endpoint\":\"https://ehr.example.com/auth/register\",\"scopes_supported\":[\"openId\",\"profile\",\"launch\"],\"response_types_supported\":[\"code\"],\"management_endpoint\":\"https://ehr.example.com/user/manage\",\"introspection_endpoint\":\"https://ehr.example.com/user/introspect\",\"revocation_endpoint\":\"https://ehr.example.com/user/revoke\",\"code_challenge_methods_supported\":[\"S256\"],\"capabilities\":[\"launch-ehr\",\"sso-openid-connect\",\"client-public\",\"permission-v2\"]}" }

    Penelepon dapat menetapkan izin di lambda otorisasi. Untuk informasi selengkapnya, lihat Cakupan OAuth 2.0.

    AWS Console

    1. Masuk ke halaman J alankan kueri di Kon HealthLake sol.

    2. Di bawah bagian Pengaturan kueri, buat pilihan berikut.

    • ID Penyimpanan Data — pilih ID penyimpanan data untuk menghasilkan string kueri.

    • Jenis kueri — pilihDelete.

    • Jenis sumber daya — pilih jenis sumber daya FHIR untuk dihapus.

    • ID sumber daya — masukkan ID sumber daya FHIR.

    3. Pilih Run query (Jalankan kueri).

Menghapus sumber daya FHIR berdasarkan kondisi

Penghapusan bersyarat sangat berguna ketika Anda tidak mengetahui ID sumber daya FHIR tertentu tetapi memiliki informasi pengenal lain tentang sumber daya yang ingin Anda hapus.

Penghapusan bersyarat memungkinkan Anda untuk menghapus sumber daya yang ada berdasarkan kriteria pencarian daripada dengan ID FHIR logis. Ketika server memproses permintaan penghapusan, server melakukan pencarian menggunakan kemampuan pencarian standar untuk jenis sumber daya untuk menyelesaikan ID logis tunggal untuk permintaan tersebut.

Cara kerja penghapusan bersyarat

Tindakan server tergantung pada berapa banyak kecocokan yang ditemukannya:

  1. Tidak ada yang cocok: Server mencoba menghapus biasa dan merespons dengan tepat (404 Tidak Ditemukan untuk sumber daya yang tidak ada, 204 Tidak Ada Konten untuk sumber daya yang sudah dihapus)

  2. Satu keco cokan: Server melakukan penghapusan biasa pada sumber daya yang cocok

  3. Beberapa keco cokan: Mengembalikan kesalahan 412 Prasyarat Gagal yang menunjukkan kriteria klien tidak cukup selektif

Skenario respons

AWS HealthLake menangani operasi penghapusan bersyarat dengan pola respons berikut:

Operasi yang Sukses

  • Ketika kriteria pencarian Anda berhasil mengidentifikasi satu sumber daya aktif, sistem mengembalikan 204 No Content setelah menyelesaikan penghapusan, seperti operasi penghapusan standar.

ID-Based Hapus Bersyarat

Saat melakukan penghapusan bersyarat berdasarkan id parameter tambahan (createdAt,_tag, atau_lastUpdated):

  • 204 Tidak Ada Kon ten: Sumber daya sudah dihapus

  • 404 Tidak Ditemukan: Sumber tidak ada

  • 409 Konflik: ID cocok tetapi parameter lain tidak cocok

Non-ID-Based Hapus Bersyarat

Ketika tidak id disediakan atau saat menggunakan parameter selaincreatedAt,_tag, atau_lastUpdated:

  • 404 Tidak Ditemukan: Tidak ada hasil yang cocok

Situasi Konflik

Beberapa skenario menghasilkan 412 respons Prasyarat Gagal:

  • Beberapa sumber daya cocok dengan kriteria pencarian Anda (kriteria tidak cukup spesifik)

  • Konflik versi saat menggunakan header ETag dengan If-Match

  • Pembaruan sumber daya yang terjadi antara operasi pencarian dan penghapusan

Contoh Penghapusan Bersyarat yang Berhasil

Contoh berikut menghapus sumber daya Pasien berdasarkan kriteria tertentu:

DELETE https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?name=peter&birthdate=2000-01-01&phone=1234567890

Permintaan ini menghapus sumber daya Pasien di mana:

  • Namanya adalah “peter”

  • Tanggal lahir 1 Januari 2000

  • Nomor telepon adalah 1234567890

Praktik Terbaik

  1. Gunakan kriteria pencarian khusus untuk menghindari beberapa kecocokan dan mencegah 412 kesalahan.

  2. Pertimbangkan header ETag untuk kontrol versi bila diperlukan untuk menangani modifikasi bersamaan.

  3. Tangani respons kesalahan dengan tepat:

    • Untuk 404: Perbaiki kriteria pencarian

    • Untuk 412: Buat kriteria lebih spesifik atau selesaikan konflik versi

  4. Bersiaplah untuk konflik waktu di lingkungan konkurensi tinggi di mana sumber daya dapat dimodifikasi antara operasi pencarian dan penghapusan.