Pular para o conteúdo principal

Agendamentos

Introdução


Um agendamento entre um Paciente e um Profissional.

Principais informações:

  • Paciente
  • Profissional
  • Data

Contexto NiloCare


Esse endpoint permite aos clientes Nilo Saúde manipular agendamentos de profissionais e pacientes na plataforma NiloCare.

Calendário do profissional

Mapeamento de Campos

#CampoExpressão de caminho no payload
1Data prevista para iníciostart
2Data prevista para fimend
3Pacienteparticipant.where(actor.type='Patient').first()
4Profissionalparticipant.where(actor.type='Practitioner').first()
5Sala de vídeocontained.where(resourceType='Endpoint').first().address

* Demais atributos nos payloads são armazenados, mas não afetados pelo sistema.

Especificações de comportamento FHIR - NiloCare


Definição dos participantes

O FHIR permite associar diversos atores a um agendamento, porém o NiloCare só permite associar um profissional e um paciente. Para definir qual o profissional e o paciente que compõe o agendamento no NiloCare, com base numa lista de participantes, adotamos como regra o primeiro participante do tipo "Practitioner" como o profissional e o primeiro participante do tipo "Patient" como o paciente.

Sala de vídeo

A funcionalidade de sala de vídeo permite a criação automática de links para videoconferência em agendamentos. Esta funcionalidade está disponível exclusivamente para clientes habilitados durante o processo de implantação.

Habilitação

Para verificar se possui esta funcionalidade habilitada ou solicitar a ativação, entre em contato com o suporte Nilo.

Pré-requisitos para criação

Para que uma sala de vídeo seja criada automaticamente, o agendamento deve atender aos seguintes critérios:

  • Datas válidas: Possuir data de início e fim no futuro (agendamentos retroativos não geram sala)
  • Status apropriado: Agendamentos com status fulfilled, noshow ou cancelled não terão sala criada

Como funciona o processo

1. Criação inicial do agendamento

Quando você cria um agendamento, a resposta inicial não conterá o link da sala de vídeo, pois sua criação ocorre de forma assíncrona:

{
"resourceType": "Appointment",
"id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"status": "booked",
"description": "Consulta de retorno",
"start": "2024-09-28T20:32:56.528762+00:00",
"end": "2024-09-28T21:02:56.528762+00:00",
"created": "2024-09-27T20:30:56.528762+00:00",
"comment": "Comentários sobre o agendamento",
"participant": [
{
"actor": {
"type": "Patient",
"identifier": {
"use": "usual",
"system": "https://landing-zone-api.nilo.services/fhir/resources/NamingSystem/care-api--patient-v2",
"value": "123"
},
"reference": "Patient/d77bd7b0-144d-4789-9e81-062a375addb8"
},
"status": "accepted"
},
{
"actor": {
"type": "Practitioner",
"identifier": {
"use": "usual",
"system": "https://landing-zone-api.nilo.services/fhir/resources/NamingSystem/almanac-api--professional",
"value": "456"
},
"reference": "Practitioner/1e8f3c9e-6f4b-4c3b-9d2e-1c2b3a4d5e6f"
},
"status": "accepted"
}
]
}
Tempo de processamento

A criação da sala de vídeo é concluída normalmente em poucos segundos, mas pode levar até alguns minutos durante períodos de alta demanda.

3. Agendamento atualizado com sala

Após o processamento, o agendamento é atualizado com o campo contained contendo um recurso do tipo Endpoint com o link da videoconferência:

{
"resourceType": "Appointment",
"id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"status": "booked",
"description": "Consulta de retorno",
"start": "2024-09-28T20:32:56.528762+00:00",
"end": "2024-09-28T21:02:56.528762+00:00",
"created": "2024-09-27T20:30:56.528762+00:00",
"comment": "Comentários sobre o agendamento",
"contained": [
{
"address": "https://nilovideo.app/f/51236",
"connectionType": {
"code": "https"
},
"payloadType": [
{
"text": "video"
}
],
"resourceType": "Endpoint",
"status": "active"
}
],
"participant": [
{
"actor": {
"type": "Patient",
"identifier": {
"use": "usual",
"system": "https://landing-zone-api.nilo.services/fhir/resources/NamingSystem/care-api--patient-v2",
"value": "123"
},
"reference": "Patient/d77bd7b0-144d-4789-9e81-062a375addb8"
},
"status": "accepted"
},
{
"actor": {
"type": "Practitioner",
"identifier": {
"use": "usual",
"system": "https://landing-zone-api.nilo.services/fhir/resources/NamingSystem/almanac-api--professional",
"value": "456"
},
"reference": "Practitioner/1e8f3c9e-6f4b-4c3b-9d2e-1c2b3a4d5e6f"
},
"status": "accepted"
}
]
}

Como verificar a criação da sala

Você pode acompanhar a criação da sala de vídeo através de duas abordagens:

MétodoDescriçãoRecomendação
Consulta via APIRealizar requests periódicas para verificar se o campo contained está presenteAdequado para verificações pontuais
WebhookReceber notificações automáticas quando a sala for criadaRecomendado para automação
Usando consulta via API

Consulte o agendamento e verifique a presença do campo contained. Veja mais detalhes em Consultar Agendamento.

Usando webhooks (recomendado)

Configure um webhook para receber notificações automáticas sobre atualizações nos agendamentos. Consulte nossa documentação completa sobre Webhooks de Agendamentos.