Publicar Inmueble
Publica un nuevo inmueble en la plataforma.
Ambientes Disponibles
| Ambiente | URL Base |
|---|---|
| Desarrollo | https://ptec-core-dev.metrocuadrado.com/rest-api/realestate/publish |
| Producción | https://www.metrocuadrado.com/rest-api/realestate/publish |
Parámetros
- Headers
- Body
- Amenities
| Header | Valor | Requerido | Descripción |
|---|---|---|---|
| Content-Type | application/json | Sí | Tipo de contenido |
| x-api-key | string | Sí | API key de autenticación |
| token | string | Sí | Token JWT de acceso |
| Campo | Tipo | Requerido | Descripción | Ejemplo |
|---|---|---|---|---|
| realEstateType | number | Sí | Tipo de inmueble | 1 |
| realEstateOffer | number | Sí | Tipo de oferta | 2 |
| price | number | Sí | Precio del inmueble (mín: 100.000, máx: 9.999.999.999.999) | 9000000 |
| city | number | Sí | Código de ciudad (Integer) | 1 |
| administration | number | No | Administración (mín: 10.000, máx: 9.999.999.999.999) | 1000000 |
| images | array | Sí | URLs de imágenes | ["https://googleusercontent.com"] |
| comments | string | Sí | Comentarios (máx. 1000 caracteres) | "Lorem ipsum dolor sit amet..." |
| stratum | number | Sí | Estrato (requerido para tipos residenciales) | 2 |
| address | string | No | Dirección (máx. 100 caracteres) | "TV 77 I 71 A 63 SUR" |
| neighborhood | string | Sí | Barrio | "JOSE MARIA CARBONEL" |
| agentId | number | No | ID del agente | 340716 |
| latitude | string | No | Latitud (-90 a 90) | "4.60059" |
| longitude | string | No | Longitud (-180 a 180) | "-74.19626" |
| video | string | No | URL de video YouTube (solo YouTube soportado) | "https://youtu.be/0Gy0xdmMpZY" |
| reference1 | string | No | Referencia del inmueble (máx. 50 caracteres) | "REF-001" |
| responseUrl | string | Sí | URL de respuesta | "https://5kpfbdi70i.execute-api.us-east-1.amazonaws.com/default/callback-express" |
| amenities | object | Sí | Amenidades del inmueble | Ver ejemplo completo en el tester |
Apartamento
| Campo | Tipo | Obligatorio | Valores Permitidos |
|---|---|---|---|
| builtTime Tiempo de construido | String | Sí | Remodelado|Entre 0 y 5 años|Entre 5 y 10 años|Entre 10 y 20 años|Más de 20 años |
| rooms Habitaciones | Integer/String | Sí | 1-20 |
| bathrooms Baños | Integer/String | Sí | 1-20 |
| garages Parqueadero | Integer | Sí | 0-100 |
| builtArea Área construida | Double | Sí | 1-9999999.99 |
| area Área privada | Double | Sí | 1-9999999.99 |
| onMainStreet Sobre vía principal | Boolean | No | true|false |
| onSecondaryRoad Sobre vía secundaria | Boolean | No | true|false |
| nearbySupermarket Cerca Supermercados | Boolean | No | true|false |
| nearbyShoppingCenter Cerca Centros Comerciales | Boolean | No | true|false |
| nearbyPark Cerca Parques | Boolean | No | true|false |
| nearbyPublicTransport Cerca Transporte Público | Boolean | No | true|false |
| nearbySchoolCollege Cerca Colegios / Universidades | Boolean | No | true|false |
| woodenFloor Piso en madera | Boolean | No | true|false |
| carpetedFloor Piso en alfombra | Boolean | No | true|false |
| tiledFloor Piso en baldosa | Boolean | No | true|false |
| porcelainTiledFloor Piso en porcelanato | Boolean | No | true|false |
| fullKitchen Cocina integral | Boolean | No | true|false |
| americanKitchen Cocina Tipo Americano | Boolean | No | true|false |
| surveillanceType Vigilancia | String | No | 0|12hrs|24hrs |
| surveillance Vigilancia | Boolean | No | true|false |
| cctv Circuito cerrado de TV | Boolean | No | true|false |
| alarm Alarma | Boolean | No | true|false |
| gateHouse Portería | Boolean | No | true|false |
| heater Con calefacción | Boolean | No | true|false |
| handicappedAccesible Acceso para discapacitados | Boolean | No | true|false |
| greenArea Zonas verdes | Boolean | No | true|false |
| childrenArea Zona para niños | Boolean | No | true|false |
| bbqArea Zona de BBQ | Boolean | No | true|false |
| communityHall Salón comunal | Boolean | No | true|false |
| coveredGarage Parqueadero cubierto | Boolean | No | true|false |
| gym Gimnasio | Boolean | No | true|false |
| petsAllowed Se Permiten Mascotas | Boolean | No | true|false |
| smokingAllowed Se Permite Fumar | Boolean | No | true|false |
| serviceBathroom Baño de Servicio | Boolean | No | true|false |
| visitorParkingLot Parqueadero visitantes | Boolean | No | true|false |
| utilityRoom Depósito o cuarto útil | Boolean | No | true|false |
| residentialZone Zona Residencial | Boolean | No | true|false |
| shoppingZone Zona Comercial | Boolean | No | true|false |
| view Vista | String | No | Interior|Exterior |
| negotiable Negociar precio | Boolean | No | true|false |
| furnished Con muebles | Boolean | No | true|false |
| floorNumber Número de piso | Integer | No | 1-999 |
| airConditioned Aire acondicionado | Boolean | No | true|false |
| elevator Ascensor | Boolean | No | true|false |
| pool Piscina | Boolean | No | true|false |
| deposits Depósito | Integer | No | 1-20 |
| terrace Con Terraza | Boolean | No | true|false |
| lifts Número de Ascensores | Integer | No | 0-4 |
| inBuilding Ubicado en Edificio | Boolean | No | true|false |
Reglas de Validación
Esta sección documenta las validaciones que aplica el API al recibir una solicitud de publicación. Conocer estas reglas te ayudará a evitar errores de validación.
Arquitectura de Validación
El API utiliza dos tipos de validaciones:
-
Validaciones fijas: Campos como
price,stratum,imagesycommentstienen reglas de validación predefinidas que permanecen constantes. -
Validaciones configurables: Campos de
amenitiescomobathrooms,rooms,garagesyarease validan contra un catálogo configurable. Esto permite actualizar los valores permitidos según las necesidades del negocio.
Las validaciones configurables pueden ser:
- Valores discretos:
1|2|3|4— solo esos valores exactos son permitidos - Rangos numéricos:
0-100— cualquier valor dentro del rango - Expresiones regex: Para validaciones más complejas
Campos Principales
| Campo | Tipo | Validación | Mensaje de Error |
|---|---|---|---|
realEstateType | number | Valores: 1=Apartamento, 2=Casa, 3=Oficina, 4=Casa lote, 5=Consultorio, 6=Local Comercial, 7=Finca, 8=Bodega, 9=Edificio de Apartamentos, 10=Edificio de Oficinas, 14=Apartaestudio, 15=Lote. Ver tabla completa | "El código de tipo de inmueble no es válido" |
realEstateOffer | number | Valores: 1 (Venta), 2 (Arriendo). Obligatorio. | "El código de tipo de oferta es obligatorio" |
price | number | Rango: 100,000 - 9,999,999,999,999 | "El precio debe estar entre 100.000 y 9.999.999.999.999" |
administration | number | Rango: 10,000 - 9,999,999,999,999 (si se envía). ⚠️ En inmuebles de Venta (realEstateOffer: 1) NO enviar este campo ni con valor 0 — genera error "El precio se encuentra por debajo del valor mínimo" | "La administración debe estar entre 10.000 y 9.999.999.999.999" |
images | array | Mínimo 1, máximo 20 URLs válidas | "Debe incluir entre 1 y 20 imágenes válidas" |
stratum | number | Requerido. Rango: 1-6 (estratos residenciales). Comercial: 7 (solo Locales/Oficinas/Bodegas/Consultorios). Rural: 8 (Fincas). ⚠️ No aplica para todos los tipos de inmueble | "El estrato no es válido" |
city | number | Requerido, código entero que debe existir en catálogo | "El código de ciudad es obligatorio" |
neighborhood | string | Requerido | "El barrio es requerido" |
address | string | Opcional, máximo 100 caracteres | "La dirección es obligatoria" |
reference1 | string | Opcional, máximo 50 caracteres | "La referencia excede el tamaño máximo" |
responseUrl | string | URL válida, requerida | "La URL de respuesta es requerida" |
video | string | URL válida de YouTube únicamente (si se envía) | "La url del video no es válida" |
comments | string | Requerido, máximo 1,000 caracteres | "Los comentarios no pueden exceder 1000 caracteres" |
latitude | number | Rango: -90 a 90 (opcional) | "La latitud debe estar entre -90 y 90" |
longitude | number | Rango: -180 a 180 (opcional) | "La longitud debe estar entre -180 y 180" |
Reglas de Formato y Precisión Numérica
Los siguientes campos tienen restricciones sobre la cantidad de dígitos enteros y decimales permitidos.
| Campo | Enteros máx. | Decimales máx. | Rango adicional | Ejemplo válido |
|---|---|---|---|---|
latitude | 3 | 10 | -90 a 90 | 4.6097100322 |
longitude | 3 | 10 | -180 a 180 | -74.0817500000 |
builtArea | 8 | 2 | > 0 para tipos residenciales (1,2,3,4,5,6,7,9,10,14). Solo Bodega(8) y Lote(15) aceptan 0 | 12345678.99 |
area (privada) | 8 | 2 | Requerido según tipo | 150.50 |
plotArea | 8 | 2 | > 0 (si se envía) | 500.00 |
width | 7 | 2 | > 0 (si se envía) | 1234567.99 |
terraceOrBalconyArea | 7 | 2 | > 0 (si se envía) | 25.50 |
Campos de Amenities con Valores Específicos
Los siguientes campos de amenities solo aceptan valores específicos. Enviar un valor diferente resultará en error de validación.
Validaciones Dinámicas
| Campo | Tipo | Validación | Mensaje de Error |
|---|---|---|---|
bathrooms | number | string | Rango: 1-20 | "bathrooms debe estar entre 1 y 20" |
rooms | number | string | Rango: 1-20 | "rooms debe estar entre 1 y 20" |
garages | number | string | Rango: 0 - 100 | "garages debe estar entre 0 y 100" |
builtArea | number | Rango: > 0 - 9,999,999.99 (residenciales). Bodega (8) y Lote (15) aceptan 0 | "La característica Area Construida deben ser mayor a cero" |
area | number | Rango: 1 - 9,999,999.99 | "El área debe estar entre 1 y 9.999.999,99" |
Validaciones con valores exactos
La siguiente tabla documenta todos los campos que requieren valores específicos. Los valores deben coincidir exactamente, respetando mayúsculas y minúsculas.
| Campo | Valores Permitidos (regex) | Descripción |
|---|---|---|
view | Interior | Exterior | Posición/vista del inmueble |
builtTime | Remodelado | Entre 0 y 5 años | Entre 5 y 10 años | Entre 10 y 20 años | Más de 20 años | Antigüedad de construcción |
garageType | Propio | Comunal | Servidumbre | Independiente | Tipo de garaje |
kitchenForm | Lineal | Paralela | Isla | Abierta | En U | En L | Otra | Forma de la cocina |
dinningRoomType | Sala Comedor | Comedor Independiente | Tipo de comedor |
gasInstallationType | Natural | Propano | Ninguno | Tipo de gas |
stoveType | Electrica | Gas | Mixta | Tipo de estufa |
heaterType | Gas | Electrico | Caldera | No tiene | Tipo de calentador |
terraceOrBalcony | Ninguno | Terraza | Balcón | Terraza o balcón |
curtainType | Con velos | Persianas | Pesadas | Ninguna | Tipo de cortinas |
surveillanceType | 0 | 12hrs | 24hrs | Vigilancia (0=Sin vigilancia) |
parkingType | Cubierto | Descubierto | Exterior | Tipo de parqueadero |
houseType | Townhouse | Condominio | Tradicional | Tipo de casa (realEstateType=2) |
officeType | Casa | Edificio | Tipo de oficina (tipo=3) |
mortgageEntity | Davivienda | Bancolombia | Colmena BCSC | Colpatria | AV Villas | BBVA | Santander | Fondo Nacional del Ahorro | Otro Banco | Otra Cooperativa | Otros | No Tiene | Entidad hipotecaria |
rentalPeriod | Días | Semanas | Meses | Años | Período de arriendo |
flooringType | Cemento | Marmol | Baldosa | Alfombra | Cerámica | Madera | Porcelanato | Laminado | Otro | Tipo de piso general |
bedroomFlooringType | Cemento | Marmol | Baldosa | Alfombra | Cerámica | Madera | Porcelanato | Laminado | Otro | Piso de habitaciones |
studyFlooringType | Cemento | Marmol | Baldosa | Alfombra | Cerámica | Madera | Porcelanato | Laminado | Otro | Piso del estudio |
diningRoomFlooringType | Cemento | Marmol | Baldosa | Alfombra | Cerámica | Madera | Porcelanato | Laminado | Otro | Piso del comedor |
livingRoomFlooringType | Cemento | Marmol | Baldosa | Alfombra | Cerámica | Madera | Porcelanato | Laminado | Otro | Piso de la sala |
Campos Específicos por Tipo de Inmueble
| Campo | Aplica a | Valores Permitidos |
|---|---|---|
lotType | Lotes (tipo=15) | Lote vacío | Lote en construcción |
clinicType | Consultorios (tipo=5) | Odontológico | Médico | Laboratorio | Veterinario | Otro |
establishmentType | Locales (tipo=6) | En centro comercial | Afueras centro comercial | Otro |
warehouseType | Bodegas (tipo=8) | Industrial | Almacenamiento | Otro |
buildingRating | Bodegas (tipo=8) | Edificio inteligente | Edificio no inteligente |
estateType | Fincas (tipo=7) | Finca de recreo | Finca de Producción |
Campos Numéricos de Amenities
Los siguientes campos de amenities tienen restricciones @Min/@Max que validan rangos permitidos.
| Campo | Tipo | Validación | Descripción |
|---|---|---|---|
wardrobes | number | Mín: 0, Máx: 4 | Cantidad de closets/armarios |
phoneLines | number | Mín: 1, Máx: 4 | Cantidad de líneas telefónicas |
levels | number | Mín: 1, Máx: 5 | Cantidad de niveles/pisos |
deposits | number | Mín: 1, Máx: 20 | Cantidad de depósitos |
lifts | number | Mín: 0, Máx: 4 | Cantidad de ascensores |
floorNumber | number | Positivo, Máx: 999 | Número de piso |
depth | number | Mín: 0, Máx: 9,999,999 | Profundidad del lote (metros) |
width | number | Positivo | Ancho del lote/predio (metros) |
Campos de Texto con Límite de Caracteres
Los siguientes campos de amenities aceptan texto con un máximo de 100 caracteres.
| Campo | Tipo | Máx. Caracteres | Descripción |
|---|---|---|---|
block | string | 100 | Bloque/Torre del conjunto |
apartmentNumber | string | 100 | Número del apartamento |
registrationNumber | string | 100 | Número de matrícula inmobiliaria |
practiceNumber | string | 100 | Número de práctica (consultorios) |
officeNumber | string | 100 | Número de oficina |
establishmentNumber | string | 100 | Número del establecimiento (locales) |
warehouseNumber | string | 100 | Número de la bodega |
Los campos numéricos de amenities (bathrooms, rooms, garages) aceptan tanto Integer como String. El API hace la conversión automáticamente usando Integer.parseInt(valor.toString().trim()).
Ambas formas son válidas:
- ✅
"bathrooms": 3(Integer) - ✅
"bathrooms": "3"(String — se convierte automáticamente)
Valores válidos:
bathrooms: 1 a 20 (rango permitido)rooms: 1 a 20 (rango permitido)garages: 0 - 100 (Integer o String)
Esta flexibilidad fue implementada intencionalmente en ValidationServiceImpl.java para soportar integradores que envían valores numéricos como strings. El código valida el valor después de la conversión, no el tipo original.
Tipos de Inmueble (realEstateType)
| Código | Tipo de Inmueble |
|---|---|
| 1 | Apartamento |
| 2 | Casa |
| 3 | Oficina |
| 4 | Casa lote |
| 5 | Consultorio |
| 6 | Local Comercial |
| 7 | Finca |
| 8 | Bodega |
| 9 | Edificio de Apartamentos |
| 10 | Edificio de Oficinas |
| 14 | Apartaestudio |
| 15 | Lote |
Los códigos 11, 12 y 13 no son válidos y serán rechazados por el API.
Valores Permitidos para Amenities
Los siguientes campos de amenities tienen valores específicos permitidos. Enviar un valor diferente resultará en error de validación.
🏠 Características Generales
| Campo | Valores Permitidos |
|---|---|
view | Interior, Exterior |
builtTime | Entre 0 y 5 años, Entre 5 y 10 años, Entre 10 y 20 años, Más de 20 años, Remodelado |
garageType | Propio, Comunal, Servidumbre, Independiente |
kitchenForm | Lineal, Paralela, Isla, Abierta, En U, En L, Otra |
dinningRoomType | Sala Comedor, Comedor Independiente |
terraceOrBalcony | Ninguno, Terraza, Balcón |
🔧 Instalaciones y Equipamiento
| Campo | Valores Permitidos |
|---|---|
gasInstallationType | Natural, Propano, Ninguno |
stoveType | Electrica, Gas, Mixta |
heaterType | Gas, Electrico, Caldera, No tiene |
curtainType | Con velos, Persianas, Pesadas, Ninguna |
surveillanceType | 0, 12hrs, 24hrs |
🏢 Campos Específicos por Tipo de Inmueble
Para Lotes (realEstateType: 15):
| Campo | Valores Permitidos |
|---|---|
lotType | Lote vacío, Lote en construcción |
Para Consultorios (realEstateType: 5):
| Campo | Valores Permitidos |
|---|---|
clinicType | Odontológico, Médico, Laboratorio, Veterinario, Otro |
Para Locales Comerciales (realEstateType: 6):
| Campo | Valores Permitidos |
|---|---|
establishmentType | En centro comercial, Afueras centro comercial, Otro |
Para Oficinas (realEstateType: 3):
| Campo | Valores Permitidos |
|---|---|
officeType | Casa, Edificio |
Para Bodegas (realEstateType: 8):
| Campo | Valores Permitidos |
|---|---|
warehouseType | Industrial, Almacenamiento, Otro |
buildingRating | Edificio inteligente, Edificio no inteligente |
🏠 Campos para Casas y Fincas
Para Casas (realEstateType: 2):
| Campo | Valores Permitidos |
|---|---|
houseType | Townhouse, Condominio, Tradicional |
Para Fincas (realEstateType: 7):
| Campo | Valores Permitidos |
|---|---|
estateType | Finca de recreo, Finca de Producción |
💰 Campos Financieros
| Campo | Valores Permitidos |
|---|---|
mortgageEntity | Davivienda, Bancolombia, Colmena BCSC, Colpatria, AV Villas, BBVA, Santander, Fondo Nacional del Ahorro, Otro Banco, Otra Cooperativa, Otros, No Tiene |
rentalPeriod | Días, Semanas, Meses, Años |
🪵 Tipos de Piso (flooringTypes)
Estos valores aplican para los campos: flooringType, bedroomFlooringType, studyFlooringType, diningRoomFlooringType, livingRoomFlooringType
| Valores Permitidos |
|---|
| Cemento, Marmol, Baldosa, Alfombra, Cerámica, Madera, Porcelanato, Laminado, Otro |
Campos Booleanos
📋 Lista completa de campos booleanos
Los siguientes campos aceptan valores booleanos (true/false) o strings ("true"/"false"):
Amenidades internas:
pool, gym, elevator, alarm, jacuzzi, sauna, heater, chimney, airConditioned, cytophone, furnished, laundryArea, closedComplex, studyOrLibrary, serviceRoom, serviceBathroom, utilityRoom, auxiliaryBathroom, hall, securityDoors, bodyguardRoom, terrace, twoFamilyHome, inBuilding, coveredGarage
Amenidades del conjunto/edificio:
tennisCourt, squashCourt, basketballCourt, soccerField, bbqArea, childrenArea, greenArea, communityHall, visitorParkingLot, golfCage, surveillance, gateHouse, cctv
Características de ubicación:
onMainStreet, onSecondaryRoad, nearbySupermarket, nearbyShoppingCenter, nearbyPark, nearbyPublicTransport, nearbySchoolCollege, shoppingZone, residentialZone, ruralZone
Permisos y restricciones:
petsAllowed, smokingAllowed, suitableForChildren, negotiable, handicappedAccesible, panoramicView
Tipos de piso:
woodenFloor, carpetedFloor, tiledFloor, porcelainTiledFloor
Cocina:
fullKitchen, americanKitchen
Validaciones Dinámicas
El API aplica validaciones adicionales según el realEstateType:
- Apartamentos y Casas: Requieren
roomsybathrooms - Lotes: No requieren área construida (
builtArea)
Formato de Imágenes
"images": [
"https://storage.googleapis.com/bucket/image1.jpg",
"https://res.cloudinary.com/demo/image/upload/sample.jpg"
]
- Mínimo 1 imagen, máximo 20
- Deben ser URLs válidas y accesibles
- Formatos soportados: JPG, PNG, WEBP
- La primera imagen será la imagen principal del inmueble
Ejemplos
- Request
- 201 Created
- 400 Bad Request
- 401 Unauthorized
- 409 Conflict
curl -X POST \
'https://ptec-core-dev.metrocuadrado.com/rest-api/realestate/publish' \
-H 'Content-Type: application/json' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'token: tu-jwt-token' \
-d '{
"realEstateType": 2,
"realEstateOffer": 1,
"price": "12000000",
"administration": "800000",
"city": "5",
"neighborhood": "Laureles",
"stratum": 5,
"zone": 12,
"sector": 22,
"reference1": "9876543210",
"address": "Carrera 80 # 33B 45",
"latitude": "6.24420",
"longitude": "-75.58121",
"amenities": {
"builtTime": "Entre 5 y 10 años",
"rooms": "4",
"bathrooms": "3",
"garages": "2",
"garageType": "Propio",
"builtArea": "90",
"area": "110",
"negotiable": "false",
"terraceOrBalcony": "Balcón",
"terraceOrBalconyArea": "12.5",
"dinningRoomType": "Comedor Independiente",
"kitchenForm": "Abierta",
"heaterType": "Gas",
"gasInstallationType": "Propano",
"stoveType": "Electrica",
"closedComplex": false,
"laundryArea": false,
"furnished": false,
"wardrobes": "3",
"curtainType": "Con velos",
"block": "B",
"apartmentNumber": "204",
"floorNumber": "2",
"studyOrLibrary": false,
"serviceRoom": "false",
"chimney": "false",
"airConditioned": "false",
"cytophone": "false",
"registrationNumber": "XYZ123456",
"jacuzzi": "false",
"alarm": "false",
"pool": "false",
"tennisCourt": "false",
"squashCourt": "false",
"basketballCourt": "false",
"soccerField": "false",
"sauna": "false",
"heater": "false",
"handicappedAccesible": "false",
"greenArea": "true",
"childrenArea": "true",
"cctv": "true",
"bbqArea": "false",
"surveillanceType": "24hrs",
"petsAllowed": "true",
"onMainStreet": "false",
"onSecondaryRoad": "true",
"smokingAllowed": "false",
"nearbySupermarket": "true",
"nearbyShoppingCenter": "false",
"nearbyPark": "true",
"nearbyPublicTransport": "true",
"nearbySchoolCollege": "false",
"woodenFloor": "false",
"carpetedFloor": "false",
"tiledFloor": "true",
"porcelainTiledFloor": "false",
"fullKitchen": "true",
"americanKitchen": "false",
"serviceBathroom": "false",
"utilityRoom": "false",
"golfCage": "false",
"surveillance": "true",
"gateHouse": "false",
"ruralZone": "false",
"suitableForChildren": true,
"terrace": false,
"twoFamilyHome": false,
"auxiliaryBathroom": false,
"inBuilding": true,
"shoppingZone": false,
"residentialZone": true,
"lifts": "1",
"bodyguardRoom": false,
"view": "Interior",
"auxiliaryDinningRoom": false,
"bedroomFlooringType": "Madera",
"studyFlooringType": "Cerámica",
"diningRoomFlooringType": "Marmol",
"livingRoomFlooringType": "Porcelanato",
"flooringType": "Cerámica",
"mortgageEntity": "Bancolombia",
"hall": false,
"securityDoors": false,
"panoramicView": false,
"elevator": false,
"communityHall": false,
"coveredGarage": false,
"gym": false,
"visitorParkingLot": false,
"parkingType": "Cubierto"
},
"images": [
"https://example.com/image1.jpg",
"https://example.com/image2.jpg"
],
"video": "https://www.youtube.com/watch?v=example123",
"comments": "APTO EN VENTA: Este apartamento está ubicado en una zona tranquila y residencial, ideal para familias. Cuenta con amplios espacios y buena iluminación natural.",
"agentId": 123456,
"responseUrl": "https://example.com/api/callback"
}'
{
"data": {
"transactionId": "2a0f2cd3-e6ad-4980-8f2a-bbc9047c8629",
"response": "Transacción de publicación recibida"
}
}
{
"error": "Faltan parámetros obligatorios: title, price"
}
{
"message": "No API key found in request"
}
{
"error": "El usuario no tiene cupos suficiente para realizar la publicación"
}
Notas Importantes
- Requiere un token JWT válido (generar en el endpoint de autenticación)
- La API Key debe corresponder al ambiente seleccionado
- Todos los campos marcados como requeridos deben enviarse
- Las imágenes se pueden subir en una petición separada
Cómo Probar
Para probar este endpoint, sigue estos pasos:
- Genera un token JWT usando el endpoint de autenticación
- Asegúrate de usar la API Key correcta según el ambiente
- Incluye el token en el header
token - Prepara el body JSON con los datos del inmueble
- Realiza la petición POST al endpoint correspondiente
Códigos de Respuesta
| Código | Descripción |
|---|---|
| 200 | Operación exitosa |
| 201 | Inmueble publicado exitosamente |
| 400 | Datos inválidos o parámetros faltantes |
| 401 | Token o API key inválidos |
| 403 | Sin permisos para realizar la operación (usuario inactivo) |
| 404 | Recurso no encontrado |
| 406 | Credenciales incorrectas (generalmente en login) |
| 409 | El usuario no tiene cupos suficientes o conflicto de estado |
| 500 | Error interno del servidor (validaciones envueltas en error genérico) |
| 502 | Bad Gateway - Problemas de infraestructura |
| 503 | Servicio no disponible - Problemas de infraestructura |
Probar Endpoint
API Tester
Prueba los endpoints de forma interactiva