BBuscaCerca
← Volver al inicio

Para desarrolladores y agentes

Última actualización: 30 de agosto de 2026

BuscaCerca es el buscador de los negocios, servicios, profesionales y emprendimientos de Mercedes (Soriano, Uruguay). Todo lo que se ve en el sitio se puede leer también por API: abierta, de solo lectura y sin credenciales.

Si estás construyendo un agente, empezá por openapi.json: describe la superficie entera y se parsea sin leer esta página.

Empezar

Sin registro, sin clave. Una llamada y ya:

curl "https://buscacerca.uy/api/v1/locales?busqueda=donde%20arreglo%20una%20rueda&limit=3"

La búsqueda es semántica: entiende lo que la persona necesita, no solo las palabras que escribió. “Algo para el dolor de muelas” trae odontólogos y farmacias.

# La ficha de un negocio, por el slug de su URL pública
curl "https://buscacerca.uy/api/v1/locales/aca-toys-mercedes"

# Las categorías con cuántos negocios tiene cada una
curl "https://buscacerca.uy/api/v1/categorias?conConteo=true"

Descubrimiento

Además, toda respuesta de la API trae una cabecera Link con rel="service-desc" apuntando al spec (RFC 8631), así que se puede llegar al contrato desde cualquier endpoint suelto.

Endpoints

Todos cuelgan de https://buscacerca.uy/api/v1 y todos son GET.

  • GET /locales — Buscar negocios (acepta `busqueda` en lenguaje natural)
  • GET /locales/{idOrSlug} — Una ficha completa
  • GET /locales/{slug}/relacionados — Negocios parecidos
  • GET /locales/mapa — Solo coordenadas, para pintar pines
  • GET /categorias — Categorías, con `conConteo=true` si querés los totales
  • GET /categorias/arbol — El árbol completo, anidado
  • GET /directorio — El índice de una ciudad
  • GET /ciudades — Las ciudades cubiertas

La API de gestión (/api/admin, /api/comerciante, /api/monetizacion) exige sesión y no es una superficie de integración: no está documentada ni tiene compromiso de estabilidad.

Versiones y deprecación

El contrato estable es /api/v1/.... Un cambio incompatible sale como una versión nueva del path (/api/v2), y la versión anterior sigue funcionando al menos 6 meses.

Cuando un endpoint entre en camino de salida, sus respuestas van a traerlo escrito en las cabeceras: Deprecation (RFC 9745) con la fecha en que se marcó, Sunset (RFC 8594) con la fecha en que deja de responder, y un Link rel="deprecation" a la explicación. Hoy no hay nada deprecado.

/api/... sin versión también funciona y apunta siempre a la versión vigente. Lo usa nuestro propio frontend, que se deploya junto con el backend. Para una integración de afuera, usá la URL con versión: la sin versión puede cambiar con la app.

Límites

30 pedidos por minuto por IP. Pasado ese techo la respuesta es 503 con code: RATE_LIMITED: esperá un minuto y reintentá de a un pedido por vez, no en ráfaga.

No hay clave de API ni cuotas por cuenta. Si tu caso necesita más volumen, escribinos y lo vemos: somos un proyecto de un pueblo, no un formulario.

Errores

Todos los errores son JSON con la misma forma, incluidos los que emite el servidor web (rate limit, timeouts). Nunca sale HTML.

{
  "error": "Local no encontrado",
  "code": "NOT_FOUND",
  "message": "Local no encontrado",
  "hint": "Verificá la URL y el identificador. El catálogo público se lista en https://buscacerca.uy/api/sitemap.xml.",
  "status": 404
}

code es estable: ramificá por ahí, no por el texto. hint dice si conviene reintentar o qué corregir. La lista completa está en el spec.

Las páginas, en Markdown

Cualquier página pública se sirve en Markdown si la pedís así (convenio de acceptmarkdown.com). Es la misma página convertida, no otra fuente:

curl -H "Accept: text/markdown" https://buscacerca.uy/uy/mercedes/cat/pizzerias

Qué NO hay

  • No hay claves de API. Todo lo documentado acá es público y de solo lectura; una clave no protegería nada.
  • No hay sandbox. No hay escritura, así que no hay nada que probar sin consecuencias: los datos reales ya son públicos.
  • No hay webhooks. Si te sirven, escribinos.

Uso de los datos

Los datos son de los negocios de Mercedes. Podés leerlos, citarlos y enlazarlos — de hecho preferimos eso, porque manda gente a los comercios. Lo que pedimos es que enlaces la ficha cuando muestres un negocio, para que la persona pueda llegar. Sobre entrenamiento de modelos, la reserva de derechos está en robots.txt (Content-Signal).

Contacto

Escribinos a [email protected]. Si algo del spec no coincide con lo que devuelve la API, eso es un bug y queremos saberlo.