Mencari sumber daya FHIR dengan POST - AWS HealthLake

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

Mencari sumber daya FHIR dengan POST

Anda dapat menggunakan searchinteraksi FHIR dengan POST permintaan untuk mencari penyimpanan HealthLake data. Saat menggunakanPOST, HealthLake mendukung parameter pencarian baik di URL atau di badan permintaan, tetapi Anda tidak dapat menggunakan keduanya dalam satu permintaan.

Penting

Untuk pencarian yang melibatkan informasi identitas pribadi (PII) atau informasi kesehatan yang dilindungi (PHI), praktik terbaik keamanan memerlukan penggunaan POST permintaan, karena PII dan PHI ditambahkan sebagai bagian dari badan permintaan dan dienkripsi dalam perjalanan.

Prosedur berikut diikuti dengan contoh menggunakan search interaksi FHIR R4 dengan POST untuk mencari penyimpanan HealthLake data. Contoh menunjukkan cara menentukan parameter pencarian di badan permintaan JSON.

Untuk mencari penyimpanan HealthLake data dengan POST

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

  2. Tentukan jenis sumber daya FHIR untuk mencari 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 dan _search interaksi FHIR. Untuk melihat seluruh jalur URL dalam contoh berikut, gulir ke atas tombol Salin.

    POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Resource/_search
  4. Membangun badan JSON untuk permintaan, menentukan data FHIR untuk mencari. Untuk tujuan prosedur ini, Anda akan mencari Observation sumber daya untuk menemukan pasien yang tidak pernah merokok. Untuk menentukan status kode medisNever smoker, atur value-concept=266919005 di badan permintaan JSON. Simpan file sebagai search-observation.json.

    value-concept=266919005
  5. Kirim permintaan . searchInteraksi FHIR menggunakan GET permintaan dengan AWS Signature Version 4 atau SMART pada otorisasi FHIR.

    catatan

    Saat membuat POST permintaan dengan parameter pencarian di badan permintaan, gunakan Content-Type: application/x-www-form-urlencoded sebagai bagian dari header.

    curlContoh berikut membuat permintaan pencarian berbasis Pos pada jenis Observation sumber daya. Permintaan menggunakan parameter value-conceptpencarian untuk mencari kode medis 266919005 yang menunjukkan nilaiNever smoker. Untuk melihat seluruh contoh, gulir ke atas tombol Salin.

    SigV4

    Otorisasi SiGv4

    curl --request POST \ 'https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Observation/_search' \ --aws-sigv4 'aws:amz:region:healthlake' \ --user "$AWS_ACCESS_KEY_ID:$AWS_SECRET_ACCESS_KEY" \ --header "x-amz-security-token:$AWS_SESSION_TOKEN" \ --header "Content-Type: application/x-www-form-urlencoded" --header "Accept: application/json" --data @search-observation.json
    SMART on FHIR

    SMART pada contoh otorisasi FHIR untuk tipe IdentityProviderConfigurationdata.

    { "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 OAuth 2.0 cakupan.

Contoh: cari dengan POST

Tab berikut memberikan contoh untuk mencari pada jenis sumber daya FHIR tertentu dengan. POST Contoh menunjukkan cara menentukan permintaan di URLs.

catatan

HealthLake Konsol hanya mendukung otorisasi SiGv4. SMART pada otorisasi FHIR didukung melalui AWS CLI dan. AWS SDKs

HealthLake mendukung subset parameter pencarian FHIR R4. Untuk informasi selengkapnya, lihat Parameter pencarian.

Patient (age)

Meskipun usia bukan tipe sumber daya yang ditentukan di FHIR, ia ditangkap sebagai elemen dalam tipe Patientsumber daya. Gunakan contoh berikut untuk membuat permintaan pencarian POST berbasis pada jenis Patient sumber daya. Contoh pencarian berikut menggunakan pembanding eq pencarian untuk mencari individu yang lahir pada tahun 1997.

POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/_search

Untuk menentukan tahun 1997 dalam pencarian, tambahkan elemen berikut ke badan permintaan.

birthdate=eq1997
Condition

Menggunakan berikut ini untuk membuat POST permintaan pada jenis Condition sumber daya. Pencarian ini menemukan lokasi di penyimpanan HealthLake data Anda yang berisi kode medis72892002.

Anda harus menentukan URL permintaan dan badan permintaan. Berikut adalah contoh URL permintaan.

POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Condition/_search

Untuk menentukan kode medis yang ingin Anda cari, Anda menambahkan elemen JSON berikut ke badan permintaan.

code=72892002
DocumentReference

Untuk melihat hasil pemrosesan HealthLake bahasa alami terintegrasi (NLP) saat membuat POST permintaan pada jenis DocumentReference sumber daya, format permintaan sebagai berikut.

POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/DocumentReference/_search

Untuk menentukan parameter DocumentReference pencarian untuk referensi, lihatCari jenis parameter. String kueri berikut menggunakan beberapa parameter penelusuran untuk mencari di operasi Amazon Comprehend Medical API yang digunakan untuk menghasilkan hasil NLP terintegrasi.

_lastUpdated=le2021-12-19&infer-icd10cm-entity-text-concept-score;=streptococcal|0.6&infer-rxnorm-entity-text-concept-score=Amoxicillin|0.8
Location

Gunakan contoh berikut untuk membuat POST permintaan pada jenis Location sumber daya. Pencarian menemukan lokasi di toko HealthLake data Anda yang berisi nama kota Boston sebagai bagian dari alamat.

Anda harus menentukan URL permintaan dan badan permintaan. Berikut adalah contoh URL permintaan.

POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Location/_search

Untuk menentukan Boston dalam pencarian, tambahkan elemen berikut ke badan permintaan:

address=Boston
Observation

Gunakan contoh berikut untuk membuat permintaan pencarian POST berbasis pada jenis Observation sumber daya. Pencarian menggunakan parameter value-concept pencarian untuk mencari kode medis, 266919005 yang menunjukkanNever smoker.

POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Observation/_search

Untuk menentukan status,Never smoker, atur value-concept=266919005 di badan JSON.

value-concept=266919005