FarMapp

FarMapp Developers

Recursos de desenvolvimento do FarMapp

O FarMapp — plataforma angolana de farmácias próximas, stock e reservas de medicamentos — expõe todos os seus recursos de desenvolvimento em URLs fixos, prontos a consumir por developers e agentes de IA.

Base da API

Todos os recursos abaixo apontam para a API em produção:

https://farmaperto.onrender.com/api

Documentação técnica

Spec OpenAPI 3.0 (JSON)/openapi.json. Contrato completo da API FarMapp: 30 operações, 16 schemas, autenticação Bearer e todos os erros documentados.

Documentação de autenticação do FarMapp/developers/auth. Como obter e usar os tokens Bearer (utilizador, farmácia e Google).

Documentação da API em texto/api/llms.txt. Referência das rotas em Markdown simples, pensada para agentes de IA.

Integrações e ferramentas

RecursoURL previsível / comandoPara quê
Servidor MCP npx farmapp-mcp Dá a agentes de IA (Claude Desktop, etc.) acesso a farmácias, stock, avaliações e reservas.
CLI oficial npx farmapp-cli Linha de comandos para pesquisar farmácias e gerir reservas a partir de scripts.
Manifesto function-calling /api/functions.json Capacidades da API no formato de chamada de funções para LLMs (sem $ref, draft-07).
api-catalog /.well-known/api-catalog Descoberta automática da API (RFC 9727).

Descoberta por agents (llms.txt)

llms.txt/llms.txt (resumo).  llms-full.txt/llms-full.txt (texto integral).  docs/llms.txt — documentação das páginas.

Autenticação

As rotas públicas (pesquisa de farmácias, detalhe, avaliações) funcionam sem token. Para reservas e perfil de farmácia usa um token Bearer; vê a documentação de autenticação.

Rate limiting (RFC 9652)

Todas as respostas de /api/* (exceto /api/health) incluem headers de rate-limit no formato draft-7:

RateLimit: limit=120, remaining=119, reset=300
RateLimit-Policy: 120;w=300

Limites por IP em janela de 5 minutos: 120 pedidos sem autenticação, 300 autenticado. Endpoints de auth e de trajectória têm limites próprios mais baixos. No limite a API devolve 429 com header Retry-After (segundos) e corpo {"erro": true, "mensagem": "..."}.

Agents: lê RateLimit/RateLimit-Policy de cada resposta e, se remaining for baixo, pausa até reset. No 429, espera Retry-After segundos antes de repetir.

Versionamento e depreciação

O path /api é a versão 1 da API FarMapp. Todas as respostas incluem X-FarMapp-API-Version: 1.

Testa sem código

Roda a API localmente com o CLI oficial:

npx farmapp-cli farmacias --search-type medicamento --search "amox" --table
npx farmapp-mcp   # ou liga ao teu cliente MCP
Ver farmácias perto de ti