RESTful API of Listings bounded context
Headers
As this API is working with JSON every request must add the following headers:
Accept: application/json
And for requests with body:
Content-Type: application/json
Properties ¶
Properties ¶
View all propertiesGET/properties{?id,ids,unitIds,cityIds,ownerId,type,numRentableUnits,features,published,address,sort,page,itemsPerPage,archived,includeDeleted}
Example URI
- id
string(optional) Example: 3c2e15d7-ba6e-4995-aa19-a00267ca36ddCriteria by id.
- ids
array[string](optional) Example: 3c2e15d7-ba6e-4995-aa19-a00267ca36ddCriteria by ids.
- unitIds
array[string](optional) Example: 3c2e15d7-ba6e-4995-aa19-a00267ca36ddCriteria by unit ids.
- ownerId
string(optional) Example: 3c2e15d7-ba6e-4995-aa19-a00267ca36ddCriteria by owner id.
- type
string(optional) Example: apartmentCriteria by property type.
-
apartment
-
studio
-
roomShared
-
residence
-
- cityIds
array[string](optional) Example: viennaCriteria by city ids.
- numRentableUnits
number(optional) Example: 5Criteria by number of rentable units.
- features
array[UnitFeatures](optional) Example: features[0][applicability]=property&features[0][category]=suitability&features[0][name]=gender&features[0][value]=anyCriteria to search for one or more unit features
- published
string(optional) Example: trueCriteria by published state.
-
true
-
false
-
- archived
string(optional) Example: trueCriteria by archived state.
-
true
-
falseMongoDbFindAllPropertiesByCriteriaQuery
-
- includeDeleted
boolean(optional) Example: falseInclude deleted units in the search
- address
string(optional) Example: carrerCriteria to make a regex in address info. AddressLine1, AddressLine2, City and PostalCode.
- sort
string(optional) Example: _id,type,ownerId,totalUnits,rentableUnitsWithout symbol
_id(ascending), with negative symbol-_id(descending)- 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:properties": [
{
"id": "aaaa-bbbb-cccc-dddd",
"type": "apartment",
"location": {
"addressLine1": "Avenida de la Palmera, 60",
"addressLine2": "1º Izquierda",
"city": "Sevilla",
"cityId": "madrid",
"neighbourhoodId": "26dcfa67-f027-4633-8edc-f0847aa086ce",
"postalCode": "41013",
"country": "spain",
"latitude": 37.356508,
"longitude": -5.983941
},
"ownerId": "aaaa-bbbb-cccc-dddd",
"totalUnits": 10,
"rentableUnits": 10,
"publishedUnits": 2,
"verified": true,
"yearOfConstruction": 1981,
"isVisitable": true,
"source": "inbound"
}
]
}
}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:properties": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"apartment",
"studio",
"roomShared",
"residence"
]
},
"location": {
"type": "object",
"properties": {
"addressLine1": {
"type": "string"
},
"addressLine2": {
"type": "string"
},
"city": {
"type": "string"
},
"cityId": {
"type": "string",
"enum": [
"madrid",
"barcelona",
"bilbao",
"valencia",
"granada",
"seville",
"brussels",
"dublin",
"london",
"rome",
"milan",
"paris",
"lyon",
"dubai",
"berlin",
"vienna",
"istanbul",
"turin",
"bologna",
"florence",
"warsaw",
"krakow",
"lodz",
"gdansk",
"wroclaw",
"prague",
"vilnius",
"riga",
"budapest",
"athens",
"cordoba",
"nice",
"montpellier",
"lille",
"alicante",
"salamanca",
"murcia",
"zaragoza",
"perugia",
"naples",
"venice",
"padua",
"lisbon",
"porto",
"coimbra",
"munich",
"hamburg",
"frankfurt",
"cologne",
"stuttgart",
"dusseldorf",
"dresden",
"mainz",
"montreal",
"malaga",
"poznan",
"cadiz",
"oviedo",
"liege",
"santiago_de_compostela",
"alcala_de_henares",
"las_palmas_de_gran_canaria",
"valladolid",
"vigo",
"thessaloniki",
"katowice",
"almeria",
"amsterdam",
"santander",
"san_sebastian",
"genoa",
"a_coruna",
"lublin",
"huelva",
"jaen",
"pamplona",
"palma_de_mallorca",
"ghent",
"marseille",
"nottingham",
"cartagena",
"ljubljana",
"toulouse",
"glasgow",
"graz",
"copenhagen",
"nicosia",
"stockholm",
"edinburgh",
"rotterdam",
"zagreb",
"santa_cruz_de_tenerife",
"manchester",
"setubal",
"zurich",
"kaunas",
"sofia",
"trento",
"galway",
"leipzig",
"luxembourg",
"tallinn",
"saint_julians",
"valletta",
"brescia",
"cagliari"
]
},
"neighbourhoodId": {
"type": [
"string",
"null"
]
},
"postalCode": {
"type": "string"
},
"country": {
"type": "string"
},
"latitude": {
"type": "number",
"description": "Between -90 and 90"
},
"longitude": {
"type": "number",
"description": "Between -180 and 180"
}
},
"required": [
"addressLine1",
"city",
"cityId",
"neighbourhoodId",
"postalCode",
"country",
"latitude",
"longitude"
]
},
"ownerId": {
"type": "string"
},
"totalUnits": {
"type": "number"
},
"rentableUnits": {
"type": "number"
},
"publishedUnits": {
"type": "number"
},
"verified": {
"type": "boolean"
},
"yearOfConstruction": {
"type": "number"
},
"isVisitable": {
"type": "boolean"
},
"source": {
"type": "string",
"enum": [
"inbound",
"outbound",
"null"
]
}
},
"required": [
"id",
"type",
"location",
"ownerId",
"totalUnits",
"rentableUnits",
"publishedUnits",
"verified",
"isVisitable",
"source"
]
}
}
}
}
},
"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",
"status",
"title",
"type"
]
}Create a new Property ¶
Create new propertyPOST/properties
Example URI
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"type": "apartment",
"location": {
"addressLine1": "Avenida de la Palmera, 60",
"addressLine2": "1º Izquierda",
"city": "Sevilla",
"cityId": "madrid",
"postalCode": "41013",
"latitude": 37.356508,
"longitude": -5.983941
},
"yearOfConstruction": 1981,
"ownerId": "aaaa-bbbb-cccc-dddd",
"totalUnits": 10,
"rentableUnits": 10,
"isVisitable": true
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"apartment",
"studio",
"roomShared",
"residence"
]
},
"location": {
"type": "object",
"properties": {
"addressLine1": {
"type": "string"
},
"addressLine2": {
"type": "string"
},
"city": {
"type": "string"
},
"cityId": {
"type": "string",
"enum": [
"madrid",
"barcelona",
"bilbao",
"valencia",
"granada",
"seville",
"brussels",
"dublin",
"london",
"rome",
"milan",
"paris",
"lyon",
"dubai",
"berlin",
"vienna",
"istanbul",
"turin",
"bologna",
"florence",
"warsaw",
"krakow",
"lodz",
"gdansk",
"wroclaw",
"prague",
"vilnius",
"riga",
"budapest",
"athens",
"cordoba",
"nice",
"montpellier",
"lille",
"alicante",
"salamanca",
"murcia",
"zaragoza",
"perugia",
"naples",
"venice",
"padua",
"lisbon",
"porto",
"coimbra",
"munich",
"hamburg",
"frankfurt",
"cologne",
"stuttgart",
"dusseldorf",
"dresden",
"mainz",
"montreal",
"malaga",
"poznan",
"cadiz",
"oviedo",
"liege",
"santiago_de_compostela",
"alcala_de_henares",
"las_palmas_de_gran_canaria",
"valladolid",
"vigo",
"thessaloniki",
"katowice",
"almeria",
"amsterdam",
"santander",
"san_sebastian",
"genoa",
"a_coruna",
"lublin",
"huelva",
"jaen",
"pamplona",
"palma_de_mallorca",
"ghent",
"marseille",
"nottingham",
"cartagena",
"ljubljana",
"toulouse",
"glasgow",
"graz",
"copenhagen",
"nicosia",
"stockholm",
"edinburgh",
"rotterdam",
"zagreb",
"santa_cruz_de_tenerife",
"manchester",
"setubal",
"zurich",
"kaunas",
"sofia",
"trento",
"galway",
"leipzig",
"luxembourg",
"tallinn",
"saint_julians",
"valletta",
"brescia",
"cagliari"
]
},
"postalCode": {
"type": "string"
},
"latitude": {
"type": "number",
"description": "Between -90 and 90"
},
"longitude": {
"type": "number",
"description": "Between -180 and 180"
}
},
"required": [
"addressLine1",
"city",
"cityId",
"postalCode",
"latitude",
"longitude"
]
},
"yearOfConstruction": {
"type": "number"
},
"ownerId": {
"type": "string"
},
"totalUnits": {
"type": "number",
"description": "A number between 1 and 30 (both included)"
},
"rentableUnits": {
"type": "number",
"description": "A number between 1 and the value provided for totalUnits (both included)"
},
"isVisitable": {
"type": "boolean",
"description": "Whether the property is visitable or not. Defaults to false"
}
},
"required": [
"type",
"location",
"ownerId"
]
}201Headers
Location: /properties/aaaa-bbbb-cccc-dddd400Headers
Content-Type: application/jsonBody
{
"detail": "The request could not be understood by the server due to malformed syntax",
"status": 400,
"title": "Bad Request",
"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"
]
}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",
"status",
"title",
"type"
]
}422Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 422,
"title": "Unprocessable Entity",
"type": "`http://www.w3.org/Protocols/rfc2616/rfc2616",
"validationMessages": {
"field": {
"stringLength": "The input is less than 6 characters long"
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string",
"description": "sec10.html (string, required)"
},
"validationMessages": {
"type": "object",
"properties": {
"field": {
"type": "object",
"properties": {
"stringLength": {
"type": "string"
}
},
"required": [
"stringLength"
]
}
},
"description": "Contains a property for each field that failed validation."
}
},
"required": [
"detail",
"status",
"title"
]
}Create Properties by public user ¶
Create new property by public userPOST/public/properties
Example URI
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"type": "apartment",
"location": {
"addressLine1": "Avenida de la Palmera, 60",
"addressLine2": "1º Izquierda",
"city": "Sevilla",
"cityId": "madrid",
"postalCode": "41013",
"latitude": 37.356508,
"longitude": -5.983941
},
"yearOfConstruction": 1981,
"ownerId": "aaaa-bbbb-cccc-dddd",
"totalUnits": 10,
"rentableUnits": 10,
"isVisitable": true
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"apartment",
"studio",
"roomShared",
"residence"
]
},
"location": {
"type": "object",
"properties": {
"addressLine1": {
"type": "string"
},
"addressLine2": {
"type": "string"
},
"city": {
"type": "string"
},
"cityId": {
"type": "string",
"enum": [
"madrid",
"barcelona",
"bilbao",
"valencia",
"granada",
"seville",
"brussels",
"dublin",
"london",
"rome",
"milan",
"paris",
"lyon",
"dubai",
"berlin",
"vienna",
"istanbul",
"turin",
"bologna",
"florence",
"warsaw",
"krakow",
"lodz",
"gdansk",
"wroclaw",
"prague",
"vilnius",
"riga",
"budapest",
"athens",
"cordoba",
"nice",
"montpellier",
"lille",
"alicante",
"salamanca",
"murcia",
"zaragoza",
"perugia",
"naples",
"venice",
"padua",
"lisbon",
"porto",
"coimbra",
"munich",
"hamburg",
"frankfurt",
"cologne",
"stuttgart",
"dusseldorf",
"dresden",
"mainz",
"montreal",
"malaga",
"poznan",
"cadiz",
"oviedo",
"liege",
"santiago_de_compostela",
"alcala_de_henares",
"las_palmas_de_gran_canaria",
"valladolid",
"vigo",
"thessaloniki",
"katowice",
"almeria",
"amsterdam",
"santander",
"san_sebastian",
"genoa",
"a_coruna",
"lublin",
"huelva",
"jaen",
"pamplona",
"palma_de_mallorca",
"ghent",
"marseille",
"nottingham",
"cartagena",
"ljubljana",
"toulouse",
"glasgow",
"graz",
"copenhagen",
"nicosia",
"stockholm",
"edinburgh",
"rotterdam",
"zagreb",
"santa_cruz_de_tenerife",
"manchester",
"setubal",
"zurich",
"kaunas",
"sofia",
"trento",
"galway",
"leipzig",
"luxembourg",
"tallinn",
"saint_julians",
"valletta",
"brescia",
"cagliari"
]
},
"postalCode": {
"type": "string"
},
"latitude": {
"type": "number",
"description": "Between -90 and 90"
},
"longitude": {
"type": "number",
"description": "Between -180 and 180"
}
},
"required": [
"addressLine1",
"city",
"cityId",
"postalCode",
"latitude",
"longitude"
]
},
"yearOfConstruction": {
"type": "number"
},
"ownerId": {
"type": "string"
},
"totalUnits": {
"type": "number",
"description": "A number between 1 and 30 (both included)"
},
"rentableUnits": {
"type": "number",
"description": "A number between 1 and 30 (both included)"
},
"isVisitable": {
"type": "boolean",
"description": "Whether the property is visitable or not. Defaults to false"
}
},
"required": [
"type",
"location",
"ownerId",
"totalUnits",
"rentableUnits"
]
}201Headers
Location: /listings/properties/aaaa-bbbb-cccc-dddd400Headers
Content-Type: application/jsonBody
{
"detail": "The request could not be understood by the server due to malformed syntax",
"status": 400,
"title": "Bad Request",
"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"
]
}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",
"status",
"title",
"type"
]
}422Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 422,
"title": "Unprocessable Entity",
"type": "`http://www.w3.org/Protocols/rfc2616/rfc2616",
"validationMessages": {
"field": {
"stringLength": "The input is less than 6 characters long"
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string",
"description": "sec10.html (string, required)"
},
"validationMessages": {
"type": "object",
"properties": {
"field": {
"type": "object",
"properties": {
"stringLength": {
"type": "string"
}
},
"required": [
"stringLength"
]
}
},
"description": "Contains a property for each field that failed validation."
}
},
"required": [
"detail",
"status",
"title"
]
}Single Property ¶
View single propertyGET/properties/{id}
Example URI
- id
string(required) Example: aaaaa-bbbbb-ccccc
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
{
"id": "aaaa-bbbb-cccc-dddd",
"type": "apartment",
"location": {
"addressLine1": "Avenida de la Palmera, 60",
"addressLine2": "1º Izquierda",
"city": "Sevilla",
"cityId": "madrid",
"neighbourhoodId": "26dcfa67-f027-4633-8edc-f0847aa086ce",
"postalCode": "41013",
"country": "spain",
"latitude": 37.356508,
"longitude": -5.983941
},
"ownerId": "aaaa-bbbb-cccc-dddd",
"totalUnits": 10,
"rentableUnits": 10,
"publishedUnits": 2,
"verified": true,
"yearOfConstruction": 1981,
"isVisitable": true,
"source": "inbound"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"apartment",
"studio",
"roomShared",
"residence"
]
},
"location": {
"type": "object",
"properties": {
"addressLine1": {
"type": "string"
},
"addressLine2": {
"type": "string"
},
"city": {
"type": "string"
},
"cityId": {
"type": "string",
"enum": [
"madrid",
"barcelona",
"bilbao",
"valencia",
"granada",
"seville",
"brussels",
"dublin",
"london",
"rome",
"milan",
"paris",
"lyon",
"dubai",
"berlin",
"vienna",
"istanbul",
"turin",
"bologna",
"florence",
"warsaw",
"krakow",
"lodz",
"gdansk",
"wroclaw",
"prague",
"vilnius",
"riga",
"budapest",
"athens",
"cordoba",
"nice",
"montpellier",
"lille",
"alicante",
"salamanca",
"murcia",
"zaragoza",
"perugia",
"naples",
"venice",
"padua",
"lisbon",
"porto",
"coimbra",
"munich",
"hamburg",
"frankfurt",
"cologne",
"stuttgart",
"dusseldorf",
"dresden",
"mainz",
"montreal",
"malaga",
"poznan",
"cadiz",
"oviedo",
"liege",
"santiago_de_compostela",
"alcala_de_henares",
"las_palmas_de_gran_canaria",
"valladolid",
"vigo",
"thessaloniki",
"katowice",
"almeria",
"amsterdam",
"santander",
"san_sebastian",
"genoa",
"a_coruna",
"lublin",
"huelva",
"jaen",
"pamplona",
"palma_de_mallorca",
"ghent",
"marseille",
"nottingham",
"cartagena",
"ljubljana",
"toulouse",
"glasgow",
"graz",
"copenhagen",
"nicosia",
"stockholm",
"edinburgh",
"rotterdam",
"zagreb",
"santa_cruz_de_tenerife",
"manchester",
"setubal",
"zurich",
"kaunas",
"sofia",
"trento",
"galway",
"leipzig",
"luxembourg",
"tallinn",
"saint_julians",
"valletta",
"brescia",
"cagliari"
]
},
"neighbourhoodId": {
"type": [
"string",
"null"
]
},
"postalCode": {
"type": "string"
},
"country": {
"type": "string"
},
"latitude": {
"type": "number",
"description": "Between -90 and 90"
},
"longitude": {
"type": "number",
"description": "Between -180 and 180"
}
},
"required": [
"addressLine1",
"city",
"cityId",
"neighbourhoodId",
"postalCode",
"country",
"latitude",
"longitude"
]
},
"ownerId": {
"type": "string"
},
"totalUnits": {
"type": "number"
},
"rentableUnits": {
"type": "number"
},
"publishedUnits": {
"type": "number"
},
"verified": {
"type": "boolean"
},
"yearOfConstruction": {
"type": "number"
},
"isVisitable": {
"type": "boolean"
},
"source": {
"type": "string",
"enum": [
"inbound",
"outbound",
"null"
]
}
},
"required": [
"id",
"type",
"location",
"ownerId",
"totalUnits",
"rentableUnits",
"publishedUnits",
"verified",
"isVisitable",
"source"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Archive a propertyDELETE/properties/{id}
Example URI
- id
string(required) Example: aaaa-bbbb-cccc-dddd
Headers
Content-Type: application/json
Authorization: aa.bb.cc (string, required)Body
{
"reasonToUnpublish": "Example reason",
"reasonToUnpublishExtraInfo": "Example reason"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"reasonToUnpublish": {
"type": "string"
},
"reasonToUnpublishExtraInfo": {
"type": "string"
}
}
}204400Headers
Content-Type: application/jsonBody
{
"detail": "The request could not be understood by the server due to malformed syntax",
"status": 400,
"title": "Bad Request",
"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"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Convert Properties ¶
Convert a propertyPUT/properties/{id}/convert
Example URI
- id
string(required) Example: aaaa-bbbb-cccc-dddd
Headers
Content-Type: application/json
Authorization: aa.bb.cc (string, required)Body
{
"type": "apartment",
"reasonToUnpublishExtraInfo": "Hello, world!"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"apartment",
"studio",
"roomShared",
"residence"
]
},
"reasonToUnpublishExtraInfo": {
"type": "string"
}
},
"required": [
"type"
]
}204400Headers
Content-Type: application/jsonBody
{
"detail": "The request could not be understood by the server due to malformed syntax",
"status": 400,
"title": "Bad Request",
"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"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Property Location ¶
Update the location of a propertyPUT/properties/{id}/location
Example URI
- id
string(required) Example: aaaa-bbbb-cccc-dddd
Headers
Authorization: aa.bb.ccBody
{
"addressLine1": "Avenida de la Palmera, 60",
"addressLine2": "1º Izquierda",
"city": "Sevilla",
"cityId": "seville",
"postalCode": "41013",
"latitude": 37.356508,
"longitude": -5.983941
}Schema
{
"type": "object",
"properties": {
"addressLine1": {
"type": "string"
},
"addressLine2": {
"type": "string"
},
"city": {
"type": "string"
},
"cityId": {
"type": "string"
},
"postalCode": {
"type": "string"
},
"latitude": {
"type": "number",
"description": "Between -90 and 90"
},
"longitude": {
"type": "number",
"description": "Between -180 and 180"
}
},
"required": [
"addressLine1",
"city",
"postalCode",
"latitude",
"longitude"
],
"$schema": "http://json-schema.org/draft-04/schema#"
}204400Headers
Content-Type: application/jsonBody
{
"detail": "The request could not be understood by the server due to malformed syntax",
"status": 400,
"title": "Bad Request",
"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"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Property Neighbourhood ¶
Assign a neighbourhood to a propertyPUT/properties/{id}/neighbourhood
Example URI
- id
string(required) Example: 12345
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"neighbourhoodId": "50c044de-3cee-4ddf-a6b6-758796323ba2"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"neighbourhoodId": {
"type": "string"
}
},
"required": [
"neighbourhoodId"
]
}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",
"status",
"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"
]
}Property Owner ¶
Change the owner of the propertyPUT/properties/{id}/owner
Example URI
- id
string(required) Example: aaaa-bbbb-cccc-dddd
Headers
Authorization: aa.bb.ccBody
{
"ownerId": "2a861af5-aa7e-42da-abff-8d531d849618"
}Schema
{
"type": "object",
"properties": {
"ownerId": {
"type": "string"
}
},
"required": [
"ownerId"
],
"$schema": "http://json-schema.org/draft-04/schema#"
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Property Information ¶
Change information of the propertyPUT/properties/{id}/information
Example URI
- id
string(required) Example: aaaa-bbbb-cccc-dddd
Headers
Authorization: aa.bb.ccBody
{
"yearOfConstruction": 1981,
"isVisitable": true
}Schema
{
"type": "object",
"properties": {
"yearOfConstruction": {
"type": "number"
},
"isVisitable": {
"type": "boolean"
}
},
"required": [
"isVisitable"
],
"$schema": "http://json-schema.org/draft-04/schema#"
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Property MultiListing Units ¶
View all Property Multi ListingsGET/multi-listing-units
Example URI
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {}
}400Headers
Content-Type: application/jsonBody
{
"detail": "The request could not be understood by the server due to malformed syntax",
"status": 400,
"title": "Bad Request",
"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"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Single Property MultiListing ¶
View single Property Multi ListingGET/multi-listing-units/{id}
Example URI
- id
string(required) Example: aaaa-bbbb-cccc-dddd
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"id": "aaaa-bbbb-cccc-dddd",
"unitsCounter": 1
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Property id"
},
"unitsCounter": {
"type": "number",
"description": "Number of units"
}
},
"required": [
"id",
"unitsCounter"
]
}400Headers
Content-Type: application/jsonBody
{
"detail": "The request could not be understood by the server due to malformed syntax",
"status": 400,
"title": "Bad Request",
"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"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Change number of units from Property MultiListingPUT/multi-listing-units/{id}
Example URI
- id
string(required) Example: aaaa-bbbb-cccc-dddd
Headers
Authorization: aa.bb.ccBody
{
"counter": 10
}Schema
{
"type": "object",
"properties": {
"counter": {
"type": "number"
}
},
"required": [
"counter"
],
"$schema": "http://json-schema.org/draft-04/schema#"
}204400Headers
Content-Type: application/jsonBody
{
"detail": "The request could not be understood by the server due to malformed syntax",
"status": 400,
"title": "Bad Request",
"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"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Additional data ¶
Create property additional dataPOST/properties/additional-data
Example URI
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"id": "12345",
"data": {}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Property id"
},
"data": {
"type": "object",
"properties": {}
}
},
"required": [
"id",
"data"
]
}201401Headers
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",
"status",
"title",
"type"
]
}422Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 422,
"title": "Unprocessable Entity",
"type": "`http://www.w3.org/Protocols/rfc2616/rfc2616",
"validationMessages": {
"field": {
"stringLength": "The input is less than 6 characters long"
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string",
"description": "sec10.html (string, required)"
},
"validationMessages": {
"type": "object",
"properties": {
"field": {
"type": "object",
"properties": {
"stringLength": {
"type": "string"
}
},
"required": [
"stringLength"
]
}
},
"description": "Contains a property for each field that failed validation."
}
},
"required": [
"detail",
"status",
"title"
]
}Single Additional data ¶
View additional data from single propertyGET/properties/{id}/additional-data
Example URI
- id
string(required) Example: 12345
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"id": "12345",
"data": {}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Property id"
},
"data": {
"type": "object",
"properties": {}
}
},
"required": [
"id",
"data"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Update additional data from single propertyPUT/properties/{id}/additional-data
Example URI
- id
string(required) Example: 12345
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"data": {}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {}
}
},
"required": [
"data"
]
}400Headers
Content-Type: application/jsonBody
{
"detail": "The request could not be understood by the server due to malformed syntax",
"status": 400,
"title": "Bad Request",
"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"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Reasons to archive a property ¶
View all Reasons to unpublishGET/properties/reasons-to-unpublish
Example URI
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
[
"doesNotWantToWorkWithUs",
"vacational",
"soldOrNoLongerManagesProperty",
"uncontactable",
"inadequateContactDetails",
"incompleteOrDuplicatedListing",
"outsideQualityCriteria",
"temporarilyUnpublished",
"spotahomeDecision",
"commission",
"doesNotRememberWhoSahAre",
"noBookings",
"propertyConversion",
"propertyArchived"
]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",
"status",
"title",
"type"
]
}Landlord Reasons to unpublish a property ¶
View landlord Reasons to unpublishGET/landlords/properties/reasons-to-unpublish
Example URI
Headers
Content-Type: application/json200Headers
Content-Type: application/jsonBody
[
"llRequestsTemporaryUnpublication",
"llUnhappyWithSah",
"noLongerManagingTheProperty"
]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",
"status",
"title",
"type"
]
}Units ¶
View all units ¶
View all unitsGET/units{?ids,propertyId,propertyIds,disabled,ownerId,reference,states,page,itemsPerPage}
Example URI
- ids
array[string](optional) Example: 3c2e15d7-ba6e-4995-aa19-a00267ca36dd- propertyId
string(optional) Example: 90567- propertyIds
array[string](optional) Example: 90567- disabled
boolean(optional) Example: true- ownerId
string(optional) Example: 3c2e15d7-ba6e-4995-aa19-a00267ca36dd- reference
string(optional) Example: refSearch using a regex in the reference field
- states
array[string](optional) Example: published- 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": "/units?page=1"
},
"first": {
"href": "/units?page=1"
},
"last": {
"href": "/units?page=2"
},
"next": {
"href": "/units?page=1"
},
"previous": {
"href": "/units?page=2"
}
},
"_embedded": {
"sah:units": [
{
"id": "aaaa-bbbb-cccc-dddd",
"propertyId": "340123",
"ownerId": "26dcfa67",
"type": "whole",
"state": "published",
"deleted": true,
"disable": true,
"verified": true,
"area": 50,
"landlordReference": "Bedroom 10",
"numberBathrooms": 3,
"agentId": "cccc-aaaa-eeee-dddd",
"plan": "standard",
"location": {
"addressLine1": "Avenida de la Palmera, 60",
"addressLine2": "1º Izquierda",
"country": "spain",
"city": "Sevilla",
"cityId": "madrid",
"postalCode": "41013"
}
}
]
}
}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": {
"sah:units": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"propertyId": {
"type": "string"
},
"ownerId": {
"type": "string",
"description": "f027-4633-8edc-f0847aa086ce (string, required)"
},
"type": {
"type": "string",
"enum": [
"whole",
"room",
"bed"
]
},
"state": {
"type": "string",
"enum": [
"published",
"unpublished",
"archived"
]
},
"deleted": {
"type": "boolean"
},
"disable": {
"type": "boolean"
},
"verified": {
"type": "boolean"
},
"area": {
"type": "number"
},
"landlordReference": {
"type": "string"
},
"numberBathrooms": {
"type": "number"
},
"agentId": {
"type": "string"
},
"plan": {
"type": "string",
"enum": [
"standard",
"premium",
"select"
]
},
"location": {
"type": "object",
"properties": {
"addressLine1": {
"type": "string"
},
"addressLine2": {
"type": "string"
},
"country": {
"type": "string"
},
"city": {
"type": "string"
},
"cityId": {
"type": "string",
"enum": [
"madrid",
"barcelona",
"bilbao",
"valencia",
"granada",
"seville",
"brussels",
"dublin",
"london",
"rome",
"milan",
"paris",
"lyon",
"dubai",
"berlin",
"vienna",
"istanbul",
"turin",
"bologna",
"florence",
"warsaw",
"krakow",
"lodz",
"gdansk",
"wroclaw",
"prague",
"vilnius",
"riga",
"budapest",
"athens",
"cordoba",
"nice",
"montpellier",
"lille",
"alicante",
"salamanca",
"murcia",
"zaragoza",
"perugia",
"naples",
"venice",
"padua",
"lisbon",
"porto",
"coimbra",
"munich",
"hamburg",
"frankfurt",
"cologne",
"stuttgart",
"dusseldorf",
"dresden",
"mainz",
"montreal",
"malaga",
"poznan",
"cadiz",
"oviedo",
"liege",
"santiago_de_compostela",
"alcala_de_henares",
"las_palmas_de_gran_canaria",
"valladolid",
"vigo",
"thessaloniki",
"katowice",
"almeria",
"amsterdam",
"santander",
"san_sebastian",
"genoa",
"a_coruna",
"lublin",
"huelva",
"jaen",
"pamplona",
"palma_de_mallorca",
"ghent",
"marseille",
"nottingham",
"cartagena",
"ljubljana",
"toulouse",
"glasgow",
"graz",
"copenhagen",
"nicosia",
"stockholm",
"edinburgh",
"rotterdam",
"zagreb",
"santa_cruz_de_tenerife",
"manchester",
"setubal",
"zurich",
"kaunas",
"sofia",
"trento",
"galway",
"leipzig",
"luxembourg",
"tallinn",
"saint_julians",
"valletta",
"brescia",
"cagliari"
]
},
"postalCode": {
"type": "string"
}
},
"required": [
"addressLine1",
"country",
"city",
"cityId",
"postalCode"
]
}
},
"required": [
"id",
"propertyId",
"type",
"state",
"deleted",
"disable",
"verified",
"area",
"landlordReference",
"numberBathrooms",
"location"
]
}
}
}
}
},
"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",
"status",
"title",
"type"
]
}View all units with body ¶
View all units with bodyPOST/units
Retrieve a list of units that match a specific set of criteria inside the body of the request.
Example URI
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"ids": [
"3c2e15d7-ba6e-4995-aa19-a00267ca36dd"
],
"propertyId": "90567",
"propertyIds": [
"90567"
],
"disabled": true,
"ownerId": "3c2e15d7-ba6e-4995-aa19-a00267ca36dd",
"reference": "ref",
"states": [
"published"
],
"page": 1,
"itemsPerPage": 100
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ids": {
"type": "array"
},
"propertyId": {
"type": "string"
},
"propertyIds": {
"type": "array"
},
"disabled": {
"type": "boolean"
},
"ownerId": {
"type": "string"
},
"reference": {
"type": "string",
"description": "Search using a regex in the reference field"
},
"states": {
"type": "array"
},
"page": {
"type": "number"
},
"itemsPerPage": {
"type": "number"
}
}
}200Headers
Content-Type: application/jsonBody
{
"count": 1,
"total": 2,
"_links": {
"self": {
"href": "/units?page=1"
},
"first": {
"href": "/units?page=1"
},
"last": {
"href": "/units?page=2"
},
"next": {
"href": "/units?page=1"
},
"previous": {
"href": "/units?page=2"
}
},
"_embedded": {
"sah:units": [
{
"id": "aaaa-bbbb-cccc-dddd",
"propertyId": "340123",
"ownerId": "26dcfa67",
"type": "whole",
"state": "published",
"deleted": true,
"disable": true,
"verified": true,
"area": 50,
"landlordReference": "Bedroom 10",
"numberBathrooms": 3,
"agentId": "cccc-aaaa-eeee-dddd",
"plan": "standard",
"location": {
"addressLine1": "Avenida de la Palmera, 60",
"addressLine2": "1º Izquierda",
"country": "spain",
"city": "Sevilla",
"cityId": "madrid",
"postalCode": "41013"
}
}
]
}
}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": {
"sah:units": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"propertyId": {
"type": "string"
},
"ownerId": {
"type": "string",
"description": "f027-4633-8edc-f0847aa086ce (string, required)"
},
"type": {
"type": "string",
"enum": [
"whole",
"room",
"bed"
]
},
"state": {
"type": "string",
"enum": [
"published",
"unpublished",
"archived"
]
},
"deleted": {
"type": "boolean"
},
"disable": {
"type": "boolean"
},
"verified": {
"type": "boolean"
},
"area": {
"type": "number"
},
"landlordReference": {
"type": "string"
},
"numberBathrooms": {
"type": "number"
},
"agentId": {
"type": "string"
},
"plan": {
"type": "string",
"enum": [
"standard",
"premium",
"select"
]
},
"location": {
"type": "object",
"properties": {
"addressLine1": {
"type": "string"
},
"addressLine2": {
"type": "string"
},
"country": {
"type": "string"
},
"city": {
"type": "string"
},
"cityId": {
"type": "string",
"enum": [
"madrid",
"barcelona",
"bilbao",
"valencia",
"granada",
"seville",
"brussels",
"dublin",
"london",
"rome",
"milan",
"paris",
"lyon",
"dubai",
"berlin",
"vienna",
"istanbul",
"turin",
"bologna",
"florence",
"warsaw",
"krakow",
"lodz",
"gdansk",
"wroclaw",
"prague",
"vilnius",
"riga",
"budapest",
"athens",
"cordoba",
"nice",
"montpellier",
"lille",
"alicante",
"salamanca",
"murcia",
"zaragoza",
"perugia",
"naples",
"venice",
"padua",
"lisbon",
"porto",
"coimbra",
"munich",
"hamburg",
"frankfurt",
"cologne",
"stuttgart",
"dusseldorf",
"dresden",
"mainz",
"montreal",
"malaga",
"poznan",
"cadiz",
"oviedo",
"liege",
"santiago_de_compostela",
"alcala_de_henares",
"las_palmas_de_gran_canaria",
"valladolid",
"vigo",
"thessaloniki",
"katowice",
"almeria",
"amsterdam",
"santander",
"san_sebastian",
"genoa",
"a_coruna",
"lublin",
"huelva",
"jaen",
"pamplona",
"palma_de_mallorca",
"ghent",
"marseille",
"nottingham",
"cartagena",
"ljubljana",
"toulouse",
"glasgow",
"graz",
"copenhagen",
"nicosia",
"stockholm",
"edinburgh",
"rotterdam",
"zagreb",
"santa_cruz_de_tenerife",
"manchester",
"setubal",
"zurich",
"kaunas",
"sofia",
"trento",
"galway",
"leipzig",
"luxembourg",
"tallinn",
"saint_julians",
"valletta",
"brescia",
"cagliari"
]
},
"postalCode": {
"type": "string"
}
},
"required": [
"addressLine1",
"country",
"city",
"cityId",
"postalCode"
]
}
},
"required": [
"id",
"propertyId",
"type",
"state",
"deleted",
"disable",
"verified",
"area",
"landlordReference",
"numberBathrooms",
"location"
]
}
}
}
}
},
"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",
"status",
"title",
"type"
]
}Landlord Units ¶
View all landlord unitsGET/public/units{?ids,propertyId,propertyIds,disabled,reference,states,page,itemsPerPage}
Example URI
- ids
array[string](optional) Example: 3c2e15d7-ba6e-4995-aa19-a00267ca36dd- propertyId
string(optional) Example: 90567- propertyIds
array[string](optional) Example: 90567- disabled
boolean(optional) Example: true- reference
string(optional) Example: refSearch using a regex in the reference field
- states
array[string](optional) Example: published- 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": "/public/units?page=1"
},
"first": {
"href": "/public/units?page=1"
},
"last": {
"href": "/public/units?page=2"
},
"next": {
"href": "/public/units?page=1"
},
"previous": {
"href": "/public/units?page=2"
}
},
"_embedded": {
"sah:units": [
{
"id": "aaaa-bbbb-cccc-dddd",
"propertyId": "340123",
"ownerId": "26dcfa67",
"type": "whole",
"state": "published",
"deleted": true,
"disable": true,
"verified": true,
"area": 50,
"landlordReference": "Bedroom 10",
"numberBathrooms": 3,
"agentId": "cccc-aaaa-eeee-dddd",
"plan": "standard",
"location": {
"addressLine1": "Avenida de la Palmera, 60",
"addressLine2": "1º Izquierda",
"country": "spain",
"city": "Sevilla",
"cityId": "madrid",
"postalCode": "41013"
}
}
]
}
}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": {
"sah:units": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"propertyId": {
"type": "string"
},
"ownerId": {
"type": "string",
"description": "f027-4633-8edc-f0847aa086ce (string, required)"
},
"type": {
"type": "string",
"enum": [
"whole",
"room",
"bed"
]
},
"state": {
"type": "string",
"enum": [
"published",
"unpublished",
"archived"
]
},
"deleted": {
"type": "boolean"
},
"disable": {
"type": "boolean"
},
"verified": {
"type": "boolean"
},
"area": {
"type": "number"
},
"landlordReference": {
"type": "string"
},
"numberBathrooms": {
"type": "number"
},
"agentId": {
"type": "string"
},
"plan": {
"type": "string",
"enum": [
"standard",
"premium",
"select"
]
},
"location": {
"type": "object",
"properties": {
"addressLine1": {
"type": "string"
},
"addressLine2": {
"type": "string"
},
"country": {
"type": "string"
},
"city": {
"type": "string"
},
"cityId": {
"type": "string",
"enum": [
"madrid",
"barcelona",
"bilbao",
"valencia",
"granada",
"seville",
"brussels",
"dublin",
"london",
"rome",
"milan",
"paris",
"lyon",
"dubai",
"berlin",
"vienna",
"istanbul",
"turin",
"bologna",
"florence",
"warsaw",
"krakow",
"lodz",
"gdansk",
"wroclaw",
"prague",
"vilnius",
"riga",
"budapest",
"athens",
"cordoba",
"nice",
"montpellier",
"lille",
"alicante",
"salamanca",
"murcia",
"zaragoza",
"perugia",
"naples",
"venice",
"padua",
"lisbon",
"porto",
"coimbra",
"munich",
"hamburg",
"frankfurt",
"cologne",
"stuttgart",
"dusseldorf",
"dresden",
"mainz",
"montreal",
"malaga",
"poznan",
"cadiz",
"oviedo",
"liege",
"santiago_de_compostela",
"alcala_de_henares",
"las_palmas_de_gran_canaria",
"valladolid",
"vigo",
"thessaloniki",
"katowice",
"almeria",
"amsterdam",
"santander",
"san_sebastian",
"genoa",
"a_coruna",
"lublin",
"huelva",
"jaen",
"pamplona",
"palma_de_mallorca",
"ghent",
"marseille",
"nottingham",
"cartagena",
"ljubljana",
"toulouse",
"glasgow",
"graz",
"copenhagen",
"nicosia",
"stockholm",
"edinburgh",
"rotterdam",
"zagreb",
"santa_cruz_de_tenerife",
"manchester",
"setubal",
"zurich",
"kaunas",
"sofia",
"trento",
"galway",
"leipzig",
"luxembourg",
"tallinn",
"saint_julians",
"valletta",
"brescia",
"cagliari"
]
},
"postalCode": {
"type": "string"
}
},
"required": [
"addressLine1",
"country",
"city",
"cityId",
"postalCode"
]
}
},
"required": [
"id",
"propertyId",
"type",
"state",
"deleted",
"disable",
"verified",
"area",
"landlordReference",
"numberBathrooms",
"location"
]
}
}
}
}
},
"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",
"status",
"title",
"type"
]
}Property Units ¶
Add a unit to a propertyPOST/properties/{id}/units
Example URI
- id
string(required) Example: 90567
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"type": "room"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"room",
"bed"
]
}
},
"required": [
"type"
]
}204Headers
Location: /units/{unitId}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Single Unit ¶
View a single unitGET/units/{id}
Example URI
- id
string(required) Example: aaaa-bbbb-cccc-dddd
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"id": "aaaa-bbbb-cccc-dddd",
"propertyId": "340123",
"ownerId": "26dcfa67",
"type": "whole",
"state": "published",
"deleted": true,
"disable": true,
"verified": true,
"area": 50,
"landlordReference": "Bedroom 10",
"numberBathrooms": 3,
"agentId": "cccc-aaaa-eeee-dddd",
"plan": "standard",
"location": {
"addressLine1": "Avenida de la Palmera, 60",
"addressLine2": "1º Izquierda",
"country": "spain",
"city": "Sevilla",
"cityId": "madrid",
"postalCode": "41013"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"propertyId": {
"type": "string"
},
"ownerId": {
"type": "string",
"description": "f027-4633-8edc-f0847aa086ce (string, required)"
},
"type": {
"type": "string",
"enum": [
"whole",
"room",
"bed"
]
},
"state": {
"type": "string",
"enum": [
"published",
"unpublished",
"archived"
]
},
"deleted": {
"type": "boolean"
},
"disable": {
"type": "boolean"
},
"verified": {
"type": "boolean"
},
"area": {
"type": "number"
},
"landlordReference": {
"type": "string"
},
"numberBathrooms": {
"type": "number"
},
"agentId": {
"type": "string"
},
"plan": {
"type": "string",
"enum": [
"standard",
"premium",
"select"
]
},
"location": {
"type": "object",
"properties": {
"addressLine1": {
"type": "string"
},
"addressLine2": {
"type": "string"
},
"country": {
"type": "string"
},
"city": {
"type": "string"
},
"cityId": {
"type": "string",
"enum": [
"madrid",
"barcelona",
"bilbao",
"valencia",
"granada",
"seville",
"brussels",
"dublin",
"london",
"rome",
"milan",
"paris",
"lyon",
"dubai",
"berlin",
"vienna",
"istanbul",
"turin",
"bologna",
"florence",
"warsaw",
"krakow",
"lodz",
"gdansk",
"wroclaw",
"prague",
"vilnius",
"riga",
"budapest",
"athens",
"cordoba",
"nice",
"montpellier",
"lille",
"alicante",
"salamanca",
"murcia",
"zaragoza",
"perugia",
"naples",
"venice",
"padua",
"lisbon",
"porto",
"coimbra",
"munich",
"hamburg",
"frankfurt",
"cologne",
"stuttgart",
"dusseldorf",
"dresden",
"mainz",
"montreal",
"malaga",
"poznan",
"cadiz",
"oviedo",
"liege",
"santiago_de_compostela",
"alcala_de_henares",
"las_palmas_de_gran_canaria",
"valladolid",
"vigo",
"thessaloniki",
"katowice",
"almeria",
"amsterdam",
"santander",
"san_sebastian",
"genoa",
"a_coruna",
"lublin",
"huelva",
"jaen",
"pamplona",
"palma_de_mallorca",
"ghent",
"marseille",
"nottingham",
"cartagena",
"ljubljana",
"toulouse",
"glasgow",
"graz",
"copenhagen",
"nicosia",
"stockholm",
"edinburgh",
"rotterdam",
"zagreb",
"santa_cruz_de_tenerife",
"manchester",
"setubal",
"zurich",
"kaunas",
"sofia",
"trento",
"galway",
"leipzig",
"luxembourg",
"tallinn",
"saint_julians",
"valletta",
"brescia",
"cagliari"
]
},
"postalCode": {
"type": "string"
}
},
"required": [
"addressLine1",
"country",
"city",
"cityId",
"postalCode"
]
}
},
"required": [
"id",
"propertyId",
"type",
"state",
"deleted",
"disable",
"verified",
"area",
"landlordReference",
"numberBathrooms",
"location"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Delete a unitDELETE/units/{id}
Example URI
- id
string(required) Example: aaaa-bbbb-cccc-dddd
Headers
Authorization: aa.bb.cc204401Headers
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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Unit assignation ¶
Assign a unitPUT/units/{id}/assignation
Example URI
- id
string(required) Example: 157544
Headers
Authorization: aa.bb.ccBody
{
"agentId": "0a5859b1-a54f-412f-81d4-5df9c39c5f7b"
}Schema
{
"type": "object",
"properties": {
"agentId": {
"type": [
"string",
"null"
]
}
},
"required": [
"agentId"
],
"$schema": "http://json-schema.org/draft-04/schema#"
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}422Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 422,
"title": "Unprocessable Entity",
"type": "`http://www.w3.org/Protocols/rfc2616/rfc2616",
"validationMessages": {
"field": {
"stringLength": "The input is less than 6 characters long"
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string",
"description": "sec10.html (string, required)"
},
"validationMessages": {
"type": "object",
"properties": {
"field": {
"type": "object",
"properties": {
"stringLength": {
"type": "string"
}
},
"required": [
"stringLength"
]
}
},
"description": "Contains a property for each field that failed validation."
}
},
"required": [
"detail",
"status",
"title"
]
}Unit Publication ¶
Publish a unitPOST/units/{id}/publication
Example URI
- id
string(required) Example: 157544
Headers
Authorization: aa.bb.cc
Requester: user@email.com204401Headers
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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Unpublish a unitDELETE/units/{id}/publication
Example URI
- id
string(required) Example: 157544
Headers
Authorization: aa.bb.cc
Requester: user@email.com204401Headers
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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Unit publication by Landlord ¶
UnpublishDELETE/landlords/me/units/{id}/publication
Example URI
- id
string(required) Example: 157544
Headers
Authorization: aa.bb.cc204401Headers
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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}All landlord properties ¶
View allGET/landlords/me/properties{?includeDeleted}
Example URI
- includeDeleted
boolean(optional) Example: falseInclude deleted units in the search
Headers
Authorization: aa.bb.cc200Body
[
{
"id": "aaaa-bbbb-cccc-dddd",
"isShared": true,
"units": [
{
"id": "aaaa-bbbb-cccc-dddd",
"isProperty": true
}
]
}
]Schema
{
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"isShared": {
"type": "boolean"
},
"units": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"isProperty": {
"type": "boolean"
}
},
"required": [
"id",
"isProperty"
]
}
}
},
"required": [
"id",
"isShared"
]
},
"$schema": "http://json-schema.org/draft-04/schema#"
}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",
"status",
"title",
"type"
]
}Landlord rights ¶
RightsGET/landlords/me/units/{id}/rights
Example URI
- id
string(required) Example: 157544
Headers
Authorization: aa.bb.cc204401Headers
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",
"status",
"title",
"type"
]
}403Headers
Content-Type: application/jsonBody
{
"detail": "Forbidden access",
"status": 403,
"title": "Forbidden",
"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"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Unit Additional Data ¶
Update a unitPUT/units/{id}/additional-data
Example URI
- id
string(required) Example: 157544
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"area": 50,
"landlordReference": "Room 1",
"numberBathrooms": 2
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"area": {
"type": [
"number",
"null"
]
},
"landlordReference": {
"type": [
"string",
"null"
]
},
"numberBathrooms": {
"type": [
"number",
"null"
]
}
},
"required": [
"area",
"landlordReference",
"numberBathrooms"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Remove units additional dataDELETE/units/{id}/additional-data
Example URI
- id
string(required) Example: 157544
Headers
Authorization: aa.bb.cc
Requester: user@email.com204401Headers
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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Landlord unit Additional Data ¶
Landlord update an unit additional dataPUT/public/units/{id}/additional-data
Example URI
- id
string(required) Example: 157544
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"area": 50,
"landlordReference": "Room 1",
"numberBathrooms": 2
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"area": {
"type": [
"number",
"null"
]
},
"landlordReference": {
"type": [
"string",
"null"
]
},
"numberBathrooms": {
"type": [
"number",
"null"
]
}
},
"required": [
"area",
"landlordReference",
"numberBathrooms"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Landlord partial update an unit additional dataPATCH/public/units/{id}/additional-data
Example URI
- id
string(required) Example: 157544
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"area": 50,
"landlordReference": "Room 1",
"numberBathrooms": 2
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"area": {
"type": [
"number",
"null"
]
},
"landlordReference": {
"type": [
"string",
"null"
]
},
"numberBathrooms": {
"type": [
"number",
"null"
]
}
}
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Unit plan ¶
Landlord gets planGET/public/units/{id}/plan
Example URI
- id
string(required) Example: 157544
Headers
Content-Type: application/json
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"plan": "standard"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"plan": {
"type": "string",
"enum": [
"standard",
"premium",
"select"
]
}
},
"required": [
"plan"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Landlord changes planPUT/public/units/{id}/plan
Example URI
- id
string(required) Example: 157544
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"plan": "standard"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"plan": {
"type": "string",
"enum": [
"standard",
"premium",
"select"
]
}
},
"required": [
"plan"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Unit plans ¶
View all unit plansGET/units/plans{?page,itemsPerPage}
Example URI
- page
number(optional) Example: 1- itemsPerPage
number(optional) Example: 100
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"count": 1,
"total": 1,
"_links": {
"self": {
"href": "/units/plans?page=1"
},
"first": {
"href": "/units/plans?page=1"
},
"last": {
"href": "/units/plans?page=1"
},
"next": {
"href": "/units/plans?page=1"
},
"previous": {
"href": "/units/plans?page=1"
}
},
"_embedded": {
"sah:listings:units:plans": [
{
"name": "standard"
}
]
}
}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": {
"sah:listings:units:plans": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"enum": [
"standard",
"premium",
"select"
]
}
},
"required": [
"name"
]
}
}
}
}
},
"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",
"status",
"title",
"type"
]
}Unit plans ¶
View all landlord unit plansGET/public/units/plans{?page,itemsPerPage}
Example URI
- page
number(optional) Example: 1- itemsPerPage
number(optional) Example: 100
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"count": 1,
"total": 1,
"_links": {
"self": {
"href": "/public/units/plans?page=1"
},
"first": {
"href": "/public/units/plans?page=1"
},
"last": {
"href": "/public/units/plans?page=1"
},
"next": {
"href": "/public/units/plans?page=1"
},
"previous": {
"href": "/public/units/plans?page=1"
}
},
"_embedded": {
"sah:listings:units:plans": [
{
"name": "standard"
}
]
}
}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": {
"sah:listings:units:plans": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"enum": [
"standard",
"premium",
"select"
]
}
},
"required": [
"name"
]
}
}
}
}
},
"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",
"status",
"title",
"type"
]
}Unit Activation ¶
Enable a unitPOST/units/{id}/enabling
Example URI
- id
string(required) Example: 157544
Headers
Authorization: aa.bb.cc204401Headers
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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Disable a unitDELETE/units/{id}/enabling
Example URI
- id
string(required) Example: 157544
Headers
Authorization: aa.bb.cc204401Headers
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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Unit plan ¶
Internal user gets planGET/units/{id}/plan
Example URI
- id
string(required) Example: 157544
Headers
Content-Type: application/json
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"plan": "standard"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"plan": {
"type": "string",
"enum": [
"standard",
"premium",
"select"
]
}
},
"required": [
"plan"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Internal user changes planPUT/units/{id}/plan
Example URI
- id
string(required) Example: 157544
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"plan": "standard"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"plan": {
"type": "string",
"enum": [
"standard",
"premium",
"select"
]
}
},
"required": [
"plan"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Features ¶
Single Features ¶
View features from a single unitGET/unit-features/{id}
Example URI
- id
string(required) Example: 12345
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"id": "200430",
"unitFeatures": [
{
"applicability": "unit",
"category": "suitability",
"name": "gender",
"value": "any",
"additionalInfo": 4000
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"unitFeatures": {
"type": "array",
"items": {
"type": "object",
"properties": {
"applicability": {
"type": "string",
"enum": [
"unit",
"property"
]
},
"category": {
"type": "string",
"enum": [
"suitability",
"features",
"extraFeatures",
"bills"
]
},
"name": {
"type": "string"
},
"value": {
"type": "string"
},
"additionalInfo": {
"type": "number"
}
},
"required": [
"applicability",
"category",
"name",
"value"
]
}
}
},
"required": [
"id",
"unitFeatures"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Partial update of features of a single unitPATCH/unit-features/{id}
To update or create a feature for a unit you need to send within the array the object with the four parameters (applicability, category, name, value). To delete a feature, you need to send the object omitting the value (applicability, category, name).
Example URI
- id
string(required) Example: 12345
Headers
Authorization: aa.bb.ccBody
[
{
"applicability": "unit",
"category": "suitability",
"name": "gender",
"value": "any",
"additionalInfo": 4000
}
]Schema
{
"type": "array",
"items": {
"type": "object",
"properties": {
"applicability": {
"type": "string"
},
"category": {
"type": "string"
},
"name": {
"type": "string"
},
"value": {
"type": "string"
},
"additionalInfo": {
"type": "number"
}
},
"required": [
"applicability",
"category",
"name"
]
},
"$schema": "http://json-schema.org/draft-04/schema#"
}204400Headers
Content-Type: application/jsonBody
{
"detail": "The request could not be understood by the server due to malformed syntax",
"status": 400,
"title": "Bad Request",
"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"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}422Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 422,
"title": "Unprocessable Entity",
"type": "`http://www.w3.org/Protocols/rfc2616/rfc2616",
"validationMessages": {
"field": {
"stringLength": "The input is less than 6 characters long"
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string",
"description": "sec10.html (string, required)"
},
"validationMessages": {
"type": "object",
"properties": {
"field": {
"type": "object",
"properties": {
"stringLength": {
"type": "string"
}
},
"required": [
"stringLength"
]
}
},
"description": "Contains a property for each field that failed validation."
}
},
"required": [
"detail",
"status",
"title"
]
}Unit features ¶
View all unit featuresGET/unit-features{?ids,names,applicability,category,page,itemsPerPage}
Example URI
- ids
array[string](optional) Example: 12345Criteria by ids.
- names
array[string](optional) Example: nameCriteria by names.
- applicability
string(optional)-
property
-
unit
-
- category
string(optional)-
suitability
-
features
-
extraFeatures
-
bills
-
- page
number(optional) Example: 1- itemsPerPage
number(optional) Example: 100
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"count": 100,
"total": 200,
"_links": {
"self": {
"href": "/unit-features?page=1"
},
"first": {
"href": "/unit-features?page=1"
},
"last": {
"href": "/unit-features?page=2"
},
"next": {
"href": "/unit-features?page=1"
},
"previous": {
"href": "/unit-features?page=2"
}
},
"_embedded": {
"sah:unit-features": [
{
"id": "200430",
"unitFeatures": [
{
"applicability": "unit",
"category": "suitability",
"name": "gender",
"value": "any",
"additionalInfo": 4000
}
]
}
]
}
}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:unit-features": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"unitFeatures": {
"type": "array",
"items": {
"type": "object",
"properties": {
"applicability": {
"type": "string",
"enum": [
"unit",
"property"
]
},
"category": {
"type": "string",
"enum": [
"suitability",
"features",
"extraFeatures",
"bills"
]
},
"name": {
"type": "string"
},
"value": {
"type": "string"
},
"additionalInfo": {
"type": "number"
}
},
"required": [
"applicability",
"category",
"name",
"value"
]
}
}
},
"required": [
"id",
"unitFeatures"
]
}
}
}
}
},
"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",
"status",
"title",
"type"
]
}Landlord unit features ¶
View landlord all unit featuresGET/public/unit-features{?ids,names,applicability,category,group,page,itemsPerPage}
Example URI
- ids
array[string](optional) Example: 12345Criteria by ids.
- names
array[string](optional) Example: nameCriteria by names.
- applicability
string(optional)-
property
-
unit
-
- category
string(optional)-
suitability
-
features
-
extraFeatures
-
bills
-
- group
string(optional) Example: landlordPolicies- page
number(optional) Example: 1- itemsPerPage
number(optional) Example: 100
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"count": 100,
"total": 200,
"_links": {
"self": {
"href": "/public/unit-features?page=1"
},
"first": {
"href": "/public/unit-features?page=1"
},
"last": {
"href": "/public/unit-features?page=2"
},
"next": {
"href": "/public/unit-features?page=1"
},
"previous": {
"href": "/public/unit-features?page=2"
}
},
"_embedded": {
"sah:unit-features": [
{
"id": "200430",
"unitFeatures": [
{
"applicability": "unit",
"category": "suitability",
"name": "gender",
"value": "any",
"additionalInfo": 4000
}
]
}
]
}
}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:unit-features": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"unitFeatures": {
"type": "array",
"items": {
"type": "object",
"properties": {
"applicability": {
"type": "string",
"enum": [
"unit",
"property"
]
},
"category": {
"type": "string",
"enum": [
"suitability",
"features",
"extraFeatures",
"bills"
]
},
"name": {
"type": "string"
},
"value": {
"type": "string"
},
"additionalInfo": {
"type": "number"
}
},
"required": [
"applicability",
"category",
"name",
"value"
]
}
}
},
"required": [
"id",
"unitFeatures"
]
}
}
}
}
},
"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",
"status",
"title",
"type"
]
}Clone unit features ¶
Clone unit featuresPOST/unit-features/clone
Example URI
Headers
Authorization: aa.bb.ccBody
{
"sourcePropertyId": "12345",
"destinationPropertyIds": [
"45678"
]
}Schema
{
"type": "object",
"properties": {
"sourcePropertyId": {
"type": "string"
},
"destinationPropertyIds": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"sourcePropertyId",
"destinationPropertyIds"
],
"$schema": "http://json-schema.org/draft-04/schema#"
}202401Headers
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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Available Features ¶
View all available featuresGET/features{?names,applicability,category,cityId,group}
Example URI
- names
array[string](optional) Example: genderCriteria by names.
- applicability
string(optional) Example: unit- category
string(optional) Example: suitability- cityId
string(optional) Example: madrid- group
string(optional) Example: landlordPolicies
200Headers
Content-Type: application/jsonBody
[
{
"name": "gender",
"category": "suitability",
"applicability": "property",
"mandatory": true,
"options": [
"any",
"onlyMales",
"onlyFemales"
],
"requiresAdditionalInfo": [
"any",
"onlyMales"
],
"additionalInfoType": "priceAdditionalInfoType"
}
]Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"category": {
"type": "string"
},
"applicability": {
"type": "string",
"enum": [
"property",
"unit"
]
},
"mandatory": {
"type": "boolean"
},
"options": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
]
},
"requiresAdditionalInfo": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
}
]
},
"additionalInfoType": {
"type": "string",
"enum": [
"priceAdditionalInfoType",
"frequencyAndFeeAdditionalInfoType"
]
}
},
"required": [
"name",
"category",
"applicability",
"mandatory",
"options"
]
}
}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",
"status",
"title",
"type"
]
}Features Groups ¶
View all features groupsGET/features/groups{?page,itemsPerPage}
Example URI
- page
number(optional) Example: 1- itemsPerPage
number(optional) Example: 100
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"count": 1,
"total": 1,
"_links": {
"self": {
"href": "/features/groups?page=1&itemsPerPage=100"
},
"first": {
"href": "/features/groups?page=1&itemsPerPage=100"
},
"last": {
"href": "/features/groups?page=1&itemsPerPage=100"
},
"next": {
"href": "/features/groups?page=1&itemsPerPage=100"
},
"previous": {
"href": "/features/groups?page=1&itemsPerPage=100"
}
},
"_embedded": {
"sah:listings:features:groups": [
{
"name": "landlordPolicies",
"features": [
"petsAllowed",
"smokingAllowed",
"professionals"
]
}
]
}
}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:listings:features:groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"features": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
]
}
},
"required": [
"name",
"features"
]
}
}
}
}
},
"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",
"status",
"title",
"type"
]
}Copywriters ¶
Copywriters ¶
View copywritersGET/copywriters{?ids,enabled,page,itemsPerPage}
Example URI
- ids
array[string](optional) Example: 3c2e15d7-ba6e-4995-aa19-a00267ca36ddCriteria by ids.
- enabled
boolean(optional) Example: true- 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": "/copywriters?page=1"
},
"first": {
"href": "/copywriters?page=1"
},
"last": {
"href": "/copywriters?page=2"
},
"next": {
"href": "/copywriters?page=1"
},
"previous": {
"href": "/copywriters?page=2"
}
},
"_embedded": {
"sah:copywriters": [
{
"id": "aaaaa-bbbb-cccc",
"firstName": "Homer",
"lastName": "Jay Simpson",
"email": "homer@springfield.com",
"enabled": true,
"profilePicture": "https://pbs.twimg.com/profile_images/725013638411489280/4wx8EcIA.jpg"
}
]
}
}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:copywriters": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"firstName": {
"type": "string"
},
"lastName": {
"type": "string"
},
"email": {
"type": "string"
},
"enabled": {
"type": "boolean"
},
"profilePicture": {
"type": "string"
}
},
"required": [
"id",
"firstName",
"email",
"enabled"
]
}
}
}
}
},
"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",
"status",
"title",
"type"
]
}Cities ¶
Cities ¶
View all citiesGET/cities{?enabled,locale}
Example URI
- enabled
boolean(optional) Example: true- locale
string(optional) Example: enLocale for the translations. Defaults to “en” if not sent or not found.
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
[
{
"id": "madrid",
"calendarId": "calendarMadrid",
"countryId": "spain",
"minimumStay": 30,
"timeZone": "Europe/Madrid",
"inboundEnabled": true,
"translations": {
"cityShortName": "Madrid",
"cityLongName": "Madrid",
"countryShortName": "ES",
"countryLongName": "Spain"
}
}
]Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"calendarId": {
"type": "string"
},
"countryId": {
"type": "string"
},
"minimumStay": {
"type": "number"
},
"timeZone": {
"type": "string"
},
"inboundEnabled": {
"type": "boolean"
},
"translations": {
"type": "object",
"properties": {
"cityShortName": {
"type": "string"
},
"cityLongName": {
"type": "string"
},
"countryShortName": {
"type": "string"
},
"countryLongName": {
"type": "string"
}
},
"required": [
"cityShortName",
"cityLongName",
"countryShortName",
"countryLongName"
]
}
},
"required": [
"id",
"calendarId",
"countryId",
"minimumStay",
"timeZone",
"inboundEnabled",
"translations"
]
}
}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",
"status",
"title",
"type"
]
}Units cities ¶
View all units citiesPOST/cities/units
Example URI
Headers
Authorization: aa.bb.ccBody
{
"unitIds": [
"188392"
]
}Schema
{
"type": "object",
"properties": {
"unitIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of unit ids"
}
},
"required": [
"unitIds"
],
"$schema": "http://json-schema.org/draft-04/schema#"
}200Headers
Content-Type: application/jsonBody
[
"Hello, world!"
]Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array",
"items": {
"type": "string"
}
}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",
"status",
"title",
"type"
]
}City ¶
View cityGET/cities/{id}
Example URI
- id
string(required) Example: madrid
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"id": "madrid",
"calendarId": "calendarMadrid",
"country": "spain",
"minimumStay": 30,
"timeZone": "Europe/Madrid",
"inboundEnabled": true
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"calendarId": {
"type": "string"
},
"country": {
"type": "string"
},
"minimumStay": {
"type": "number"
},
"timeZone": {
"type": "string"
},
"inboundEnabled": {
"type": "boolean"
}
},
"required": [
"id",
"calendarId",
"country",
"minimumStay",
"timeZone",
"inboundEnabled"
]
}401Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Edition requests ¶
Edition requests ¶
Search Edition requestsGET/edition-requests{?ids,propertyId,copywriterId,copywriter,stage,type,priority,requestedFrom,requestedTo,sort,page,itemsPerPage}
Example URI
- ids
array[string](optional) Example: 3c2e15d7-ba6e-4995-aa19-a00267ca36ddCriteria by ids.
- propertyId
string(optional) Example: 12345- copywriterId
string(optional) Example: 7d3f26e8-ba6e-4995-aa19-a00267ca36dd(DEPRECATED)
UUID orUseunassignedcopywriter- copywriter
string(optional) Example: 7d3f26e8-ba6e-4995-aa19-a00267ca36ddUUID or
unassigned- type
string(optional) Example: property-
property
-
additional
-
modification
-
- priority
string(optional) Example: low-
low
-
medium
-
high
-
- stage
string(optional) Example: readyToCopy-
readyToCopy
-
inProgress
-
finished
-
- requestedTo
string(optional) Example: 2018-03-08- requestedFrom
string(optional) Example: 2018-03-08- sort
string(optional) Example: _id,propertyId,type,referenceId,notes,copywriterId,stage,requestedAt,requesterWithout symbol
requestedAt(ascending), with negative symbol-requestedAt(descending)- page
number(optional) Example: 1- itemsPerPage
number(optional) Example: 100
Headers
Content-Type: application/json
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"count": 2,
"total": 2,
"_links": {
"self": {
"href": "/edition-requests?page=1"
},
"first": {
"href": "/edition-requests?page=1"
},
"last": {
"href": "/edition-requests?page=2"
},
"next": {
"href": "/edition-requests?page=1"
},
"previous": {
"href": "/edition-requests?page=2"
}
},
"_embedded": {
"sah:edition-requests": [
{
"id": "aaaa-bbbb-cccc-dddd",
"propertyId": "12345",
"referenceId": "photo-session",
"copywriterId": "aaaa-bbbb-cccc-dddd",
"type": "property",
"priority": "low",
"stage": "readyToCopy",
"notes": "some notes",
"requesterId": "bbbb-cccc-dddd-eee",
"requestedAt": "2018-03-06T17:16:28+00:00"
}
]
}
}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:edition-requests": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"propertyId": {
"type": "string"
},
"referenceId": {
"type": "string"
},
"copywriterId": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"property",
"additional",
"modification"
]
},
"priority": {
"type": "string",
"enum": [
"low",
"medium",
"high"
]
},
"stage": {
"type": "string",
"enum": [
"readyToCopy",
"inProgress",
"finished"
]
},
"notes": {
"type": "string"
},
"requesterId": {
"type": "string"
},
"requestedAt": {
"type": "string"
}
},
"required": [
"id",
"propertyId",
"referenceId",
"type",
"priority",
"stage",
"requesterId",
"requestedAt"
]
}
}
}
}
},
"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",
"status",
"title",
"type"
]
}Single Edition request ¶
Get Edition requests by idGET/edition-requests/{id}
Example URI
- id
string(required) Example: 7121b75d-768d-4907-8535-052772efe3cd
Headers
Content-Type: application/json
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"id": "aaaa-bbbb-cccc-dddd",
"propertyId": "12345",
"referenceId": "photo-session",
"copywriterId": "aaaa-bbbb-cccc-dddd",
"type": "property",
"priority": "low",
"stage": "readyToCopy",
"notes": "some notes",
"requesterId": "bbbb-cccc-dddd-eee",
"requestedAt": "2018-03-06T17:16:28+00:00"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"propertyId": {
"type": "string"
},
"referenceId": {
"type": "string"
},
"copywriterId": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"property",
"additional",
"modification"
]
},
"priority": {
"type": "string",
"enum": [
"low",
"medium",
"high"
]
},
"stage": {
"type": "string",
"enum": [
"readyToCopy",
"inProgress",
"finished"
]
},
"notes": {
"type": "string"
},
"requesterId": {
"type": "string"
},
"requestedAt": {
"type": "string"
}
},
"required": [
"id",
"propertyId",
"referenceId",
"type",
"priority",
"stage",
"requesterId",
"requestedAt"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}Edition request assignation ¶
Assign a copywriter to an edition requestPUT/edition-requests/{id}/assignation
Example URI
- id
string(required) Example: 7121b75d-768d-4907-8535-052772efe3cd
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"copywriterId": "Hello, world!"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"copywriterId": {
"type": "string",
"description": "User Id from the copywriter assigned"
}
},
"required": [
"copywriterId"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Unassign an edition requestDELETE/edition-requests/{id}/assignation
Example URI
- id
string(required) Example: 7121b75d-768d-4907-8535-052772efe3cd
Headers
Content-Type: application/json
Authorization: aa.bb.cc204401Headers
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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Edition request reviewer assignation ¶
Assign a copywriter to review an edition requestPUT/edition-requests/{id}/assignation-quality
Example URI
- id
string(required) Example: 7121b75d-768d-4907-8535-052772efe3cd
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"copywriterId": "Hello, world!"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"copywriterId": {
"type": "string",
"description": "User Id from the copywriter assigned"
}
},
"required": [
"copywriterId"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Edition request start ¶
Start an edition requestPUT/edition-requests/{id}/start
Example URI
- id
string(required) Example: 7121b75d-768d-4907-8535-052772efe3cd
Headers
Content-Type: application/json
Authorization: aa.bb.cc204401Headers
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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Edition request finish ¶
Finish an edition requestPUT/edition-requests/{id}/finish
Example URI
- id
string(required) Example: 7121b75d-768d-4907-8535-052772efe3cd
Headers
Content-Type: application/json
Authorization: aa.bb.cc204401Headers
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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Edition request rejection ¶
Reject an edition requestPUT/edition-requests/{id}/rejection
Example URI
- id
string(required) Example: 7121b75d-768d-4907-8535-052772efe3cd
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"reason": "why I'm rejecting this"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"reason": {
"type": "string"
}
},
"required": [
"reason"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Edition request resolution ¶
Resolve an edition requestPUT/edition-requests/{id}/resolution
Example URI
- id
string(required) Example: 7121b75d-768d-4907-8535-052772efe3cd
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"reason": "why I'm resolving this"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"reason": {
"type": "string"
}
},
"required": [
"reason"
]
}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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Edition request resolution ¶
Cancel an edition requestPUT/edition-requests/{id}/cancellation
Example URI
- id
string(required) Example: 7121b75d-768d-4907-8535-052772efe3cd
Headers
Content-Type: application/json
Authorization: aa.bb.cc204401Headers
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",
"status",
"title",
"type"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}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"
]
}Types ¶
View Edition Request TypesGET/edition-requests/types
Example URI
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
[
"property",
"additional",
"modification"
]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",
"status",
"title",
"type"
]
}Stages ¶
View Edition Request StagesGET/edition-requests/stages
Example URI
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
[
"readyToCopy",
"inProgress",
"finished",
"landlordMissingInformation",
"cancelled"
]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",
"status",
"title",
"type"
]
}Priorities ¶
View Edition Request PrioritiesGET/edition-requests/priorities
Example URI
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
[
"low",
"medium",
"high"
]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",
"status",
"title",
"type"
]
}Multi Listings ¶
Create a new Multi Listing ¶
Create new multi listingPOST/multi-listings
Example URI
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"propertyTemplates": [
{
"ownerId": "aaaa-bbbb-cccc-dddd",
"type": "apartment",
"location": {
"addressLine1": "Avenida de la Palmera, 60",
"addressLine2": "1º Izquierda",
"city": "Sevilla",
"cityId": "madrid",
"postalCode": "41013",
"latitude": 37.356508,
"longitude": -5.983941
},
"totalUnits": 10,
"rentableUnits": 10,
"numberOfProperties": 2,
"templateName": "'A template name'"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"propertyTemplates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"ownerId": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"apartment",
"studio",
"roomShared",
"residence"
]
},
"location": {
"type": "object",
"properties": {
"addressLine1": {
"type": "string"
},
"addressLine2": {
"type": "string"
},
"city": {
"type": "string"
},
"cityId": {
"type": "string",
"enum": [
"madrid",
"barcelona",
"bilbao",
"valencia",
"granada",
"seville",
"brussels",
"dublin",
"london",
"rome",
"milan",
"paris",
"lyon",
"dubai",
"berlin",
"vienna",
"istanbul",
"turin",
"bologna",
"florence",
"warsaw",
"krakow",
"lodz",
"gdansk",
"wroclaw",
"prague",
"vilnius",
"riga",
"budapest",
"athens",
"cordoba",
"nice",
"montpellier",
"lille",
"alicante",
"salamanca",
"murcia",
"zaragoza",
"perugia",
"naples",
"venice",
"padua",
"lisbon",
"porto",
"coimbra",
"munich",
"hamburg",
"frankfurt",
"cologne",
"stuttgart",
"dusseldorf",
"dresden",
"mainz",
"montreal",
"malaga",
"poznan",
"cadiz",
"oviedo",
"liege",
"santiago_de_compostela",
"alcala_de_henares",
"las_palmas_de_gran_canaria",
"valladolid",
"vigo",
"thessaloniki",
"katowice",
"almeria",
"amsterdam",
"santander",
"san_sebastian",
"genoa",
"a_coruna",
"lublin",
"huelva",
"jaen",
"pamplona",
"palma_de_mallorca",
"ghent",
"marseille",
"nottingham",
"cartagena",
"ljubljana",
"toulouse",
"glasgow",
"graz",
"copenhagen",
"nicosia",
"stockholm",
"edinburgh",
"rotterdam",
"zagreb",
"santa_cruz_de_tenerife",
"manchester",
"setubal",
"zurich",
"kaunas",
"sofia",
"trento",
"galway",
"leipzig",
"luxembourg",
"tallinn",
"saint_julians",
"valletta",
"brescia",
"cagliari"
]
},
"postalCode": {
"type": "string"
},
"latitude": {
"type": "number",
"description": "Between -90 and 90"
},
"longitude": {
"type": "number",
"description": "Between -180 and 180"
}
},
"required": [
"addressLine1",
"city",
"cityId",
"postalCode",
"latitude",
"longitude"
]
},
"totalUnits": {
"type": "number"
},
"rentableUnits": {
"type": "number"
},
"numberOfProperties": {
"type": "number"
},
"templateName": {
"type": "string"
}
},
"required": [
"ownerId",
"type",
"location",
"numberOfProperties",
"templateName"
]
}
}
},
"required": [
"propertyTemplates"
]
}202400Headers
Content-Type: application/jsonBody
{
"detail": "The request could not be understood by the server due to malformed syntax",
"status": 400,
"title": "Bad Request",
"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"
]
}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",
"status",
"title",
"type"
]
}422Headers
Content-Type: application/jsonBody
{
"detail": "The request was well formed but was unable to be followed due to semantic errors",
"status": 422,
"title": "Unprocessable Entity",
"type": "`http://www.w3.org/Protocols/rfc2616/rfc2616",
"validationMessages": {
"field": {
"stringLength": "The input is less than 6 characters long"
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"detail": {
"type": "string"
},
"status": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string",
"description": "sec10.html (string, required)"
},
"validationMessages": {
"type": "object",
"properties": {
"field": {
"type": "object",
"properties": {
"stringLength": {
"type": "string"
}
},
"required": [
"stringLength"
]
}
},
"description": "Contains a property for each field that failed validation."
}
},
"required": [
"detail",
"status",
"title"
]
}Event Store ¶
Event Store ¶
View eventsGET/event-store/{fromEventId}/{toEventId}{?typename}
Example URI
- fromEventId
number(required) Example: 27- toEventId
number(required) Example: 89- typename
array[string](optional) Example: SAH\Listings\Domain\PhotoSession\PhotoSessionWasMigrated
Headers
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"events": [
{
"id": "12345",
"typeName": "SAH\\Listings\\Domain\\PhotoSession\\PhotoSessionWasMigrated",
"occurredOn": "2018-03-06T17:16:28+00:00",
"eventBody": {}
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"events": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"typeName": {
"type": "string"
},
"occurredOn": {
"type": "string"
},
"eventBody": {
"type": "object",
"properties": {}
}
},
"required": [
"id",
"typeName",
"occurredOn",
"eventBody"
]
}
}
}
}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",
"status",
"title",
"type"
]
}Verification ¶
Verification Request ¶
Create new verification requestPOST/verification-request
Example URI
Headers
Content-Type: application/json
Authorization: aa.bb.ccBody
{
"listingId": "123456",
"bookingStartDate": "2022-01-01",
"bookingEndDate": "2022-05-30"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"listingId": {
"type": "string"
},
"bookingStartDate": {
"type": "string"
},
"bookingEndDate": {
"type": "string"
}
},
"required": [
"listingId"
]
}201400Headers
Content-Type: application/jsonBody
{
"detail": "The request could not be understood by the server due to malformed syntax",
"status": 400,
"title": "Bad Request",
"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"
]
}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",
"status",
"title",
"type"
]
}Listing Score ¶
Listing Score ¶
Recalculate Listing ScorePUT/listings/{listingId}/scoring
Example URI
- listingId
string(required) Example: 123456
Headers
Content-Type: application/json
Authorization: aa.bb.cc204401Headers
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",
"status",
"title",
"type"
]
}View one Listing ScoreGET/listings/{listingId}/scoring
Example URI
- listingId
string(required) Example: 123456
Headers
Content-Type: application/json
Authorization: aa.bb.cc200Body
{
"name": "standard",
"select": "Hello, world!",
"listingId": "Hello, world!",
"currentPrice": 1,
"pricePercentile": 1,
"priceCalculatedAt": "Hello, world!",
"pricePoints": 1,
"price": "Hello, world!",
"lastCalendarUpdated": "Hello, world!",
"lastCalendarUpdatedDate": "Hello, world!",
"lastCalendarUpdatedPoints": 1,
"verified": "Hello, world!",
"verifiedPoints": 1,
"noAdminFee": "Hello, world!",
"noAdminFeePoints": 1,
"noSecurityDeposit": "Hello, world!",
"noSecurityDepositPoints": 1,
"allBillsIncluded": "Hello, world!",
"allBillsIncludedPoints": 1,
"offerIncluded": "Hello, world!",
"offerIncludedPoints": 1,
"noSeasonalPrice": "Hello, world!",
"noSeasonalPricePoints": 1,
"instantBookingEnabled": "Hello, world!",
"instantBookingEnabledPoints": 1,
"energyCertificateIncluded": "Hello, world!",
"energyCertificateIncludedPoints": 1,
"totalScore": 1,
"totalScoreLabel": "not_optimized"
}Schema
{
"type": "object",
"properties": {
"name": {
"enum": [
"standard",
"premium"
]
},
"select": {
"type": "string"
},
"listingId": {
"type": "string"
},
"currentPrice": {
"type": "number"
},
"pricePercentile": {
"type": "number"
},
"priceCalculatedAt": {
"type": "string"
},
"pricePoints": {
"type": "number"
},
"price": {
"type": "string"
},
"lastCalendarUpdated": {
"type": "string"
},
"lastCalendarUpdatedDate": {
"type": "string"
},
"lastCalendarUpdatedPoints": {
"type": "number"
},
"verified": {
"type": "string"
},
"verifiedPoints": {
"type": "number"
},
"noAdminFee": {
"type": "string"
},
"noAdminFeePoints": {
"type": "number"
},
"noSecurityDeposit": {
"type": "string"
},
"noSecurityDepositPoints": {
"type": "number"
},
"allBillsIncluded": {
"type": "string"
},
"allBillsIncludedPoints": {
"type": "number"
},
"offerIncluded": {
"type": "string"
},
"offerIncludedPoints": {
"type": "number"
},
"noSeasonalPrice": {
"type": "string"
},
"noSeasonalPricePoints": {
"type": "number"
},
"instantBookingEnabled": {
"type": "string"
},
"instantBookingEnabledPoints": {
"type": "number"
},
"energyCertificateIncluded": {
"type": "string"
},
"energyCertificateIncludedPoints": {
"type": "number"
},
"totalScore": {
"type": "number"
},
"totalScoreLabel": {
"enum": [
"not_optimized",
"very_low",
"low",
"intermediate",
"high",
"very_high"
]
}
},
"required": [
"name",
"listingId",
"currentPrice",
"pricePercentile",
"priceCalculatedAt",
"pricePoints",
"price",
"lastCalendarUpdated",
"lastCalendarUpdatedDate",
"lastCalendarUpdatedPoints",
"verified",
"verifiedPoints",
"noAdminFee",
"noAdminFeePoints",
"noSecurityDeposit",
"noSecurityDepositPoints",
"allBillsIncluded",
"allBillsIncludedPoints",
"offerIncluded",
"offerIncludedPoints",
"noSeasonalPrice",
"noSeasonalPricePoints",
"instantBookingEnabled",
"instantBookingEnabledPoints",
"energyCertificateIncluded",
"energyCertificateIncludedPoints",
"totalScore",
"totalScoreLabel"
],
"$schema": "http://json-schema.org/draft-04/schema#"
}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",
"status",
"title",
"type"
]
}403Headers
Content-Type: application/jsonBody
{
"detail": "Forbidden access",
"status": 403,
"title": "Forbidden",
"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"
]
}404Headers
Content-Type: application/jsonBody
{
"detail": "The resource was 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"
]
}User listing scores ¶
Get all listing scores for logged userGET/listings/me/scoring{?listingIds}
Example URI
- listingIds
array[string](optional) Example: 123456Criteria by listing ids.
- itemsPerPage
number(optional) Example: 1- page
number(optional) Example: 1- sortBy
enum [string](optional) Example: totalScoretotalScore
- sortType
enum [string](optional) Example: asc-
asc -
desc
-
Headers
Content-Type: application/json
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
{
"count": 1,
"total": 2,
"_links": {
"self": {
"href": "/listings/me/scoring?page=1"
},
"first": {
"href": "/listings/me/scoring?page=1"
},
"last": {
"href": "/listings/me/scoring?page=2"
},
"next": {
"href": "/listings/me/scoring?page=1"
},
"previous": {
"href": "/listings/me/scoring?page=2"
}
},
"_embedded": {
"sah:listings:score": [
{
"name": "standard",
"select": "Hello, world!",
"listingId": "Hello, world!",
"currentPrice": 1,
"pricePercentile": 1,
"priceCalculatedAt": "Hello, world!",
"pricePoints": 1,
"price": "Hello, world!",
"lastCalendarUpdated": "Hello, world!",
"lastCalendarUpdatedDate": "Hello, world!",
"lastCalendarUpdatedPoints": 1,
"verified": "Hello, world!",
"verifiedPoints": 1,
"noAdminFee": "Hello, world!",
"noAdminFeePoints": 1,
"noSecurityDeposit": "Hello, world!",
"noSecurityDepositPoints": 1,
"allBillsIncluded": "Hello, world!",
"allBillsIncludedPoints": 1,
"offerIncluded": "Hello, world!",
"offerIncludedPoints": 1,
"noSeasonalPrice": "Hello, world!",
"noSeasonalPricePoints": 1,
"instantBookingEnabled": "Hello, world!",
"instantBookingEnabledPoints": 1,
"energyCertificateIncluded": "Hello, world!",
"energyCertificateIncludedPoints": 1,
"totalScore": 1,
"totalScoreLabel": "not_optimized"
}
]
}
}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:listings:score": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"enum": [
"standard",
"premium"
]
},
"select": {
"type": "string"
},
"listingId": {
"type": "string"
},
"currentPrice": {
"type": "number"
},
"pricePercentile": {
"type": "number"
},
"priceCalculatedAt": {
"type": "string"
},
"pricePoints": {
"type": "number"
},
"price": {
"type": "string"
},
"lastCalendarUpdated": {
"type": "string"
},
"lastCalendarUpdatedDate": {
"type": "string"
},
"lastCalendarUpdatedPoints": {
"type": "number"
},
"verified": {
"type": "string"
},
"verifiedPoints": {
"type": "number"
},
"noAdminFee": {
"type": "string"
},
"noAdminFeePoints": {
"type": "number"
},
"noSecurityDeposit": {
"type": "string"
},
"noSecurityDepositPoints": {
"type": "number"
},
"allBillsIncluded": {
"type": "string"
},
"allBillsIncludedPoints": {
"type": "number"
},
"offerIncluded": {
"type": "string"
},
"offerIncludedPoints": {
"type": "number"
},
"noSeasonalPrice": {
"type": "string"
},
"noSeasonalPricePoints": {
"type": "number"
},
"instantBookingEnabled": {
"type": "string"
},
"instantBookingEnabledPoints": {
"type": "number"
},
"energyCertificateIncluded": {
"type": "string"
},
"energyCertificateIncludedPoints": {
"type": "number"
},
"totalScore": {
"type": "number"
},
"totalScoreLabel": {
"type": "string",
"enum": [
"not_optimized",
"very_low",
"low",
"intermediate",
"high",
"very_high"
]
}
},
"required": [
"name",
"listingId",
"currentPrice",
"pricePercentile",
"priceCalculatedAt",
"pricePoints",
"price",
"lastCalendarUpdated",
"lastCalendarUpdatedDate",
"lastCalendarUpdatedPoints",
"verified",
"verifiedPoints",
"noAdminFee",
"noAdminFeePoints",
"noSecurityDeposit",
"noSecurityDepositPoints",
"allBillsIncluded",
"allBillsIncludedPoints",
"offerIncluded",
"offerIncludedPoints",
"noSeasonalPrice",
"noSeasonalPricePoints",
"instantBookingEnabled",
"instantBookingEnabledPoints",
"energyCertificateIncluded",
"energyCertificateIncludedPoints",
"totalScore",
"totalScoreLabel"
]
}
}
}
}
},
"required": [
"count",
"total",
"_links"
]
}403Headers
Content-Type: application/jsonBody
{
"detail": "Forbidden access",
"status": 403,
"title": "Forbidden",
"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"
]
}Listing Score Fields Values ¶
View Listing Score FieldsGET/listings/scoring/fields
Example URI
Headers
Content-Type: application/json
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
[
{
"name": "price",
"score": 20,
"days": 30,
"options": [
{
"percentile": 1,
"score": 1
}
]
}
]Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"score": {
"type": "number"
},
"days": {
"type": "number"
},
"options": {
"type": "array"
}
},
"required": [
"name"
]
}
}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",
"status",
"title",
"type"
]
}Listing Score Fields Statuses ¶
View Listing Score StatusesGET/listings/scoring/statuses
Example URI
Headers
Content-Type: application/json
Authorization: aa.bb.cc200Headers
Content-Type: application/jsonBody
[
{
"label": "low",
"maxValue": 39
}
]Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"maxValue": {
"type": "number"
}
},
"required": [
"label",
"maxValue"
]
}
}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",
"status",
"title",
"type"
]
}Domain Events ¶
Listing BC domain events
PropertyWasCreated
{
'id' : '100153',
'owner' : '845cd158-ea91-45f9-a30d-f4a1b7deb3aa',
'type' : 'sharedRooms',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'totalUnits' : 10,
'rentableUnits' : 10,
'location':
{
'addressLine1': 'Avenida de la Palmera, 60',
'addressLine2': '1º Izquierda',
'postalCode': '41013',
'city': 'Sevilla',
'cityId': 'seville',
'neighbourhoodId': 'ad63e5f4-842d-4115-b7cf-efd1ef88c943',
'country': 'Spain',
'latitude': 37.3565079,
'longitude': -5.9839408
},
'yearOfConstruction': 1981,
'source': 'inbound',
'verified': 'false',
'isVisitable': false,
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
owner (string, required)
-
type (string, required)
-
user (string, required)
-
totalUnits (number, required)
-
rentableUnits (number, required)
-
location (required)
- addressLine1 (string, required)
- addressLine2 (string, nullable, required)
- postalCode (string, required)
- city (string, required)
- cityId (string, required)
- neighbourhoodId (string, nullable, required)
- country (string, required)
- latitude (number, required) - Between -90 and 90
- longitude (number, required) - Between -180 and 180
-
yearOfConstruction (number, required)
-
source (enum[string], required)
- inbound
- outbound
-
verified (boolean, required)
-
isVisitable (boolean, required)
-
occurredOn (string, required)
PropertyWasPublished
{
'id' : '100153',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00',
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
PropertyWasUnpublished
{
'id' : '100153',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00',
}
PropertyWasUnpublishedByLandlord
{
'id' : '100153',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00',
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
PropertyWasVerified
{
'id' : '100153',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00',
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
PropertyVerificationWasMigrated
{
'id' : '100153',
'verified' : 'false',
'occurredOn': '2017-07-25T14:26:17+00:00',
}
-
id (string, required)
-
verified (boolean, required)
-
occurredOn (string, required)
PropertyWasArchived
{
'id' : '100153',
'reasonToUnpublish' : 'Reason to unpublish',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00',
}
-
id (string, required)
-
reasonToUnpublish (string, required)
-
user (string, required)
-
occurredOn (string, required)
PropertyOwnerWasChanged
{
'id' : '17e51329-300e-4dca-ae5e-48c6370ba509',
'ownerId' : '79b3d33b-6632-4e60-9auy-4c32342a0b1b',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00',
}
-
id (string, required)
-
ownerId (string, required)
-
user (string, required)
-
occurredOn (string, required)
PropertyInformationWasChanged
{
'id' : '17e51329-300e-4dca-ae5e-48c6370ba509',
'yearOfConstruction' : 1981,
'isVisitable' : false,
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00',
}
-
id (string, required)
-
yearOfConstruction (number, required)
-
isVisitable: false (boolean, required)
-
user (string, required)
-
occurredOn (string, required)
PropertyLocationWasChanged
{
'id': '100153',
'user': 'fe64608c-855b-4468-ad74-52bd68ec47da',
'location': {
'addressLine1': 'Avenida de la Palmera, 39',
'addressLine2': 'Bajo',
'postalCode': '41013',
'city': 'Sevilla',
'cityId': 'seville',
'neighbourhoodId': 'ad63e5f4-842d-4115-b7cf-efd1ef88c943',
'country': 'Spain',
'latitude': 37.356507999999998,
'longitude': -5.9839409999999997
},
'occurredOn': '2018-01-16T15:58:12+00:00'
}
-
id (string, required)
-
user (string, required)
-
location (required)
- addressLine1 (string, required)
- addressLine2 (string, nullable, required)
- postalCode (string, required)
- city (string, required)
- cityId (string, required)
- neighbourhoodId (string, nullable, required)
- country (string, required)
- latitude (number, required) - Between -90 and 90
- longitude (number, required) - Between -180 and 180
-
occurredOn (string, required)
PropertyMultiListingUnitsCounterWasChanged
{
'id' : '17e51329-300e-4dca-ae5e-48c6370ba509',
'unitsNumber' : 5,
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00',
}
-
id (string, required)
-
unitsCounter (number, required)
-
user (string, required)
-
occurredOn (string, required)
PropertyWasMigrated
{
'id' : '100153',
'owner' : '845cd158-ea91-45f9-a30d-f4a1b7deb3aa',
'type' : 'sharedRooms',
'totalUnits' : 10,
'rentableUnits' : 10,
'publishedUnits' : 10,
'location':
{
'addressLine1': 'Avenida de la Palmera, 60',
'addressLine2': '1º Izquierda',
'city': 'Sevilla',
'cityId': 'seville',
'postalCode': '41013',
'country': 'Spain',
'latitude': 37.3565079,
'longitude': -5.9839408
},
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
owner (string, required)
-
type (enum[string], optional)
- Members
- apartment
- studio
- roomShared
- residence
- Members
-
totalUnits (number, required)
-
rentableUnits (number, required)
-
publishedUnits (number, required)
-
location (required)
- addressLine1 (string, required)
- addressLine2 (string, optional)
- city (string, required)
- cityId (string, required)
- postalCode (string, required)
- country (string, required)
- latitude (number, required) - Between -90 and 90
- longitude (number, required) - Between -180 and 180
-
occurredOn (string, required)
UnitWasAdded
{
'id' : '100153',
'propertyId' : '17e51329-300e-4dca-ae5e-48c6370ba509',
'type' : 'whole',
'state' : 'unpublished',
'disabled' : 'false',
'verified' : 'true',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
propertyId (string, required)
-
type (enum[string], optional)
- Members
- whole
- room
- bed
- Members
-
state (enum[string], optional)
- Members
- unpublished
- published
- archived
- Members
-
disabled (boolean, required)
-
verified (boolean, required)
-
user (string, required)
-
occurredOn (string, required)
UnitWasPublished
{
'id' : '100153',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
UnitWasUnpublished
{
'id' : '100153',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'reasonToUnpublish' : 'phantomPropertyFakeLandlord',
'reasonToUnpublishExtraInfo' : '',
'occurredOn': '2017-07-25T14:26:17+00:00'
'effectiveDate': '2017-07-25T14:26:17+00:00'
}
UnitWasUnpublishedByLandlord
{
'id' : '100153',
'reasonToUnpublish' : 'llUnhappyWithSah',
'reasonToUnpublishExtraInfo' : 'extraInfo',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
UnitWasVerified
{
'id' : '100153',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
UnitVerificationWasMigrated
{
'id' : '100153',
'verified' : 'false',
'occurredOn': '2017-07-25T14:26:17+00:00',
}
-
id (string, required)
-
verified (boolean, required)
-
occurredOn (string, required)
UnitWasArchived
{
'id' : '100153',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
UnitWasEnabled
{
'id' : '100153',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
UnitWasDisabled
{
'id' : '100153',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
UnitWasDeleted
{
'id' : '100153',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
UnitAdditionalDataWasMigrated
{
'id' : '100153',
'area' : 10,
'reference' : 'reference content'',
'numberOfBathrooms' : 1,
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',,
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
area (integer, nullable, required)
-
reference (string, nullable, required)
-
numberOfBathrooms (integer, nullable, required)
-
user (string, required)
-
occurredOn (string, required)
UnitCopyWasUpdated
{
'id': 'f6e0a489-476e-4fa4-8018-dd420c9c7dc4',
'copy': {
'title': [
{
'locale': 'en',
'text': 'title'
},
{
'locale': 'es',
'text': 'título'
}
],
'cardTitle': [
{
'locale': 'en',
'text': 'card title'
},
{
'locale': 'es',
'text': 'título'
}
],
'header': [
{
'locale': 'en',
'text': 'header'
},
{
'locale': 'es',
'text': 'cabecera'
}
],
'description': [
{
'locale': 'en',
'text': 'description'
},
{
'locale': 'es',
'text': 'descripción'
}
],
'videoTranscription': [
{
'locale': 'en',
'text': 'video transcription'
},
{
'locale': 'es',
'text': 'transcripción del video'
}
],
'whatWeLikedMost': [
{
'locale': 'en',
'text': 'what we liked most'
},
{
'locale': 'es',
'text': 'lo que más nos gustó'
}
],
'thingsToKeepInMind': [
{
'locale': 'en',
'text': 'things to keep in mind'
},
{
'locale': 'es',
'text': 'cosas a tener en cuenta'
}
],
'additionalDetails': [
{
'locale': 'en',
'text': 'additional details'
},
{
'locale': 'es',
'text': 'detalles adicionales'
}
],
'flatmates': [
{
'locale': 'en',
'text': 'flatmates'
},
{
'locale': 'es',
'text': 'compañeros de piso'
}
],
'landlordPolicies': [
{
'locale': 'en',
'text': 'landlord policies'
},
{
'locale': 'es',
'text': 'politicas del casero'
}
],
'transportation': [
{
'locale': 'en',
'text': 'transportation'
},
{
'locale': 'es',
'text': 'transporte'
}
],
'neighborhoodDescription': [
{
'locale': 'en',
'text': 'neighborhood description'
},
{
'locale': 'es',
'text': 'descripción del barrio'
}
],
'neighborhoodVideo': [
{
'locale': 'en',
'text': 'neighborhood video'
},
{
'locale': 'es',
'text': 'vídeo del barrio'
}
],
'importantInformation': [
{
'locale': 'en',
'text': 'important information'
},
{
'locale': 'es',
'text': 'información importante'
}
],
'metaTitle': [
{
'locale': 'en',
'text': 'meta title'
},
{
'locale': 'es',
'text': 'meta título'
}
],
'metaDescription': [
{
'locale': 'en',
'text': 'meta description'
},
{
'locale': 'es',
'text': 'meta descripción'
}
]
},
'user': 'fe64608c-855b-4468-ad74-52bd68ec47da',
'occurredOn': '2017-11-16T16:08:39+00:00'
}
-
id (string, required)
-
copy (object, required)
- title (array, required)
- cardTitle (array, optional)
- header (array, optional)
- description (array, required)
- videoTranscription (array, optional)
- whatWeLikedMost (array, optional)
- thingsToKeepInMind (array, optional)
- additionalDetails (array, optional)
- flatmates (array, optional)
- landlordPolicies (array, optional)
- transportation (array, optional)
- neighborhoodDescription (array, optional)
- neighborhoodVideo (array, optional)
- metaTitle (array, required)
- metaDescription (array, required)
-
user (string, required)
-
occurredOn (string, required)
UnitWasMigrated
{
'id' : '100153',
'type' : 'whole',
'deleted' : false,
'disabled' : true,
'copy': {
'title': [
{
'locale': 'en',
'text': 'title'
},
{
'locale': 'es',
'text': 'título'
}
],
'cardTitle': [
{
'locale': 'en',
'text': 'card title'
},
{
'locale': 'es',
'text': 'título'
}
],
'header': [
{
'locale': 'en',
'text': 'header'
},
{
'locale': 'es',
'text': 'cabecera'
}
],
'description': [
{
'locale': 'en',
'text': 'description'
},
{
'locale': 'es',
'text': 'descripción'
}
],
'videoTranscription': [
{
'locale': 'en',
'text': 'video transcription'
},
{
'locale': 'es',
'text': 'transcripción del video'
}
],
'whatWeLikedMost': [
{
'locale': 'en',
'text': 'what we liked most'
},
{
'locale': 'es',
'text': 'lo que más nos gustó'
}
],
'thingsToKeepInMind': [
{
'locale': 'en',
'text': 'things to keep in mind'
},
{
'locale': 'es',
'text': 'cosas a tener en cuenta'
}
],
'additionalDetails': [
{
'locale': 'en',
'text': 'additional details'
},
{
'locale': 'es',
'text': 'detalles adicionales'
}
],
'flatmates': [
{
'locale': 'en',
'text': 'flatmates'
},
{
'locale': 'es',
'text': 'compañeros de piso'
}
],
'landlordPolicies': [
{
'locale': 'en',
'text': 'landlord policies'
},
{
'locale': 'es',
'text': 'politicas del casero'
}
],
'transportation': [
{
'locale': 'en',
'text': 'transportation'
},
{
'locale': 'es',
'text': 'transporte'
}
],
'neighborhoodDescription': [
{
'locale': 'en',
'text': 'neighborhood description'
},
{
'locale': 'es',
'text': 'descripción del barrio'
}
],
'neighborhoodVideo': [
{
'locale': 'en',
'text': 'neighborhood video'
},
{
'locale': 'es',
'text': 'vídeo del barrio'
}
],
'importantInformation': [
{
'locale': 'en',
'text': 'important information'
},
{
'locale': 'es',
'text': 'información importante'
}
],
'metaTitle': [
{
'locale': 'en',
'text': 'meta title'
},
{
'locale': 'es',
'text': 'meta título'
}
],
'metaDescription': [
{
'locale': 'en',
'text': 'meta description'
},
{
'locale': 'es',
'text': 'meta descripción'
}
]
},
'state' : 'unpublished',
'unitFeatures' : [
{
'appplicability': 'property',
'category': 'suitability',
'name': 'professionals',
'value': 'yes'
}
],
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
type (enum[string], optional)
- Members
- whole
- room
- bed
- Members
-
deleted (boolean, required)
-
disabled (boolean, required)
-
copy (object, required)
- title (array, required)
- cardTitle (array, optional)
- header (array, optional)
- description (array, required)
- videoTranscription (array, optional)
- whatWeLikedMost (array, optional)
- thingsToKeepInMind (array, optional)
- additionalDetails (array, optional)
- flatmates (array, optional)
- landlordPolicies (array, optional)
- transportation (array, optional)
- neighborhoodDescription (array, optional)
- neighborhoodVideo (array, optional)
- metaTitle (array, required)
- metaDescription (array, required)
-
state (enum[string], optional)
- Members
- unpublished
- published
- archived
- Members
-
unitFeatures (array, required)
- (object)
- applicability (string, required)
- category (string, required)
- name (string, required)
- value (string, required)
- (object)
-
occurredOn (string, required)
UnitDataWasMigrated
{
'id' : '100153',
'type' : 'whole',
'deleted' : false,
'disabled' : true,
'copy': {
'title': [
{
'locale': 'en',
'text': 'title'
},
{
'locale': 'es',
'text': 'título'
}
],
'cardTitle': [
{
'locale': 'en',
'text': 'card title'
},
{
'locale': 'es',
'text': 'título'
}
],
'header': [
{
'locale': 'en',
'text': 'header'
},
{
'locale': 'es',
'text': 'cabecera'
}
],
'description': [
{
'locale': 'en',
'text': 'description'
},
{
'locale': 'es',
'text': 'descripción'
}
],
'videoTranscription': [
{
'locale': 'en',
'text': 'video transcription'
},
{
'locale': 'es',
'text': 'transcripción del video'
}
],
'whatWeLikedMost': [
{
'locale': 'en',
'text': 'what we liked most'
},
{
'locale': 'es',
'text': 'lo que más nos gustó'
}
],
'thingsToKeepInMind': [
{
'locale': 'en',
'text': 'things to keep in mind'
},
{
'locale': 'es',
'text': 'cosas a tener en cuenta'
}
],
'additionalDetails': [
{
'locale': 'en',
'text': 'additional details'
},
{
'locale': 'es',
'text': 'detalles adicionales'
}
],
'flatmates': [
{
'locale': 'en',
'text': 'flatmates'
},
{
'locale': 'es',
'text': 'compañeros de piso'
}
],
'landlordPolicies': [
{
'locale': 'en',
'text': 'landlord policies'
},
{
'locale': 'es',
'text': 'politicas del casero'
}
],
'transportation': [
{
'locale': 'en',
'text': 'transportation'
},
{
'locale': 'es',
'text': 'transporte'
}
],
'neighborhoodDescription': [
{
'locale': 'en',
'text': 'neighborhood description'
},
{
'locale': 'es',
'text': 'descripción del barrio'
}
],
'neighborhoodVideo': [
{
'locale': 'en',
'text': 'neighborhood video'
},
{
'locale': 'es',
'text': 'vídeo del barrio'
}
],
'importantInformation': [
{
'locale': 'en',
'text': 'important information'
},
{
'locale': 'es',
'text': 'información importante'
}
],
'metaTitle': [
{
'locale': 'en',
'text': 'meta title'
},
{
'locale': 'es',
'text': 'meta título'
}
],
'metaDescription': [
{
'locale': 'en',
'text': 'meta description'
},
{
'locale': 'es',
'text': 'meta descripción'
}
]
},
'state' : 'unpublished',
'unitFeatures' : [
{
'applicability': 'property',
'category': 'suitability',
'name': 'professionals',
'value': 'yes'
}
],
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
type (enum[string], optional)
- Members
- whole
- room
- bed
- Members
-
deleted (boolean, required)
-
disabled (boolean, required)
-
copy (object, required)
- title (array, required)
- cardTitle (array, optional)
- header (array, optional)
- description (array, required)
- videoTranscription (array, optional)
- whatWeLikedMost (array, optional)
- thingsToKeepInMind (array, optional)
- additionalDetails (array, optional)
- flatmates (array, optional)
- landlordPolicies (array, optional)
- transportation (array, optional)
- neighborhoodDescription (array, optional)
- neighborhoodVideo (array, optional)
- metaTitle (array, required)
- metaDescription (array, required)
-
state (enum[string], optional)
- Members
- unpublished
- published
- archived
- Members
-
unitFeatures (array, required)
- (object)
- applicability (string, required)
- category (string, required)
- name (string, required)
- value (string, required)
- (object)
-
occurredOn (string, required)
CopywriterWasRegistered
{
'id': '220426b9-32df-4c89-94eb-651df073b1fd',
'email': 'ash@kanto.com',
'firstName': 'Ash',
'lastName': 'Ketchum',
'occurredOn': '2017-11-20T15:14:12+00:00'
}
-
id (string, required)
-
email (string, required)
-
firstName (string, required)
-
lastName (string, required)
-
occurredOn (string, required)
CopywriterWasEnabled
{
'id': '220426b9-32df-4c89-94eb-651df073b1fd',
'occurredOn': '2017-11-20T15:14:12+00:00'
}
-
id (string, required)
-
occurredOn (string, required)
CopywriterWasDisabled
{
'id': '220426b9-32df-4c89-94eb-651df073b1fd',
'occurredOn': '2017-11-20T15:14:12+00:00'
}
-
id (string, required)
-
occurredOn (string, required)
CopywriterProfilePictureWasAssigned
{
'id': '220426b9-32df-4c89-94eb-651df073b1fd',
'profilePicture': '220426b9-32df-4c89-94eb-651df073b1fd.jpg',
'occurredOn': '2017-11-20T15:14:12+00:00'
}
-
id (string, required)
-
profilePicture (string, required)
-
occurredOn (string, required)
EditionWasRequested
{
'id' : 'fc0c466a-4f63-4353-a0c5-29871c00b200',
'propertyId' : '87656',
'type' : 'property',
'referenceId' : 'uy0c466a-4f63-4353-a0c5-29871c11b200',
'notes' : 'Coming from Photo Session',
'priority' : 'low',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
propertyId (string, required)
-
type (string, required)
-
referenceId (string, required)
-
notes (string, required)
-
priority (string, required)
-
user (string, required)
-
occurredOn (string, required)
EditionRequestWasAssigned
{
'id' : 'fc0c466a-4f63-4353-a0c5-29871c00b200',
'copywriterId' : 'fc0c4876-4f63-4353-a0c5-29871c00b200',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
copywriterId (string, required)
-
user (string, required)
-
occurredOn (string, required)
EditionWasStarted
{
'id' : 'fc0c466a-4f63-4353-a0c5-29871c00b200',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
EditionWasFinished
{
'id' : 'fc0c466a-4f63-4353-a0c5-29871c00b200',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
EditionRequestWasRejected
{
'id' : 'fc0c466a-4f63-4353-a0c5-29871c00b200',
'reason' : 'I didn't do it',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
reason (string, required)
-
user (string, required)
-
occurredOn (string, required)
EditionRequestWasResolved
{
'id' : 'fc0c466a-4f63-4353-a0c5-29871c00b200',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
EditionRequestWasCancelled
{
'id' : 'fc0c466a-4f63-4353-a0c5-29871c00b200',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
user (string, required)
-
occurredOn (string, required)
EditionRequestWasMigrated
{
'id' : 'fc0c466a-4f63-4353-a0c5-29871c00b200',
'propertyId' : '87656',
'referenceId' : '17e51329-300e-4dca-ae5e-48c6370ba509',
'copywriterId' : '220426b9-32df-4c89-94eb-651df073b1fd',
'type' : 'property',
'notes' : 'Coming from Photo Session',
'requestedAt': '2017-07-25T14:26:17+00:00'
'requesterId' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (string, required)
-
propertyId (string, required)
-
referenceId (string, required)
-
copywriterId (string, optional)
-
type (string, required)
-
notes (string, optional)
-
requestedAt (string, required)
-
requesterId (string, required)
-
occurredOn (string, required)
MultiListingPropertyCreationWasStarted
{
'multiListingId' : 'fc0c466a-4f63-4353-a0c5-29871c00b200',
'propertyTemplateId' : 'fc0c466a-4f63-4353-a0c5-29871c00b200',
'ownerId' : '17e51329-300e-4dca-ae5e-48c6370ba509',
'propertyId' : '87344',
'propertyType' : 'apartment',
'location': {
'addressLine1': 'Avenida de la Palmera, 39',
'addressLine2': 'Bajo',
'postalCode': '41013',
'city': 'Sevilla',
'cityId': 'seville',
'latitude': 37.356507999999998,
'longitude': -5.9839409999999997
},
'totalUnits' : 3,
'rentableUnits': 2,
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
multiListingId (string, required)
-
propertyTemplateId (string, required)
-
ownerId (string, required)
-
propertyId (string, optional)
-
propertyType (string, required)
-
location (required)
- addressLine1 (string, required)
- addressLine2 (string, nullable, required)
- postalCode (string, required)
- city (string, required)
- cityId (string, required)
- neighbourhoodId (string, nullable, required)
- country (string, required)
- latitude (number, required) - Between -90 and 90
- longitude (number, required) - Between -180 and 180
-
totalUnits (number, required)
-
rentableUnits (number, required)
-
user (string, required)
-
occurredOn (string, required)
MultiListingTemplateWasUpdated
{
'multiListingId' : 'fc0c466a-4f63-4353-a0c5-29871c00b200',
'propertyTemplateId' : 'fc0c466a-4f63-4353-a0c5-29871c00b200',
'propertyId' : '87656',
'unitId' : '87656',
'user' : '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
multiListingId (string, required)
-
propertyTemplateId (string, required)
-
propertyId (string, required)
-
unitId (string, required)
-
user (string, required)
-
occurredOn (string, required)
ListingProcessWasInitiated
{
'id' : 111,
'accountId' : '17e51329-300e-4dca-ae5e-48c6370ba509',
'propertyId': '220426b9-32df-4c89-94eb-651df073b1fd',
'state' : 'waitingProperty',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (int, required)
-
accountId (string, required)
-
propertyId (string, nullable, required)
-
state (string, required)
-
occurredOn (string, required)
ListingProcessWasCancelled
{
'id' : 111,
'state' : 'cancelled',
'user': '80b3d33b-6632-4e60-9auy-4c32342a0b1b',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (int, required)
-
state (string, required)
-
user (string, required)
-
occurredOn (string, required)
PropertyWasRegisteredOnListingProcess
{
'id' : 111,
'propertyId' : '220426b9-32df-4c89-94eb-651df073b1fd',
'state' : 'waitingContent',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (int, required)
-
propertyId (string, required)
-
state (string, required)
-
occurredOn (string, required)
PropertyPublicationWasRegisteredOnListingProcess
{
'id' : 111,
'state' : 'publishedUnverified',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (int, required)
-
state (string, required)
-
occurredOn (string, required)
PropertyWasVerifiedOnListingProcess
{
'id' : 111,
'state' : 'publishedVerified',
'occurredOn': '2017-07-25T14:26:17+00:00'
}
-
id (int, required)
-
state (string, required)
-
occurredOn (string, required)
VerificationRequestWasRequested
{
'id': 'bf5ae5c3-0e0b-4beb-88f2-6d2d8fbb8041',
'listingId': '123456',
'occurredOn': '2021-07-27T14:26:17+00:00'
}
-
id (string, required)
-
listingId (string, required)
-
occurredOn (string, required)
VerificationRequestWasAdded
{
'id' => 'bf5ae5c3-0e0b-4beb-88f2-6d2d8fbb8041',
'listingId' => '123456',
'requesterId' => 'bad158d4-e350-4064-9c40-4924dc456c4a',
'bookingStartDate' => '2022-01-01'
'bookingEndDate' => '2022-03-31'
'occurredOn' => '2021-07-27T14:26:17+00:00'
}
-
id (string, required)
-
listingId (string, required)
-
requesterId (string, required)
-
bookingStartDate (string, nullable, required)
-
bookingEndDate (string, nullable, required)
-
occurredOn (string, required)
ListingScoreWasCalculated
{
'listingId':'208383',
'priceStatusCurrentPrice':75000,
'priceStatusPercentile':50,
'priceStatusCalculatedAt':'2021-09-07T15:30:30+00:00',
'calendarLastUpdatedAt':'2021-08-31T14:56:18+00:00',
'verifiedStatus':'completed',
'noAdminFeeStatus':'completed',
'noSecurityDepositStatus':'completed',
'allBillsIncludedStatus':'pending',
'offerIncludedStatus':'pending',
'noSeasonalPriceStatus':'pending',
'instantBookingEnabledStatus':'pending',
'energyCertificateIncludedStatus':'pending',
'totalScore':25.5,
'totalScoreLabel':'pending',
'totalScoreCalculatedAt':'2021-08-20T14:56:18+00:00',
'occurredOn': '2021-08-20T14:56:18+00:00'
}
-
listingId (string, required)
-
priceStatusCurrentPrice (string, required)
-
priceStatusCalculatedAt (string, required)
-
calendarLastUpdatedAt (string, required)
-
verifiedStatus (string, required)
-
noAdminFeeStatus (string, required)
-
noSecurityDepositStatus (string, required)
-
allBillsIncludedStatus (string, required)
-
offerIncludedStatus (string, required)
-
noSeasonalPriceStatus (string, required)
-
instantBookingEnabledStatus (string, required)
-
energyCertificateIncludedStatus (string, required)
-
totalScore (number, required)
-
totalScoreLabel (string, required)
-
totalScoreCalculatedAt (string, required)
-
occurredOn (string, required)