Guía de integración de Housing Market API

Las tablas de referencia, las descripciones de los puntos de conexión, los códigos de error y los ejemplos se generan a partir de la especificación de la API y se mantienen en inglés en todos los idiomas. Los nombres, parámetros y códigos son idénticos en todas partes.

Punto de conexión de inmuebles y referencia de campos

GET /v1/properties devuelve los anuncios publicados de un país, con todos los detalles de los inmuebles que una clave Estándar puede ver.

Cada campo pertenece a uno de estos grupos, que se indica en la columna de política.

  • Estructurado (Structured): se devuelve tal como se publicó.
  • Generalizado (Coarsened): el número de la calle nunca se devuelve y, en las viviendas anunciadas por su propietario, las coordenadas se redondean a un barrio y el código postal se omite.
  • Depurado (Scrubbed): texto libre de la persona que anunció el inmueble, del que se han eliminado direcciones de correo electrónico, números de teléfono, direcciones web e identificadores de mensajería.
  • Derivado (Derived): calculado por la API a partir de otros campos.
  • Mediante proxy (Proxied): se sirve a través de la API en lugar de enlazarse directamente.

Actualmente los anuncios se devuelven sin imágenes: el campo images es una lista vacía. Los enlaces de imagen están en camino; las fotografías originales siguen siendo públicas en los portales de Housing Market.

Nunca se devuelve: los datos de contacto de la persona que anunció el inmueble, la identidad de agentes y propietarios, ni nada que sea privado de un anuncio.

Los precios están en la moneda propia del anuncio y nunca se convierten. Un campo sin valor es null.

El registro del inmueble

GET /v1/properties: List published properties in one country

FieldTypePolicyDescription
id requiredstringStructuredStable identifier of the listing. Treat it as opaque.
country requiredstringStructuredISO 3166-1 alpha-2 code of the country the listing is in.
listing_type requiredstringStructuredWhat the listing offers. Requesting listing_type=all returns every value. sale rent vacation_rental co_living
property_type requiredstring | nullStructuredThe kind of property in lower case, for example condominium or house. Null when the listing does not state one.
provincestring | nullStructuredName of the province or state.
province_idinteger | nullStructuredIdentifier of the province or state, for the province_id filter.
citystring | nullStructuredName of the city.
city_idinteger | nullStructuredIdentifier of the city, for the city_id filter.
areastring | nullStructuredName of the district or area.
area_idinteger | nullStructuredIdentifier of the district or area, for the area_id filter.
addressstring | nullCoarsenedStreet name or locality line. The street number is never included.
post_codestring | nullCoarsenedPostal code. Null for owner-listed homes.
latitudenumber | nullCoarsenedLatitude in decimal degrees. For owner-listed homes it is rounded so that it identifies a neighbourhood, not a building; see location_precision.
longitudenumber | nullCoarsenedLongitude in decimal degrees. Same precision rule as latitude.
location_precision requiredstringDerivedapproximate when the coordinates and post code have been coarsened because the home is listed by its owner; otherwise exact. exact approximate
pricenumber | nullStructuredPublished price in the listing's own currency. For rent listings it is the published amount per month. Never converted.
price_maxnumber | nullStructuredUpper end when the listing publishes a price range; otherwise null.
currency requiredstring | nullStructuredISO 4217 code of the currency price and price_max are in. Null when the listing states none.
bedroomsnumber | nullStructuredNumber of bedrooms.
bathroomsnumber | nullStructuredNumber of bathrooms.
roomsnumber | nullStructuredTotal number of rooms, where the listing states it.
living_areanumber | nullStructuredLiving area in the unit the lister used. Use living_area_sqm to compare listings.
living_area_sqmnumber | nullStructuredLiving area in square metres.
lot_areanumber | nullStructuredPlot area in the unit the lister used. Use lot_area_sqm to compare listings.
lot_area_sqmnumber | nullStructuredPlot area in square metres.
build_yearinteger | nullStructuredYear the property was built.
published_date requiredstring | null (date-time)StructuredWhen the listing was first published. Null when the portal does not record it.
last_updated requiredstring | null (date-time)StructuredWhen the listing last changed, or published_date when no change is recorded. This is the value updated_since compares.
featuresarray of stringStructuredFeature names, for example the facilities of the building.
appliancesarray of stringStructuredAppliance names included with the property.
neighbourhoodarray of stringStructuredNames of neighbourhood features, such as nearby transport.
tagsarray of stringStructuredTag names the lister attached to the listing.
developerstring | nullStructuredName of the development company, where the listing names one. Never a person.
summarystring | nullScrubbedShort description. Email addresses, phone numbers, web addresses and messaging handles are removed.
descriptionstring | nullScrubbedFull description as plain text. Email addresses, phone numbers, web addresses and messaging handles are removed.
location_textstring | nullScrubbedThe lister's description of the location, scrubbed in the same way.
images requiredarray of ImageProxiedWatermarked, signed, expiring photographs. Never a direct storage or CDN address. Empty until the image service is available.

images[]

FieldTypeDescription
url requiredstring (uri)Signed address of the watermarked image. Valid for your key only, until expires_at.
expires_at requiredstring (date-time)When the URL stops working.
position requiredintegerOrder of the photograph on the listing. 1 is the lead photograph.

GET /v1/properties/{id}

Get one published property

Returns one published listing by the id a listing page carried, in the same shape. The country must be the listing's own country and one your key covers. A listing that has been withdrawn, an id from another country, and an id that never existed all return not_found.

Parameters

ParameterTypeRequiredValuesDescription
idstringyesThe id of a listing, exactly as a listing page returned it.
countrystringyespattern ^[A-Z]{2}$ISO 3166-1 alpha-2 code of the country, for example TH. A country outside your subscription is refused with country_not_entitled.

Responses

StatusDescriptionError codes
200The listing.
400The request is invalid.invalid_parameter invalid_cursor
401The key is missing, unknown or revoked.unauthenticated
403The request is refused for the key, the address or the country.country_not_entitled ip_not_allowed key_paused
404The listing does not exist, is not in that country, or has been withdrawn.not_found
429A rate limit or a quota has been reached.rate_limited quota_exceeded
500Something went wrong on our side.internal_error
503The service cannot answer right now.service_unavailable