Ejemplo de uso: Kairos Nearest Church/Temple API (Global)
Kairos devuelve el lugar de culto más cercano a una latitud/longitud o lista lugares dentro de un radio. Está optimizado con PostGIS y usa OpenStreetMap (Overpass) bajo demanda con caché.
Quick start
Base URL:
https://<YOUR_RAPIDAPI_HOST>Headers:
X-RapidAPI-Key + X-RapidAPI-HostEndpoints:
/health, /temples/near, /temples
Tip: en RapidAPI, abre Code Snippets y copia el Host exacto.
No llames al servidor origen directamente: usa el host de RapidAPI.
Parámetros clave
lat (req): latitud
lon (req): longitud
radiusKm: radio en km (default 8)
limit: máx resultados (hasta 200)
offset: paginación
⚡ Cache bucketing
radiusKm se normaliza a 2 / 5 / 10 / 20 km para maximizar caché. Revisa radius_km_used en la respuesta.
1) Health check
curl -s "https://<YOUR_RAPIDAPI_HOST>/health" \
-H "X-RapidAPI-Key: <YOUR_RAPIDAPI_KEY>" \
-H "X-RapidAPI-Host: <YOUR_RAPIDAPI_HOST>"
2) Nearest place of worship
Encuentra el lugar de culto más cercano dentro del radio.
curl -s "https://<YOUR_RAPIDAPI_HOST>/temples/near?lat=6.96333&lon=-75.41722&radiusKm=10" \
-H "X-RapidAPI-Key: <YOUR_RAPIDAPI_KEY>" \
-H "X-RapidAPI-Host: <YOUR_RAPIDAPI_HOST>"
Node.js (Axios)
const axios = require("axios");
const RAPIDAPI_KEY = process.env.RAPIDAPI_KEY || "YOUR_RAPIDAPI_KEY";
const RAPIDAPI_HOST = process.env.RAPIDAPI_HOST || "YOUR_RAPIDAPI_HOST";
const options = {
method: "GET",
url: `https://${RAPIDAPI_HOST}/temples/near`,
params: { lat: 6.96333, lon: -75.41722, radiusKm: 10 },
headers: {
"X-RapidAPI-Key": RAPIDAPI_KEY,
"X-RapidAPI-Host": RAPIDAPI_HOST
}
};
axios.request(options)
.then(r => console.log(r.data))
.catch(err => console.error(err));
Python (requests)
import os
import requests
RAPIDAPI_KEY = os.environ.get("RAPIDAPI_KEY", "YOUR_RAPIDAPI_KEY")
RAPIDAPI_HOST = os.environ.get("RAPIDAPI_HOST", "YOUR_RAPIDAPI_HOST")
url = f"https://{RAPIDAPI_HOST}/temples/near"
params = {"lat": 6.96333, "lon": -75.41722, "radiusKm": 10}
headers = {
"X-RapidAPI-Key": RAPIDAPI_KEY,
"X-RapidAPI-Host": RAPIDAPI_HOST
}
r = requests.get(url, headers=headers, params=params, timeout=20)
r.raise_for_status()
print(r.json())
3) List places within radius (paginado)
Lista lugares dentro del radio con limit y offset.
curl -s "https://<YOUR_RAPIDAPI_HOST>/temples?lat=6.96333&lon=-75.41722&radiusKm=10&limit=50&offset=0" \
-H "X-RapidAPI-Key: <YOUR_RAPIDAPI_KEY>" \
-H "X-RapidAPI-Host: <YOUR_RAPIDAPI_HOST>"
Errores comunes
- 400: faltan parámetros (
lat/lon) o son inválidos. - 403: falta/invalid
X-RapidAPI-Keyo no estás suscrito a un plan. - 429: superaste el rate limit del plan.
- 502: error temporal de upstream (Overpass) — reintentar.