Uruguay: exchange rates, rentals, used cars, product prices and search across cambio-uruguay.com
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
The single best casa de cambio right now to buy or sell a currency. side='buy' means you buy the currency (best = lowest sell price); side='sell' means you sell it (best = highest buy price).
'buy' = you buy the currency; 'sell' = you sell it
ISO currency code, e.g. USD
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
The single best casa de cambio right now to buy or sell a currency. side='buy' means you buy the currency (best = lowest sell price); side='sell' means you sell it (best = highest buy price).
| Argument | Type | Description |
|---|---|---|
| side* | string | 'buy' = you buy the currency; 'sell' = you sell it |
| currency* | string | ISO currency code, e.g. USD |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"currency",
"side"
],
"properties": {
"side": {
"enum": [
"buy",
"sell"
],
"type": "string",
"description": "'buy' = you buy the currency; 'sell' = you sell it"
},
"currency": {
"type": "string",
"description": "ISO currency code, e.g. USD"
}
},
"additionalProperties": false
}Avisos cuyo vendedor DECLARA un riesgo (deuda, papeles, siniestro/choque, recupero, mecánica, chapa extranjera, uso intensivo como ex taxi) con su frase textual, la severidad y cuánto menos pide frente a los mismos autos que no declaran nada; más el resumen por categoría. Útil para entender el descuento de un auto con deuda o para descartar riesgos.
| Argument | Type | Description |
|---|---|---|
| body | string | Carrocería: sedan, hatchback, suv, pickup, rural (familiar), furgon, monovolumen, coupe, cabriolet. |
| fuel | string | |
| page | integer | |
| brand | string | |
| kmMax | integer | |
| limit | integer | |
| seller | string | dealer = automotora, private = particular. |
| yearMin | integer | |
| category | string | |
| department | string | |
| priceMaxUsd | number | Precio máximo en dólares. |
| onlyMeasured | boolean | Sólo los que tienen cohorte limpia para medir el descuento. |
| transmission | string | |
| maxLitersPer100Km | number | Consumo máximo (litros cada 100 km). |
Informe del mercado uruguayo de usados (oferta publicada, no ventas). Secciones: overview (tamaño, precio/año/km medianos, modelos con más oferta), budgets (qué modelos se consiguen con cada presupuesto: pasá budgetUsd), depreciation (cuánto pierde por año cada modelo: pasá model), negotiation (cuántos bajan el precio y cuánto), seller_gaps (automotora vs particular), valuation (cuánto restan los km y suma la caja automática), rotation.
| Argument | Type | Description |
|---|---|---|
| model | string | Modelo para depreciation, p. ej. "Onix" o "Chevrolet Prisma". |
| section | string | |
| budgetUsd | number |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"model": {
"type": "string",
"maxLength": 60,
"description": "Modelo para depreciation, p. ej. \"Onix\" o \"Chevrolet Prisma\"."
},
"section": {
"enum": [
"overview",
"budgets",
"depreciation",
"negotiation",
"seller_gaps",
"valuation",
"rotation"
],
"type": "string"
},
"budgetUsd": {
"type": "number",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Cuánto se pide por un modelo: mediana y rango por año y por versión (motor y caja), la guía de precios de Mercado Libre, las oportunidades del modelo y los más baratos (de un año si se indica). Para '¿cuánto vale un Onix 2019?' o '¿a cuánto vendo mi auto?'.
| Argument | Type | Description |
|---|---|---|
| year | integer | |
| brand* | string | |
| model* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"brand",
"model"
],
"properties": {
"year": {
"type": "integer",
"maximum": 2100,
"minimum": 1950
},
"brand": {
"type": "string",
"maxLength": 40,
"minLength": 2
},
"model": {
"type": "string",
"maxLength": 60,
"minLength": 1
}
},
"additionalProperties": false
}Señales fechadas de una tienda online que vende en Uruguay (o de compra en el exterior): antigüedad del dominio, calificación en Google, Trustpilot, menciones en Reddit uruguayo, HTTPS, contacto y RUT visibles, política de devoluciones y medios de pago. Nunca da un veredicto de confianza: presentá las señales y dejá que la persona decida.
| Argument | Type | Description |
|---|---|---|
| name* | string | Nombre, dominio o URL de la tienda. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 2,
"description": "Nombre, dominio o URL de la tienda."
}
},
"additionalProperties": false
}Compara barrios lado a lado con datos públicos: alquiler mediano y total con gastos comunes, precio por m², delitos denunciados (Ministerio del Interior, por tipo), cortes de agua (OSE), reclamos de saneamiento/limpieza/alumbrado/calles (IM), servicios cercanos (supermercados, farmacias, salud, transporte, educación) y el puesto de cada barrio entre los 62 de Montevideo. Pasá neighborhoods para comparar esos, o rankBy para listar los mejores (rent = más baratos, monthly = menor total, safety = menos denuncias, services = más servicios).
| Argument | Type | Description |
|---|---|---|
| type | string | Precios de apartamentos (default) o casas. |
| limit | integer | |
| rankBy | string | |
| bedrooms | string | |
| department | string | Departamento de Uruguay con tildes, p. ej. "Montevideo", "Canelones", "Maldonado", "Colonia". |
| neighborhoods | array |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"type": {
"enum": [
"apartamento",
"casa"
],
"type": "string",
"description": "Precios de apartamentos (default) o casas."
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1
},
"rankBy": {
"enum": [
"rent",
"monthly",
"safety",
"services"
],
"type": "string"
},
"bedrooms": {
"enum": [
"any",
"0",
"1",
"2",
"3",
"4plus"
],
"type": "string"
},
"department": {
"type": "string",
"maxLength": 40,
"description": "Departamento de Uruguay con tildes, p. ej. \"Montevideo\", \"Canelones\", \"Maldonado\", \"Colonia\"."
},
"neighborhoods": {
"type": "array",
"items": {
"type": "string",
"maxLength": 60
},
"maxItems": 10
}
},
"additionalProperties": false
}Convert an amount between currencies using the best available Uruguayan market rates. Foreign↔foreign routes through UYU (Uruguayan peso). Codes: USD, EUR, ARS, BRL, UYU, etc.
| Argument | Type | Description |
|---|---|---|
| to* | string | Target ISO code, e.g. UYU |
| from* | string | Source ISO code, e.g. USD |
| amount* | number | Amount to convert |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"amount",
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"description": "Target ISO code, e.g. UYU"
},
"from": {
"type": "string",
"description": "Source ISO code, e.g. USD"
},
"amount": {
"type": "number",
"description": "Amount to convert",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}AI-generated analysis of the Uruguayan exchange market. Without a currency, a whole-market summary; with one, a per-currency analysis. lang is es | en | pt.
| Argument | Type | Description |
|---|---|---|
| lang | string | Language (default es) |
| currency | string | Optional ISO code for a per-currency analysis, e.g. USD |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lang": {
"enum": [
"es",
"en",
"pt"
],
"type": "string",
"description": "Language (default es)"
},
"currency": {
"type": "string",
"description": "Optional ISO code for a per-currency analysis, e.g. USD"
}
},
"additionalProperties": false
}Estima el alquiler justo de una vivienda concreta (barrio, tipo, dormitorios, baños, m²) con avisos comparables de anunciantes distintos y, si se da askingPrice, ubica ese precio (percentil y % sobre/bajo la mediana). Sirve para '¿me están cobrando caro?' o para negociar. Casas: superficie construida.
| Argument | Type | Description |
|---|---|---|
| type* | string | |
| areaM2* | number | Superficie en m². |
| bedrooms* | integer | |
| currency | string | |
| areaBasis | string | built = construida (default), total = con balcones/terrazas. |
| bathrooms* | integer | |
| department* | string | Departamento de Uruguay con tildes, p. ej. "Montevideo", "Canelones", "Maldonado", "Colonia". |
| askingPrice | number | Precio pedido a evaluar, en la moneda indicada. |
Autos pedidos por DEBAJO de su cohorte fija: mismo modelo, año, versión, motor y caja, con km dentro de max(20.000, 30 %). Cada oportunidad pasa por su ficha (activa, mismo precio, sin choque/recupero/deuda/chapa extranjera declarados). Trae brecha %, brecha conservadora, la muestra (n, vendedores, p25/mediana/p75) y comparables con link. tier strict = evidencia sólida; exploratory = para explorar.
| Argument | Type | Description |
|---|---|---|
| body | string | Carrocería: sedan, hatchback, suv, pickup, rural (familiar), furgon, monovolumen, coupe, cabriolet. |
| fuel | string | |
| page | integer | |
| sort | string | |
| tier | string | |
| brand | string | |
| kmMax | integer | |
| limit | integer | |
| seller | string | dealer = automotora, private = particular. |
Viviendas pedidas por DEBAJO de avisos comparables (mismo barrio, tipo, dormitorios y superficie, varios anunciantes), con la brecha %, una brecha conservadora, cuántos comparables y anunciantes la sostienen, el nivel de evidencia y las cautelas. Alquiler compara alquiler + gastos comunes. Es una comparación de precios pedidos, no una tasación.
| Argument | Type | Description |
|---|---|---|
| page | integer | |
| sort | string | |
| type | string | |
| signal | string | |
| perPage | integer | |
| bedrooms | integer | Dormitorios exactos. |
| evidence | string | |
| maxPrice | number | Tope del precio comparado: pesos por mes en alquiler (alquiler + gastos comunes), dólares en venta. |
| operation | string | rent = alquiler (default), sale = venta. |
Convierte una dirección, esquina, barrio o nombre de lugar de Uruguay («Facultad de Ingeniería», «Tres Cruces», «Pocitos») en coordenadas con Google Maps. search_rentals y rank_rentals_for_household ya geocodifican solas si les pasás address: no hace falta llamar a esta antes.
| Argument | Type | Description |
|---|---|---|
| address* | string | Calle y número ("Av. Italia 2500"), esquina ("Rivera y Soca"), barrio o nombre del lugar ("Hospital de Clínicas"). |
| department | string | Departamento de Uruguay con tildes, p. ej. "Montevideo", "Canelones", "Maldonado", "Colonia". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"maxLength": 180,
"minLength": 4,
"description": "Calle y número (\"Av. Italia 2500\"), esquina (\"Rivera y Soca\"), barrio o nombre del lugar (\"Hospital de Clínicas\")."
},
"department": {
"type": "string",
"maxLength": 40,
"description": "Departamento de Uruguay con tildes, p. ej. \"Montevideo\", \"Canelones\", \"Maldonado\", \"Colonia\"."
}
},
"additionalProperties": false
}Ficha de un aviso de auto usado: versión, motor, km, consumo, la cohorte de autos iguales (mediana y rango) y dónde queda este precio, la referencia de la guía de ML, los riesgos que declara el vendedor con su frase y autos parecidos. Acepta la key o la URL https://cambio-uruguay.com/autos-usados-uruguay/<key>.
| Argument | Type | Description |
|---|---|---|
| key* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"maxLength": 300,
"minLength": 3
}
},
"additionalProperties": false
}Historical rate series and statistics (min/max/avg/current/change) for a given exchange house (origin) and currency over the last N months. Use list_houses for valid origin ids.
| Argument | Type | Description |
|---|---|---|
| origin* | string | Exchange house id, e.g. brou, itau, prex |
| period | integer | Months of history (default 6) |
| currency* | string | ISO currency code, e.g. USD |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"origin",
"currency"
],
"properties": {
"origin": {
"type": "string",
"description": "Exchange house id, e.g. brou, itau, prex"
},
"period": {
"type": "integer",
"maximum": 60,
"description": "Months of history (default 6)",
"exclusiveMinimum": 0
},
"currency": {
"type": "string",
"description": "ISO currency code, e.g. USD"
}
},
"additionalProperties": false
}Latest Uruguayan dollar/economy headlines (Google News), de-duplicated and newest first.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max headlines (default 12) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 30,
"description": "Max headlines (default 12)",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Current buy/sell rates for a currency across Uruguayan exchange houses (casas de cambio): market average, best buy/sell house, lowest spread, and the full per-house list. Excludes BCU and interbank quotes. Currency is an ISO code like USD, EUR, ARS, BRL.
| Argument | Type | Description |
|---|---|---|
| currency* | string | ISO currency code, e.g. USD, EUR, ARS, BRL |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"currency"
],
"properties": {
"currency": {
"type": "string",
"description": "ISO currency code, e.g. USD, EUR, ARS, BRL"
}
},
"additionalProperties": false
}Ficha completa de una vivienda en alquiler: todos los avisos que la publican (precio por portal e inmobiliaria), descripción, comodidades, texto de la garantía, superficies, comparación con la mediana de viviendas parecidas del mismo barrio (y cuánto por encima o debajo está), viviendas similares y perfil del barrio (denuncias, cortes de agua, reclamos de saneamiento/limpieza/alumbrado). Acepta la key que devuelven las otras tools o la URL https://cambio-uruguay.com/alquileres/<key>.
| Argument | Type | Description |
|---|---|---|
| key* | string | key de la vivienda o URL de su ficha. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"maxLength": 600,
"minLength": 3,
"description": "key de la vivienda o URL de su ficha."
}
},
"additionalProperties": false
}Qué directorios mantiene el sitio (alquileres, ventas, autos, celulares, sillas, tiendas, súper, casas de cambio, couriers, tarjetas, equipar la casa, movilidad eléctrica), cuántos ítems tiene cada uno, su fecha y su link.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}All Uruguayan exchange houses (casas de cambio) tracked, with display name, website, and departments served.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Presupuesto para equipar una vivienda vacía (ideal después de alquilar sin amueblar): canasta mínima, decente o completa, línea por línea con precio y si conviene usado o nuevo, restando lo que la persona ya tiene. Si faltan precios de algún ítem el total es parcial y lo dice.
| Argument | Type | Description |
|---|---|---|
| have | array | Lo que ya tiene: "heladera", "colchón", "microondas"… |
| level | string | minima (lo imprescindible, default), decente, completa. |
| condition | string | cheapest (default: usado cuando conviene) o new (todo nuevo). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"have": {
"type": "array",
"items": {
"type": "string",
"maxLength": 40
},
"maxItems": 40,
"description": "Lo que ya tiene: \"heladera\", \"colchón\", \"microondas\"…"
},
"level": {
"enum": [
"minima",
"decente",
"completa"
],
"type": "string",
"description": "minima (lo imprescindible, default), decente, completa."
},
"condition": {
"enum": [
"cheapest",
"new"
],
"type": "string",
"description": "cheapest (default: usado cuando conviene) o new (todo nuevo)."
}
},
"additionalProperties": false
}El buscador PERSONALIZADO: puntúa todas las viviendas vigentes (apartamentos y casas) para un hogar concreto. Cada persona puede tener ingreso, días de home office y hasta 4 destinos (trabajo, estudio) con días por semana y modo de traslado. Combina presupuesto (alquiler + gastos comunes vs. ingreso y otros gastos) y distancias a los destinos según la prioridad (balanced, budget, commute). Devuelve puntaje 0-100, total mensual, % del ingreso que se va en vivienda, lo que le queda al hogar, la distancia de cada persona a cada destino, motivos a favor y advertencias. Pedile a la persona lo mínimo: presupuesto, dónde trabaja/estudia cada uno, dormitorios, mascotas. Los ingresos no se guardan. Límite del sitio: ~10 consultas por minuto; la primera puede tardar hasta un minuto.
| Argument | Type | Description |
|---|---|---|
| pets | boolean | Necesitan que acepte mascotas. |
| limit | integer | Resultados a devolver (default 10). |
| types | array | |
| people* | array | |
| minArea | number | m² mínimos. |
| parking | boolean | |
| priority | string | Qué pesa más: equilibrado (default), precio o cercanía. |
El texto de una página de cambio-uruguay.com con sus secciones, en tramos de 8.000 caracteres (usá offset para seguir). Para citar con precisión lo que search_site encontró. Las cifras son del día en que se leyó la página.
| Argument | Type | Description |
|---|---|---|
| page* | string | URL o ruta: "https://cambio-uruguay.com/alquilar-en-uruguay" o "/alquilar-en-uruguay". |
| offset | integer | Desde qué carácter seguir (lo indica la respuesta anterior). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"page"
],
"properties": {
"page": {
"type": "string",
"maxLength": 300,
"minLength": 1,
"description": "URL o ruta: \"https://cambio-uruguay.com/alquilar-en-uruguay\" o \"/alquilar-en-uruguay\"."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Desde qué carácter seguir (lo indica la respuesta anterior)."
}
},
"additionalProperties": false
}Estadísticas del mercado de alquiler: mediana y rango típico (p25–p75) del alquiler, gastos comunes, total mensual y precio por m², por departamento, barrio, tipo y dormitorios, más los barrios más accesibles y más caros. Usalo para '¿cuánto sale alquilar 2 dormitorios en Pocitos?' o '¿dónde me alcanza con $30.000?'. Son precios pedidos, no firmados.
| Argument | Type | Description |
|---|---|---|
| type | string | |
| bedrooms | integer | |
| currency | string | Moneda de los avisos a analizar (default UYU: los avisos en pesos). |
| department | string | Departamento de Uruguay con tildes, p. ej. "Montevideo", "Canelones", "Maldonado", "Colonia". |
| neighborhood | string | Barrio (requiere department). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"type": {
"enum": [
"apartamento",
"casa"
],
"type": "string"
},
"bedrooms": {
"type": "integer",
"maximum": 10,
"minimum": 0
},
"currency": {
"enum": [
"UYU",
"USD"
],
"type": "string",
"description": "Moneda de los avisos a analizar (default UYU: los avisos en pesos)."
},
"department": {
"type": "string",
"maxLength": 40,
"description": "Departamento de Uruguay con tildes, p. ej. \"Montevideo\", \"Canelones\", \"Maldonado\", \"Colonia\"."
},
"neighborhood": {
"type": "string",
"maxLength": 60,
"description": "Barrio (requiere department)."
}
},
"additionalProperties": false
}Búsqueda unificada en los directorios de productos, relevados a diario en tiendas uruguayas, Mercado Libre y Facebook Marketplace: celulares (modelo + almacenamiento, precio nuevo más bajo), sillas de escritorio y gamer (con calificación), hogar (38 categorías para equipar una casa: heladera, lavarropas, colchón, cocina, aire acondicionado, TV…, con banda de precio nuevo y usado) y movilidad eléctrica (monopatines, bicicletas eléctricas). Devuelve el precio más bajo con vendedor y link, la banda típica (p25–mediana–p75), cuánto ahorra comprar usado y la ficha del sitio. Ordena del más barato al más caro.
| Argument | Type | Description |
|---|---|---|
| text | string | Palabras a buscar: "heladera no frost", "iphone 13", "silla ergonómica". |
| brand | string | |
| limit | integer | |
| vertical | string | Directorio (default: todas). |
| condition | string | used = sólo con banda de usados, al precio usado. |
| maxPriceUyu | number | Precio máximo en pesos. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"text": {
"type": "string",
"maxLength": 80,
"description": "Palabras a buscar: \"heladera no frost\", \"iphone 13\", \"silla ergonómica\"."
},
"brand": {
"type": "string",
"maxLength": 40
},
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1
},
"vertical": {
"enum": [
"celulares",
"sillas",
"hogar",
"monopatines",
"bicicletas-electricas",
"todas"
],
"type": "string",
"description": "Directorio (default: todas)."
},
"condition": {
"enum": [
"new",
"used",
"any"
],
"type": "string",
"description": "used = sólo con banda de usados, al precio usado."
},
"maxPriceUyu": {
"type": "number",
"description": "Precio máximo en pesos.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Busca viviendas en alquiler en todo Uruguay (unión de Mercado Libre, InfoCasas, Inmuebles El País, Casasweb y Facebook Marketplace, ~57.000 propiedades, avisos vistos en los últimos 10 días). Filtra por barrio, tipo, dormitorios, baños, m², precio (UYU o USD), TOTAL MENSUAL con gastos comunes, gastos comunes máximos, mascotas, garaje, con o sin muebles, plazo (anual o invernal), tipo de garantía (ANDA, Contaduría, seguro, depósito, BHU, propietario), comodidades, dueño directo, inmobiliaria, portal, texto libre, cercanía a un punto, calidad del barrio (pocas denuncias, pocos cortes de agua o reclamos), publicados en los últimos N días y alquileres que BAJARON de precio. Devuelve cada vivienda con alquiler, gastos comunes y total cuando el MISMO aviso los publica (~70 % no publica gastos comunes), link al aviso original, ficha en cambio-uruguay.com, la mediana de la búsqueda, los barrios con más oferta y un link para guardar la búsqueda o crear una alerta. Para rankear según ingresos y traslados de un hogar usá rank_rentals_for_household.
| Argument | Type | Description |
|---|---|---|
| near | object | Buscar cerca de un punto: ordena por distancia y, con radiusKm, filtra. Sólo cuentan avisos con ubicación propia. |
| page | integer | |
| pets | boolean | Sólo avisos que aceptan mascotas explícitamente. |
| sort | string | recientes (default), precio, precio-desc, total (menor total mensual), precio-m2, metros, baja (mayor baja de precio de los últimos 30 días primero). Con near se ordena por distancia. |
| term |
Busca en TODO el sitio: guías (impuestos, aduana y compras en el exterior, tarjetas, bancos, préstamos, sueldo y BPS, alquilar, consumo), herramientas y calculadoras, glosario, directorios y páginas de datos. Devuelve las páginas a las que conviene ir (título, sección, URL) y los pasajes de texto que responden, con la fecha en que se leyó cada página. Usala para cualquier pregunta que no sea buscar avisos, y para saber a qué página mandar a la persona.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Páginas con texto a devolver (default 6). |
| query* | string | Pregunta o palabras clave en español: "franquicia courier", "cuánto cobra el BROU por transferir", "aguinaldo". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "Páginas con texto a devolver (default 6)."
},
"query": {
"type": "string",
"maxLength": 200,
"minLength": 2,
"description": "Pregunta o palabras clave en español: \"franquicia courier\", \"cuánto cobra el BROU por transferir\", \"aguinaldo\"."
}
},
"additionalProperties": false
}Busca autos usados en todo Uruguay (~19.000 avisos de Mercado Libre, Facebook Marketplace, Dueño Directo, Clasiautos, Julio, Shopping de Autos, Carper, Fidocar, Motorlider y Car One; un mismo auto en varias fuentes aparece una vez). Filtra por marca y modelo (nombres comunes, se resuelven solos), año, km, precio en US$, consumo máximo L/100 km, combustible, caja, carrocería, puertas, color, departamento, automotora o particular, fuente, bajó de precio, sólo oportunidades, sin deuda ni choque declarados y publicados en los últimos N días. Cada auto trae versión, motor, consumo, si es oportunidad frente a autos iguales, precio de la guía de ML, riesgos que el vendedor declara (con su frase) y links.
| Argument | Type | Description |
|---|---|---|
| body | string | Carrocería: sedan, hatchback, suv, pickup, rural (familiar), furgon, monovolumen, coupe, cabriolet. |
| fuel | string | |
| page | integer | |
| sort | string | |
| text | string | Texto libre: "4x4", "full", "cuero". |
| brand | string | Marca: "Volkswagen", "Chevrolet", "Toyota"… |
| color | string | blanco, gris, plata, rojo, azul, negro, verde, celeste, beige, marron, dorado, bordo, naranja, amarillo, violeta. |
El menú de cambio-uruguay.com: secciones y páginas principales con su URL. Para orientar a la persona sobre qué hay en el sitio y dónde.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Precios oficiales del SIPC (MEF) por artículo (barato/mediana/caro y cuántos locales) y los supermercados más baratos de un departamento por canasta emparejada de 33 artículos (nunca por total bruto). Útil para estimar el costo de vida al mudarse.
| Argument | Type | Description |
|---|---|---|
| text | string | Artículo: "aceite girasol", "leche", "arroz". |
| limit | integer | |
| department | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"text": {
"type": "string",
"maxLength": 80,
"description": "Artículo: \"aceite girasol\", \"leche\", \"arroz\"."
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1
},
"department": {
"type": "string",
"maxLength": 40
}
},
"additionalProperties": false
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"body": {
"enum": [
"sedan",
"hatchback",
"suv",
"pickup",
"rural",
"furgon",
"monovolumen",
"coupe",
"cabriolet"
],
"type": "string",
"description": "Carrocería: sedan, hatchback, suv, pickup, rural (familiar), furgon, monovolumen, coupe, cabriolet."
},
"fuel": {
"enum": [
"nafta",
"diesel",
"electrico",
"hibrido",
"gnc"
],
"type": "string"
},
"page": {
"type": "integer",
"maximum": 200,
"minimum": 1
},
"brand": {
"type": "string",
"maxLength": 40
},
"kmMax": {
"type": "integer",
"exclusiveMinimum": 0
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1
},
"seller": {
"enum": [
"dealer",
"private"
],
"type": "string",
"description": "dealer = automotora, private = particular."
},
"yearMin": {
"type": "integer",
"maximum": 2100,
"minimum": 1950
},
"category": {
"enum": [
"deuda",
"papeles",
"siniestro",
"recupero",
"mecanica",
"chapa_extranjera",
"uso_intensivo"
],
"type": "string"
},
"department": {
"enum": [
"Artigas",
"Canelones",
"Cerro Largo",
"Colonia",
"Durazno",
"Flores",
"Florida",
"Lavalleja",
"Maldonado",
"Montevideo",
"Paysandú",
"Río Negro",
"Rivera",
"Rocha",
"Salto",
"San José",
"Soriano",
"Tacuarembó",
"Treinta y Tres"
],
"type": "string"
},
"priceMaxUsd": {
"type": "number",
"maximum": 1000000,
"description": "Precio máximo en dólares.",
"exclusiveMinimum": 0
},
"onlyMeasured": {
"type": "boolean",
"description": "Sólo los que tienen cohorte limpia para medir el descuento."
},
"transmission": {
"enum": [
"manual",
"automatica"
],
"type": "string"
},
"maxLitersPer100Km": {
"type": "number",
"maximum": 30,
"description": "Consumo máximo (litros cada 100 km).",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}| neighborhood* |
| string |
| parkingSpaces | integer |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"department",
"neighborhood",
"type",
"bedrooms",
"bathrooms",
"areaM2"
],
"properties": {
"type": {
"enum": [
"apartamento",
"casa"
],
"type": "string"
},
"areaM2": {
"type": "number",
"maximum": 450,
"minimum": 20,
"description": "Superficie en m²."
},
"bedrooms": {
"type": "integer",
"maximum": 10,
"minimum": 0
},
"currency": {
"enum": [
"UYU",
"USD"
],
"type": "string"
},
"areaBasis": {
"enum": [
"built",
"total"
],
"type": "string",
"description": "built = construida (default), total = con balcones/terrazas."
},
"bathrooms": {
"type": "integer",
"maximum": 10,
"minimum": 1
},
"department": {
"type": "string",
"maxLength": 40,
"description": "Departamento de Uruguay con tildes, p. ej. \"Montevideo\", \"Canelones\", \"Maldonado\", \"Colonia\"."
},
"askingPrice": {
"type": "number",
"description": "Precio pedido a evaluar, en la moneda indicada.",
"exclusiveMinimum": 0
},
"neighborhood": {
"type": "string",
"maxLength": 60
},
"parkingSpaces": {
"type": "integer",
"maximum": 10,
"minimum": 0
}
},
"additionalProperties": false
}| yearMin |
| integer |
| department | string |
| priceMaxUsd | number | Precio máximo en dólares. |
| transmission | string |
| maxLitersPer100Km | number | Consumo máximo (litros cada 100 km). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"body": {
"enum": [
"sedan",
"hatchback",
"suv",
"pickup",
"rural",
"furgon",
"monovolumen",
"coupe",
"cabriolet"
],
"type": "string",
"description": "Carrocería: sedan, hatchback, suv, pickup, rural (familiar), furgon, monovolumen, coupe, cabriolet."
},
"fuel": {
"enum": [
"nafta",
"diesel",
"electrico",
"hibrido",
"gnc"
],
"type": "string"
},
"page": {
"type": "integer",
"maximum": 200,
"minimum": 1
},
"sort": {
"enum": [
"gap",
"price_asc",
"year_desc",
"km_asc",
"consumption_asc"
],
"type": "string"
},
"tier": {
"enum": [
"strict",
"exploratory"
],
"type": "string"
},
"brand": {
"type": "string",
"maxLength": 40
},
"kmMax": {
"type": "integer",
"exclusiveMinimum": 0
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1
},
"seller": {
"enum": [
"dealer",
"private"
],
"type": "string",
"description": "dealer = automotora, private = particular."
},
"yearMin": {
"type": "integer",
"maximum": 2100,
"minimum": 1950
},
"department": {
"enum": [
"Artigas",
"Canelones",
"Cerro Largo",
"Colonia",
"Durazno",
"Flores",
"Florida",
"Lavalleja",
"Maldonado",
"Montevideo",
"Paysandú",
"Río Negro",
"Rivera",
"Rocha",
"Salto",
"San José",
"Soriano",
"Tacuarembó",
"Treinta y Tres"
],
"type": "string"
},
"priceMaxUsd": {
"type": "number",
"maximum": 1000000,
"description": "Precio máximo en dólares.",
"exclusiveMinimum": 0
},
"transmission": {
"enum": [
"manual",
"automatica"
],
"type": "string"
},
"maxLitersPer100Km": {
"type": "number",
"maximum": 30,
"description": "Consumo máximo (litros cada 100 km).",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}| confidence |
| string |
| department | string | Departamento de Uruguay con tildes, p. ej. "Montevideo", "Canelones", "Maldonado", "Colonia". |
| neighborhood | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"sort": {
"enum": [
"evidence",
"discount",
"price",
"recent"
],
"type": "string"
},
"type": {
"enum": [
"apartamento",
"casa"
],
"type": "string"
},
"signal": {
"enum": [
"total_price",
"price_per_m2"
],
"type": "string"
},
"perPage": {
"type": "integer",
"maximum": 24,
"minimum": 1
},
"bedrooms": {
"type": "integer",
"maximum": 8,
"minimum": 0,
"description": "Dormitorios exactos."
},
"evidence": {
"enum": [
"standard",
"exploratory"
],
"type": "string"
},
"maxPrice": {
"type": "number",
"description": "Tope del precio comparado: pesos por mes en alquiler (alquiler + gastos comunes), dólares en venta.",
"exclusiveMinimum": 0
},
"operation": {
"enum": [
"rent",
"sale"
],
"type": "string",
"description": "rent = alquiler (default), sale = venta."
},
"confidence": {
"enum": [
"supported",
"limited"
],
"type": "string"
},
"department": {
"type": "string",
"maxLength": 40,
"description": "Departamento de Uruguay con tildes, p. ej. \"Montevideo\", \"Canelones\", \"Maldonado\", \"Colonia\"."
},
"neighborhood": {
"type": "string",
"maxLength": 60
}
},
"additionalProperties": false
}| furnished | boolean | true = sólo los que el aviso dice amueblados; false = sólo los que dice sin muebles. |
| department | string | Departamento (default Montevideo). |
| savingsUyu | number | Ahorro mensual que quieren mantener. |
| minBedrooms | integer |
| transportUyu | number | Gasto mensual en transporte. |
| onlyPreferred | boolean | true = sólo los barrios preferidos; false = los prefiere pero no descarta otros. |
| includeReported | boolean | Incluir avisos reportados como no disponibles (default no). |
| housingBudgetUyu* | number | Presupuesto mensual para vivienda en pesos (alquiler + gastos comunes). |
| otherExpensesUyu | number | Otros gastos fijos mensuales del hogar en pesos. |
| includeOverBudget | boolean | Incluir los que se pasan del presupuesto (marcados). |
| excludedNeighborhoods | array | Barrios a descartar. |
| preferredNeighborhoods | array | Barrios preferidos ("Pocitos" o "Pocitos, Montevideo"). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"people",
"housingBudgetUyu"
],
"properties": {
"pets": {
"type": "boolean",
"description": "Necesitan que acepte mascotas."
},
"limit": {
"type": "integer",
"maximum": 24,
"minimum": 1,
"description": "Resultados a devolver (default 10)."
},
"types": {
"type": "array",
"items": {
"enum": [
"apartamento",
"casa"
],
"type": "string"
},
"maxItems": 2
},
"people": {
"type": "array",
"items": {
"type": "object",
"required": [
"label"
],
"properties": {
"label": {
"type": "string",
"maxLength": 40,
"description": "\"Ana\", \"Pareja\", \"Hijo\"…"
},
"incomeUyu": {
"type": "number",
"minimum": 0,
"description": "Ingreso mensual líquido en pesos (0 si no tiene)."
},
"remoteDays": {
"type": "integer",
"maximum": 7,
"minimum": 0,
"description": "Días de home office por semana."
},
"destinations": {
"type": "array",
"items": {
"type": "object",
"required": [
"label"
],
"properties": {
"lat": {
"type": "number",
"maximum": -30,
"minimum": -35.5
},
"lng": {
"type": "number",
"maximum": -53,
"minimum": -58.6
},
"kind": {
"enum": [
"work",
"study",
"other"
],
"type": "string"
},
"mode": {
"enum": [
"walking",
"bicycling",
"transit",
"driving"
],
"type": "string",
"description": "Cómo va (default transit = ómnibus)."
},
"label": {
"type": "string",
"maxLength": 40,
"description": "Nombre corto: \"Trabajo\", \"Facultad\", \"Colegio de los chicos\"."
},
"maxKm": {
"type": "number",
"maximum": 300,
"description": "Distancia máxima aceptable en línea recta. Default según modo: caminando 2, bici 6, ómnibus 8, auto 15 km.",
"exclusiveMinimum": 0
},
"address": {
"type": "string",
"maxLength": 180,
"description": "Dirección, esquina o nombre del lugar (\"Facultad de Ingeniería\", \"el Centro\"); se geocodifica sola. Alternativa: lat/lng."
},
"daysPerWeek": {
"type": "integer",
"maximum": 7,
"minimum": 0,
"description": "Días por semana que va (default 5)."
}
},
"additionalProperties": false
},
"maxItems": 4
}
},
"additionalProperties": false
},
"maxItems": 8,
"minItems": 1
},
"minArea": {
"type": "number",
"minimum": 0,
"description": "m² mínimos."
},
"parking": {
"type": "boolean"
},
"priority": {
"enum": [
"balanced",
"budget",
"commute"
],
"type": "string",
"description": "Qué pesa más: equilibrado (default), precio o cercanía."
},
"furnished": {
"type": "boolean",
"description": "true = sólo los que el aviso dice amueblados; false = sólo los que dice sin muebles."
},
"department": {
"type": "string",
"maxLength": 40,
"description": "Departamento (default Montevideo)."
},
"savingsUyu": {
"type": "number",
"minimum": 0,
"description": "Ahorro mensual que quieren mantener."
},
"minBedrooms": {
"type": "integer",
"maximum": 20,
"minimum": 0
},
"transportUyu": {
"type": "number",
"minimum": 0,
"description": "Gasto mensual en transporte."
},
"onlyPreferred": {
"type": "boolean",
"description": "true = sólo los barrios preferidos; false = los prefiere pero no descarta otros."
},
"includeReported": {
"type": "boolean",
"description": "Incluir avisos reportados como no disponibles (default no)."
},
"housingBudgetUyu": {
"type": "number",
"description": "Presupuesto mensual para vivienda en pesos (alquiler + gastos comunes).",
"exclusiveMinimum": 0
},
"otherExpensesUyu": {
"type": "number",
"minimum": 0,
"description": "Otros gastos fijos mensuales del hogar en pesos."
},
"includeOverBudget": {
"type": "boolean",
"description": "Incluir los que se pasan del presupuesto (marcados)."
},
"excludedNeighborhoods": {
"type": "array",
"items": {
"type": "string",
"maxLength": 60
},
"maxItems": 20,
"description": "Barrios a descartar."
},
"preferredNeighborhoods": {
"type": "array",
"items": {
"type": "string",
"maxLength": 60
},
"maxItems": 20,
"description": "Barrios preferidos (\"Pocitos\" o \"Pocitos, Montevideo\")."
}
},
"additionalProperties": false
}| string |
| Plazo del contrato. "invernal" = alquiler de invierno (marzo a diciembre, sobre todo en la costa), con precio mensual; "anual" = todo menos los que SÓLO ofrecen invierno (incluye los que no aclaran, que son el alquiler común). Los de temporada de verano (por noche o quincena) no se publican. |
| text | string | Texto libre en título y descripción, p. ej. "terraza", "patio". |
| types | array | "vivienda" = apartamento+casa+habitación. Default: todos los tipos (incluye locales y oficinas), así que para vivir pasá ["vivienda"] o ["apartamento"]. |
| agency | string | Clave de una inmobiliaria. |
| source | string | Un solo portal. |
| areaMax | number | m² máximos. |
| areaMin | number | m² mínimos. |
| parking | boolean | Con garaje. |
| perPage | integer | Resultados a devolver (default 10). |
| bedrooms | integer | Dormitorios mínimos (0 = monoambiente). Con bedroomsExact=true, exactos. |
| amenities | array | Comodidades que debe tener (todas). |
| bathrooms | integer | Baños mínimos. |
| furnished | boolean | true = sólo avisos que dicen amueblado (incluye semi amueblado); false = sólo los que dicen sin muebles. Los que no lo aclaran quedan afuera con cualquiera de los dos. |
| department | string | Departamento de Uruguay con tildes, p. ej. "Montevideo", "Canelones", "Maldonado", "Colonia". |
| guarantees | array | Garantías aceptadas (cualquiera de ellas): anda, contaduria (Contaduría General de la Nación), aseguradora (Porto, Sura, Mapfre…), propietaria (fiador propietario), deposito, bhu, aConvenir. |
| ownerDirect | boolean | Sólo dueño directo (sin inmobiliaria). |
| priceMaxUyu | number | Alquiler máximo en PESOS (sin gastos comunes). Los avisos en dólares se comparan convertidos. |
| priceMinUyu | number | Alquiler mínimo en PESOS (sin gastos comunes). Si la persona habla en dólares, convertí (1 USD ≈ 41 UYU, o usá convert). |
| excludeTypes | array | Tipos a dejar afuera; se restan de types (["vivienda"] sin ["habitacion"] = casas y apartamentos). |
| excludeWords | array | Palabras que el TÍTULO no puede tener, sin importar acentos: ["temporario", "pension"]. |
| hideReported | string | Avisos que la comunidad reportó como no disponibles. Default "multiple" (oculta con 2+ reportes). |
| priceDropped | boolean | Sólo viviendas cuyo alquiler pedido BAJÓ en los últimos 30 días (entre 1 % y 50 %, y el aviso sigue pidiendo el precio bajado). Cada resultado dice cuánto bajó, desde cuánto y cuándo. |
| bedroomsExact | boolean |
| monthlyMaxUyu | number | Tope del TOTAL mensual en pesos (alquiler + gastos comunes). Excluye avisos que no publican gastos comunes. |
| neighborhoods | array | Barrios como aparecen en los avisos: "Pocitos", "Cordón", "Punta Carretas", "Malvín"… |
| excludeSources | array | Portales a ocultar. Si la misma vivienda está en otro portal, sigue apareciendo con ese aviso. |
| expensesMaxUyu | number | Gastos comunes máximos en pesos. Excluye avisos que no los publican. |
| listedCurrency | string | Sólo avisos publicados en esa moneda. NO cambia la moneda de los topes: priceMinUyu/priceMaxUyu son siempre pesos. |
| postedWithinDays | integer | Sólo avisos publicados (o vistos por primera vez, si el portal no da la fecha) en los últimos N días: 1 = desde ayer, 7 = la última semana. |
| hidePerNightPrices | boolean | Ocultar avisos en dólares con un precio muy por debajo de lo más barato de su zona: casi siempre tarifas por noche de temporada (Punta del Este, José Ignacio). Sin esto se muestran marcados con ⚠. |
| roomsAndResidences | string | Habitaciones y residencias (se alquila una cama o un cuarto: residencias estudiantiles, pensiones, cuartos compartidos). "hide" las saca; "only" deja sólo ésas. |
| neighborhoodQuality | array | Barrios que están entre los mejores en: denuncias (menos delitos), agua (menos cortes), luz, saneamiento, limpieza, alumbrado. |
| excludeNeighborhoods | array | Barrios a dejar afuera: "Centro", "Cerro"… |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"near": {
"type": "object",
"properties": {
"lat": {
"type": "number",
"maximum": -30,
"minimum": -35.5
},
"lng": {
"type": "number",
"maximum": -53,
"minimum": -58.6
},
"label": {
"type": "string",
"maxLength": 60,
"description": "Nombre del punto, p. ej. \"Trabajo\"."
},
"address": {
"type": "string",
"maxLength": 180,
"description": "Dirección, esquina, barrio o nombre de lugar en Uruguay: \"Bulevar Artigas 1234\", \"18 de Julio y Ejido\", \"Montevideo Shopping\"."
},
"radiusKm": {
"type": "number",
"maximum": 30,
"description": "Quedarse sólo con viviendas a esta distancia en línea recta (km). Sin radio, sólo ordena por cercanía.",
"exclusiveMinimum": 0
}
},
"description": "Buscar cerca de un punto: ordena por distancia y, con radiusKm, filtra. Sólo cuentan avisos con ubicación propia.",
"additionalProperties": false
},
"page": {
"type": "integer",
"maximum": 200,
"minimum": 1
},
"pets": {
"type": "boolean",
"description": "Sólo avisos que aceptan mascotas explícitamente."
},
"sort": {
"enum": [
"recientes",
"precio",
"precio-desc",
"total",
"precio-m2",
"metros",
"baja",
"distancia"
],
"type": "string",
"description": "recientes (default), precio, precio-desc, total (menor total mensual), precio-m2, metros, baja (mayor baja de precio de los últimos 30 días primero). Con near se ordena por distancia."
},
"term": {
"enum": [
"anual",
"invernal"
],
"type": "string",
"description": "Plazo del contrato. \"invernal\" = alquiler de invierno (marzo a diciembre, sobre todo en la costa), con precio mensual; \"anual\" = todo menos los que SÓLO ofrecen invierno (incluye los que no aclaran, que son el alquiler común). Los de temporada de verano (por noche o quincena) no se publican."
},
"text": {
"type": "string",
"maxLength": 80,
"description": "Texto libre en título y descripción, p. ej. \"terraza\", \"patio\"."
},
"types": {
"type": "array",
"items": {
"enum": [
"vivienda",
"apartamento",
"casa",
"habitacion",
"local",
"oficina",
"garaje",
"terreno",
"otro"
],
"type": "string"
},
"maxItems": 5,
"description": "\"vivienda\" = apartamento+casa+habitación. Default: todos los tipos (incluye locales y oficinas), así que para vivir pasá [\"vivienda\"] o [\"apartamento\"]."
},
"agency": {
"type": "string",
"maxLength": 80,
"description": "Clave de una inmobiliaria."
},
"source": {
"enum": [
"mercadolibre",
"infocasas",
"facebook",
"elpais",
"casasweb",
"tiktok",
"instagram",
"facebookreels",
"alquileresuy"
],
"type": "string",
"description": "Un solo portal."
},
"areaMax": {
"type": "number",
"description": "m² máximos.",
"exclusiveMinimum": 0
},
"areaMin": {
"type": "number",
"description": "m² mínimos.",
"exclusiveMinimum": 0
},
"parking": {
"type": "boolean",
"description": "Con garaje."
},
"perPage": {
"type": "integer",
"maximum": 24,
"minimum": 1,
"description": "Resultados a devolver (default 10)."
},
"bedrooms": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "Dormitorios mínimos (0 = monoambiente). Con bedroomsExact=true, exactos."
},
"amenities": {
"type": "array",
"items": {
"enum": [
"gimnasio",
"piscina",
"parrillero",
"ascensor",
"aire",
"balcon",
"lavadero",
"calefaccion",
"jardin",
"sauna",
"salon"
],
"type": "string"
},
"maxItems": 11,
"description": "Comodidades que debe tener (todas)."
},
"bathrooms": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Baños mínimos."
},
"furnished": {
"type": "boolean",
"description": "true = sólo avisos que dicen amueblado (incluye semi amueblado); false = sólo los que dicen sin muebles. Los que no lo aclaran quedan afuera con cualquiera de los dos."
},
"department": {
"type": "string",
"maxLength": 40,
"description": "Departamento de Uruguay con tildes, p. ej. \"Montevideo\", \"Canelones\", \"Maldonado\", \"Colonia\"."
},
"guarantees": {
"type": "array",
"items": {
"enum": [
"anda",
"contaduria",
"aseguradora",
"propietaria",
"deposito",
"bhu",
"aConvenir"
],
"type": "string"
},
"maxItems": 7,
"description": "Garantías aceptadas (cualquiera de ellas): anda, contaduria (Contaduría General de la Nación), aseguradora (Porto, Sura, Mapfre…), propietaria (fiador propietario), deposito, bhu, aConvenir."
},
"ownerDirect": {
"type": "boolean",
"description": "Sólo dueño directo (sin inmobiliaria)."
},
"priceMaxUyu": {
"type": "number",
"description": "Alquiler máximo en PESOS (sin gastos comunes). Los avisos en dólares se comparan convertidos.",
"exclusiveMinimum": 0
},
"priceMinUyu": {
"type": "number",
"description": "Alquiler mínimo en PESOS (sin gastos comunes). Si la persona habla en dólares, convertí (1 USD ≈ 41 UYU, o usá convert).",
"exclusiveMinimum": 0
},
"excludeTypes": {
"type": "array",
"items": {
"enum": [
"vivienda",
"apartamento",
"casa",
"habitacion",
"local",
"oficina",
"garaje",
"terreno",
"otro"
],
"type": "string"
},
"maxItems": 5,
"description": "Tipos a dejar afuera; se restan de types ([\"vivienda\"] sin [\"habitacion\"] = casas y apartamentos)."
},
"excludeWords": {
"type": "array",
"items": {
"type": "string",
"maxLength": 40,
"minLength": 2
},
"maxItems": 10,
"description": "Palabras que el TÍTULO no puede tener, sin importar acentos: [\"temporario\", \"pension\"]."
},
"hideReported": {
"enum": [
"none",
"any",
"multiple"
],
"type": "string",
"description": "Avisos que la comunidad reportó como no disponibles. Default \"multiple\" (oculta con 2+ reportes)."
},
"priceDropped": {
"type": "boolean",
"description": "Sólo viviendas cuyo alquiler pedido BAJÓ en los últimos 30 días (entre 1 % y 50 %, y el aviso sigue pidiendo el precio bajado). Cada resultado dice cuánto bajó, desde cuánto y cuándo."
},
"bedroomsExact": {
"type": "boolean"
},
"monthlyMaxUyu": {
"type": "number",
"description": "Tope del TOTAL mensual en pesos (alquiler + gastos comunes). Excluye avisos que no publican gastos comunes.",
"exclusiveMinimum": 0
},
"neighborhoods": {
"type": "array",
"items": {
"type": "string",
"maxLength": 60
},
"maxItems": 20,
"description": "Barrios como aparecen en los avisos: \"Pocitos\", \"Cordón\", \"Punta Carretas\", \"Malvín\"…"
},
"excludeSources": {
"type": "array",
"items": {
"enum": [
"mercadolibre",
"infocasas",
"facebook",
"elpais",
"casasweb",
"tiktok",
"instagram",
"facebookreels",
"alquileresuy"
],
"type": "string"
},
"maxItems": 9,
"description": "Portales a ocultar. Si la misma vivienda está en otro portal, sigue apareciendo con ese aviso."
},
"expensesMaxUyu": {
"type": "number",
"minimum": 0,
"description": "Gastos comunes máximos en pesos. Excluye avisos que no los publican."
},
"listedCurrency": {
"enum": [
"UYU",
"USD"
],
"type": "string",
"description": "Sólo avisos publicados en esa moneda. NO cambia la moneda de los topes: priceMinUyu/priceMaxUyu son siempre pesos."
},
"postedWithinDays": {
"type": "integer",
"maximum": 90,
"minimum": 1,
"description": "Sólo avisos publicados (o vistos por primera vez, si el portal no da la fecha) en los últimos N días: 1 = desde ayer, 7 = la última semana."
},
"hidePerNightPrices": {
"type": "boolean",
"description": "Ocultar avisos en dólares con un precio muy por debajo de lo más barato de su zona: casi siempre tarifas por noche de temporada (Punta del Este, José Ignacio). Sin esto se muestran marcados con ⚠."
},
"roomsAndResidences": {
"enum": [
"hide",
"only"
],
"type": "string",
"description": "Habitaciones y residencias (se alquila una cama o un cuarto: residencias estudiantiles, pensiones, cuartos compartidos). \"hide\" las saca; \"only\" deja sólo ésas."
},
"neighborhoodQuality": {
"type": "array",
"items": {
"enum": [
"denuncias",
"agua",
"luz",
"saneamiento",
"limpieza",
"alumbrado"
],
"type": "string"
},
"maxItems": 6,
"description": "Barrios que están entre los mejores en: denuncias (menos delitos), agua (menos cortes), luz, saneamiento, limpieza, alumbrado."
},
"excludeNeighborhoods": {
"type": "array",
"items": {
"type": "string",
"maxLength": 60
},
"maxItems": 20,
"description": "Barrios a dejar afuera: \"Centro\", \"Cerro\"…"
}
},
"additionalProperties": false
}| doors | integer |
| kmMax | integer |
| limit | integer | Resultados a devolver (default 10). |
| model | string | Modelo: "Gol", "Onix", "Hilux" (requiere brand). |
| seller | string | dealer = automotora, private = particular. |
| source | string | mercadolibre, facebook, duenodirecto, clasiautos, julio, shoppingdeautos, carper, fidocar, motorlider, carone. |
| yearMax | integer |
| yearMin | integer |
| priceDrop | boolean | Sólo los que bajaron de precio. |
| sinceDays | integer | Publicados en los últimos N días. |
| department | string |
| priceMaxUsd | number | Precio máximo en dólares. |
| priceMinUsd | number |
| transmission | string |
| noDeclaredRisk | boolean | Excluir los que declaran deuda, choque, papeles, recupero, etc. |
| maxLitersPer100Km | number | Consumo máximo (litros cada 100 km). |
| onlyOpportunities | boolean | Sólo pedidos por debajo de autos iguales. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"body": {
"enum": [
"sedan",
"hatchback",
"suv",
"pickup",
"rural",
"furgon",
"monovolumen",
"coupe",
"cabriolet"
],
"type": "string",
"description": "Carrocería: sedan, hatchback, suv, pickup, rural (familiar), furgon, monovolumen, coupe, cabriolet."
},
"fuel": {
"enum": [
"nafta",
"diesel",
"electrico",
"hibrido",
"gnc"
],
"type": "string"
},
"page": {
"type": "integer",
"maximum": 500,
"minimum": 1
},
"sort": {
"enum": [
"recent",
"price_asc",
"price_desc",
"km_asc",
"year_desc",
"consumption_asc"
],
"type": "string"
},
"text": {
"type": "string",
"maxLength": 80,
"description": "Texto libre: \"4x4\", \"full\", \"cuero\"."
},
"brand": {
"type": "string",
"maxLength": 40,
"description": "Marca: \"Volkswagen\", \"Chevrolet\", \"Toyota\"…"
},
"color": {
"type": "string",
"maxLength": 20,
"description": "blanco, gris, plata, rojo, azul, negro, verde, celeste, beige, marron, dorado, bordo, naranja, amarillo, violeta."
},
"doors": {
"type": "integer",
"maximum": 5,
"minimum": 2
},
"kmMax": {
"type": "integer",
"exclusiveMinimum": 0
},
"limit": {
"type": "integer",
"maximum": 24,
"minimum": 1,
"description": "Resultados a devolver (default 10)."
},
"model": {
"type": "string",
"maxLength": 60,
"description": "Modelo: \"Gol\", \"Onix\", \"Hilux\" (requiere brand)."
},
"seller": {
"enum": [
"dealer",
"private"
],
"type": "string",
"description": "dealer = automotora, private = particular."
},
"source": {
"type": "string",
"maxLength": 30,
"description": "mercadolibre, facebook, duenodirecto, clasiautos, julio, shoppingdeautos, carper, fidocar, motorlider, carone."
},
"yearMax": {
"type": "integer",
"maximum": 2100,
"minimum": 1950
},
"yearMin": {
"type": "integer",
"maximum": 2100,
"minimum": 1950
},
"priceDrop": {
"type": "boolean",
"description": "Sólo los que bajaron de precio."
},
"sinceDays": {
"type": "integer",
"maximum": 365,
"minimum": 1,
"description": "Publicados en los últimos N días."
},
"department": {
"enum": [
"Artigas",
"Canelones",
"Cerro Largo",
"Colonia",
"Durazno",
"Flores",
"Florida",
"Lavalleja",
"Maldonado",
"Montevideo",
"Paysandú",
"Río Negro",
"Rivera",
"Rocha",
"Salto",
"San José",
"Soriano",
"Tacuarembó",
"Treinta y Tres"
],
"type": "string"
},
"priceMaxUsd": {
"type": "number",
"maximum": 1000000,
"description": "Precio máximo en dólares.",
"exclusiveMinimum": 0
},
"priceMinUsd": {
"type": "number",
"exclusiveMinimum": 0
},
"transmission": {
"enum": [
"manual",
"automatica"
],
"type": "string"
},
"noDeclaredRisk": {
"type": "boolean",
"description": "Excluir los que declaran deuda, choque, papeles, recupero, etc."
},
"maxLitersPer100Km": {
"type": "number",
"maximum": 30,
"description": "Consumo máximo (litros cada 100 km).",
"exclusiveMinimum": 0
},
"onlyOpportunities": {
"type": "boolean",
"description": "Sólo pedidos por debajo de autos iguales."
}
},
"additionalProperties": false
}