Pular para o conteúdo principal

Cadastrar/atualizar

EndpointPOST /fhir/resources/Condition
Autenticação🔓 Chave de API
StatusImplementado

Modelagem da API - Request


OpçãoTipoRequeridoDescriçãoExemplo
x-api-keystringSimChave de autenticação do cliente, fornecida durante a configuração do ambiente.
Content-TypestringSimapplication/json

Exemplos CURL


Criar diagnóstico (CID-10)

Criar diagnóstico de atendimento

curl --request POST \
--url https://landing-zone-api.nilo.services/fhir/resources/Condition \
--header 'Content-Type: application/json' \
--header 'x-api-key: <inserir API Key aqui>' \
--data '{
"resourceType": "Condition",
"identifier": [
{
"system": "https://www.acmesaude.com.br/integracao/diagnostico",
"use": "usual",
"value": "78901"
}
],
"category": [
{
"coding": [
{
"system": "https://landing-zone-api.nilo.services/fhir/resources/CodeSystem/condition-category",
"code": "patient-diagnosis"
}
]
}
],
"code": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "J06.9",
"display": "Infecção aguda das vias aéreas superiores"
}
],
"text": "Infecção aguda das vias aéreas superiores"
},
"subject": {
"identifier": {
"system": "https://www.acmesaude.com.br/integracao/paciente",
"value": "456"
},
"type": "Patient"
},
"recorder": {
"identifier": {
"system": "https://www.acmesaude.com.br/integracao/profissional",
"value": "82944"
},
"type": "Practitioner"
},
"encounter": {
"identifier": {
"system": "https://www.acmesaude.com.br/integracao/atendimento",
"value": "16400"
},
"type": "Encounter"
},
"recordedDate": "2025-06-08"
}'

Regras de roteamento

O backend identifica o tipo do diagnóstico pelo campo category:

  • O código patient-diagnosis (sistema Nilo) indica que o recurso será persistido como PatientDiagnosis vinculado a um atendimento.
  • O campo encounter é opcional — quando ausente, o diagnóstico é registrado sem vínculo com atendimento.

Possíveis erros


Os erros são retornados no formato OperationOutcome.

Exemplo:

{
"issue": [
{
"code": "structure",
"details": {
"text": "Patient not found"
},
"severity": "error",
"expression": [
"Condition.subject"
]
}
],
"resourceType": "OperationOutcome"
}

Os principais campos são:

  • details: Descrição do erro.
  • expression: Caminho do recurso onde o erro ocorreu.

Erros conhecidos

Paciente não encontrado

Patient not found

Profissional não encontrado

Recorder not found

Atendimento não encontrado

Encounter not found

Código de diagnóstico não encontrado

Diagnosis not found


Modelagem da API - Response


Operação bem sucedida.
object

Situação da condição.

object

Identificação da condição, problema ou diagnóstico.

object

Encontro onde a condição foi identificada.

id
string (id) ^[A-Za-z0-9\-\.]{{1,64}}$

Qualquer combinação de letras, números, "-" e ".", com um limite de 64 caracteres. (Pode ser um número inteiro, um OID não prefixado, UUID ou qualquer outro padrão de identificador que atenda a essas restrições.) Os IDs não diferenciam maiúsculas de minúsculas.

required
Array of objects (Identifier)

Identificador(es) pelo qual este recurso é distinguido.

object (Meta)

Os metadados sobre um recurso. Este conteúdo do recurso é normalmente mantido pelo sistema gestor do registro.

Array of objects (Annotation)

Informações adicionais sobre a Condição.

recordedDate
string^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

Momento em que a condição foi registrada.

object

Quem registrou a condição.

resourceType
required
string
Default: "Condition"

Indica o tipo do recurso transacionado.

required
object

Paciente que possui a condição.

object

A situação de verificação do estado da condição.

{
  • "clinicalStatus": {
    },
  • "code": {},
  • "encounter": {
    },
  • "id": "903dAAe9-c57f-4eb3-bd1c-65XXd41exx81",
  • "identifier": [
    ],
  • "meta": {
    },
  • "note": {
    },
  • "recordedDate": "2022-05-25T18:42:06+00:00",
  • "recorder": {
    },
  • "resourceType": "Condition",
  • "subject": {
    },
  • "verificationStatus": {
    }
}