1. Cenário
A Clínica Alpha utiliza o sistema Cfaz e deseja realizar uma integração com a Clínica Betha, que não utiliza o sistema.
O objetivo é permitir que a Clínica Betha receba os exames solicitados pela Clínica Alpha por meio da API ou, alternativamente, consulte diretamente os pedidos destinados a ela.
2. Limitação atual
Atualmente, o Cfaz permite integrações por meio da chave geral de API da clínica.
Entretanto, essa abordagem não é recomendada para o cenário apresentado, pois o compartilhamento dessa chave concederia à Clínica Betha acesso amplo aos dados da Clínica Alpha, incluindo pedidos e informações que não são destinados a ela.
Dessa forma, é necessário adotar uma solução que permita a integração entre as clínicas, garantindo que a Clínica Betha tenha acesso apenas aos pedidos que lhe forem destinados.
3. Solução proposta
Identificamos uma alternativa que combina o envio de informações por Webhook com a utilização da API por meio de um usuário do tipo dentista.
A implementação seria realizada em duas etapas:
Etapa 1 - Configuração do Webhook
Na Clínica Alpha, deverá ser configurado manualmente um Webhook apontando para o endpoint desenvolvido pela Clínica Betha.
Com essa configuração, a Clínica Alpha poderá enviar manualmente, por meio do Webhook, os exames destinados à Clínica Betha.
É importante destacar que o Webhook de exames disponibiliza apenas um conjunto limitado de informações:
● PDF do exame;
● ID do pedido;
● ID do paciente.
Etapa 2 - Criação de usuário e acesso à API
A Clínica Betha deverá possuir um usuário do tipo dentista cadastrado no Cfaz.
Os pedidos destinados à Clínica Betha deverão ser compartilhados com esse usuário, permitindo que ele tenha acesso aos pedidos recebidos por meio do compartilhamento.
Essa configuração é necessária porque as informações enviadas pelo Webhook são limitadas. Caso a Clínica Betha precise consultar dados adicionais de um pedido ou paciente, poderá utilizar os IDs recebidos no Webhook para realizar consultas à API, autenticando-se com as credenciais do usuário do tipo dentista.
4. Resultado esperado
Com essa solução, a Clínica Betha poderá receber os exames enviados pela Clínica Alpha e, quando necessário, consultar informações complementares por meio da API.
A principal vantagem é que não será necessário compartilhar a chave geral de API da Clínica Alpha, evitando a concessão de acesso amplo aos dados da clínica.
O acesso da Clínica Betha ficará vinculado ao usuário do tipo dentista e aos pedidos compartilhados com ele, respeitando as permissões disponíveis para esse perfil no Cfaz.
5. Como realizar o acesso por meio da API
Para que a Clínica Betha possa consultar as informações dos pedidos compartilhados, será necessário obter um token de acesso (access_token) utilizando as credenciais do usuário do tipo dentista cadastrado no Cfaz.
O processo é realizado em duas etapas:
Etapa 1 – Obtenção do token de acesso
Conforme descrito na documentação de acesso à API do Cfaz, usuários que ainda não possuem um token podem obtê-lo por meio de uma requisição de autenticação, informando e-mail e senha.
Exemplo de requisição:
curl -i -X POST \ -d "email=EMAIL_DO_DENTISTA" \ -d "password=SENHA_DO_DENTISTA" \ https://max.cfaz.net/api/v1/auth/sign_in
Após a autenticação, a API retornará as informações do usuário, mas o que precisamos é o access_token, semelhante ao exemplo abaixo:
{
"access_token": "uwC42vnuruV-xI-nCKhN-g"
}Esse token deverá ser utilizado nas requisições seguintes para identificar e autenticar o usuário.
Etapa 2 – Consulta dos dados do pedido
Com o access_token obtido, a Clínica Betha poderá realizar consultas aos pedidos compartilhados com o usuário dentista, conforme descrito na documentação da API de pedidos do Cfaz.
Para esse cenário, o token pode ser informado como parâmetro na URL da requisição, conforme o exemplo:
curl -X GET \
"https://max.cfaz.net/api/v1/requests/{request_id}?access_token=TOKEN_DE_ACESSO"Parâmetros utilizados:
● request_id: identificador do pedido, recebido anteriormente por meio do Webhook.
● access_token: token obtido na etapa de autenticação.
Ao realizar a requisição, a API retornará os dados do pedido, incluindo as informações do paciente disponibilizadas para consulta.
Dessa forma, a Clínica Betha poderá utilizar o ID recebido pelo Webhook para consultar informações complementares, sem a necessidade de utilizar a chave geral de API da Clínica Alpha.
Este artigo foi útil?
Que bom!
Obrigado pelo seu feedback
Desculpe! Não conseguimos ajudar você
Obrigado pelo seu feedback
Feedback enviado
Agradecemos seu esforço e tentaremos corrigir o artigo