Preparação da aplicação para receber respostas
Para que sua aplicação esteja pronta para receber as notificações e eventos da nossa API, você precisará configurar um único endpoint que será responsável por processar todas as requisições enviadas pela Doctor Assistant. Abaixo, descreveremos como deve ser esse endpoint e como as respostas chegarão até ele.
Configuração do Endpoint
- Definição do Endpoint: Crie um endpoint na sua aplicação que será responsável por receber os eventos. Por exemplo:
POST https://sua-aplicacao.com/webhook
- Formato da Requisição: As requisições enviadas para o seu endpoint terão o seguinte formato no corpo da mensagem (body):
{
"event": "nome_do_evento",
"data": {
// Dados específicos do evento
}
}
Onde:
event
: É o nome do evento que está sendo notificado (ex:CONSULTATION_CREATED
,CONSULTATION_SUCESS
,CONSULTATION_FAILED
, etc).data
: Contém os dados específicos relacionados ao evento, que podem variar conforme o tipo de evento.
Exemplo de Requisição
POST /webhook HTTP/1.1
Host: sua-aplicacao.com
Content-Type: application/json
{
"event": "CONSULTATION_CREATED",
"data": {
"id": "12345",
"timestamp": "2024-09-25T10:00:00Z",
"transcription": "",
"report": {}
},
"error": {}
}
Processamento da Resposta
Quando sua aplicação receber essa requisição, ela deve processar o evento conforme a lógica implementada. Recomendamos que você verifique o nome do evento e trate os dados de maneira adequada.
Segurança e Confirmação de Recebimento
Para garantir a segurança, considere implementar uma verificação para validar a origem das requisições. Além disso, esperaremos um retorno com um status de sucesso (200 OK
) ao enviar um evento, para confirmar que a notificação foi recebida e processada corretamente. Caso não tenhamos essa confirmação, tentaremos até 3 vezes totais enviar esse evento, com intervalos maiores a cada tentativa.
Os intervalos entre as tentativas são calculados da seguinte forma:
- Primeira tentativa: imediatamente
- Segunda tentativa: 5000ms (5 segundos)
- Terceira tentativa: 10000ms (10 segundos)
- Quarta tentativa: 20000ms (20 segundos)
Caso tenha dúvidas ou precise de mais informações, nossa equipe de suporte está à disposição para ajudar!