Fluxo de integração
O fluxo de integração envolve duas etapas principais que você é responsável por implementar:
- Extração de dados do sistema de agendamentos do seu cliente
- Exposição da API que segue nossa especificação
Extração de dados do sistema do cliente
Você é responsável por obter os dados necessários do sistema de agendamentos do seu cliente. Como fazer isso é completamente sua decisão e não nos diz respeito.
Possíveis abordagens
A Clinia não tem restrições sobre a forma de extração de dados do sistema do cliente.
Você pode usar qualquer abordagem que achar mais adequada, desde que seja capaz de extrair os dados necessários.
Se o sistema de gestão do cliente tem API:
- Integração direta via REST, GraphQL, SOAP, etc.
- Sincronização em tempo real ou batch
Se o sistema de gestão do cliente não tem API:
- Banco de dados direto: Acesso direto ao banco do sistema de agendamentos
- Web scraping: Extração via interface web do sistema
- Arquivos de exportação: Processamento de arquivos CSV, Excel, etc.
- Outros: Qualquer outra forma de extração de dados que o cliente possa ter
Dados que você precisa extrair
Baseado na nossa especificação, você precisa obter do sistema do cliente os dados que estiverem disponíveis. Nem todos os endpoints e entidades são obrigatórias.
Se por exemplo, documentamos um endpoint de Localidade, mas o sistema do seu cliente não possui essa informação, você pode:
- Retornar uma lista vazia
[] - Retornar
404 Not Found - Não implementar o endpoint
O conhecimento sobre quais dados e funcionalidades o sistema do cliente possui ou não possui é de responsabilidade exclusiva de quem está desenvolvendo a integração. Ou seja, você é quem deve investigar, mapear e entender as limitações e possibilidades do sistema do cliente.
Após finalizar a integração, é fundamental que você colabore conosco detalhando claramente:
- Quais endpoints da nossa especificação foram implementados e estão disponíveis na sua API
- Quais endpoints não puderam ser implementados, explicando os motivos (por exemplo: ausência de dados, limitações técnicas, etc.)
Essa transparência é essencial para que a Clinia saiba exatamente quais funcionalidades podem ser utilizadas e quais não estão disponíveis para aquele cliente específico. Isso evita erros, expectativas incorretas e garante uma operação mais fluida para todos os envolvidos.
Implementação da API
Você deve criar uma API que:
- Recebe requisições da Clinia
- Busca dados do sistema do cliente (usando a abordagem que você escolheu)
- Transforma os dados para o formato que especificamos
- Retorna a resposta no formato exato que definimos
Exemplo de fluxo completo
Clinia → Sua API → Sistema do Cliente
↑ ↓
JSON ← Dados transformados ← Dados originais
Exemplo prático:
- Clinia chama:
GET /appointments?start=2024-01-15&end=2024-01-16 - Sua API consulta o sistema do cliente (via API, banco, etc.)
- Sua API recebe dados no formato do sistema do cliente
- Sua API abstrai os dados extraídos
- Sua API retorna para a Clinia os dados no formato que definimos, em JSON
Para mais detalhes sobre a API de agendamentos, veja a documentação do endpoint.
Origem dos dados
TODO e QUALQUER dado exposto pela sua API deve vir do sistema de gestão do seu cliente. Isso inclui:
- IDs de entidades: São os IDs do sistema do cliente
- Datas e horários: São calculados de acordo com o sistema do cliente
- Status e informações: São convertidos do sistema do cliente
- Qualquer outro dado: Vêm do sistema do cliente
Se o sistema do seu cliente usa IDs como APPT_12345, então sua API deve retornar APPT_12345.
Não um ID gerado por você ou pela Clinia.
Responsabilidades claras
É sua responsabilidade:
- Conectar com o sistema do cliente
- Extrair dados necessários
- Implementar nossa API
- Manter a integração funcionando
- Suporte técnico para problemas de integração
Não temos responsabilidade por:
- Conectar com o sistema do cliente
- Extrair dados do sistema do cliente
- Manter a integração com o sistema do cliente
- Suporte para problemas do sistema do cliente
Próximos passos
O próximo passo é analisar o sistema do cliente para entender como extrair os dados necessários. Em seguida, escolha a abordagem mais adequada para essa extração, seja por API, acesso ao banco de dados, scraping ou outro método. Depois, implemente o módulo responsável por obter os dados do cliente.
Com isso pronto, analise os endpoints que precisam ser implementados e planeje a arquitetura da sua API de acordo com as necessidades identificadas.