/onthemarket/properties
curl --request POST \
--url https://api.anysite.io/api/onthemarket/properties \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"property": "<string>",
"timeout": 300
}
'import requests
url = "https://api.anysite.io/api/onthemarket/properties"
payload = {
"property": "<string>",
"timeout": 300
}
headers = {
"access-token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'access-token': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({property: '<string>', timeout: 300})
};
fetch('https://api.anysite.io/api/onthemarket/properties', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.anysite.io/api/onthemarket/properties",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'property' => '<string>',
'timeout' => 300
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"access-token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.anysite.io/api/onthemarket/properties"
payload := strings.NewReader("{\n \"property\": \"<string>\",\n \"timeout\": 300\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("access-token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.anysite.io/api/onthemarket/properties")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"property\": \"<string>\",\n \"timeout\": 300\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/onthemarket/properties")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["access-token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"property\": \"<string>\",\n \"timeout\": 300\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"@type": "OnthemarketProperty",
"url": "<string>",
"address": "<string>",
"postcode": "<string>",
"property_title": "<string>",
"property_type": "<string>",
"search_type": "<string>",
"status": "<string>",
"price": 123,
"display_price": "<string>",
"short_price": "<string>",
"price_qualifier": "<string>",
"bedroom_count": 123,
"bathroom_count": 123,
"summary": "<string>",
"features": [],
"labels": [],
"key_info": [],
"epc_rating": "<string>",
"epc_date": "<string>",
"council_tax_band": "<string>",
"tenure": "<string>",
"ground_rent": "<string>",
"service_charge": "<string>",
"broadband_type": "<string>",
"broadband_download_mbps": 123,
"broadband_upload_mbps": 123,
"mobile_signal_ee": "<string>",
"mobile_signal_o2": "<string>",
"mobile_signal_three": "<string>",
"mobile_signal_vodafone": "<string>",
"crime_score": 123,
"crime_level": "<string>",
"area_average_price": "<string>",
"area_average_price_label": "<string>",
"latitude": 123,
"longitude": 123,
"image": "<string>",
"images": [],
"floorplans": [],
"epc_graphs": [],
"documents": [],
"stations": [],
"schools": [],
"tours": [],
"view_count": "<string>",
"added_reduced_label": "<string>",
"is_new_home": true,
"is_premium": true,
"is_student": true,
"is_overseas": true,
"is_exclusive": true,
"has_matterport_tour": true,
"has_video_tour": true,
"agent": {
"@type": "OnthemarketPropertyAgent",
"id": 123,
"alias": "<string>",
"name": "<string>",
"company_name": "<string>",
"group_name": "<string>",
"address": "<string>",
"postcode": "<string>",
"phone": "<string>",
"website_url": "<string>",
"image": "<string>",
"latitude": 123,
"longitude": 123,
"is_sales_agent": true,
"is_lettings_agent": true
}
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}/onthemarket
/onthemarket/properties
Get a single OnTheMarket property listing by ID (or listing URL). Returns the full record: address and postcode, price, bedroom/bathroom counts, summary and full description, listing features and labels, EPC rating, council tax band, tenure, ground rent and service charge, predicted broadband speed, mobile signal by network, local crime score and average area prices, coordinates, photos, floorplans, brochures, virtual and video tours, nearby stations and schools, and the marketing agent.
Price: 5 credits
⚠️ Common errors: 412: Property not found or no longer listed
POST
/
api
/
onthemarket
/
properties
/onthemarket/properties
curl --request POST \
--url https://api.anysite.io/api/onthemarket/properties \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"property": "<string>",
"timeout": 300
}
'import requests
url = "https://api.anysite.io/api/onthemarket/properties"
payload = {
"property": "<string>",
"timeout": 300
}
headers = {
"access-token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'access-token': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({property: '<string>', timeout: 300})
};
fetch('https://api.anysite.io/api/onthemarket/properties', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.anysite.io/api/onthemarket/properties",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'property' => '<string>',
'timeout' => 300
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"access-token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.anysite.io/api/onthemarket/properties"
payload := strings.NewReader("{\n \"property\": \"<string>\",\n \"timeout\": 300\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("access-token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.anysite.io/api/onthemarket/properties")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"property\": \"<string>\",\n \"timeout\": 300\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/onthemarket/properties")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["access-token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"property\": \"<string>\",\n \"timeout\": 300\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"@type": "OnthemarketProperty",
"url": "<string>",
"address": "<string>",
"postcode": "<string>",
"property_title": "<string>",
"property_type": "<string>",
"search_type": "<string>",
"status": "<string>",
"price": 123,
"display_price": "<string>",
"short_price": "<string>",
"price_qualifier": "<string>",
"bedroom_count": 123,
"bathroom_count": 123,
"summary": "<string>",
"features": [],
"labels": [],
"key_info": [],
"epc_rating": "<string>",
"epc_date": "<string>",
"council_tax_band": "<string>",
"tenure": "<string>",
"ground_rent": "<string>",
"service_charge": "<string>",
"broadband_type": "<string>",
"broadband_download_mbps": 123,
"broadband_upload_mbps": 123,
"mobile_signal_ee": "<string>",
"mobile_signal_o2": "<string>",
"mobile_signal_three": "<string>",
"mobile_signal_vodafone": "<string>",
"crime_score": 123,
"crime_level": "<string>",
"area_average_price": "<string>",
"area_average_price_label": "<string>",
"latitude": 123,
"longitude": 123,
"image": "<string>",
"images": [],
"floorplans": [],
"epc_graphs": [],
"documents": [],
"stations": [],
"schools": [],
"tours": [],
"view_count": "<string>",
"added_reduced_label": "<string>",
"is_new_home": true,
"is_premium": true,
"is_student": true,
"is_overseas": true,
"is_exclusive": true,
"has_matterport_tour": true,
"has_video_tour": true,
"agent": {
"@type": "OnthemarketPropertyAgent",
"id": 123,
"alias": "<string>",
"name": "<string>",
"company_name": "<string>",
"group_name": "<string>",
"address": "<string>",
"postcode": "<string>",
"phone": "<string>",
"website_url": "<string>",
"image": "<string>",
"latitude": 123,
"longitude": 123,
"is_sales_agent": true,
"is_lettings_agent": true
}
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
API token from the dashboard
Headers
Body
application/json
Response
Successful Response
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes