Datos y eventos

Catálogo público

Lee los proyectos e inmuebles que la organización publica en YAVE para construir un sitio web a la medida, sin duplicar el inventario. Lo que el equipo actualiza en el CRM (precios, disponibilidad, fotos) se ve en tu sitio al instante.

Requisito

La organización debe tener activo su sitio público en Configuración → Sitio Web. Si no lo está, todos estos endpoints responden 404. No llevan credencial: solo exponen lo que la organización ya decidió mostrar.

Organización#

GET/public/organizations/{slug}Público

Nombre, logo, colores, datos de contacto (correo, teléfono, WhatsApp), redes sociales, dirección y la configuración del sitio. Úsalo para el encabezado y el pie de tu página.

Inmuebles#

GET/public/organizations/{slug}/propertiesPúblico

Inmuebles sueltos (que no pertenecen a un proyecto) en estado disponible o reservado.

pagenumber
Página, desde 1.
limitnumber
Resultados por página. Por defecto 12, máximo 50.
listingTypeSALE | RENT
Venta o arriendo.
propertyTypeenum
APARTMENT, HOUSE, COMMERCIAL, LAND, OFFICE, WAREHOUSE.
citystring
Ciudad (contiene, sin distinguir mayúsculas).
minPrice · maxPricenumber
Rango de precio.
bedrooms · bathrooms · parkingnumber
Mínimo de alcobas, baños y parqueaderos.
minArea · maxAreanumber
Rango de área.
searchstring
Busca en título, descripción, barrio y código.
Respuesta
{
  "data": [
    {
      "id": "0f5c…",
      "code": "APT-204",
      "title": "Apartamento con vista al mar",
      "propertyType": "APARTMENT",
      "status": "AVAILABLE",
      "listingType": "SALE",
      "price": 480000000,
      "currency": "COP",
      "city": "Cartagena",
      "neighborhood": "Bocagrande",
      "bedrooms": 3,
      "bathrooms": 2,
      "area": 96,
      "areaUnit": "m2",
      "parkingSpaces": 1,
      "latitude": 10.39,
      "longitude": -75.55,
      "image": "https://…/foto-principal.jpg",
      "externalUrl": null
    }
  ],
  "pagination": { "page": 1, "limit": 12, "total": 37, "totalPages": 4 },
  "filters": {
    "cities": [{ "city": "Cartagena", "count": 21 }],
    "propertyTypes": [{ "type": "APARTMENT", "count": 30 }],
    "priceRange": { "min": 180000000, "max": 1200000000 }
  }
}

filters trae los valores disponibles para que armes los selectores de búsqueda sin adivinar.

GET/public/organizations/{slug}/properties/{propertyId}Público

Detalle completo del inmueble: descripción, galería y características.

Proyectos#

GET/public/organizations/{slug}/projectsPúblico

Proyectos activos con su precio desde, unidades disponibles y estado derivado (CONSTRUCTION, COMPLETED o SOLD_OUT). Filtros: page, limit, city, search. Requiere que la organización muestre proyectos en su sitio.

GET/public/organizations/{slug}/projects/{projectId}Público

Detalle del proyecto: descripción, galería, amenidades, ubicación y unidades.

Formulario de contacto#

POST/public/organizations/{slug}/contactPúblico · 5/min por IP

Crea un lead desde tu sitio a la medida, asociado opcionalmente al inmueble o proyecto que la persona estaba viendo. Requiere que el formulario de contacto del sitio esté activo.

namestringrequerido
Entre 2 y 200 caracteres.
emailstring
Correo válido.
phonestring
Hasta 30 caracteres; se normaliza al formato internacional.
messagestring
Hasta 2.000 caracteres.
propertyId · projectIduuid
Inmueble o proyecto de interés.
utmSource · utmMedium · utmCampaign · utmContent · utmTermstring
Campaña de la visita.
POST https://api.yavehome.com/api/v1/public/organizations/mi-constructora/contact
Content-Type: application/json

{
  "name": "Laura Gómez",
  "phone": "+573001234567",
  "email": "[email protected]",
  "message": "Quiero agendar una visita",
  "projectId": "3c9e0b8a-1f2d-4e5a-9b7c-6d4e2f1a0b9c",
  "utmSource": "google",
  "utmCampaign": "torre-2"
}
Si necesitas campos propios, consentimientos o reportar conversiones a Meta y Google, usa un formulario de YAVE por API en lugar de este endpoint.

Buenas prácticas#

  • Cachea los listados unos minutos en tu servidor o usa la regeneración incremental de tu framework: el catálogo cambia poco y los endpoints públicos tienen límite por IP.
  • Llama desde tu servidor. Desde el navegador solo funcionan los dominios autorizados por YAVE (por ejemplo, el dominio propio de la organización configurado en el CRM).
  • Usa id como llave estable y code para mostrar al usuario.

¿No quieres programar el sitio?

YAVE ya publica un sitio de la organización con este mismo catálogo, y admite dominio propio. Se configura en Configuración → Sitio Web.