Nesta página, explicamos como criar, atualizar, corrigir, visualizar, listar, recuperar e excluir recursos FHIR.
Um recurso FHIR pode conter dados sobre um paciente, um dispositivo, uma observação e muito mais. Para uma lista completa de recursos FHIR, consulte o Índice de recursos FHIR (DSTU2, STU3 ou R4, links em inglês).
As amostras curl
e Windows PowerShell nesta página funcionam com um armazenamento de FHIR R4
e não têm garantia de trabalho se você estiver usando um armazenamento de FHIR DSTU2 ou STU3.
Se você estiver usando um armazenamento de FHIR DST2 ou STU3, consulte a documentação oficial do FHIR em https://www.hl7.org/fhir/ (em inglês)
para informações sobre como converter o amostras para a versão FHIR que você está usando.
As amostras em Go, Java, Node.js e Python funcionam com um armazenamento de FHIR STU3.
Como criar um recurso FHIR
Antes de criar recursos FHIR, é necessário criar um armazenamento FHIR.
As amostras curl
, Windows PowerShell e Python mostram como criar os seguintes recursos FHIR:
- Um recurso paciente (DSTU2, STU3 e R4) (links em inglês)
- Um recurso de encontro (DSTU2, STU3 e R4) (links em inglês) para o paciente
- Um recurso de observação (DSTU2, STU3 e R4) (links em inglês) para o encontro
As amostras para todas as outras linguagens mostram como criar um recurso FHIR genérico.
Para ver mais informações, consulte projects.locations.datasets.fhirStores.fhir.create
.
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. As amostras em Go, Java, Node.js e Python funcionam com armazenamentos FHIR STU3.
curl
Para criar um recurso de paciente, faça uma solicitação POST
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- Um blob de dados com informações sobre o paciente
- O tipo do recurso
- Um token de acesso
O exemplo a seguir mostra como enviar uma solicitação POST
usando curl
para
criar um recurso de paciente:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/fhir+json; charset=utf-8" \ --data "{ \"name\": [ { \"use\": \"official\", \"family\": \"Smith\", \"given\": [ \"Darcy\" ] } ], \"gender\": \"female\", \"birthDate\": \"1970-01-01\", \"resourceType\": \"Patient\" }" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Patient"
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "birthDate": "1970-01-01", "gender": "female", "id": "PATIENT_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "VERSION_ID" }, "name": [ { "family": "Smith", "given": [ "Darcy" ], "use": "official" } ], "resourceType": "Patient" }
PowerShell
Para criar um recurso de paciente, faça uma solicitação POST
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- Um blob de dados com informações sobre o paciente
- O tipo do recurso
- Um token de acesso
O exemplo a seguir mostra como enviar uma solicitação POST
usando o Windows
PowerShell para criar um recurso de paciente:
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } $patient = '{ "name": [ { "use": "official", "family": "Smith", "given": [ "Darcy" ] } ], "gender": "female", "birthDate": "1970-01-01", "resourceType": "Patient" }' Invoke-RestMethod ` -Method Post ` -Headers $headers ` -ContentType: "application/fhir+json; charset=utf-8" ` -Body $patient ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Patient" | ConvertTo-Json
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "birthDate": "1970-01-01", "gender": "female", "id": "PATIENT_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "VERSION_ID" }, "name": [ { "family": "Smith", "given": [ "Darcy" ], "use": "official" } ], "resourceType": "Patient" }
Go
Java
Node.js
Python
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. A amostra em Python funciona com os armazenamentos FHIR STU3.
curl
Depois de criar o recurso do paciente, crie um recurso de encontro para descrever uma interação entre o paciente e um profissional.
O exemplo a seguir mostra como enviar uma solicitação POST
usando curl
para criar
um recurso de encontro.
No campo PATIENT_ID, substitua o ID da resposta retornada pelo servidor quando o paciente foi criado.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/fhir+json; charset=utf-8" \ --data "{ \"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\" }" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Encounter"
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON.
{ "class": { "code": "IMP", "display": "inpatient encounter", "system": "http://hl7.org/fhir/v3/ActCode" }, "id": "ENCOUNTER_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "VERSION_ID" }, "reasonCode": [ { "text": "The patient had an abnormal heart rate. She was concerned about this." } ], "resourceType": "Encounter", "status": "finished", "subject": { "reference": "Patient/PATIENT_ID" } }
PowerShell
Depois de criar o recurso do paciente, crie um recurso de encontro para descrever uma interação entre o paciente e um profissional. O exemplo a seguir mostra como enviar uma solicitação POST
usando o Windows PowerShell para criar um recurso de encontro.
No campo PATIENT_ID, substitua o ID da resposta retornada pelo servidor quando o paciente foi criado.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } $encounter = '{ "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" }' Invoke-RestMethod ` -Method Post ` -Headers $headers ` -ContentType: "application/fhir+json; charset=utf-8" ` -Body $encounter ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Encounter" | ConvertTo-Json
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON.
{ "class": { "code": "IMP", "display": "inpatient encounter", "system": "http://hl7.org/fhir/v3/ActCode" }, "id": "ENCOUNTER_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "VERSION_ID" }, "reasonCode": [ { "text": "The patient had an abnormal heart rate. She was concerned about this." } ], "resourceType": "Encounter", "status": "finished", "subject": { "reference": "Patient/PATIENT_ID" } }
Python
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. A amostra em Python funciona com os armazenamentos FHIR STU3.
curl
Depois de criar o recurso de encontre, crie uma observação sobre o encontro. A observação fornece uma medida da frequência cardíaca do paciente em batidas por minuto (BPM). O exemplo a seguir mostra como enviar uma solicitação POST
usando curl
para criar um recurso de observação.
- Insira um valor no campo BPM_VALUE.
- No campo PATIENT_ID, substitua o ID da resposta retornada pelo servidor quando o paciente foi criado.
- No campo ENCOUNTER_ID, substitua o ID da resposta retornada pelo servidor quando o encontro foi criado.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/fhir+json; charset=utf-8" \ --data "{ \"resourceType\": \"Observation\", \"status\": \"final\", \"subject\": { \"reference\": \"Patient/PATIENT_ID\" }, \"effectiveDateTime\": \"2020-01-01T00:00:00+00:00\", \"code\": { \"coding\": [ { \"system\": \"http://loinc.org\", \"code\": \"8867-4\", \"display\": \"Heart rate\" } ] }, \"valueQuantity\": { \"value\": BPM_VALUE, \"unit\": \"bpm\" }, \"encounter\": { \"reference\": \"Encounter/ENCOUNTER_ID\" } }" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation"
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "code": { "coding": [ { "code": "8867-4", "display": "Heart rate", "system": "http://loinc.org" } ] }, "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": "VERSION_ID" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }
PowerShell
Depois de criar o recurso de encontre, crie uma observação sobre o encontro. A observação fornece uma medição dos batimentos cardíaca por minuto (BPM). O exemplo a seguir mostra como enviar uma solicitação POST
usando o Windows PowerShell para criar um recurso observação:
- Insira um valor no campo BPM_VALUE.
- No campo PATIENT_ID, substitua o ID da resposta retornada pelo servidor quando o paciente foi criado.
- No campo ENCOUNTER_ID, substitua o ID da resposta retornada pelo servidor quando o encontro foi criado.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } $observation = '{ "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "code": { "coding": [ { "system": "http://loinc.org", "code": "8867-4", "display": "Heart rate" } ] }, "valueQuantity": { "value": BPM_VALUE, "unit": "bpm" }, "encounter": { "reference": "Encounter/ENCOUNTER_ID" } }' Invoke-RestMethod ` -Method Post ` -Headers $headers ` -ContentType: "application/fhir+json; charset=utf-8" ` -Body $observation ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation" | ConvertTo-Json
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "code": { "coding": [ { "code": "8867-4", "display": "Heart rate", "system": "http://loinc.org" } ] }, "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": "VERSION_ID" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }
Python
Como atualizar um recurso FHIR
Os exemplos a seguir mostram como chamar o método projects.locations.datasets.fhirStores.fhir.update
para atualizar um recurso FHIR. O método implementa a interação de atualização padrão FHIR (DSTU2, STU3 e R4).
Ao atualizar um recurso, você atualiza todo o conteúdo do recurso. Isso é diferente do patch de um recurso, que atualiza apenas parte dele.
Se o armazenamento de FHIR tiver enableUpdateCreate
definido, a solicitação será tratada como um upsert (atualização ou inserção) que atualizará o recurso se ele existir ou o inserirá usando o ID especificado, caso não exista.
O corpo da solicitação precisa ter um recurso FHIR codificado em JSON e os cabeçalhos da solicitação precisam ter Content-Type: application/fhir+json
. O recurso precisa ter um elemento id
com um valor idêntico ao ID no caminho REST da solicitação.
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. As amostras em Go, Java, Node.js e Python funcionam com armazenamentos FHIR STU3.
curl
Para atualizar um recurso FHIR, faça uma solicitação PUT
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo do recurso
- O ID do recurso
- Um token de acesso
O exemplo a seguir mostra como enviar uma solicitação PUT
usando curl
para editar um recurso de observação. A observação fornece uma medição do número de batimentos cardíacos por minuto (BPM) de um paciente.
curl -X PUT \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/fhir+json; charset=utf-8" \ --data '{ "code": { "coding": [ { "code": "8867-4", "display": "Heart rate", "system": "http://loinc.org" } ] }, "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 } }' \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation/OBSERVATION_ID"
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "code": { "coding": [ { "code": "8867-4", "display": "Heart rate", "system": "http://loinc.org" } ] }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "VERSION_ID" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }
PowerShell
Para atualizar um recurso FHIR, faça uma solicitação PUT
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo do recurso
- O ID do recurso
- Um token de acesso
O exemplo a seguir mostra como enviar uma solicitação PUT
usando o Windows PowerShell para editar um recurso de observação. A observação fornece uma medição do número de batimentos cardíacos por minuto (BPM) de um paciente.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } $observation = '{ "code": { "coding": [ { "code": "8867-4", "display": "Heart rate", "system": "http://loinc.org" } ] }, "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 } }' Invoke-RestMethod ` -Method Put ` -Headers $headers ` -ContentType: "application/fhir+json; charset=utf-8" ` -Body $observation ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation/OBSERVATION_ID" | ConvertTo-Json
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "code": { "coding": [ { "code": "8867-4", "display": "Heart rate", "system": "http://loinc.org" } ] }, "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "VERSION_ID" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }
Go
Node.js
Python
Como atualizar condicionalmente um recurso FHIR
Os exemplos a seguir mostram como chamar o método projects.locations.datasets.fhirStores.fhir.conditionalUpdate
para atualizar um recurso FHIR que corresponda a uma consulta de pesquisa, em vez de identificar o recurso pelo ID. O método implementa a interação de atualização condicional padrão FHIR (DSTU2, STU3 e R4).
Uma atualização condicional só pode ser aplicada a um recurso por vez.
A resposta retornada pelo servidor depende de quantas correspondências houver com base nos critérios de pesquisa:
- Uma correspondência: o recurso foi atualizado ou um erro foi retornado.
- Mais de uma correspondência: a solicitação retorna um erro
412 Precondition Failed
. - Nenhuma correspondência é feita com um
id
: se os critérios de pesquisa identificarem zero correspondências, o corpo do recurso fornecido tiver umid
e o armazenamento FHIRenableUpdateCreate
for definido, o recurso será criado com um ID atribuído pelo servidor semelhante a se o recurso fosse criado usandoprojects.locations.datasets.fhirStores.fhir.create
. Oid
é ignorado. - Zero correspondências sem um
id
: se os critérios de pesquisa identificarem zero correspondências e o corpo do recurso fornecido não tiver umid
, o recurso será criado com um ID atribuído pelo servidor semelhante a se o recurso fosse criado usandoprojects.locations.datasets.fhirStores.fhir.create
.
O corpo da solicitação precisa ter um recurso FHIR codificado em JSON e os cabeçalhos da solicitação precisam ter Content-Type: application/fhir+json
.
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. As amostras em Go e Python funcionam com os armazenamentos FHIR STU3.
curl
Para atualizar um recurso FHIR que corresponde a uma consulta de pesquisa, faça uma solicitação PUT
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo de recurso que você está procurando
- Uma string de consulta com as informações que você está procurando
- Um token de acesso
O exemplo a seguir mostra como enviar uma solicitação PUT
usando curl
para editar um recurso de observação que usa o identificador de observação (ABC-12345
em my-code-system
). A observação fornece uma medição dos batimentos cardíacos por minuto (BPM) de um paciente.
curl -X PUT \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/fhir+json; charset=utf-8" \ --data '{ "effectiveDateTime": "2020-01-01T00:00:00+00:00", "resourceType": "Observation", "identifier": [ { "system": "my-code-system", "value": "ABC-12345" } ], "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }' \ "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation?identifier=my-code-system|ABC-12345"
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "VERSION_ID" }, "resourceType": "Observation", "identifier": [ { "system": "my-code-system", "value": "ABC-12345" } ], "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }
PowerShell
Para atualizar um recurso FHIR que corresponde a uma consulta de pesquisa, faça uma solicitação PUT
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo de recurso que você está procurando
- Uma string de consulta com as informações que você está procurando
- Um token de acesso
O exemplo a seguir mostra como enviar uma solicitação PUT
usando o Windows PowerShell para editar um recurso de observação que usa o identificador de observação (ABC-12345
em my-code-system
). A observação fornece uma medição dos batimentos cardíacos por minuto (BPM) de um paciente.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } $observation = '{ "effectiveDateTime": "2020-01-01T00:00:00+00:00", "resourceType": "Observation", "identifier": [ { "system": "my-code-system", "value": "ABC-12345" } ], "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }' Invoke-RestMethod ` -Method Put ` -Headers $headers ` -ContentType: "application/fhir+json; charset=utf-8" ` -Body $observation ` -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation?identifier=my-code-system|ABC-12345" | ConvertTo-Json
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "VERSION_ID" }, "resourceType": "Observation", "identifier": [ { "system": "my-code-system", "value": "ABC-12345" } ], "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }
Go
Python
Corrigir um recurso FHIR
Os exemplos a seguir mostram como chamar o método projects.locations.datasets.fhirStores.fhir.patch
para corrigir um recurso FHIR. O método implementa a interação de patch padrão FHIR (DSTU2, STU3 e R4).
Ao corrigir um recurso, você atualiza parte dele aplicando as operações especificadas em um documento de patch JSON.
A solicitação precisa ter um documento de patch JSON e os cabeçalhos de solicitação precisam conter Content-Type: application/json-patch+json
.
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. As amostras em Go, Java, Node.js e Python funcionam com armazenamentos FHIR STU3.
curl
Para fazer o patch de um recurso FHIR, faça uma solicitação PATCH
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo do recurso
- O ID do recurso
- Um token de acesso
O exemplo a seguir mostra como enviar uma solicitação PATCH
usando curl
para editar um recurso de observação. A observação dos batimentos cardíacos por minutos (BPM) de um paciente é atualizada usando a operação de patch replace
.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json-patch+json" \ --data '[ { "op": "replace", "path": "/valueQuantity/value", "value": BPM_VALUE } ]' \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation/OBSERVATION_ID"
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "VERSION_ID" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }
PowerShell
Para fazer o patch de um recurso FHIR, faça uma solicitação PATCH
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo do recurso
- O ID do recurso
- Um token de acesso
O exemplo a seguir mostra como enviar uma solicitação PATCH
usando o Windows PowerShell para editar um recurso de observação. A observação dos batimentos cardíacos por minutos (BPM) de um paciente é atualizada usando a operação de patch replace
.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } $patch = '[ { "op": "replace", "path": "/valueQuantity/value", "value": BPM_VALUE } ]' Invoke-RestMethod ` -Method Patch ` -Headers $headers ` -ContentType: "application/json-patch+json" ` -Body $patch ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation/OBSERVATION_ID" | ConvertTo-Json
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "VERSION_ID" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }
Go
Java
Node.js
Python
Corrigir condicionalmente um recurso FHIR
Os exemplos a seguir mostram como chamar o método projects.locations.datasets.fhirStores.fhir.conditionalPatch
para fazer patch de um recurso FHIR que corresponda a uma consulta de pesquisa, em vez de identificar o recurso pelo ID. O método implementa a interação de patch condicional padrão FHIR (DSTU2, STU3 e R4).
Um patch condicional só pode ser aplicado a um recurso por vez. Se os critérios de pesquisa identificarem mais de uma correspondência, a solicitação retornará um erro 412 Precondition Failed
.
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. As amostras em Go e Python funcionam com os armazenamentos FHIR STU3.
curl
Para fazer o patch um recurso FHIR que corresponde a uma consulta de pesquisa, faça uma solicitação PATCH
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo de recurso que você está procurando
- Uma string de consulta com as informações que você está procurando
- Um token de acesso
O exemplo a seguir mostra como enviar uma solicitação PATCH
usando curl
para editar uma observação se o identificador da Observação for ABC-12345
em my-code-system
.
A observação dos batimentos cardíacos por minutos (BPM) de um paciente é atualizada usando a operação de patch replace
.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json-patch+json" \ --data '[ { "op": "replace", "path": "/valueQuantity/value", "value": BPM_VALUE } ]' \ "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation?identifier=my-code-system|ABC-12345"
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "VERSION_ID" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }
PowerShell
Para fazer o patch um recurso FHIR que corresponde a uma consulta de pesquisa, faça uma solicitação PATCH
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo de recurso que você está procurando
- Uma string de consulta com as informações que você está procurando
- Um token de acesso
O exemplo a seguir mostra como enviar uma solicitação PATCH
usando o Windows PowerShell
para editar uma Observação se o identificador da Observação for ABC-12345
em my-code-system
.
A Observação dos batimentos cardíacos por minuto (BPM) de um paciente é atualizada usando a operação de patch replace
.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } $patch = '[ { "op": "replace", "path": "/valueQuantity/value", "value": BPM_VALUE } ]' Invoke-RestMethod ` -Method Patch ` -Headers $headers ` -ContentType: "application/json-patch+json" ` -Body $patch ` -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation?identifier=my-code-system|ABC-12345" | ConvertTo-Json
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "effectiveDateTime": "2020-01-01T00:00:00+00:00", "id": "OBSERVATION_ID", "meta": { "lastUpdated": "2020-01-01T00:00:00+00:00", "versionId": "VERSION_ID" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }
Go
Python
Como conseguir um recurso FHIR
Os exemplos a seguir mostram como conseguir o conteúdo de um recurso FHIR. Para ver mais informações, consulte projects.locations.datasets.fhirStores.fhir.read
.
Console
Para acessar o conteúdo de um recurso FHIR, siga estas etapas:
No Console do Cloud, acesse a página do visualizador FHIR.
Na lista suspensa Armazenamento de FHIR, selecione um conjunto de dados e, em seguida, selecione um armazenamento de FHIR no conjunto de dados.
Para filtrar a lista de tipos de recursos, pesquise os que você quer exibir:
Clique no campo Resource Type.
Na lista suspensa Propriedades, selecione Tipo de recurso.
Insira um tipo de recurso.
Para procurar outro tipo de recurso, selecione OU na lista suspensa Operadores exibida e insira outro tipo de recurso.
Na lista de tipos de recursos, selecione o tipo em que você quer receber o conteúdo.
Na tabela de recursos exibida, selecione ou procure um recurso.
API
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. As amostras em Go, Java, Node.js e Python funcionam com armazenamentos FHIR STU3.
curl
Para receber o conteúdo de um recurso FHIR, faça uma solicitação GET
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo e o ID do recurso
- Um token de acesso
O exemplo a seguir mostra uma solicitação GET
usando curl
na observação criada na seção anterior.
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/Observation/RESOURCE_ID"
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "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": "VERSION_ID" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }
PowerShell
Para receber o conteúdo de um recurso FHIR, faça uma solicitação GET
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo e o ID do recurso
- Um token de acesso
O exemplo a seguir mostra uma solicitação GET
usando o Windows PowerShell na observação criada na seção anterior.
$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/Observation/RESOURCE_ID" | ConvertTo-Json
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato JSON:
{ "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": "VERSION_ID" }, "resourceType": "Observation", "status": "final", "subject": { "reference": "Patient/PATIENT_ID" }, "valueQuantity": { "unit": "bpm", "value": BPM_VALUE } }
Go
Java
Node.js
Python
Como conseguir todos os recursos de compartimento de pacientes
Os exemplos a seguir mostram como conseguir todos os recursos associados a um determinado compartimento de pacientes (DSTU2, STU3 e R4).
Para ver mais informações, consulte
projects.locations.datasets.fhirStores.fhir.Patient-everything
.
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. As amostras em Go, Java, Node.js e Python funcionam com armazenamentos FHIR STU3.
curl
Para receber os recursos de um compartimento de pacientes, faça uma solicitação GET
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O ID do paciente
- Um token de acesso
O exemplo a seguir mostra uma solicitação GET
usando 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"
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato 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
Para receber os recursos de um compartimento de pacientes, faça uma solicitação GET
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O ID do paciente
- Um token de acesso
O exemplo a seguir mostra uma solicitação GET
usando o Windows 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
Se a solicitação for bem-sucedida, o servidor retornará uma resposta semelhante à seguinte amostra no formato 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
Como filtrar recursos de compartimento de pacientes filtrados por tipo ou data
Os exemplos a seguir mostram como acessar todos os recursos associados a um
compartimento
de pacientes (R4)
específico, filtrado por uma lista de tipos e desde uma data e hora especificadas.
Para mais informações, consulte projects.locations.datasets.fhirStores.fhir.Patient-everything
.
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR.
curl
Para receber os recursos em um compartimento de pacientes de um tipo especificado e desde uma data especificada, faça uma solicitação GET
e especifique as seguintes informações:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O ID do paciente
- Uma string de consulta que contém uma lista de tipo de recurso e data de início separados por vírgulas.
- Um token de acesso
O exemplo a seguir mostra uma solicitação GET
usando 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"
Se a solicitação for bem-sucedida, o servidor retornará todos os recursos que correspondem aos critérios especificados no formato JSON.
PowerShell
Para receber os recursos em um compartimento de pacientes de um tipo especificado e desde uma data especificada, faça uma solicitação GET
e especifique as seguintes informações:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O ID do paciente
- Uma string de consulta que contém uma lista de tipo de recurso e data de início separados por vírgulas.
- Um token de acesso
O exemplo a seguir mostra uma solicitação GET
usando o Windows 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
Se a solicitação for bem-sucedida, o servidor retornará todos os recursos que correspondem aos critérios especificados no formato JSON.
Como listar versões de recursos FHIR
Os exemplos a seguir mostram como listar todas as versões históricas de um recurso FHIR. Para ver mais informações, consulte projects.locations.datasets.fhirStores.fhir.history
.
As amostras usam os recursos criados em Como criar um recurso FHIR e mostram como listar as versões de um recurso de observação.
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. As amostras em Go, Java, Node.js e Python funcionam com armazenamentos FHIR STU3.
curl
O exemplo a seguir mostra como listar todas as versões de um recurso de observação. A observação foi atualizada uma vez após a criação original para alterar os batimentos cardíacos por minuto (BPM).
Para listar todas as versões de um recurso FHIR, incluindo a versão atual e as versões excluídas, faça uma solicitação GET
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo e o ID do recurso
- Um token de acesso
O exemplo a seguir mostra uma solicitação GET
usando 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"
Se a solicitação for bem-sucedida, o servidor retornará a resposta no formato JSON. Neste exemplo, ele retorna duas versões da observação. Na primeira versão, a frequência cardíaca do paciente era de 75 BPM. Na segunda versão, a frequência cardíaca do paciente era de 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
O exemplo a seguir mostra como listar todas as versões de um recurso de observação. A observação foi atualizada uma vez após a criação original para alterar os batimentos cardíacos por minuto (BPM).
Para listar todas as versões de um recurso FHIR, incluindo a versão atual e as versões excluídas, faça uma solicitação GET
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo e o ID do recurso
- Um token de acesso
O exemplo a seguir mostra uma solicitação GET
usando o Windows 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
Se a solicitação for bem-sucedida, o servidor retornará a resposta no formato JSON. Neste exemplo, ele retorna duas versões da observação. Na primeira versão, a frequência cardíaca do paciente era de 75 BPM. Na segunda versão, a frequência cardíaca do paciente era de 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
Como recuperar uma versão de recurso FHIR
Os exemplos a seguir mostram como recuperar uma versão específica de um recurso.
Para ver mais informações, consulte projects.locations.datasets.fhirStores.fhir.vread
.
Os IDs de versão do recurso de observação de Como listar versões de recursos FHIR estão em destaque abaixo:
{ "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" }, ... }
Os exemplos a seguir usam os recursos criados em Como criar um recurso FHIR e mostram como visualizar um recurso de observação.
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. As amostras em Go, Node.js e Python funcionam com os armazenamentos FHIR STU3.
curl
Para receber uma versão específica de um recurso FHIR, faça uma solicitação GET
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo e o ID do recurso
- A versão do recurso
- Um token de acesso
O exemplo a seguir mostra uma solicitação GET
usando 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"
Se a solicitação for bem-sucedida, o servidor retornará a resposta no formato JSON. Neste exemplo, a primeira versão da observação, em que a frequência cardíaca do paciente era de 75 BPM, é retornada.
{ "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
Para receber uma versão específica de um recurso FHIR, faça uma solicitação GET
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo e o ID do recurso
- A versão do recurso
- Um token de acesso
O exemplo a seguir mostra uma solicitação GET
usando 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
Se a solicitação for bem-sucedida, o servidor retornará a resposta no formato JSON. Neste exemplo, a primeira versão da observação, em que a frequência cardíaca do paciente era de 75 BPM, é retornada.
{ "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
Node.js
Python
Como excluir um recurso FHIR
Os exemplos a seguir mostram como chamar o método projects.locations.datasets.fhirStores.fhir.delete
para excluir um recurso FHIR.
Independentemente de a operação ser bem-sucedida ou falhar, o servidor retorna um código de status HTTP 200 OK
. Para verificar se o recurso foi excluído, pesquise ou consiga o recurso e veja se ele existe.
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. As amostras em Go, Java, Node.js e Python funcionam com armazenamentos FHIR STU3.
curl
Para excluir um recurso FHIR, faça uma solicitação DELETE
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- Um token de acesso
O exemplo a seguir mostra uma solicitação DELETE
usando curl
.
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/RESOURCE_TYPE/RESOURCE_ID"
Se a solicitação for bem-sucedida, o servidor retornará o corpo de resposta vazio no formato JSON:
{}
PowerShell
Para excluir um recurso FHIR, faça uma solicitação DELETE
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo e o ID do recurso
- Um token de acesso
O exemplo a seguir mostra uma solicitação DELETE
usando o Windows PowerShell.
$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/RESOURCE_TYPE/RESOURCE_ID" | Select-Object -Expand Content
Se a solicitação for bem-sucedida, o servidor retornará o corpo de resposta vazio no formato JSON:
{}
Go
Java
Node.js
Python
Como excluir condicionalmente um recurso FHIR
Os exemplos a seguir mostram como chamar o método projects.locations.datasets.fhirStores.fhir.conditionalDelete
para excluir um recurso FHIR que corresponda a uma consulta de pesquisa, em vez de identificar o recurso pelo ID.
Ao contrário do patch condicional ou da atualização condicional de um recurso, o método de exclusão condicional poderá ser aplicado a vários recursos se várias correspondências forem retornadas dos critérios de pesquisa.
Independentemente de a operação ser bem-sucedida ou falhar, o servidor retorna um código de status HTTP 200 OK
. Para ter certeza de que o recurso foi
excluído, pesquise ou obtenha
o recurso e veja se ele existe.
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. As amostras em Go e Python funcionam com os armazenamentos FHIR STU3.
curl
Para excluir recursos FHIR que correspondem a uma consulta de pesquisa, faça uma solicitação DELETE
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo de recurso que você está procurando
- Uma string de consulta com as informações que você está procurando
- Um token de acesso
O exemplo a seguir mostra uma solicitação DELETE
usando curl
para excluir todas as
observações com um status
de cancelled
(STU3
e R4).
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation?status=cancelled"
Se a solicitação for bem-sucedida, o servidor retornará o corpo de resposta vazio no formato JSON:
{}
PowerShell
Para excluir recursos FHIR que correspondem a uma consulta de pesquisa, faça uma solicitação DELETE
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo de recurso que você está procurando
- Uma string de consulta com as informações que você está procurando
- Um token de acesso
O exemplo a seguir mostra uma solicitação DELETE
usando o Windows PowerShell
para excluir todas as observações com um status
de cancelled
(STU3
e R4).
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Delete ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Observation?status=cancelled" | Select-Object -Expand Content
Se a solicitação for bem-sucedida, o servidor retornará o corpo de resposta vazio no formato JSON:
{}
Go
Python
Como excluir versões históricas de um recurso FHIR
Os exemplos a seguir mostram como excluir todas as versões históricas de um recurso FHIR. Para ver mais informações, consulte projects.locations.datasets.fhirStores.fhir.Resource-purge
.
Para chamar o método projects.locations.datasets.fhirStores.fhir.Resource-purge
, é necessário que o usuário (autor da chamada) tenha o papel roles/healthcare.fhirStoreAdmin
. Usuários com o papel roles/healthcare.fhirResourceEditor
não podem chamar o método. Para permitir que um autor da chamada exclua versões históricas de um recurso FHIR:
- Verifique se o autor da chamada tem o papel
roles/healthcare.fhirStoreAdmin
. - Crie um papel personalizado do IAM com a permissão
healthcare.fhirResources.purge
e atribua o papel ao autor da chamada.
As amostras usam os recursos criados em Como criar um recurso FHIR e mostram como excluir as versões de um recurso de observação.
As amostras a seguir do curl
e do Windows PowerShell funcionam com armazenamentos de R4 FHIR. As amostras em Go, Java, Node.js e Python funcionam com armazenamentos FHIR STU3.
curl
Para excluir todas as versões históricas de um recurso FHIR, faça uma solicitação DELETE
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo e o ID do recurso
- Um token de acesso
O exemplo a seguir mostra uma solicitação DELETE
usando 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"
Se a solicitação for bem-sucedida, o servidor retornará o corpo de resposta vazio no formato JSON:
{}
PowerShell
Para excluir todas as versões históricas de um recurso FHIR, faça uma solicitação DELETE
e especifique as informações a seguir:
- O nome do conjunto de dados pai
- O nome do armazenamento FHIR
- O tipo e o ID do recurso
- Um token de acesso
O exemplo a seguir mostra uma solicitação DELETE
usando o Windows 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
Se a solicitação for bem-sucedida, o servidor retornará o corpo de resposta vazio no formato JSON:
{}