Exclusive Offer Creation
POST
comparables/exclusive/offers
Creates a new exclusive offer.
Example Request#
curl -X POST 'https://api.pricehubble.com/api/v1/comparables/exclusive/offers' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer 74126eab0a9048d993bda4b1b55ae074' \
-d '{
"countryCode": "CH",
"sourceOfferId": "test",
"images": [
"a2b158e6-8570-4cdb-9105-454773335a49.jpg"
],
"offer": {
"dealType": "sale",
"salePrice": 900000,
"startDate": "2021-01-12"
},
"property": {
"location": {
"coordinates": {
"latitude": 47.4,
"longitude": 8.54
},
"address": {
"postCode": "8008",
"street": "Klausstrasse",
"city": "Zurich"
}
},
"propertyType": {
"code": "apartment"
},
"livingArea": 50
}
}'
Request fields#
Field | Description | Type | Remarks |
---|---|---|---|
countryCode | ISO country code | string | |
sourceOfferId | Your offer id, can be used to delete or update the offer (most often it is the id used in the client CRM) | string | |
description | Offer description | string | |
images | Offer images | array of image path | To upload image use Exclusive Offers Images API |
roomTourLink | Url for virtual tour of the offer | string | |
fullSourceData | Raw value for offer in JSON format | json | |
property | Information about the property | Exclusive Offers Property | |
offer | Information about the offer | Exclusive Comparables Offer |
Example Response#
{
"offerId": "16adf0dd-6a35-4d84-8b4d-53da4166a53e",
"geoPrecision": "address",
"sourceOfferId": "qnGcKZNNLgiX",
"description": "",
"images": [
"https://host/images/b25bb9f4-5a58-4f1e-8cd5-9ce442f4724d.jpg"
],
"property": {
"volume": 192.91,
"numberOfFloorsInBuilding": 2,
"buildingYear": "",
"isNew": false,
"propertyType": {
"code": "apartment",
"subcode": ""
},
"landArea": 193.0,
"hasLift": false,
"floorNumber": 8,
"livingArea": 50.0,
"numberOfRooms": 4.0,
"numberOfIndoorParkingSpaces": 0,
"numberOfOutdoorParkingSpaces": 3,
"numberOfBathrooms": 2,
"isWheelchairAccessible": true,
"numberOfBedrooms": 1,
"isFurnished": true,
"renovationYear": 2013,
"energyLabel": "",
"minergie": "",
"hasPool": false,
"hasSauna": false,
"balconyArea": 6.0,
"gardenArea": 265.0,
"basementType": "",
"basementSurface": 21.0,
"hasConcierge": true,
"furnishedKitchen": false,
"hasAirconditioning": true,
"hasHeating": false,
"centralisedHeating": false,
"hasSolarPanels": null,
"heatingGenerationType": null,
"heatingDistributionType": null,
"view": "",
"orientation": "",
"isRented": true,
"location": {
"coordinates": {
"latitude": 52.49808789999999,
"longitude": 13.3527799
},
"address": {
"postCode": "10777",
"street": "Nollendorfstraße",
"city": "Berlin",
"houseNumber": "12"
}
},
"quality": {
"kitchen": "normal",
"bathrooms": "simple",
"flooring": "high_quality",
"windows": "normal",
"masonry": "simple",
"roof": "normal"
},
"condition": {
"property": "renovation_needed",
"kitchen": "new_or_recently_renovated",
"bathrooms": "renovation_needed",
"flooring": "well_maintained",
"windows": "well_maintained",
"masonry": "well_maintained",
"roof": "well_maintained",
"elec": "renovation_needed",
"plumbing": "new_or_recently_renovated"
}
},
"offer": {
"title": "",
"isActive": true,
"isPrivate": true,
"dealType": "rent",
"startDate": "2020-07-12",
"endDate": "",
"salePrice": "",
"rentPrice": 1099.0,
"grossRentPrice": 1366.0,
"salePricePerSqm": "",
"rentPricePerSqm": "",
"grossRentPricePerSqm": "",
"feesAmount": 4574.0,
"currency": "EUR"
},
"fullSourceData": {},
"countryCode": "DE"
}
Response fields#
Field | Description | Type | Remarks |
---|---|---|---|
countryCode | ISO country code | string | |
offerId | Internal offer id | string | |
sourceOfferId | This is the id you provided when creating the offer (most often it is the id used in the client CRM). It can be used to delete or update the offer | string | |
description | Offer description | string | |
images | Offer images | array of Generic Images | |
roomTourLink | Url for virtual tour of the offer | string | |
fullSourceData | raw value for offer in JSON format | json | |
property | Information about the property | Exclusive Comparables Property | |
offer | Information about the offer | Exclusive Comparables Offer |
Property#
Field | Description | Type | Remarks |
---|---|---|---|
location | Property location | Location | |
propertyType | Property type | PropertyType | |
livingArea | Net living area | float | In m2 For UK : in sq.ft |
buildingYear | The year the property was built | integer | |
landArea | Total area of the lot/parcel on which the house is standing | float | In m2 For UK : in acres |
hasBalcony | Has balcony / terrace | boolean | |
balconyArea | Balcony / Terrace area | float | In m2 For UK : in sq.ft |
gardenArea | Garden area | float | In m2 For UK : in sq.ft |
volume | Volume | float | In m3 For UK : in cu.ft |
numberOfRooms | Number of rooms | float | |
numberOfBedrooms | Number of bedrooms | integer | |
numberOfBathrooms | Number of bathrooms | integer | |
isWheelchairAccessible | Is wheelchair accessible | boolean | |
hasIndoorParkingSpaces | Has garage spaces | boolean | |
numberOfIndoorParkingSpaces | Garage spaces | integer | |
hasOutdoorParkingSpaces | Has parking spaces | boolean | |
numberOfOutdoorParkingSpaces | Parking spaces | integer | |
floorNumber | Floor number | integer | |
hasLift | Lift availability | boolean | |
energyLabel | Energy label | enum | For DE: A++ , A+ , A .. H . For NL: A+++ , A++ , A+ , A .. G . For CH: minergie , minergie_p , minergie_a , minergie_eco , minergie_p_eco , minergie_a_eco . For BE : A++ , A+ , A .. G . For others: A .. G . |
minergie | minergie flag | boolean | |
hasSauna | Sauna availability | boolean | |
hasPool | Pool availability | boolean | |
numberOfFloorsInBuilding | Total number of floors of the building | integer | |
isFurnished | Whether the property is furnished or not | boolean | |
isNew | Whether the property has never been used before ("Bâtiment neuf" in French, "Erstverkauf" / "Erstvermietung" in German) | boolean | |
renovationYear | Last renovation year of the property | integer | |
basementType | Basement type | enum | livable , not_livable or other |
basementSurface | Basement surface | float | In m2 For UK : in sq.ft |
hasConcierge | Has concierge | boolean | |
furnishedKitchen | Has furnished kitchen | boolean | |
hasAirconditioning | Has air conditioning | boolean | |
hasHeating | Has heating | boolean | |
heatingGenerationType | How the building is heated | enum | electric , wood , gas , oil , district , heat_pump_air , heat_pump_geothermal , solar or other |
heatingDistributionType | How the heat is distributed | enum | floor , radiator or other |
hasSolarPanels | If the building has solar panels | boolean | |
view | View | enum | clear , partially_clear , obstructed or other |
orientation | Property orientation | string | Any combination of N, S, E, and W from 1 to 4 characters and max one occurance. |
isRented | Is rented | boolean | |
centralisedHeating | Has centralised heating | boolean | |
condition.bathrooms | Bathrooms condition | Condition | |
condition.kitchen | Kitchen condition | Condition | |
condition.flooring | Flooring condition | Condition | |
condition.windows | Windows condition | Condition | |
condition.property | Property condition | Condition | |
condition.masonry | Masonry condition | Condition | |
condition.roof | Roof condition | Condition | |
condition.elec | Electricity condition | Condition | |
condition.plumbing | Plumbing condition | Condition | |
quality.bathrooms | Bathrooms quality | Quality | |
quality.kitchen | Kitchen quality | Quality | |
quality.flooring | Flooring quality | Quality | |
quality.windows | Windows quality | Quality | |
quality.masonry | Masonry quality | Quality | |
quality.roof | Roof quality | Quality |
Offer#
Field | Description | Type | Remarks |
---|---|---|---|
dealType | Type of offer | enum | sale , rent |
startDate | Offer date | date | Start date of the offer, Format: YYYY-MM-DD , default: today |
endDate | Offer date | date | End date of the offer if it has been completed, Format: YYYY-MM-DD , default (if isActive is false ): today . |
title | Title | text | |
salePrice | Sale price | float | Mandatory if dealType is sale |
rentPrice | Rent price | float | Either rentPrice or grossRentPrice is mandatory if dealType is rent |
grossRentPrice | Gross rent price | float | Either rentPrice or grossRentPrice is mandatory if dealType is rent |
salePricePerSqm | Sale price per m2, per sq.ft for UK |
float | Available if dealType is sale |
rentPricePerSqm | Rent price per m2 | float | Available if dealType is rent |
grossRentPricePerSqm | Gross rent price per m2 | float | Available if dealType is rent |
feesAmount | Fees amount | float | |
currency | Currency | string | |
isActive | Offer is active | bool | Default: true |
isPrivate | Offer is private | bool | Default: true |
status | Offer status | enum | pre_sale or public |