Búsqueda de recursos del FHIR con POST - AWS HealthLake

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Búsqueda de recursos del FHIR con POST

Puede utilizar la searchinteracción del FHIR con POST las solicitudes para buscar en un banco de HealthLake datos. Cuando se usaPOST, HealthLake admite los parámetros de búsqueda en la URL o en el cuerpo de una solicitud, pero no puede usar ambos en una sola solicitud.

Importante

Para las búsquedas que incluyen información de identificación personal (PII) o información de salud protegida (PHI), las mejores prácticas de seguridad recomiendan el uso de POST solicitudes, ya que la PII y la PHI se agregan como parte del cuerpo de la solicitud y se cifran durante el tránsito.

El siguiente procedimiento va seguido de ejemplos en los que se utiliza la search interacción del FHIR R4 POST para buscar en un almacén de datos. HealthLake Los ejemplos muestran cómo especificar los parámetros de búsqueda en el cuerpo de la solicitud JSON.

Para buscar en un HealthLake banco de datos con POST

  1. Recopile HealthLake region y datastoreId valore. Para obtener más información, consulte Obtención de propiedades de los almacenes de datos.

  2. Determine el tipo de recurso del FHIR para buscar y recopilar el id valor asociado. Para obtener más información, consulte Tipos de recurso.

  3. Cree una URL para la solicitud utilizando los valores recopilados para HealthLake region ydatastoreId. Incluya también el Resource tipo y la _search interacción del FHIR. Para ver la ruta URL completa en el siguiente ejemplo, desplázate sobre el botón Copiar.

    POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Resource/_search
  4. Cree un cuerpo JSON para la solicitud y especifique los datos del FHIR que desee buscar. Para realizar este procedimiento, buscará Observation recursos para encontrar pacientes que nunca hayan fumado. Para especificar el estado del código médicoNever smoker, configúrelo value-concept=266919005 en el cuerpo de la solicitud en JSON. Guarde el archivo como search-observation.json.

    value-concept=266919005
  5. Envíe la solicitud . La search interacción con el FHIR utiliza la GET solicitud con la versión 4 de AWS Signature o SMART si cuenta con la autorización del FHIR.

    nota

    Al realizar una POST solicitud con parámetros de búsqueda en el cuerpo de la solicitud, utilícelos Content-Type: application/x-www-form-urlencoded como parte del encabezado.

    En el siguiente curl ejemplo, se realiza una solicitud de búsqueda basada en POST para el tipo Observation de recurso. La solicitud utiliza el parámetro value-conceptde búsqueda para buscar un código médico 266919005 que indique un valorNever smoker. Para ver el ejemplo completo, desplázate sobre el botón Copiar.

    SigV4

    Autorización 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

    Ejemplo de autorización SMART on FHIR para el tipo de IdentityProviderConfigurationdatos.

    { "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\"]}" }

    La persona que llama puede asignar permisos en la lambda de autorización. Para obtener más información, consulte OAuth osciloscopios 2.0.

Ejemplos: buscar con POST

Las siguientes pestañas proporcionan ejemplos para buscar tipos de recursos específicos del FHIR con. POST Los ejemplos muestran cómo especificar una solicitud en el URLs.

nota

La HealthLake consola solo admite la autorización SiGv4. La autorización SMART on FHIR se admite mediante AWS CLI y. AWS SDKs

HealthLake admite un subconjunto de parámetros de búsqueda del FHIR R4. Para obtener más información, consulte Parámetros de búsqueda.

Patient (age)

Si bien la edad no es un tipo de recurso definido en el FHIR, se captura como un elemento del tipo de recurso. Patient Utilice el siguiente ejemplo para realizar una solicitud de búsqueda POST basada en el tipo de Patient recurso. En el siguiente ejemplo de búsqueda, se utiliza el eq comparador de búsquedas para buscar personas nacidas en 1997.

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

Para especificar el año 1997 en la búsqueda, añada el siguiente elemento al cuerpo de la solicitud.

birthdate=eq1997
Condition

Utilice lo siguiente para realizar una POST solicitud sobre el tipo Condition de recurso. Esta búsqueda busca ubicaciones en su almacén de HealthLake datos que contienen el código médico72892002.

Debe especificar la URL de la solicitud y el cuerpo de la solicitud. A continuación, se muestra un ejemplo de la URL de la solicitud.

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

Para especificar el código médico que desea buscar, añada el siguiente elemento JSON al cuerpo de la solicitud.

code=72892002
DocumentReference

Para ver los resultados del procesamiento HealthLake del lenguaje natural (NLP) integrado al realizar una POST solicitud sobre el tipo de DocumentReference recurso, formatee la solicitud de la siguiente manera.

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

Para especificar los parámetros de DocumentReference búsqueda a los que se debe hacer referencia, consulteTipos de parámetros de búsqueda. La siguiente cadena de consulta utiliza varios parámetros de búsqueda para buscar en las operaciones de la API Amazon Comprehend Medical utilizadas para generar los resultados de la PNL integrada.

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

Utilice el siguiente ejemplo para realizar una POST solicitud sobre el tipo de Location recurso. La búsqueda busca ubicaciones en el almacén de HealthLake datos que contienen el nombre de la ciudad Boston como parte de la dirección.

Debe especificar la URL y el cuerpo de la solicitud. A continuación, se muestra un ejemplo de la URL de la solicitud.

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

Para Boston especificarlo en la búsqueda, agrega el siguiente elemento al cuerpo de la solicitud:

address=Boston
Observation

Utilice el siguiente ejemplo para realizar una solicitud de búsqueda POST basada en el tipo Observation de recurso. La búsqueda utiliza el parámetro de value-concept búsqueda para buscar el código médico 266919005 que indicaNever smoker.

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

Para especificar el estadoNever smoker, value-concept=266919005 establézcalo en el cuerpo del JSON.

value-concept=266919005