RESTful API of Search Bounded Context
Headers
As API is working with JSON every request must add the following headers:
Accept: application/json
Cities ¶
Cities ¶
Retrieve all citiesGET/cities
Example URI
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
{
"valencia": {
"city": "valencia",
"country": {
"countryId": "spain",
"countryIsoCode": "ES"
},
"minimumStaying": 30,
"areaId": 1,
"center": {
"lng": 10.10,
"lat": 20.10
},
"limits": {
"sw": {
"lng": 30.10,
"lat": 40.10
}
"ne": {
"lng": 50.10,
"lat": 60.10
},
},
"currencyIsoCode": "EUR",
"maximumPrice": 3000
},
"vienna": {
"city": "vienna",
"country": {
"countryId": "austria",
"countryIsoCode": "AT"
},
"minimumStaying": 30,
"areaId": 2,
"center": {
"lng": 10.15,
"lat": 20.15
},
"limits": {
"sw": {
"lng": 30.15,
"lat": 40.15
}
"ne": {
"lng": 50.15,
"lat": 60.15
},
},
"currencyIsoCode": "EUR",
"maximumPrice": 25000
},
...
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}City ¶
Retrieve city by IDGET/cities/{city}
Example URI
- city
string(required) Example: city
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
{
"city": "valencia",
"country": {
"countryId": "spain",
"countryIsoCode": "ES"
},
"minimumStaying": 30,
"areaId": 1,
"center": {
"lng": 10.10,
"lat": 20.10
},
"limits": {
"sw": {
"lng": 30.10,
"lat": 40.10
}
"ne": {
"lng": 50.10,
"lat": 60.10
},
}
"currencyIsoCode": "EUR",
"maximumPrice": 9000
}404Headers
Content-Type: application/jsonBody
{
"detail": "Ad with ID 120173 not found",
"status": 404,
"title": "Not Found",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Areas by city ¶
Retrieve areas by city IDGET/areas/{city}
Example URI
- city
string(required) Example: city
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
[
{
"id": 1,
"name": "Arganzuela"
},
{
"id": 2,
"name": "Barajas"
},
{
"id": 3,
"name": "Carabanchel"
}
]404Headers
Content-Type: application/jsonBody
{
"detail": "Ad with ID 120173 not found",
"status": 404,
"title": "Not Found",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Areas by city v2 ¶
Retrieve areas by city IDGET/areas/v2/{city}
Example URI
- city
string(required) Example: city
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
[
{
"id": 1,
"name": "Arganzuela"
},
{
"id": 2,
"name": "Barajas"
},
{
"id": 3,
"name": "Carabanchel"
}
]404Headers
Content-Type: application/jsonBody
{
"detail": "Ad with ID 120173 not found",
"status": 404,
"title": "Not Found",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Areas by coordinates ¶
Retrieve areas by latitude and longitudeGET/areas/{lat}/{lng}
Example URI
- lat
float(required) Example: lat- lng
float(required) Example: lng
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
[
{
"id": 1025,
"name": "Ciutat de les Arts i de les Ciencies",
"cityId": "valencia",
"type": "barrio",
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
-0.35172599999999998,
39.453328999999997
],
[
-0.36631399999999997,
39.447093000000002
],
...
]
]
},
"slug": "ciutat-de-les-arts-i-de-les-ciencies"
}
]401Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Business areas ¶
View all business areasGET/business-areas{?name,cityId,levels,enabled,visible,latitude,longitude,page,itemsPerPage}
Example URI
- name
string(optional) Example: madrCriteria by name like
- cityId
string(optional) Example: madridCriteria by city id
- levels
array[number](optional) Example: 1Criteria by levels
- enabled
boolean(optional) Example: falseCriteria by enabled
- visible
boolean(optional) Example: falseCriteria by visible
- latitude
number(optional) Example: 18.0990Criteria by latitude
- longitude
number(optional) Example: 2.443Criteria by longitude
- page
number(optional) Example: 1- itemsPerPage
number(optional) Example: 100
Headers
Content-Type: application/json
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"count": 1,
"total": 2,
"_links": {
"self": {
"href": "/properties?page=1"
},
"first": {
"href": "/properties?page=1"
},
"last": {
"href": "/properties?page=2"
},
"next": {
"href": "/properties?page=1"
},
"previous": {
"href": "/properties?page=2"
}
},
"_embedded": {
"sah:search:areas": [
{
"id": 55,
"name": "anderletch",
"cityId": "madrid",
"country": "spain",
"level": 4,
"enabled": true,
"visible": false,
"position": 1001
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"count": {
"type": "number"
},
"total": {
"type": "number"
},
"_links": {
"type": "object",
"properties": {
"self": {
"type": "object",
"properties": {
"href": {
"type": "string"
}
},
"required": [
"href"
]
},
"first": {
"type": "object",
"properties": {
"href": {
"type": "string"
}
},
"required": [
"href"
]
},
"last": {
"type": "object",
"properties": {
"href": {
"type": "string"
}
},
"required": [
"href"
]
},
"next": {
"type": "object",
"properties": {
"href": {
"type": "string"
}
},
"required": [
"href"
]
},
"previous": {
"type": "object",
"properties": {
"href": {
"type": "string"
}
},
"required": [
"href"
]
}
},
"required": [
"self",
"first",
"last"
]
},
"_embedded": {
"type": "object",
"properties": {
"sah:search:areas": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number"
},
"name": {
"type": "string"
},
"cityId": {
"type": "string"
},
"country": {
"type": "string"
},
"level": {
"type": "number"
},
"enabled": {
"type": "boolean"
},
"visible": {
"type": "boolean"
},
"position": {
"type": "number"
}
},
"required": [
"id",
"name",
"cityId",
"country",
"level",
"enabled",
"visible",
"position"
]
}
}
},
"required": [
"sah:search:areas"
]
}
},
"required": [
"count",
"total",
"_links"
]
}401Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Business area ¶
View business areaGET/business-areas/{id}
Example URI
- id
number(required) Example: 12345
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"enabled": true,
"cityId": "madrid"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"cityId": {
"type": "string"
}
},
"required": [
"enabled",
"cityId"
]
}200Headers
Content-Type: application/jsonBody
{
"id": 55,
"name": "anderletch",
"cityId": "madrid",
"country": "spain",
"level": 4,
"enabled": true,
"visible": false,
"position": 1001,
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
[
40.43,
-3.69
]
]
]
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number"
},
"name": {
"type": "string"
},
"cityId": {
"type": [
"string",
"null"
]
},
"country": {
"type": "string"
},
"level": {
"type": "number"
},
"enabled": {
"type": "boolean"
},
"visible": {
"type": "boolean"
},
"position": {
"type": "number"
},
"geometry": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"coordinates": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
]
}
}
}
}
},
"required": [
"type",
"coordinates"
]
}
},
"required": [
"id",
"name",
"cityId",
"country",
"level",
"enabled",
"visible",
"position",
"geometry"
]
}401Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "Ad with ID 120173 not found",
"status": 404,
"title": "Not Found",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Business area features ¶
Update business featuresPUT/business-areas/{id}/business-feature
Example URI
- id
number(required) Example: 12345
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"name": "TetuΓ‘n",
"enabled": true,
"visible": true,
"position": 1100,
"cityId": "madrid"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"name": {
"type": "string"
},
"enabled": {
"type": "boolean"
},
"visible": {
"type": "boolean"
},
"position": {
"type": "number"
},
"cityId": {
"type": "string"
}
},
"required": [
"name",
"enabled",
"visible",
"position",
"cityId"
]
}204401Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "Ad with ID 120173 not found",
"status": 404,
"title": "Not Found",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Markers ¶
Markers ¶
Retrieve map markers of an areaGET/markers/{cityId}{?type,topology,flexibleMoveIn,flexibleMoveOut,moveInFrom,moveInTo,moveOutFrom,moveOutTo,bathrooms,budget,features,ids,bed_type,northEastBoundary,southWestBoundary,poi,instantBooking,review_rating,verified,areaId,superLister,noDeposit,plan,refreshAvailabilitiesDateFrom,refreshAvailabilitiesDateTo,firstAvailableDateFrom,firstAvailableDateTo,scoreFrom}
Example URI
- cityId
string(required) Example: madrid- type
array[string](optional) Example: roomsType of the ad
- Members:
- apartments
- rooms
- residences
- studios
- Members:
- topology
array[string](optional) Example: 4moreNumber of bedrooms of the ad
Choices:
12344more- move-in
string(optional) Example: 2000-01-01Date to move in (format YYYY-MM-DD)
- move-out
string(optional) Example: 2001-01-01Date to move out (format YYYY-MM-DD)
- flexibleMoveIn
number(optional) Example: 1Transforms the strict move-in date into a flexible range
Choices:
01- flexibleMoveOut
number(optional) Example: 1Transforms the strict move-out date into a flexible range
Choices:
01- moveInFrom
string(optional) Example: 2000-01-01Start of the range for move in (format YYYY-MM-DD)
- moveInTo
string(optional) Example: 2000-01-15End of the range for move in (format YYYY-MM-DD)
- moveOutFrom
string(optional) Example: 2001-01-01Start of the range for move out (format YYYY-MM-DD)
- moveOutTo
string(optional) Example: 2001-01-15End of the range for move out (format YYYY-MM-DD)
- bathrooms
array[string](optional) Example: 3moreNumber of bathrooms in the property
Choices:
1233more- features
array[string](optional) Example: heatingArray of desired features of ad
Choices:
heatingpetsbalconypoolparkingelevatorair_conditioningwithDeskensuiteRoomsmokingAllowedexterioronly_maleonly_femaleprofessionalscouplesstudentserasmuselectricitywatergaswifimeal_servicecleaning_servicecentral_heatcouncil_taxbed_linendryerovendishwasherwashing_machine- listing-id
number(optional) Example: 12345Listing ID
- ids
array[number](optional) Example: 12345- bed_type
string(optional) Example: singleTypes of bed comma separated
Choices:
singledoubletwinbunk- northEastBoundary
string(optional) Example: 40.4316414,-3.7102201NE corner coordinates (format X,Y)
- southWestBoundary
string(optional) Example: 40.4316414,-3.7102201NE corner coordinates (format X,Y)
- poi
string(optional) Example: 40.4316414,-3.7102201Point Of Interest coordinates (format X,Y)
- instantBooking
number(optional) Example: 1Listing can be directly booked if conditions are meet
Choices:
01- review_rating
number(optional) Example: 5Rating of ad between 1 and 5
Choices:
12345- availabilities-updated
number(optional) Example: 1Ad availability has been updated
Choices:
01- budget
string(optional) Example: 500-1000Range of budget (format MIN-MAX)
- verified
number(optional) Example: 1Listing is verified by one of our homechekers
Choices:
01- areaId
array[number](optional) Example: 123- superLister
number(optional) Example: 1Listing is owned by a landlord who meets certain quality criteria
Choices:
01- noDeposit
number(optional) Example: 1If 1, returns only listings with securityDepositType=βnoSecurityDepositβ
Choices:
01- scoreFrom
number(optional) Example: 20From 0 to 100. If lower or greater, the filter is not apply
- plan
string(optional)It returns markers with given plan
Choices:
standardpremiumselect- refreshAvailabilitiesDateFrom
string(optional) Example: 2000-01-01Start of the range for refresh availabilities date (format YYYY-MM-DD)
- refreshAvailabilitiesDateTo
string(optional) Example: 2000-01-15End of the range for refresh availabilities date (format YYYY-MM-DD)
- firstAvailableDateFrom
string(optional) Example: 2000-01-01Start of the range for first available date (format YYYY-MM-DD)
- firstAvailableDateTo
string(optional) Example: 2000-01-15End of the range for first available date (format YYYY-MM-DD)
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
{
"ok": true,
"data": [
{
"id": 1,
"adId": 2,
"coord": "[",
"instantBooking": true,
"minimumPrice": 4000,
"totalCountMultilisting": 1
}
],
"paginator": {
"pageNumber": 1,
"count": 100,
"itemCountPerPage": 10,
"pages": 10
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"data": {
"type": "array"
},
"paginator": {
"type": "object",
"properties": {
"pageNumber": {
"type": "number"
},
"count": {
"type": "number"
},
"itemCountPerPage": {
"type": "number"
},
"pages": {
"type": "number"
}
}
}
}
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Blocked Markers ¶
Retrieve map markers of an area not available in given datesGET/markers/blocked/{cityId}{?type,topology,flexibleMoveIn,flexibleMoveOut,moveInFrom,moveInTo,moveOutFrom,moveOutTo,bathrooms,budget,features,ids,bed_type,northEastBoundary,southWestBoundary,poi,instantBooking,review_rating,verified,areaId,superLister,noDeposit,plan,refreshAvailabilitiesDateFrom,refreshAvailabilitiesDateTo,firstAvailableDateFrom,firstAvailableDateTo,scoreFrom}
Example URI
- cityId
string(required) Example: madrid- type
array[string](optional) Example: roomsType of the ad
- Members:
- apartments
- rooms
- residences
- studios
- Members:
- topology
array[string](optional) Example: 4moreNumber of bedrooms of the ad
Choices:
12344more- move-in
string(optional) Example: 2000-01-01Date to move in (format YYYY-MM-DD)
- move-out
string(optional) Example: 2001-01-01Date to move out (format YYYY-MM-DD)
- flexibleMoveIn
number(optional) Example: 1Transforms the strict move-in date into a flexible range
Choices:
01- flexibleMoveOut
number(optional) Example: 1Transforms the strict move-out date into a flexible range
Choices:
01- moveInFrom
string(optional) Example: 2000-01-01Start of the range for move in (format YYYY-MM-DD)
- moveInTo
string(optional) Example: 2000-01-15End of the range for move in (format YYYY-MM-DD)
- moveOutFrom
string(optional) Example: 2001-01-01Start of the range for move out (format YYYY-MM-DD)
- moveOutTo
string(optional) Example: 2001-01-15End of the range for move out (format YYYY-MM-DD)
- bathrooms
array[string](optional) Example: 3moreNumber of bathrooms in the property
Choices:
1233more- features
array[string](optional) Example: heatingArray of desired features of ad
Choices:
heatingpetsbalconypoolparkingelevatorair_conditioningwithDeskensuiteRoomsmokingAllowedexterioronly_maleonly_femaleprofessionalscouplesstudentserasmuselectricitywatergaswifimeal_servicecleaning_servicecentral_heatcouncil_taxbed_linendryerovendishwasherwashing_machine- listing-id
number(optional) Example: 12345Listing ID
- ids
array[number](optional) Example: 12345- bed_type
string(optional) Example: singleTypes of bed comma separated
Choices:
singledoubletwinbunk- northEastBoundary
string(optional) Example: 40.4316414,-3.7102201NE corner coordinates (format X,Y)
- southWestBoundary
string(optional) Example: 40.4316414,-3.7102201NE corner coordinates (format X,Y)
- poi
string(optional) Example: 40.4316414,-3.7102201Point Of Interest coordinates (format X,Y)
- instantBooking
number(optional) Example: 1Listing can be directly booked if conditions are meet
Choices:
01- review_rating
number(optional) Example: 5Rating of ad between 1 and 5
Choices:
12345- availabilities-updated
number(optional) Example: 1Ad availability has been updated
Choices:
01- budget
string(optional) Example: 500-1000Range of budget (format MIN-MAX)
- verified
number(optional) Example: 1Listing is verified by one of our homechekers
Choices:
01- areaId
array[number](optional) Example: 123- superLister
number(optional) Example: 1Listing is owned by a landlord who meets certain quality criteria
Choices:
01- noDeposit
number(optional) Example: 1If 1, returns only listings with securityDepositType=βnoSecurityDepositβ
Choices:
01- scoreFrom
number(optional) Example: 20From 0 to 100. If lower or greater, the filter is not apply
- plan
string(optional)It returns markers with given plan
Choices:
standardpremiumselect- refreshAvailabilitiesDateFrom
string(optional) Example: 2000-01-01Start of the range for refresh availabilities date (format YYYY-MM-DD)
- refreshAvailabilitiesDateTo
string(optional) Example: 2000-01-15End of the range for refresh availabilities date (format YYYY-MM-DD)
- firstAvailableDateFrom
string(optional) Example: 2000-01-01Start of the range for first available date (format YYYY-MM-DD)
- firstAvailableDateTo
string(optional) Example: 2000-01-15End of the range for first available date (format YYYY-MM-DD)
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
{
"count": 100,
"total": 1000,
"_embedded": {
"markers": [
{
"id": 1,
"adId": 2,
"coord": "[",
"instantBooking": true,
"minimumPrice": 4000
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"count": {
"type": "number"
},
"total": {
"type": "number"
},
"_embedded": {
"type": "object",
"properties": {
"markers": {
"type": "array"
}
}
}
}
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Facets ¶
Facets ¶
- Request (application/json)
Prices Histogram ¶
Prices Histogram ¶
Retrieve list of ad prices of an areaGET/histogram-prices/{cityId}{?type,topology,flexibleMoveIn,flexibleMoveOut,moveInFrom,moveInTo,moveOutFrom,moveOutTo,bathrooms,features,ids,bed_type,northEastBoundary,southWestBoundary,poi,instantBooking,review_rating,verified,areaId,superLister,noDeposit,plan,refreshAvailabilitiesDateFrom,refreshAvailabilitiesDateTo,firstAvailableDateFrom,firstAvailableDateTo}
Example URI
- cityId
string(required) Example: madrid- type
array[string](optional) Example: roomsType of ad
- Members:
- βapartmentsβ
- βroomsβ
- βresidencesβ
- βstudiosβ
- Members:
- topology
array(optional)Number of bedrooms of ad
Choices:
'1''2''3''4''4more'- move-in
string(optional) Example: 2000-01-01Date to move in (format YYYY-MM-DD)
- move-out
string(optional) Example: 2001-01-01Date to move out (format YYYY-MM-DD)
- flexibleMoveIn
number(optional) Example: 1Transforms the strict move-in date into a flexible range
Choices:
01- flexibleMoveOut
number(optional) Example: 1Transforms the strict move-out date into a flexible range
Choices:
01- moveInFrom
string(optional) Example: 2000-01-01Start of the range for move in (format YYYY-MM-DD)
- moveInTo
string(optional) Example: 2000-01-15End of the range for move in (format YYYY-MM-DD)
- moveOutFrom
string(optional) Example: 2001-01-01Start of the range for move out (format YYYY-MM-DD)
- moveOutTo
string(optional) Example: 2001-01-15End of the range for move out (format YYYY-MM-DD)
- bathrooms
array[string](optional) Example: 3moreNumber of bathrooms in the property
Choices:
1233more- features
array(optional)Array of desired features of ad
Choices:
'heating''pets''balcony''pool''parking''elevator''air_conditioning''withDesk''ensuiteRoom''smokingAllowed''exterior''only_male''only_female''professionals''couples''students''erasmus'electricity''water''gas''wifi''meal_service''cleaning_service''central_heat''council_tax''bed_linen''dryer''oven''dishwasher''washing_machine'- listing-id
string(optional)Listing ID
- ids
array(optional)- bed_type
string(optional)Types of bed comma separated
Choices:
'single''double''twin''bunk'- northEastBoundary
string(optional)NE corner coordinates (format X,Y)
- southWestBoundary
string(optional)NE corner coordinates (format X,Y)
- poi
string(optional)Point Of Interest coordinates (format X,Y)
- instantBooking
number(optional) Example: 1Listing can be directly booked if conditions are meet
Choices:
01- review_rating
string(optional)Rating of ad between 1 and 5
- availabilities-updated
string(optional)Ad availability has been updated
Choices:
'0''1'- verified
number(optional) Example: 1Listing is verified by one of our homechekers
Choices:
01- areaId
array[number](optional) Example: 123- superLister
number(optional) Example: 1Listing is owned by a landlord who meets certain quality criteria
Choices:
01- noDeposit
number(optional) Example: 1If 1, returns only listings with securityDepositType=βnoSecurityDepositβ
Choices:
01- plan
string(optional)It returns markers with given plan
Choices:
standardpremiumselect- refreshAvailabilitiesDateFrom
string(optional) Example: 2000-01-01Start of the range for refresh availabilities date (format YYYY-MM-DD)
- refreshAvailabilitiesDateTo
string(optional) Example: 2000-01-15End of the range for refresh availabilities date (format YYYY-MM-DD)
- firstAvailableDateFrom
string(optional) Example: 2000-01-01Start of the range for first available date (format YYYY-MM-DD)
- firstAvailableDateTo
string(optional) Example: 2000-01-15End of the range for first available date (format YYYY-MM-DD)
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
{
"ok": true,
"unitPrices": [
1
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"unitPrices": {
"type": "array",
"description": "Array of prices"
}
}
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Homecards ¶
Homecards ¶
Retrieve list of homecardsGET/homecards{?ids}
Example URI
- ids
array(optional) Example: 1234,5264
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
{
"ok": true,
"data": {
"homecards": [
{
"id": 1234,
"features": {},
"adId": 9632,
"roomId": 8521,
"type": "room_shared",
"title": "Single room",
"mainPhotoUrl": "",
"photoUrls": [],
"pricePerMonth": 900,
"monthlyPrice": {
"type": "fixed",
"minimumPrice": 900,
"fixedPrice": 900,
"pricesByMonth": []
},
"visited": true,
"neighborhoodName": "unsupported neighborhood name",
"runnerName": "Mike",
"url": "",
"favorite": false,
"checked": true,
"currencySymbol": "β¬",
"currencyLabel": "EUR",
"currencyIsoCode": "EUR",
"sharedRoom": true,
"roomType": "",
"aptFeatures": [],
"roomFeatures": [],
"suitFeatures": [],
"city": "madrid",
"refreshAvailabilitiesDate": "2016-04-07T09:00:58.000+0000",
"reviews": {
"count": 2,
"ratingAverage": 4.5
},
"instantBooking": {
"isEnabled": true,
"rules": [
{
"type": "ageRange",
"params": {
"minAge": 18,
"maxAge": 30
}
},
{
"type": "bookingTooEarly",
"params": {
"days": 50
}
},
{
"type": "minStay",
"params": {
"jan": 1,
"feb": 1,
"mar": 3,
"apr": 2,
"may": 2,
"jun": 3,
"jul": 1,
"aug": 2,
"sep": 3,
"oct": 2,
"nov": 2,
"dec": 2
}
},
{
"type": "couplesNotAllowed"
}
]
},
"discount": {
"quantity": 100,
"expiresAt": "2016-04-07T09:00:58.000+0000",
"month": 7
},
"firstAvailableDate `2019-02-01T00:00:00.000+0000`": "",
"isSuperlister": true,
"cancellationPolicy": "standard",
"plan": "standard",
"photos": [],
"otherPropetyPhotos": [],
"offers": [
{
"id": "aaaa-bbbb-cccc-dddd",
"discountType": "percentage",
"discountValue": 12,
"minStay": 30,
"maxStay": 90
}
],
"numberOfBathrooms": 1,
"numberOfBedrooms": 2,
"landlordId": "48e375af-7710-4557-9cde-fcd9080e52d8",
"location": {
"street": "Calle Vizcaya",
"postalCode": "28025",
"city": "Getafe"
},
"description": "Desc",
"homecardDescription": "Desc",
"bookingConditions": {
"securityDepositType": "percentage",
"securityDepositValue": 10000,
"adminFeeType": "noAdminFee",
"adminFeeValue": 0,
"contractDurationTypesAllowed": [
"temporal",
"permanent"
],
"hasVetting": true,
"hasRentCollection": true
},
"score": {
"points": 12,
"label": "30"
},
"firstPublishedDate `2018-05-11T01:24:56+0000`": "",
"updateDate `2021-12-01T10:00:38+0000`": "",
"area": null,
"areaName": null
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"data": {
"type": "object",
"properties": {
"homecards": {
"type": "array"
}
},
"required": [
"homecards"
]
}
},
"required": [
"ok",
"data"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Homecards extended ¶
Retrieve list of extended homecardsGET/extended-homecards{?ids}
Example URI
- ids
array(optional) Example: 1234,5264
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
{
"ok": true,
"data": {
"homecards": [
{
"id": 1234,
"features": {},
"adId": 9632,
"roomId": 8521,
"type": "room_shared",
"title": "Single room",
"mainPhotoUrl": "",
"photoUrls": [],
"pricePerMonth": 900,
"monthlyPrice": {
"type": "fixed",
"minimumPrice": 900,
"fixedPrice": 900,
"pricesByMonth": []
},
"visited": true,
"neighborhoodName": "unsupported neighborhood name",
"runnerName": "Mike",
"url": "",
"favorite": false,
"checked": true,
"currencySymbol": "β¬",
"currencyLabel": "EUR",
"currencyIsoCode": "EUR",
"sharedRoom": true,
"roomType": "",
"aptFeatures": [],
"roomFeatures": [],
"suitFeatures": [],
"city": "madrid",
"refreshAvailabilitiesDate": "2016-04-07T09:00:58.000+0000",
"reviews": {
"count": 2,
"ratingAverage": 4.5
},
"instantBooking": {
"isEnabled": true,
"rules": [
{
"type": "ageRange",
"params": {
"minAge": 18,
"maxAge": 30
}
},
{
"type": "bookingTooEarly",
"params": {
"days": 50
}
},
{
"type": "minStay",
"params": {
"jan": 1,
"feb": 1,
"mar": 3,
"apr": 2,
"may": 2,
"jun": 3,
"jul": 1,
"aug": 2,
"sep": 3,
"oct": 2,
"nov": 2,
"dec": 2
}
},
{
"type": "couplesNotAllowed"
}
]
},
"discount": {
"quantity": 100,
"expiresAt": "2016-04-07T09:00:58.000+0000",
"month": 7
},
"firstAvailableDate `2019-02-01T00:00:00.000+0000`": "",
"isSuperlister": true,
"cancellationPolicy": "standard",
"plan": "standard",
"photos": [],
"otherPropetyPhotos": [],
"offers": [
{
"id": "aaaa-bbbb-cccc-dddd",
"discountType": "percentage",
"discountValue": 12,
"minStay": 30,
"maxStay": 90
}
],
"numberOfBathrooms": 1,
"numberOfBedrooms": 2,
"landlordId": "48e375af-7710-4557-9cde-fcd9080e52d8",
"location": {
"street": "Calle Vizcaya",
"postalCode": "28025",
"city": "Getafe"
},
"description": "Desc",
"homecardDescription": "Desc",
"thingsWeLike": "We",
"thingsToKeepInMind": "Keep",
"score": {
"points": 12,
"label": "30"
}
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"data": {
"type": "object",
"properties": {
"homecards": {
"type": "array"
}
},
"required": [
"homecards"
]
}
},
"required": [
"ok",
"data"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Similar Listings ¶
Homecards ¶
Retrieve list of similar listingsGET/homecards/{propertyId}/similar
Example URI
- propertyId
number(required) Example: 1234- move-in
string(optional) Example: 2000-01-01Date to move in (format YYYY-MM-DD)
- move-out
string(optional) Example: 2001-01-01Date to move out (format YYYY-MM-DD)
200Headers
Content-Type: application/jsonBody
{
"ok": true,
"data": {
"homecards": [
{
"id": 1234,
"features": {},
"adId": 9632,
"roomId": 8521,
"type": "room_shared",
"title": "Single room",
"mainPhotoUrl": "",
"photoUrls": [],
"pricePerMonth": 900,
"monthlyPrice": {
"type": "fixed",
"minimumPrice": 900,
"fixedPrice": 900,
"pricesByMonth": []
},
"visited": true,
"neighborhoodName": "unsupported neighborhood name",
"runnerName": "Mike",
"url": "",
"favorite": false,
"checked": true,
"currencySymbol": "β¬",
"currencyLabel": "EUR",
"currencyIsoCode": "EUR",
"sharedRoom": true,
"roomType": "",
"aptFeatures": [],
"roomFeatures": [],
"suitFeatures": [],
"city": "madrid",
"refreshAvailabilitiesDate": "2016-04-07T09:00:58.000+0000",
"reviews": {
"count": 2,
"ratingAverage": 4.5
},
"instantBooking": {
"isEnabled": true,
"rules": [
{
"type": "ageRange",
"params": {
"minAge": 18,
"maxAge": 30
}
},
{
"type": "bookingTooEarly",
"params": {
"days": 50
}
},
{
"type": "minStay",
"params": {
"jan": 1,
"feb": 1,
"mar": 3,
"apr": 2,
"may": 2,
"jun": 3,
"jul": 1,
"aug": 2,
"sep": 3,
"oct": 2,
"nov": 2,
"dec": 2
}
},
{
"type": "couplesNotAllowed"
}
]
},
"discount": {
"quantity": 100,
"expiresAt": "2016-04-07T09:00:58.000+0000",
"month": 7
},
"firstAvailableDate `2019-02-01T00:00:00.000+0000`": "",
"isSuperlister": true,
"cancellationPolicy": "standard",
"plan": "standard",
"photos": [],
"otherPropetyPhotos": [],
"offers": [
{
"id": "aaaa-bbbb-cccc-dddd",
"discountType": "percentage",
"discountValue": 12,
"minStay": 30,
"maxStay": 90
}
],
"numberOfBathrooms": 1,
"numberOfBedrooms": 2,
"landlordId": "48e375af-7710-4557-9cde-fcd9080e52d8",
"location": {
"street": "Calle Vizcaya",
"postalCode": "28025",
"city": "Getafe"
},
"description": "Desc",
"homecardDescription": "Desc",
"bookingConditions": {
"securityDepositType": "percentage",
"securityDepositValue": 10000,
"adminFeeType": "noAdminFee",
"adminFeeValue": 0,
"contractDurationTypesAllowed": [
"temporal",
"permanent"
],
"hasVetting": true,
"hasRentCollection": true
},
"score": {
"points": 12,
"label": "30"
},
"firstPublishedDate `2018-05-11T01:24:56+0000`": "",
"updateDate `2021-12-01T10:00:38+0000`": "",
"area": null,
"areaName": null
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"data": {
"type": "object",
"properties": {
"homecards": {
"type": "array"
}
},
"required": [
"homecards"
]
}
},
"required": [
"ok",
"data"
]
}400Headers
Content-Type: application/jsonBody
{
"ok": false,
"message": "Hello, world!"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"message": {
"type": "string",
"description": "Validator message"
}
}
}404Headers
Content-Type: application/jsonBody
{
"ok": true,
"message": "'Rentable Unit with _field_ equals to _value_ does not exist'"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"message": {
"type": "string"
}
}
}Rentable Units ¶
Rentable Unit Info ¶
Obtain rentable unit informationGET/listings/{listingId}
Example URI
- listingId
number(required) Example: 12345Identifier of the resource.
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
{
"isRoomsAggregator": true,
"listings": {
"id": 120171,
"adId": 120171,
"title": "Awesome room in council house in London",
"adArea": 146,
"adTitle": null,
"minStay": 30,
"maxStay": 730,
"checked": true,
"contractType": "monthly",
"cancellationPolicy": "standard",
"hasOwnPhotos": true,
"maxGapBetweenBookings": 0,
"bookingAcceptanceMinDays": 0,
"bookingAcceptanceMaxDays": 0,
"canonicalLanguage": "en",
"refreshAvailabilitiesDate": "2017",
"firstPublicationDate": "2017",
"roomsInApartment": [
{
"id": 80013,
"checked": true,
"price": 570,
"monthlyPrice": {
"type": "fixed",
"minimumPrice": 900,
"fixedPrice": 900,
"pricesByMonth": []
},
"currency": {
"symbol": "β¬",
"label": "EUR",
"iso": "EUR"
},
"title": "Bedroom 1",
"longTitle": "Double Bed in Rooms to rent in a fantastic 4 bedroom apartment in Madrid city centre",
"description": "Bedroom 1 has a double bed. There is also a built",
"features": {},
"aptFeatures": [],
"roomFeatures": [],
"suitFeatures": [],
"firstAvailability": {
"isoFormat": "2017",
"stringFormat": "Aug 1st, 201"
},
"mainPhoto": "https://sah",
"url": "/madrid/for",
"floorplanReference": 1,
"contents": {
"en": {
"title": "Bedroom 1",
"description": "<p>Bedroom 1 has a double bed. There is also a built",
"longTitle": "Double Bed in Rooms to rent in a fantastic 4 bedroom apartment in Madrid city centre"
}
}
}
],
"type": "room_shared_apt",
"ptype": {
"title": "rooms",
"breadcrumbLabel": "breadcrumb.label.rooms_for_rent",
"url": "/for"
},
"availableFromDateIso8601": "2017",
"unavailabilities": [
{
"from": "2017",
"to": "2017"
}
],
"availabilities": [
{
"from": "1900",
"to": "2017"
}
],
"moveInDatesRanges": [
{
"from": "1900",
"to": "2017"
}
],
"neighVid": [
{
"embedUrl": "https://www.youtube.com/embed/luo7ON_rSZQ",
"name": "Double Bed in Rooms to rent in a fantastic 4 bedroom apartment in Madrid city centre",
"description": "**Centro:** \\n\\nThe geographical center of Madrid and Spain is the Puerta del Sol",
"thumbnailUrl": "https://sah",
"uploadDate": "2014"
}
],
"city": "Madrid",
"cityId": "madrid",
"address": "Calle del PrΓncipe",
"area": "madrid",
"coords": "[",
"countryCode": "ES",
"plan": "standard",
"photos": {
"principal": {
"detail_full_screen": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1600_verified_ur_15_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg",
"detail_slider": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1152_verified_ur_6_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg",
"slider_full": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/fsobscalew_1600_900_verified_ur_15_50/4e886aa4c15b53ed0e12889b7c195cea50d30b89e582083b3022158e.jpg",
"slider": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/fspt_640_640/4e886aa4c15b53ed0e12889b7c195cea50d30b89e582083b3022158e.jpg"
},
"runner": {
"detail_full_screen": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1600_verified_ur_15_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg",
"detail_slider": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1152_verified_ur_6_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg",
"slider_full": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/fsobscalew_1600_900_verified_ur_15_50/4e886aa4c15b53ed0e12889b7c195cea50d30b89e582083b3022158e.jpg",
"slider": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/fspt_640_640/4e886aa4c15b53ed0e12889b7c195cea50d30b89e582083b3022158e.jpg"
},
"verified": {
"detail_full_screen": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1600_verified_ur_15_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg"
},
"detail_slider": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1152_verified_ur_6_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg"
}
},
"nonVerified": {
"detail_full_screen": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1600_verified_ur_15_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg"
},
"detail_slider": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1152_verified_ur_6_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg"
}
},
"floorplans": {
"f84f52577b049905e3f0eefd68ac4372ebb3e296fba59356b05fc179": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/cropsw_170_579_verified_ur_6_50/f84f52577b049905e3f0eefd68ac4372ebb3e296fba59356b05fc179.jpg"
},
"captions": {},
"photoCaptions": [
{
"id": "7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d",
"contents": {
"en": {
"caption": "Double Bedroom 1"
}
}
}
]
},
"photosV2": {
"photos360": {
"large360": {
"23d9237ce96023229389363e55fec7c8e9f19ac285e96d0af0dc22af": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smw_5376/23d9237ce96023229389363e55fec7c8e9f19ac285e96d0af0dc22af.jpg"
},
"small360": {
"23d9237ce96023229389363e55fec7c8e9f19ac285e96d0af0dc22af": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smw_2688/23d9237ce96023229389363e55fec7c8e9f19ac285e96d0af0dc22af.jpg"
}
},
"principal": {
"detail_full_screen": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1600_verified_ur_15_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg",
"detail_slider": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1152_verified_ur_6_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg",
"slider_full": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/fsobscalew_1600_900_verified_ur_15_50/4e886aa4c15b53ed0e12889b7c195cea50d30b89e582083b3022158e.jpg",
"slider": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/fspt_640_640/4e886aa4c15b53ed0e12889b7c195cea50d30b89e582083b3022158e.jpg"
},
"runner": {
"detail_full_screen": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1600_verified_ur_15_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg",
"detail_slider": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1152_verified_ur_6_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg",
"slider_full": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/fsobscalew_1600_900_verified_ur_15_50/4e886aa4c15b53ed0e12889b7c195cea50d30b89e582083b3022158e.jpg",
"slider": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/fspt_640_640/4e886aa4c15b53ed0e12889b7c195cea50d30b89e582083b3022158e.jpg"
},
"verified": {
"detail_full_screen": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1600_verified_ur_15_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg"
},
"detail_slider": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1152_verified_ur_6_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg"
}
},
"nonVerified": {
"detail_full_screen": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1600_verified_ur_15_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg"
},
"detail_slider": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1152_verified_ur_6_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg"
}
},
"propertyPhotos": {
"detail_full_screen": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1600_verified_ur_15_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg"
},
"detail_slider": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/smww_1152_verified_ur_6_50/7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d.jpg"
}
},
"floorplans": {
"f84f52577b049905e3f0eefd68ac4372ebb3e296fba59356b05fc179": "https://sah-dev-photos-resized.s3-eu-west-1.amazonaws.com/cropsw_170_579_verified_ur_6_50/f84f52577b049905e3f0eefd68ac4372ebb3e296fba59356b05fc179.jpg"
},
"captions": {},
"photoCaptions": [
{
"id": "7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d",
"contents": {
"en": {
"caption": "Double Bedroom 1"
}
}
}
]
},
"videos": [
{
"embedUrl": "https://www.youtube.com/watch?v=X4KXamTJzXk",
"videoTranscription": "null",
"videoId": "X4KXamTJzXk",
"name": "Double Bed in Rooms to rent in a fantastic 4 bedroom apartment in Madrid city centre",
"description": "Rooms are available to rent in a beautiful 4",
"thumbnailUrl": "https://sah",
"uploadDate": "2014"
}
],
"features": {},
"extraFeatures": {},
"bills": {},
"gender": {},
"suitability": {},
"restrictions": [],
"numberOfBedrooms": 0,
"numberOfBathrooms": 0,
"mainRules": {},
"pricing": {
"price": 570,
"monthlyPrice": {
"type": "fixed",
"minimumPrice": 900,
"fixedPrice": 900,
"pricesByMonth": []
},
"currencyLabel": "EUR",
"currencySymbol": "β¬",
"reservationPrice": {
"price": 570,
"currencyCode": "EUR",
"numberOfWeeks": 8
}
},
"contents": {
"en": {
"title": "Double Bed in Rooms to rent in a fantastic 4 bedroom apartment in Madrid city centre",
"propertyTitle": "Rooms to rent in a fantastic 4 bedroom apartment in Madrid city centre",
"adTitle": "Ad Title",
"description": "<p>Rooms are available to rent in a beautiful 4",
"header": "null",
"whatWeLiked": [
"<ul>\\n<li>French doors lead to balconies throughout the apartment",
"letting in lots of natural light.</li>\\n<li>In the living and dining area",
"there is a long white table with six chairs",
"and a long",
"L"
],
"thingsToKeepInMind": "null",
"details": "<ul>\\n<li>Property type: apartment</li>\\n<li>Floor: 2nd</li>\\n<li>Elevator: yes</li>\\n<li>Number of bathrooms: 2</li>\\n<li>Wi",
"landlordPolicies": [
"<ul>\\n<li>Speaks English: yes</li>\\n<li>Lives on property: no</li>\\n<li>Deposit: to be discussed with the landlord</li>\\n<li>Payment method: cash; bank transaction</li>\\n<li>No smoking or pets</li>\\n<li>Rent: must be paid on 1st of each month",
"regardless of date of check"
],
"transportation": "<ul>\\n<li>The apartment is just a three minute walk from the Anton Martin station a 5",
"neighborhoodDescription": "<p><strong>Centro:</strong></p>\\n\\n<p>The geographical center of Madrid</p>\\n",
"flatmates": "null",
"seoMetaTitle": "Rooms in 4-bedroom apartment for rent in Madrid City Centre",
"propertySeoMetaTitle": "Rooms in 4-bedroom apartment for rent in Madrid City Centre",
"seoMetaDescription": "Spotahome presents a fantastic 4 bedroom apartment for rent in Madrid city centre. Rent your next apartment in Madrid with Spotahome!",
"isManualTranslated": true,
"isTranslationNeeded": false
}
},
"manuallyTranslatedLocales": [
"en",
"es"
],
"areaInfo": {
"id": 1,
"slug": "madrid",
"limits": {
"ne": [
-2.617648,
40.998106
],
"sw": [
-4.856799,
39.857114
]
}
},
"areaId": 1,
"runner": {
"firstName": "Mike"
},
"reviews": {
"count": 2,
"ratingAverage": 4.5
},
"areaSlug": "madrid",
"userGroup": "normal",
"seo": {
"basic": {
"title": "Rooms in 4",
"description": "Spotahome presents a fantastic 4 bedroom apartment for rent in Madrid city centre. Rent your next apartment in Madrid with Spotahome!",
"indexable": true
},
"twitter": {
"card": "photo",
"title": "Rooms in 4",
"description": "Spotahome presents a fantastic 4 bedroom apartment for rent in Madrid city centre. Rent your next apartment in Madrid with Spotahome!",
"url": "http://local.spotahome.com:9090/madrid/for",
"imageUrl": "https://sah"
},
"og": {
"type": "spotahome:ad",
"title": "Rooms in 4",
"description": "Spotahome presents a fantastic 4 bedroom apartment for rent in Madrid city centre. Rent your next apartment in Madrid with Spotahome!",
"url": "http://local.spotahome.com:9090/madrid/for",
"imageUrl": "https://sah",
"siteName": "Room in shared apartment from β¬570 per month in Madrid. Double Bed in Rooms to rent in a fantastic 4 bedroom apartment in Madrid city centre",
"locale": "en_US"
},
"canonical": "http://local.spotahome.com:9090/madrid/for"
},
"ecommerceProductData": {
"id": "80005",
"name": "Double Bed in Rooms to rent in a fantastic 4 bedroom apartment in Madrid city centre",
"category": "room_shared",
"brand": "Spotahome",
"price": 570,
"coupon": "AAAA",
"quantity": 1
},
"customDimensions": [
{
"id": "dimension1",
"customData": "Madrid"
}
],
"instantBooking": {
"isEnabled": true,
"rules": [
{
"type": "ageRange",
"params": {
"minAge": 18,
"maxAge": 30
}
},
{
"type": "bookingTooEarly",
"params": {
"days": 50
}
},
{
"type": "minStay",
"params": {
"jan": 1,
"feb": 1,
"mar": 3,
"apr": 2,
"may": 2,
"jun": 3,
"jul": 1,
"aug": 2,
"sep": 3,
"oct": 2,
"nov": 2,
"dec": 2
}
},
{
"type": "couplesNotAllowed"
}
]
},
"discount": {
"quantity": 100,
"expiresAt": "2016-04-07T09:00:58.000+0000",
"month": 7
},
"isSuperlister": true,
"landlordId": "48e375af-7710-4557-9cde-fcd9080e52d8",
"bookingConditions": {
"securityDepositType": "fixed",
"securityDepositValue": 10000,
"adminFeeType": "noAdminFee",
"adminFeeValue": 10000,
"contractDurationTypesAllowed": [
"temporal",
"permanent"
],
"hasVetting": true,
"hasRentCollection": true
},
"score": {
"points": 80.5,
"label": "low"
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"isRoomsAggregator": {
"type": "boolean"
},
"listings": {
"type": "object",
"properties": {
"id": {
"type": "number"
},
"adId": {
"type": "number"
},
"title": {
"type": "string"
},
"adArea": {
"type": "number"
},
"adTitle": {
"type": [
"string",
"null"
]
},
"minStay": {
"type": "number"
},
"maxStay": {
"type": "number"
},
"checked": {
"type": "boolean"
},
"contractType": {
"type": "string"
},
"cancellationPolicy": {
"type": "string"
},
"hasOwnPhotos": {
"type": "boolean"
},
"maxGapBetweenBookings": {
"type": "number"
},
"bookingAcceptanceMinDays": {
"type": "number"
},
"bookingAcceptanceMaxDays": {
"type": "number"
},
"canonicalLanguage": {
"type": "string"
},
"refreshAvailabilitiesDate": {
"type": "string",
"description": "05-29T07:17:35+0000 (string, nullable, required)"
},
"firstPublicationDate": {
"type": "string",
"description": "05-29T07:17:35+0000 (string, nullable, required)"
},
"roomsInApartment": {
"type": "array"
},
"type": {
"type": "string"
},
"ptype": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"breadcrumbLabel": {
"type": "string"
},
"url": {
"type": "string",
"description": "rent:rooms (string, required)"
}
},
"required": [
"title",
"breadcrumbLabel"
]
},
"availableFromDateIso8601": {
"type": "string",
"description": "08-01 (string, required)"
},
"unavailabilities": {
"type": "array"
},
"availabilities": {
"type": "array"
},
"moveInDatesRanges": {
"type": "array"
},
"neighVid": {
"type": "array"
},
"city": {
"type": "string"
},
"cityId": {
"type": "string"
},
"address": {
"type": "string"
},
"area": {
"type": "string"
},
"coords": {
"type": "string",
"description": "3.69964233, 40.41402062] (array[number], required) - Pair of numbers"
},
"countryCode": {
"type": "string"
},
"plan": {
"type": "string"
},
"photos": {
"type": "object",
"properties": {
"principal": {
"type": "object",
"properties": {
"detail_full_screen": {
"type": "string"
},
"detail_slider": {
"type": "string"
},
"slider_full": {
"type": "string"
},
"slider": {
"type": "string"
}
},
"required": [
"detail_full_screen",
"detail_slider",
"slider_full",
"slider"
]
},
"runner": {
"type": "object",
"properties": {
"detail_full_screen": {
"type": "string"
},
"detail_slider": {
"type": "string"
},
"slider_full": {
"type": "string"
},
"slider": {
"type": "string"
}
},
"required": [
"detail_full_screen",
"detail_slider",
"slider_full",
"slider"
]
},
"verified": {
"type": "object",
"properties": {
"detail_full_screen": {
"type": "object",
"properties": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": {
"type": "string"
}
},
"required": [
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d"
]
},
"detail_slider": {
"type": "object",
"properties": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": {
"type": "string"
}
},
"required": [
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d"
]
}
},
"required": [
"detail_full_screen",
"detail_slider"
]
},
"nonVerified": {
"type": "object",
"properties": {
"detail_full_screen": {
"type": "object",
"properties": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": {
"type": "string"
}
},
"required": [
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d"
]
},
"detail_slider": {
"type": "object",
"properties": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": {
"type": "string"
}
},
"required": [
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d"
]
}
},
"required": [
"detail_full_screen",
"detail_slider"
]
},
"floorplans": {
"type": "object",
"properties": {
"f84f52577b049905e3f0eefd68ac4372ebb3e296fba59356b05fc179": {
"type": "string"
}
}
},
"captions": {
"type": "object",
"properties": {},
"description": "formed by caption identifiers equals to its title: {7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d: Double Bedroom 1, 10c4d447718ba7678d93218d0f2409698e33a3c6b7a5cbc9aa89872c: Double Bedroom 1}"
},
"photoCaptions": {
"type": "array"
}
},
"required": [
"principal",
"runner",
"verified",
"nonVerified",
"floorplans",
"captions",
"photoCaptions"
]
},
"photosV2": {
"type": [
"object",
"null"
],
"properties": {
"photos360": {
"type": "object",
"properties": {
"large360": {
"type": "object",
"properties": {
"23d9237ce96023229389363e55fec7c8e9f19ac285e96d0af0dc22af": {
"type": "string"
}
},
"required": [
"23d9237ce96023229389363e55fec7c8e9f19ac285e96d0af0dc22af"
]
},
"small360": {
"type": "object",
"properties": {
"23d9237ce96023229389363e55fec7c8e9f19ac285e96d0af0dc22af": {
"type": "string"
}
},
"required": [
"23d9237ce96023229389363e55fec7c8e9f19ac285e96d0af0dc22af"
]
}
},
"required": [
"large360",
"small360"
]
},
"principal": {
"type": "object",
"properties": {
"detail_full_screen": {
"type": "string"
},
"detail_slider": {
"type": "string"
},
"slider_full": {
"type": "string"
},
"slider": {
"type": "string"
}
},
"required": [
"detail_full_screen",
"detail_slider",
"slider_full",
"slider"
]
},
"runner": {
"type": "object",
"properties": {
"detail_full_screen": {
"type": "string"
},
"detail_slider": {
"type": "string"
},
"slider_full": {
"type": "string"
},
"slider": {
"type": "string"
}
},
"required": [
"detail_full_screen",
"detail_slider",
"slider_full",
"slider"
]
},
"verified": {
"type": "object",
"properties": {
"detail_full_screen": {
"type": "object",
"properties": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": {
"type": "string"
}
},
"required": [
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d"
]
},
"detail_slider": {
"type": "object",
"properties": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": {
"type": "string"
}
},
"required": [
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d"
]
}
},
"required": [
"detail_full_screen",
"detail_slider"
]
},
"nonVerified": {
"type": "object",
"properties": {
"detail_full_screen": {
"type": "object",
"properties": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": {
"type": "string"
}
},
"required": [
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d"
]
},
"detail_slider": {
"type": "object",
"properties": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": {
"type": "string"
}
},
"required": [
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d"
]
}
},
"required": [
"detail_full_screen",
"detail_slider"
]
},
"propertyPhotos": {
"type": "object",
"properties": {
"detail_full_screen": {
"type": "object",
"properties": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": {
"type": "string"
}
},
"required": [
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d"
]
},
"detail_slider": {
"type": "object",
"properties": {
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d": {
"type": "string"
}
},
"required": [
"7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d"
]
}
},
"required": [
"detail_full_screen",
"detail_slider"
]
},
"floorplans": {
"type": "object",
"properties": {
"f84f52577b049905e3f0eefd68ac4372ebb3e296fba59356b05fc179": {
"type": "string"
}
}
},
"captions": {
"type": "object",
"properties": {},
"description": "formed by caption identifiers equals to its title: {7b54365e4113ff0d47f2d40179a49bfe48de436adff65da5337c3c8d: Double Bedroom 1, 10c4d447718ba7678d93218d0f2409698e33a3c6b7a5cbc9aa89872c: Double Bedroom 1}"
},
"photoCaptions": {
"type": "array"
}
},
"required": [
"photos360",
"principal",
"runner",
"verified",
"nonVerified",
"floorplans",
"captions",
"photoCaptions"
]
},
"videos": {
"type": "array"
},
"features": {
"type": "object",
"properties": {},
"description": "formed by feature codes equals to true for current ad: {1100: true, 3015: true}"
},
"extraFeatures": {
"type": "object",
"properties": {},
"description": "formed by feature codes equals to true for current ad: {1100: true, 3015: true}"
},
"bills": {
"type": "object",
"properties": {},
"description": "formed by feature codes equals to true for current ad: {1100: true, 3015: true}"
},
"gender": {
"type": "object",
"properties": {}
},
"suitability": {
"type": "object",
"properties": {}
},
"restrictions": {},
"numberOfBedrooms": {
"type": "number"
},
"numberOfBathrooms": {
"type": "number"
},
"mainRules": {
"type": "object",
"properties": {}
},
"pricing": {
"type": "object",
"properties": {
"price": {
"type": "number"
},
"monthlyPrice": {
"type": [
"object",
"null"
],
"properties": {
"type": {
"type": "string",
"enum": [
"fixed",
"byMonth"
]
},
"minimumPrice": {
"type": "number"
},
"fixedPrice": {
"type": "number",
"description": "Set only if type equals to 'fixed'"
},
"pricesByMonth": {
"type": "array",
"description": "Set only if type equals to 'byMonth'"
}
},
"required": [
"type",
"minimumPrice"
]
},
"currencyLabel": {
"type": "string"
},
"currencySymbol": {
"type": "string"
},
"reservationPrice": {
"type": "object",
"properties": {
"price": {
"type": "number"
},
"currencyCode": {
"type": "string"
},
"numberOfWeeks": {
"type": "number"
}
},
"required": [
"price",
"currencyCode",
"numberOfWeeks"
]
}
},
"required": [
"price",
"monthlyPrice",
"currencyLabel",
"currencySymbol",
"reservationPrice"
]
},
"contents": {
"type": [
"object",
"null"
],
"properties": {
"en": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"propertyTitle": {
"type": [
"string",
"null"
]
},
"adTitle": {
"type": "string"
},
"description": {
"type": "string",
"description": "bedroom, 2-bathroom historic flat on Calle del PrΓncipe in the center of Madrid. The large apartment has a floor area of 146βmΒ², which includes a large kitchen and living area. The living area has a stone fireplace with French doors on either side, opening to the balcony, which looks down on a historic street. The very spacious kitchen has lots of storage and food preparation space, and has white, tiled walls, yellow cupboards and a window that opens to the courtyard. There are also 2 full bathrooms.</p>\\n\\n<p>Living in the heart of Madrid, you can find everything you need, and a lot more besides. It is just a short walk to many of the historic sites, monuments, parks, and museums of the city, and of course, the nightlife in the area is fantastic. You'll be living right next to the beautiful Plaza Santa Ana, and there are literally hundreds of bars and restaurants within a few minute's walk for you to explore and sample. There is plenty of shopping in the area, including many of the city's flagship stores around nearby Puerta del Sol, Callao, and Gran Via.</p>\\n (string, required)"
},
"header": {
"type": "string"
},
"whatWeLiked": {
"type": "array",
"description": "shaped sofa β lots of space to socialise with your flatmates.</li>\\n<li>Living in the heart of the city, all of the best things about Madrid are on your doorstep.</li>\\n</ul>\\n (string, required)"
},
"thingsToKeepInMind": {
"type": "string"
},
"details": {
"type": "string",
"description": "Fi installed: yes</li>\\n<li>Wi-Fi activated: yes</li>\\n</ul>\\n (string, required)"
},
"landlordPolicies": {
"type": "array",
"description": "in. (E.g., if you move in on the 20th of August, paying 1 months rent, the next months rent will be due on 1st September, <em>not</em> 20th September.)</li>\\n<li>Cleaning: mandatory cleaning fee at conclusion of contract</li>\\n</ul>\\n(string, required)"
},
"transportation": {
"type": "string",
"description": "minute walk from the apartment.</li>\\n</ul>\\n (string, required)"
},
"neighborhoodDescription": {
"type": "string"
},
"flatmates": {
"type": "string"
},
"seoMetaTitle": {
"type": "string"
},
"propertySeoMetaTitle": {
"type": [
"string",
"null"
]
},
"seoMetaDescription": {
"type": "string"
},
"isManualTranslated": {
"type": "boolean"
},
"isTranslationNeeded": {
"type": "boolean"
}
},
"required": [
"title",
"adTitle",
"header",
"thingsToKeepInMind",
"neighborhoodDescription",
"flatmates",
"seoMetaTitle",
"seoMetaDescription",
"isManualTranslated",
"isTranslationNeeded"
]
}
},
"description": "Each key represents the language content"
},
"manuallyTranslatedLocales": {
"type": "array"
},
"areaInfo": {
"type": "object",
"properties": {
"id": {
"type": "number"
},
"slug": {
"type": "string"
},
"limits": {
"type": "object",
"properties": {
"ne": {
"type": "array"
},
"sw": {
"type": "array"
}
}
}
}
},
"areaId": {
"type": "number"
},
"runner": {
"type": "object",
"properties": {
"firstName": {
"type": "string"
},
"photoUrl": {
"type": "string"
}
},
"required": [
"firstName"
]
},
"reviews": {
"type": "object",
"properties": {
"count": {
"type": "number"
},
"ratingAverage": {
"type": "number"
}
},
"required": [
"count",
"ratingAverage"
]
},
"areaSlug": {
"type": "string"
},
"userGroup": {
"type": "string"
},
"seo": {
"type": "object",
"properties": {
"basic": {
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "bedroom apartment for rent in Madrid City Centre (string, required)"
},
"description": {
"type": "string"
},
"indexable": {
"type": "boolean"
}
},
"required": [
"description",
"indexable"
]
},
"twitter": {
"type": "object",
"properties": {
"card": {
"type": "string"
},
"title": {
"type": "string",
"description": "bedroom apartment for rent in Madrid City Centre (string, required)"
},
"description": {
"type": "string"
},
"url": {
"type": "string",
"description": "rent:rooms/80013 (string, required)"
},
"imageUrl": {
"type": "string",
"description": "dev-photos-resized.s3-eu-west-1.amazonaws.com/fsosw_960_540_verified_ur_6_50/2cd7168706448cf9b66e02c1bfcb5dab925b7749a03d50deccc5feba.jpg (string, required)"
}
},
"required": [
"description"
]
},
"og": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"title": {
"type": "string",
"description": "bedroom apartment for rent in Madrid City Centre (string, required)"
},
"description": {
"type": "string"
},
"url": {
"type": "string",
"description": "rent:rooms/80013 (string, required)"
},
"imageUrl": {
"type": "string",
"description": "dev-photos-resized.s3-eu-west-1.amazonaws.com/fsosw_960_540_verified_ur_6_50/2cd7168706448cf9b66e02c1bfcb5dab925b7749a03d50deccc5feba.jpg (string, required)"
},
"siteName": {
"type": "string"
},
"locale": {
"type": "string"
}
},
"required": [
"type",
"description",
"siteName",
"locale"
]
},
"canonical": {
"type": "string",
"description": "rent:rooms/80013 (string, required)"
}
},
"required": [
"basic",
"twitter",
"og"
]
},
"ecommerceProductData": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"category": {
"type": "string"
},
"brand": {
"type": "string"
},
"price": {
"type": "number"
},
"coupon": {
"type": "string"
},
"quantity": {
"type": "number"
}
},
"required": [
"id",
"name",
"category",
"brand",
"price",
"coupon",
"quantity"
]
},
"customDimensions": {
"type": "array"
},
"instantBooking": {
"type": "object",
"properties": {
"isEnabled": {
"type": "boolean"
},
"rules": {
"type": "array"
}
},
"required": [
"isEnabled"
]
},
"discount": {
"type": "object",
"properties": {
"quantity": {
"type": "number"
},
"expiresAt": {
"type": "string",
"description": "Date format"
},
"month": {
"type": "number"
}
},
"required": [
"quantity",
"expiresAt",
"month"
]
},
"isSuperlister": {
"type": "boolean"
},
"landlordId": {
"type": "string"
},
"bookingConditions": {
"type": "object",
"properties": {
"securityDepositType": {
"type": "string",
"enum": [
"fixed",
"percentage",
"noSecurityDeposit",
"notDefined"
]
},
"securityDepositValue": {
"type": "number"
},
"adminFeeType": {
"type": "string",
"enum": [
"noAdminFee",
"fixed",
"monthlyPercentage",
"tcvPercentage",
"notDefined"
]
},
"adminFeeValue": {
"type": "number"
},
"contractDurationTypesAllowed": {
"type": "array"
},
"hasVetting": {
"type": "boolean"
},
"hasRentCollection": {
"type": "boolean"
}
},
"required": [
"securityDepositValue",
"adminFeeValue",
"contractDurationTypesAllowed",
"hasVetting",
"hasRentCollection"
]
},
"score": {
"type": [
"object",
"null"
],
"properties": {
"points": {
"type": "number"
},
"label": {
"type": "string"
}
},
"required": [
"points",
"label"
]
}
},
"required": [
"id",
"adId",
"title",
"adArea",
"adTitle",
"minStay",
"maxStay",
"checked",
"contractType",
"cancellationPolicy",
"hasOwnPhotos",
"maxGapBetweenBookings",
"bookingAcceptanceMinDays",
"bookingAcceptanceMaxDays",
"canonicalLanguage",
"roomsInApartment",
"type",
"ptype",
"unavailabilities",
"availabilities",
"moveInDatesRanges",
"neighVid",
"city",
"cityId",
"address",
"area",
"countryCode",
"plan",
"photos",
"photosV2",
"videos",
"features",
"extraFeatures",
"bills",
"gender",
"suitability",
"restrictions",
"numberOfBedrooms",
"numberOfBathrooms",
"mainRules",
"pricing",
"contents",
"reviews",
"areaSlug",
"userGroup",
"seo",
"ecommerceProductData",
"instantBooking",
"isSuperlister",
"landlordId",
"bookingConditions",
"score"
]
}
},
"required": [
"isRoomsAggregator",
"listings"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "Ad with ID 120173 not found",
"status": 404,
"title": "Not Found",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Sitemaps ¶
Sitemaps catalog ¶
Get listings sitemap manually translatedGET/sitemaps/catalog{?locale,page,itemsPerPage}
Example URI
- locale
string(required) Example: es- page
number(required) Example: 1- itemsPerPage
number(optional) Example: 100
200Headers
Content-Type: application/jsonBody
{
"count": 1,
"total": 2,
"_links": {
"self": {
"href": "/api/search/sitemaps/catalog?locale=es&page=1"
},
"first": {
"href": "/api/search/sitemaps/catalog?locale=es&page=1"
},
"last": {
"href": "/api/search/sitemaps/catalog?locale=es&page=2"
},
"next": {
"href": "/api/search/sitemaps/catalog?locale=es&page=1"
},
"previous": {
"href": "/api/search/sitemaps/catalog?locale=es&page=2"
}
},
"_embedded": {
"catalog": [
{
"title": "Studio apartments for rent in Madrid",
"url": "/madrid/for-rent:studios"
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"count": {
"type": "number"
},
"total": {
"type": "number"
},
"_links": {
"type": "object",
"properties": {
"self": {
"type": "object",
"properties": {
"href": {
"type": "string"
}
},
"required": [
"href"
]
},
"first": {
"type": "object",
"properties": {
"href": {
"type": "string"
}
},
"required": [
"href"
]
},
"last": {
"type": "object",
"properties": {
"href": {
"type": "string"
}
},
"required": [
"href"
]
},
"next": {
"type": "object",
"properties": {
"href": {
"type": "string"
}
}
},
"previous": {
"type": "object",
"properties": {
"href": {
"type": "string"
}
}
}
},
"required": [
"self",
"first",
"last",
"next",
"previous"
]
},
"_embedded": {
"type": "object",
"properties": {
"catalog": {
"type": "array"
}
}
}
},
"required": [
"count",
"total",
"_links"
]
}500Headers
Content-Type: application/problem+jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}SEO Landings Resolved ¶
Routes ¶
Get all routesGET/resolved-landings/routes
Example URI
200Headers
Content-Type: application/jsonBody
{
"vienna_NA_apartments_student": {
"en": "/for-rent/vienna/student-apartments",
"es": "/alquiler/viena/pisos-estudiantes",
"fr": "/location/vienne/appartements-etudiants",
"it": "/affitto/vienna/appartamenti-studenti",
"de": "/mieten/wien/studenten-wohnungen"
},
"lyon_NA_studios_student": {
"en": "/for-rent/lyon/student-studios",
"es": "/alquiler/lyon/estudios-estudiantes",
"fr": "/mieten/lyon/studenten-1-zimmer-wohnung",
"it": "/affitto/lione/monolocali-studenti"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"vienna_NA_apartments_student": {
"type": "object",
"properties": {
"en": {
"type": "string"
},
"es": {
"type": "string"
},
"fr": {
"type": "string"
},
"it": {
"type": "string"
},
"de": {
"type": "string"
}
}
},
"lyon_NA_studios_student": {
"type": "object",
"properties": {
"en": {
"type": "string"
},
"es": {
"type": "string"
},
"it": {
"type": "string"
},
"fr": {
"type": "string"
}
}
}
}
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}External linking ¶
Get all linksGET/resolved-landings/linking{?cityId,locale}
Example URI
- cityId
string(required) Example: madrid- locale
string(required) Example: es
200Headers
Content-Type: application/jsonBody
{
"links": [
{
"anchorText": "Appartements pas cher Γ Paris",
"url": "/fr/location/paris/appartements-pas-cher"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"links": {
"type": "array"
}
},
"required": [
"links"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Favorites ¶
Favorites list ¶
Get all favorites of a userGET/favorites
Example URI
Headers
Content-Type: application/json
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"total": 4,
"_links": {
"self": {
"href": "/api/search/favorites"
}
},
"_embedded": {
"favorites": [
{
"listingId": 122534,
"addedOn": "2017-10-17T11:35:14+00:00"
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"total": {
"type": "number"
},
"_links": {
"type": "object",
"properties": {
"self": {
"type": "object",
"properties": {
"href": {
"type": "string"
}
},
"required": [
"href"
]
}
},
"required": [
"self"
]
},
"_embedded": {
"type": "object",
"properties": {
"favorites": {
"type": "array"
}
},
"required": [
"favorites"
]
}
},
"required": [
"total",
"_links",
"_embedded"
]
}401Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Merge favorites into listPUT/favorites
Example URI
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
[
1
]Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}204Headers
Content-Type: application/json401Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}409Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Favorite ¶
Add favoritePOST/favorites/{listingId}
Example URI
- listingId
number(required) Example: 12552
Headers
Content-Type: application/json
Authorization: aa.bb.cc201Headers
Content-Type: application/json401Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}409Headers
Content-Type: application/jsonBody
{
"detail": "The request could not be completed due to a conflict with the current state of the resource",
"status": 409,
"title": "Conflict",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Remove favoriteDELETE/favorites/{listingId}
Example URI
- listingId
number(required) Example: 12552
Headers
Content-Type: application/json
Authorization: aa.bb.cc200Headers
Content-Type: application/json401Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "Ad with ID 120173 not found",
"status": 404,
"title": "Not Found",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Alerts ¶
Alerts list ¶
Get all alerts of a userGET/alerts
Example URI
Headers
Content-Type: application/json
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"total": 4,
"_links": {
"self": {
"href": "/api/search/alerts"
}
},
"_embedded": {
"alerts": [
{
"id": "833c62cb-a30b-e9d8-186b-985a-9316cd73536c",
"cityId": "madrid",
"mediums": [
"push",
"email"
],
"moveIn": "2000-01-01",
"moveOut": "2001-01-01",
"minPrice": 500,
"maxPrice": 1000,
"propertyTypes": [
"studios",
"apartments",
"rooms",
"residences"
]
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"total": {
"type": "number"
},
"_links": {
"type": "object",
"properties": {
"self": {
"type": "object",
"properties": {
"href": {
"type": "string"
}
},
"required": [
"href"
]
}
},
"required": [
"self"
]
},
"_embedded": {
"type": "object",
"properties": {
"alerts": {
"type": "array"
}
},
"required": [
"alerts"
]
}
},
"required": [
"total",
"_links",
"_embedded"
]
}401Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Add alertPOST/alerts
Example URI
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"cityId": "madrid",
"mediums": [
"push",
"email"
],
"moveIn": "2000-01-01",
"moveOut": "2001-01-01",
"minPrice": 500,
"maxPrice": 1000,
"propertyTypes": [
"studios",
"apartments",
"rooms",
"residences"
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"cityId": {
"type": "string"
},
"mediums": {
"type": "array",
"description": "Mediums supported"
},
"moveIn": {
"type": "string",
"description": "Date to move in (format YYYY-MM-DD)"
},
"moveOut": {
"type": "string",
"description": "Date to move out (format YYYY-MM-DD)"
},
"minPrice": {
"type": "number",
"description": "Minimum price"
},
"maxPrice": {
"type": "number",
"description": "Maximum price"
},
"propertyTypes": {
"type": "array",
"description": "Type of the property"
}
},
"required": [
"cityId",
"mediums"
]
}201Headers
Content-Type: application/json
Location: /alerts/{new-id}401Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Alert ¶
Remove alertDELETE/alerts/{alertId}
Example URI
- alertId
string(required) Example: b486d325-3fc8-4d9a-a678-a6a31d23dc4c
Headers
Content-Type: application/json
Authorization: aa.bb.cc200Headers
Content-Type: application/json401Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "Ad with ID 120173 not found",
"status": 404,
"title": "Not Found",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Alert ¶
Get last alert notificationGET/alerts/{alertId}/last-notification
Example URI
- alertId
string(required) Example: b486d325-3fc8-4d9a-a678-a6a31d23dc4c
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
{
"id": "",
"status": "",
"transitionedAt": "",
"itemCollection": [
{
"rentableUnitId": 0,
"title": "",
"price": {
"amount": "",
"code": ""
},
"url": "",
"isPriceFrom": false
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"status": {
"type": "string"
},
"transitionedAt": {
"type": "string"
},
"itemCollection": {
"type": "array"
}
},
"required": [
"id",
"status",
"transitionedAt",
"itemCollection"
]
}401Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "Ad with ID 120173 not found",
"status": 404,
"title": "Not Found",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}Notifications ¶
Get notificationGET/notifications/{notificationId}
Example URI
- notificationId
string(required) Example: b486d325-3fc8-4d9a-a678-a6a31d23dc4c
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
{
"id": "",
"status": "",
"transitionedAt": "",
"itemCollection": [
{
"rentableUnitId": 0,
"title": "",
"price": {
"amount": "",
"code": ""
},
"url": "",
"isPriceFrom": false,
"mainPhotoUrl": "",
"firstAvailableDate": "",
"checked": null,
"isInstantBooking": null,
"bills": null,
"listingScore": null,
"plan": null,
"offers": [
{
"discountType": "",
"discountValue": 0,
"minStay": 0,
"maxStay": null
}
],
"securityDeposit": {
"type": null,
"value": null
}
}
],
"medium": [],
"locale": "",
"cityId": "",
"searchUrl": "",
"type": "",
"scheduledAt": "",
"expiresAt": ""
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"status": {
"type": "string"
},
"transitionedAt": {
"type": "string"
},
"itemCollection": {
"type": "array"
},
"medium": {
"type": "array"
},
"locale": {
"type": "string"
},
"cityId": {
"type": "string"
},
"searchUrl": {
"type": "string"
},
"type": {
"type": "string"
},
"scheduledAt": {
"type": "string"
},
"expiresAt": {
"type": "string"
}
},
"required": [
"id",
"status",
"transitionedAt",
"itemCollection",
"medium",
"locale",
"cityId",
"searchUrl",
"type",
"scheduledAt",
"expiresAt"
]
}401Headers
Content-Type: application/jsonBody
{
"detail": "Unauthorized user",
"status": 401,
"title": "Unauthorized",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "Ad with ID 120173 not found",
"status": 404,
"title": "Not Found",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}500Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 500,
"title": "Internal Server Error",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"detail",
"status",
"title",
"type"
]
}