PATCH Atualizar Consulta
Atualiza os dados de uma consulta existente. Apenas os campos enviados serão modificados.
Autenticação necessária
Esta rota requer o header Authorization: Bearer {accessToken}
Finalizando uma consulta
Enviar closeConsultation: true muda o status para CLOSED, grava finalizedAt (data/hora atual) e finalizedByUserId (usuário autenticado), e emite o evento interno consultations.closed.
Endpoint
PATCH https://api-dev.imagemais.com.br/api/consultations
Corpo da Requisição
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
id | number (inteiro positivo) | ✅ | ID da consulta a ser atualizada |
closeConsultation | boolean | ❌ | true finaliza a consulta: muda status para CLOSED, grava finalizedAt e finalizedByUserId (usuário autenticado) e emite o evento consultations.closed |
preConsultationId | number | ❌ | ID de pré-consulta existente |
mainComplaint | string | ❌ | Queixa principal |
currentDiseaseHistory | string | ❌ | História da doença atual |
personalHistory | string | ❌ | Antecedentes pessoais |
physicalExam | string | ❌ | Exame físico |
medicalConduct | string | ❌ | Conduta médica |
cardiovascularDiseases | string | ❌ | Doenças cardiovasculares |
otherRelevantDiseases | string | ❌ | Outras doenças relevantes |
previousSurgeries | string | ❌ | Cirurgias anteriores |
familyHistory | string | ❌ | Antecedentes familiares |
medicationsUse | string | ❌ | Medicamentos em uso |
allergies | string | ❌ | Alergias |
lifestyleHabits | string | ❌ | Hábitos de vida |
primaryAndSecondaryDiagnosis | string | ❌ | Diagnósticos primário e secundário (CID) |
diagnosisReasoning | string | ❌ | Raciocínio da IA (achados confirmatórios e dados conflitantes) |
urgencyLevel | string | ❌ | Nível de urgência — Protocolo de Manchester |
prescribedMedications | string | ❌ | Medicamentos prescritos |
lifestyleAdvice | string | ❌ | Orientações de estilo de vida |
followUpExams | string | ❌ | Exames de acompanhamento |
referralsToSpecialists | string | ❌ | Encaminhamentos para especialistas |
medicalCertificate | string | ❌ | Atestado médico |
declaration | string | ❌ | Declaração de comparecimento |
specialControlPrescription | string | ❌ | Receituário de controle especial |
iaConclusion | string | ❌ | Conclusão da IA |
cardiologicalOpinionFileId | number | ❌ | ID do arquivo de parecer cardiológico |
specialControlPrescriptionFileId | number | ❌ | ID do arquivo de receituário de controle especial |
appointmentId | number | ❌ | ID do agendamento vinculado |
assignedUserId | number | ❌ | ID do usuário responsável |
consultationType | string (enum) | ❌ | "ONLINE" ou "PRESENCIAL". Não pode ser alterado se a consulta já estiver CLOSED (retorna 400) |
preConsultation | object | ❌ | Dados da pré-consulta a atualizar |
preConsultation.bloodPressure | string | ❌ | Pressão arterial |
preConsultation.heartRate | string | ❌ | Frequência cardíaca |
preConsultation.temperature | string | ❌ | Temperatura |
preConsultation.weight | string | ❌ | Peso |
preConsultation.height | string | ❌ | Altura |
preConsultation.consultationReason | string | ❌ | Motivo da consulta |
preConsultation.glucose | string | ❌ | Glicose |
preConsultation.consultationType | string (enum) | ❌ | "ONLINE" ou "PRESENCIAL" |
Requisição
curl -X 'PATCH' \
'https://api-dev.imagemais.com.br/api/consultations' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {accessToken}' \
-H 'Content-Type: application/json' \
-d '{
"id": 1,
"mainComplaint": "Dor de cabeça há 3 dias",
"currentDiseaseHistory": "Paciente relata cefaleia intensa desde segunda-feira",
"physicalExam": "PA 120/80, FC 72bpm, bom estado geral",
"primaryAndSecondaryDiagnosis": "G43.9 - Enxaqueca não especificada",
"medicalConduct": "Repouso e hidratação oral",
"preConsultation": {
"bloodPressure": "120/80",
"heartRate": "72",
"temperature": "36.5",
"weight": "70",
"height": "175",
"consultationReason": "Cefaleia"
}
}'
Respostas
200 Sucesso
Retorna o objeto completo da consulta atualizada.
{
"id": 1,
"patientId": 1,
"preConsultationId": 1,
"mainComplaint": "Dor de cabeça há 3 dias",
"currentDiseaseHistory": "Paciente relata cefaleia intensa desde segunda-feira",
"personalHistory": "Hipertensão controlada",
"physicalExam": "PA 120/80, FC 72bpm, bom estado geral",
"medicalConduct": "Repouso e hidratação oral",
"cardiovascularDiseases": "Hipertensão arterial",
"otherRelevantDiseases": "Nenhuma",
"previousSurgeries": "Apendicectomia em 2015",
"familyHistory": "Histórico de AVC na família",
"medicationsUse": "Losartana 50mg 1x/dia",
"allergies": "Nenhuma conhecida",
"lifestyleHabits": "Sedentário, dieta desbalanceada",
"primaryAndSecondaryDiagnosis": "G43.9 - Enxaqueca não especificada",
"diagnosisReasoning": null,
"prescribedMedications": "Paracetamol 750mg a cada 8h, por 3 dias",
"lifestyleAdvice": "Aumento da ingestão de água e redução do estresse",
"followUpExams": "Tomografia de crânio se persistência dos sintomas",
"referralsToSpecialists": "Neurologista",
"medicalCertificate": null,
"declaration": null,
"iaConclusion": "Cefaleia primária sem sinais de alerta",
"urgencyLevel": null,
"specialControlPrescription": null,
"consultationTypeId": null,
"consultationStatusId": 2,
"assignedUserId": null,
"finalizedByUserId": null,
"finalizedAt": null,
"telemedicineTranscription": null,
"openaiThreadId": null,
"createdAt": "2025-03-07T13:30:34.258Z",
"updatedAt": "2026-05-19T10:43:21.248Z",
"deletedAt": null,
"preConsultation": {
"id": 1,
"bloodPressure": "120/80",
"heartRate": "72",
"temperature": "36.5",
"weight": "70",
"height": "175",
"consultationReason": "Cefaleia",
"glucose": "98 mg/dL",
"updatedAt": "2026-05-19T10:43:21.171Z",
"deletedAt": null
},
"consultationFiles": [],
"consultationStatus": {
"name": "CLOSED"
},
"cardiologicalOpinion": null,
"specialControlPrescriptionPdf": null,
"patient": {
"id": 1,
"name": "João da Silva",
"cpf": "12345678900",
"dateBirth": "1990-05-15T00:00:00.000Z",
"gender": {
"name": "M"
},
"contact": {
"phone": ""
}
}
}
400 Consulta já finalizada
Retornado quando consultationType é informado, mas a consulta já está com status CLOSED.
{
"statusCode": 400,
"message": "Não é possível alterar o tipo de uma consulta já finalizada"
}
404 Consulta não encontrada
Retornado quando o id informado não corresponde a nenhuma consulta existente.
{
"statusCode": 404,
"message": "Consulta não encontrada"
}
403 Sem Permissão
Retornado quando o usuário autenticado não possui permissão para atualizar consultas.
{
"statusCode": 403,
"message": "Forbidden resource"
}