Quickstart¶
1) Configura tu API key¶
Define:
FARMAAPI_BASE_URL(ejemplo):https://estudioapi.com/farmapiFARMAAPI_API_KEY: tu keyfak_...
Note
Todas las llamadas requieren X-API-Key.
2) Lista territorios (diccionario ES-XX)¶
curl -sS "$FARMAAPI_BASE_URL/v1/farmacias/territories" \
-H "X-API-Key: $FARMAAPI_API_KEY"
const res = await fetch(`${process.env.FARMAAPI_BASE_URL}/v1/farmacias/territories`, {
headers: { "X-API-Key": process.env.FARMAAPI_API_KEY },
});
console.log(await res.json());
import os, requests
r = requests.get(
f"{os.environ['FARMAAPI_BASE_URL']}/v1/farmacias/territories",
headers={"X-API-Key": os.environ["FARMAAPI_API_KEY"]},
timeout=30,
)
print(r.json())
<?php
$base = getenv("FARMAAPI_BASE_URL");
$key = getenv("FARMAAPI_API_KEY");
$ch = curl_init("$base/v1/farmacias/territories");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["X-API-Key: $key"]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$body = curl_exec($ch);
echo $body;
3) Descarga el dataset de un territorio (CSV o JSON)¶
CSV (ej. Comunidad de Madrid ES-MD):
curl -sS "$FARMAAPI_BASE_URL/v1/farmacias/export/ES-MD/csv" \
-H "X-API-Key: $FARMAAPI_API_KEY" \
-o "ES-MD.csv"
import fs from "node:fs";
const res = await fetch(`${process.env.FARMAAPI_BASE_URL}/v1/farmacias/export/ES-MD/csv`, {
headers: { "X-API-Key": process.env.FARMAAPI_API_KEY },
});
if (!res.ok) throw new Error(`HTTP ${res.status}`);
fs.writeFileSync("ES-MD.csv", Buffer.from(await res.arrayBuffer()));
JSON:
curl -sS "$FARMAAPI_BASE_URL/v1/farmacias/export/ES-MD/json" \
-H "X-API-Key: $FARMAAPI_API_KEY" \
-o "ES-MD.json"
4) Snapshot paginado (JSON)¶
curl -sS "$FARMAAPI_BASE_URL/v1/farmacias/snapshot/ES-MD?limit=500" \
-H "X-API-Key: $FARMAAPI_API_KEY"
Paginacion: usa next_cursor como cursor en la siguiente llamada.
5) Deltas tecnicos (changes)¶
curl -sS "$FARMAAPI_BASE_URL/v1/farmacias/changes?since=2026-01-01T00:00:00Z&limit=500" \
-H "X-API-Key: $FARMAAPI_API_KEY"
6) Eventos de negocio (aperturas/cierres/traslados/cambio de titular)¶
curl -sS "$FARMAAPI_BASE_URL/v1/farmacias/business-events?from=2026-01-01T00:00:00Z&event_types=closed_hard,closed_soft" \
-H "X-API-Key: $FARMAAPI_API_KEY"
7) Webhooks (callback por dominio/origin)¶
Tu callback_url se configura como origin (dominio), por ejemplo:
https://tu-dominio.com
FarmAPI enviara el webhook a:
https://tu-dominio.com/.well-known/farmaapi/webhook
Ver detalles en Webhooks.