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": {
    }
}