Pular para o conteúdo principal
EcoMed
Acesse aqui
API Pública v1

Integre o mapa de descarte na sua aplicação

API REST somente-leitura com mais de 58 mil pontos de coleta de medicamentos no Brasil. Gratuita para projetos educativos, ONGs, órgãos públicos e iniciativas sem fins lucrativos.

🔑 Como obter uma chave

Envie um e-mail para [email protected] com:

  • Nome do projeto e descrição breve do uso pretendido
  • Domínio de origem da aplicação (para liberar o CORS)
  • Volume estimado de usuários simultâneos
  • E-mail técnico do responsável

Resposta em até 2 dias úteis. Uso comercial é avaliado caso a caso.

🔐 Autenticação

Todas as requisições exigem o header X-API-Key:

curl "https://ecomed.eco.br/api/public/v1/pontos/proximos?lat=-23.5505&lng=-46.6333&raio=5000" \
  -H "X-API-Key: SUA_CHAVE_AQUI"
⚠️ Trate a chave como senha: use variável de ambiente no servidor e nunca a exponha em repositório público ou no bundle do navegador.

📡 Endpoints

GET/api/public/v1/pontos/proximos

Até 30 pontos de coleta aprovados, ordenados por distância.

ParâmetroTipoDefaultLimites
latnúmero-90 a 90 (obrigatório)
lngnúmero-180 a 180 (obrigatório)
raiometros5000500 a 50.000

Exemplo de resposta

{
  "source": "EcoMed Public API v1",
  "attribution": "Dados originais: LogMed / Sindusfarma...",
  "count": 12,
  "query": { "lat": -23.5505, "lng": -46.6333, "raio_metros": 5000 },
  "pontos": [
    {
      "id": "logmed-001234",
      "name": "Farmácia Exemplo - Centro",
      "address": "Rua das Flores, 100",
      "city": "São Paulo",
      "state": "SP",
      "latitude": -23.5489,
      "longitude": -46.6388,
      "phone": "(11) 3333-4444",
      "residueTypes": ["medicamento"],
      "distancia_metros": 412
    }
  ]
}

GET/api/public/v1/pontos/:id

Detalhes completos de um ponto, incluindo horários de funcionamento (schedules) por dia da semana.

🗺️ Widget de mapa (iframe) — sem chave

Para sites que só precisam exibir o mapa, oferecemos um widget pronto que não exige chave de API. Basta incorporar o iframe:

<iframe
  src="https://ecomed.eco.br/embed/mapa?lat=-23.5505&lng=-46.6333&zoom=13"
  width="100%"
  height="450"
  style="border:0; border-radius: 12px"
  loading="lazy"
  title="Mapa de pontos de coleta de medicamentos - EcoMed">
</iframe>

Parâmetros opcionais: lat, lng (centro do mapa) e zoom (3–18). Sem parâmetros, mostra a visão nacional. A atribuição ao EcoMed é exibida automaticamente e não pode ser removida.

⚙️ Limites e termos de uso

Rate limit

60 requisições/minuto por chave (sliding window). Acompanhe pelos headers X-RateLimit-Limit, X-RateLimit-Remaining e X-RateLimit-Reset.

CORS

Liberado apenas para o domínio registrado na sua chave. Mudou de domínio? Avise a equipe.

Atribuição

Exiba "Dados: EcoMed + LogMed/Sindusfarma" junto aos pontos mostrados na sua aplicação.

Uso permitido

Fins educativos e não comerciais. Revenda dos dados ou uso em produto pago exige acordo prévio.