Formato da chave
Toda chamada à API pública é autenticada com uma chave de API no cabeçalhoAuthorization, usando o esquema Bearer:
bd_live_<id>) e um segredo (<secret>). Ambas juntas formam a credencial completa.
Escopos
Na criação, em Minha Clínica → API e Webhooks, você escolhe o acesso da chave: Somente leitura (appointments:read + patients:read) ou Acesso total (os quatro escopos). Uma rota exige exatamente um escopo; uma chave sem ele recebe 403 Forbidden.
Por padrão uma chave nasce somente leitura; a escrita é concedida por chave, de forma explícita. Os escopos de uma chave não podem ser alterados depois — crie uma chave nova e revogue a antiga.
Uma chave sem o escopo recebe
403 com a mensagem This API key does not have the "patients:write" scope., nomeando o escopo que falta. Chave ausente, mal formatada, inválida, revogada ou expirada recebe 401 com o motivo; veja Erros.
Chaves criadas antes da escrita existir continuam somente leitura, e chaves criadas antes dos pacientes existirem não recebem os escopos de pacientes: o acesso ao cadastro de pacientes nunca é concedido a uma chave existente sem que a clínica crie uma nova.
Revogação e expiração
Revogar uma chave em Minha Clínica → API e Webhooks tem efeito imediato: a próxima requisição com essa chave recebe401 Unauthorized. Não há período de carência.
Uma chave também pode ter uma data de expiração (expires_at), definida na criação. Uma vez expirada, ela passa a se comportar como uma chave revogada: toda requisição recebe 401 Unauthorized.
Limites de uso (rate limits)
Cada chave está sujeita a dois limites, aplicados de forma independente:
Ao exceder um dos limites, a API responde
429 Too Many Requests com um cabeçalho Retry-After indicando em quantos segundos tentar novamente. Implemente backoff e nova tentativa; não faça polling agressivo — para manter uma cópia local em dia, prefira a receita de sincronização combinada com webhooks.
Segurança
Uma chave de API concede acesso a dados de pacientes e de agendamentos, que são dados de saúde. Trate-a como qualquer outro segredo de produção:- Armazene em um cofre de segredos (secrets manager), nunca em código-fonte versionado.
- Nunca exponha a chave em código do lado do cliente (browser, app mobile) — toda chamada deve partir de um backend seu.
- Nunca faça commit da chave em um repositório git, mesmo privado.
- Revogue e recrie a chave se suspeitar de exposição.