POST /property/post

Actualmente esta funcionalidad solo es compatible con https://www.mapaprop.com/

PRODUCTION

General Rules

A traves de un json estructurado, se puede importar una propiedad a Mapapaprop

  • Debe tener una cuenta Mapaprop.
  • Debe tener al menos 1 imagen
  • Las imagenes deben estar en una url
  • Existen ciertos campos obligatorios
  • Ante ciertas fallas, la importacion se retrotrae.
  • Sobre las imagenes
    • Si es mas de una imagen, se van procesando en lista ordenada.
    • Si al menos una imagen logra ser obtenida, la importacion se procesa.
    • Si fallan todas, la importacion se cancela.
    • La primer imagen del listado siempre sera la mainImage
    • Siempre se da reporte del resultado de las imagenes. x ej… 10 total, 5 success, 5 failed
  • se puede establecer si la prop se publica a traves del campo “published” = true
  • Ud debe conocer el customerId y el branchId

This service will import property json to Mapaprop

Resource information
AuthenticationRequired
HTTP MethodPOST
ResponseJSON
Version1

Resource URL

https://property-api.mapaprop.com/property/post

Sample code

POST property/post
Host: property-api.mapaprop.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 0
Authorization: Bearer ya29.1.AADtN_UxybTdjLw9jX6lg_branSjjsldiwjtek4q2WvfETzSrz7Q6loEYoJEWd1x4qvlpGw

Parameters(body request)

KeyTypeRequiredDescription
jsonstringyesthe json property to import

Complete JSON model

{
    "zipCode": "1416",
    "landArea": 600,
    "buildingArea": 2500,
    "ubication": 1,
    "type": 23,
    "apartmentsPerFloor": 4,
    "ambiences": 1,
    "price": 62000,
    "customerEmail": "info@mapaprop.com",
    "customerAddress": "Calle 6666",
    "branchId": 1,
    "descriptionFormatted": "descripcion de la propiedad\ndescripcion de la propiedad\ndescripcion de la propiedad\ndescripcion de la propiedad\ndescripcion de la propiedad",
    "published": true,
    "bathrooms": 1,
    "customerName": "Mapaprop INC",
    "dependencies": 2,
    "propertyOperation": 1,
    "bedrooms": 1,
    "yearsOld": 2,
    "conditions": "condiciones optimas para vivir",
    "expensesCurrency": "ARS",
    "description": "descripcion de la propiedad descripcion de la propiedad descripcion de la propiedad descripcion de la propiedad descripcion de la propiedad",
    "alternativePrices": [],
    "title": "Semipisos en Nuevo edificio de Categoria",
    "totalFloors": 8,
    "customerCountry": 1,
    "toilettes": 2,
    "customerPhone": "1111-1111-",
    "rented": false,
    "floors": 1,
    "expensesPrice": 29000,
    "propertyType": 220,
    "customerId": 1,
    "currency": "USD",
    "address": "Camarones 2721",
    "zone3": 1344,
    "zone2": 134,
    "zone1": 1,
    "zone0": 1,
    "taxCurrency": "USD",
    "taxPrice": 400,
    "location": {
      "lon": "-58.47843509999999",
      "lat": "-34.6111005"
    },
    "images" : [
        {"url": "https://images.mapaprop.app/photos/2563/258096/2897613.jpg", "description":"Primera Imagen"},
        {"url": "https://images.mapaprop.app/photos/2563/258096/2897600.jpg", "description":"Segunda Imagen"},
        {"url": "https://images.mapaprop.app/photos/2563/258096/2897610.jpg", "description":"Tercer Imagen"},
        {"url": "https://images.mapaprop.app/photos/2563/258096/2897609.jpg", "description":"Cuarta Imagen"}
     ],
    "videoDescription" : "description":"Video de ejemplo",
    "videoUrl": "https://www.youtube.com/shorts/LwtS1Hzempo"
    "attributes": [
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "accessible",
        "group_subtype": "ammenities",
        "id": "accessible",
        "label": "Accesible",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "airConditonerType",
        "country": "ar",
        "key_legacy": "1",
        "id": "airConditonerTypeCentral",
        "label": "Aire acondicionado Central",
        "locale": "es_AR",
        "type": "list",
        "value": "1",
        "group": "propertyAttribute"
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "alarm",
        "group_subtype": "ammenities",
        "id": "alarm",
        "label": "Alarma",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "balcony",
        "country": "ar",
        "key_legacy": "1",
        "id": "balconyFrench",
        "label": "Balcón Francés",
        "locale": "es_AR",
        "type": "list",
        "group": "propertyAttribute"
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "barbecueArea",
        "group_subtype": "spaces",
        "id": "barbecue-area",
        "label": "Quincho",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "cableIncluded",
        "group_subtype": "services",
        "id": "cable-included",
        "label": "TV Cable incluido",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "countryClub",
        "group_subtype": "extras",
        "id": "country-club",
        "label": "Country club",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "dailyDining",
        "group_subtype": "spaces",
        "id": "daily-dinning",
        "label": "Comedor diario",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "propertyType",
        "country": "ar",
        "key_legacy": "23",
        "id": "developmentRealEstate",
        "label": "Desarrollo inmobiliario",
        "locale": "es_AR",
        "type": "string",
        "group": "type"
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "electricGenerator",
        "group_subtype": "ammenities",
        "id": "electric-generator",
        "label": "Generador eléctrico",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "electricity",
        "group_subtype": "services",
        "id": "electricity",
        "label": "Electricidad",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "frontGarden",
        "group_subtype": "spaces",
        "id": "front-garden",
        "label": "Jardín al frente",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "furnished",
        "group_subtype": "ammenities",
        "id": "furnished",
        "label": "Amoblado",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "garageType",
        "country": "ar",
        "number": 2,
        "key_legacy": "1",
        "id": "garageSpace",
        "label": "Espacio Guarda Coche",
        "locale": "es_AR",
        "type": "list",
        "value": "1",
        "group": "propertyAttribute"
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "gatedCommunity",
        "group_subtype": "extras",
        "id": "gated-community",
        "label": "Barrio cerrado",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "grill",
        "group_subtype": "ammenities",
        "id": "grill",
        "label": "Parrilla",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "heatingType",
        "country": "ar",
        "key_legacy": "1",
        "id": "heatingCentral",
        "label": "Calefacción Central",
        "locale": "es_AR",
        "type": "list",
        "value": "1",
        "group": "propertyAttribute"
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "internet",
        "group_subtype": "services",
        "id": "internet",
        "label": "Internet",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "jacuzzi",
        "group_subtype": "ammenities",
        "id": "jacuzzi",
        "label": "Hidromasaje",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "janitor",
        "group_subtype": "services",
        "id": "janitor",
        "label": "Portero",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "hasLaundry",
        "group_subtype": "spaces",
        "id": "laundry",
        "label": "Lavadero",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "laundryMachine",
        "group_subtype": "ammenities",
        "id": "laundry-machine",
        "label": "Lavarropas",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "mortgageReady",
        "group_subtype": "extras",
        "id": "mortgage-ready",
        "label": "Apto crédito",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "orientation",
        "country": "ar",
        "key_legacy": "1",
        "id": "orientationEast",
        "label": "Orientación Este",
        "locale": "es_AR",
        "type": "list",
        "value": "1",
        "group": "propertyAttribute"
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "park",
        "group_subtype": "spaces",
        "id": "park",
        "label": "Parque",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "partySaloon",
        "group_subtype": "spaces",
        "id": "party-saloon",
        "label": "Salón de fiestas / SUM",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "hasPatio",
        "group_subtype": "spaces",
        "id": "patio",
        "label": "Patio",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "pavement",
        "group_subtype": "services",
        "id": "pavement",
        "label": "Pavimento",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "petsReady",
        "group_subtype": "extras",
        "id": "petsReady",
        "label": "Apto mascotas",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "pipedWater",
        "group_subtype": "services",
        "id": "pipedWater",
        "label": "Agua Corriente",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "playroom",
        "group_subtype": "spaces",
        "id": "playroom",
        "label": "Playroom",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "hasPrivatElevator",
        "group_subtype": "ammenities",
        "id": "private-elevator",
        "label": "Elevador privado",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "professionalAvailable",
        "group_subtype": "extras",
        "id": "professional-available",
        "label": "Apto profesional",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "propertyOperation",
        "country": "ar",
        "key_legacy": "1",
        "id": "sale",
        "label": "Venta",
        "locale": "es_AR",
        "type": "string",
        "group": "operation"
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "hasSecurity",
        "group_subtype": "services",
        "id": "security",
        "label": "Seguridad",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "securityBox",
        "group_subtype": "ammenities",
        "id": "security-box",
        "label": "Caja de seguridad",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "sewers",
        "group_subtype": "services",
        "id": "sewers",
        "label": "Cloacas",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "hasStorage",
        "group_subtype": "spaces",
        "id": "storage",
        "label": "Baulera",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "suite",
        "group_subtype": "spaces",
        "id": "suite",
        "label": "Dormitorio en suite",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "hasSwimmingPool",
        "group_subtype": "ammenities",
        "id": "swimming-pool",
        "label": "Piscina",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "telephoneLine",
        "group_subtype": "services",
        "id": "telephone-line",
        "label": "Línea telefónica",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "terrace",
        "group_subtype": "spaces",
        "id": "terrace",
        "label": "Terraza",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      },
      {
        "group_sub": "ubication",
        "country": "ar",
        "key_legacy": "1",
        "id": "ubicationFront",
        "label": "Ubicación Frente",
        "locale": "es_AR",
        "type": "list",
        "value": "1",
        "group": "propertyAttribute"
      },
      {
        "group_sub": "waterHeaterType",
        "country": "ar",
        "key_legacy": "2",
        "id": "waterHeaterThermostatic",
        "label": "Agua caliente Termotanque",
        "locale": "es_AR",
        "type": "list",
        "value": "2",
        "group": "propertyAttribute"
      },
      {
        "group_sub": "label",
        "country": "ar",
        "key_legacy": "wifi",
        "group_subtype": "services",
        "id": "wifi",
        "label": "WIFI",
        "locale": "es_AR",
        "type": "bool",
        "group": "propertyAttribute",
        "status": true
      }
    ],
}

Complete property model

AtributoDescripción
zipCodeCódigo postal de la propiedad.
landAreaÁrea del terreno en metros cuadrados.
buildingAreaÁrea construida en metros cuadrados.
ubicationIdentificador de ubicación.
typeTipo de propiedad.
apartmentsPerFloorNúmero de apartamentos por piso.
ambiencesNúmero de ambientes en la propiedad.
pricePrecio de la propiedad.
customerEmailCorreo electrónico del cliente.
customerAddressDirección del cliente.
branchIdIdentificador de la sucursal.
descriptionFormattedDescripción formateada de la propiedad.
publishedIndica si la propiedad está publicada.
bathroomsNúmero de baños en la propiedad.
customerNameNombre del cliente.
dependenciesNúmero de dependencias de la propiedad.
propertyOperationTipo de operación de la propiedad (venta, alquiler, etc.).
bedroomsNúmero de habitaciones.
yearsOldAntigüedad de la propiedad en años.
conditionsCondiciones de la propiedad.
expensesCurrencyMoneda de los gastos comunes.
descriptionDescripción breve de la propiedad.
alternativePricesLista de precios alternativos (vacío).
titleTítulo de la propiedad.
totalFloorsNúmero total de pisos en el edificio.
customerCountryPaís del cliente (como identificador).
toilettesNúmero de toilettes.
customerPhoneTeléfono del cliente.
rentedIndica si la propiedad está rentada.
floorsNúmero de pisos.
expensesPricePrecio de los gastos comunes.
propertyTypeTipo de propiedad (como identificador).
customerIdIdentificador del cliente.
currencyMoneda del precio de la propiedad.
addressDirección de la propiedad.
zone3, zone2, zone1, zone0Identificadores de zona geográfica.
taxCurrencyMoneda de los impuestos.
taxPricePrecio de los impuestos.
locationObjeto que incluye lon (longitud) y lat (latitud) de la propiedad.
imagesLista de objetos con url y description para imágenes de la propiedad.
videoDescriptionDescripción del video de la propiedad.
videoUrlURL del video asociado a la propiedad.
attributesLista de atributos con detalles como group, type, label, locale, etc. para características de la propiedad.

Internos del Atributo location

AtributoDescripción
lonLongitud geográfica.
latLatitud geográfica.

Internos del Atributo images

AtributoDescripción
urlURL de la imagen.
descriptionDescripción de la imagen.

Internos del Atributo attributes

AtributoDescripción
groupGrupo al que pertenece el atributo (e.g., "propertyAttribute").
typeTipo de atributo (e.g., bool, list, string).
labelEtiqueta del atributo (e.g., "Accesible").
localeLocalización lingüística asociada al atributo (e.g., es_AR).
statusEstado del atributo (e.g., true o false, si aplica).
valueValor asociado al atributo (si aplica).
group_subtypeSubgrupo dentro del grupo principal.
idIdentificador único del atributo.
countryPaís asociado al atributo (e.g., "ar").
key_legacyClave legada del atributo.

Response

A LIST JSON document with all property attributes as of the requested country

ObjectFieldTypeRequiredDescription
List(JSON)*string*All states and steps the import went through

Sample response

{
  propertyId: 258399,
  branchId: 1,
  published: true,
  message: 'Property created successfully',
  processLog: [
    { step: 1, message: 'Authorization successful' },
    { step: 2, message: 'Request body parsed successfully' },
    { step: 3, message: 'Property created with ID: 258399' },
    { step: 4, message: 'Processing 4 images' },
    {
      step: 5,
      message: 'Completed image conversions. Successfully converted: 3/4'
    },
    { step: 6, message: 'Failed to convert 1 images' },
    { step: 7, message: 'Converted 3 images to base64' },
    { step: 8, message: 'Successfully uploaded 3 images' },
    { step: 9, message: 'Updated main image reference' },
    {
      step: 10,
      message: 'Generated and updated property hash a14332c09e2853f697f18949e7c59efb'
    },
    {
      step: 11,
      message: 'Generated and updated property code : 1-258399'
    }
  ]
}