POST /api/v1/pharmacy/check
Envie os itens (medicamentos) de uma dispensação/venda para receber uma checagem estruturada de interações e alertas clínicos.
Cabeçalhos
X-API-Key: sm_live_...Content-Type: application/json
Body (exemplo)
{
"medications": [
{"name": "Warfarina", "dose_mg": 5},
{"name": "Omeprazol", "dose_mg": 20}
],
"language": "pt-BR"
}
Dose com decimais (ex.: 2,5 mg)
O campo dose_mg aceita:
- número (
2.5) - string com vírgula ou ponto (
\"2,5\",\"2.5\",\"2,5mg\")
Resposta 200
A resposta segue o mesmo contrato de POST /api/v1/interactions/check, incluindo:
analysis_statusprescription_risk_levelprescription_scorenormalized_medicationsinteractionsunverified_pairssource_coverageanalysis_metadatawarningssafety_notice
Regras importantes
- O scope exigido é
interactions:check. - Se algum par não puder ser verificado, ele aparece em
unverified_pairs. source_coveragedeixa explícito o que foi consultado, falhou ou foi pulado.- Quando houver reaproveitamento de cache, ele prioriza respostas
complete.
GET /api/v1/pharmacy/routes
Retorna um catálogo simples com as rotas recomendadas para integração de farmácias.
Respostas de erro
O contrato de erro é idêntico ao de /interactions/check:
| HTTP | detail |
|---|---|
401 | API key required |
403 | API key inválida · Scope insuficiente para esta API key |
422 | medications ausente/ inválido (lista de validação) |
429 | Rate limit excedido |
504 | A análise excedeu o tempo limite. Tente novamente em instantes. |
// 403 — escopo ausente
{ "detail": "Scope insuficiente para esta API key" }
Catálogo completo: Respostas e Códigos de Erro.