curl --request POST \
--url https://api.anysite.io/api/centaline/valuations \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"unit": "<string>",
"timeout": 300,
"lang": "hk"
}
'import requests
url = "https://api.anysite.io/api/centaline/valuations"
payload = {
"unit": "<string>",
"timeout": 300,
"lang": "hk"
}
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({unit: '<string>', timeout: 300, lang: 'hk'})
};
fetch('https://api.anysite.io/api/centaline/valuations', 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/centaline/valuations",
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([
'unit' => '<string>',
'timeout' => 300,
'lang' => 'hk'
]),
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/centaline/valuations"
payload := strings.NewReader("{\n \"unit\": \"<string>\",\n \"timeout\": 300,\n \"lang\": \"hk\"\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/centaline/valuations")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"unit\": \"<string>\",\n \"timeout\": 300,\n \"lang\": \"hk\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/centaline/valuations")
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 \"unit\": \"<string>\",\n \"timeout\": 300,\n \"lang\": \"hk\"\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"@type": "CentalineValuation",
"unit_code": "<string>",
"building_type_code": "<string>",
"estate_name": "<string>",
"unit_address": "<string>",
"location": "<string>",
"estate_url": "<string>",
"valuation_at": 123,
"previous_valuation_at": 123,
"price": 123,
"price_change_percent": 123,
"min_price": 123,
"max_price": 123,
"min_price_change_percent": 123,
"max_price_change_percent": 123,
"saleable_area": 123,
"saleable_price_per_sqft": 123,
"building_group_id": "<string>",
"building_group_name": "<string>",
"developer": "<string>",
"management_company": "<string>",
"phase_count": 123,
"building_count": 123,
"unit_count": 123,
"is_pet_friendly": true,
"facilities": [],
"category_labels": [],
"shopping_mall": "<string>",
"nearby_places": [],
"school_net": {
"@type": "CentalineSchoolNet",
"primary_school_net": "<string>",
"primary_school_url": "<string>",
"secondary_school_district": "<string>",
"secondary_school_url": "<string>"
},
"latitude": 123,
"longitude": 123,
"image": "<string>"
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}/centaline/valuations
CentaEstimate (中原估算) weekly AI valuation of a single Hong Kong private residential unit, identified by its property reference number (PRN). Returns the estimated price with its month-on-month change, the lower and upper bounds of the estimate range, saleable area and estimated price per saleable sq ft, the valuation and previous valuation dates, the building group the model clustered the unit into, and the surrounding estate profile (developer, management company, phase/building/unit counts, pet policy, facilities, nearby MTR, malls, parks and carparks, school nets and coordinates).
Price: 1 credit
⚠️ Common errors: 412: No CentaEstimate valuation exists for this property reference number.
curl --request POST \
--url https://api.anysite.io/api/centaline/valuations \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"unit": "<string>",
"timeout": 300,
"lang": "hk"
}
'import requests
url = "https://api.anysite.io/api/centaline/valuations"
payload = {
"unit": "<string>",
"timeout": 300,
"lang": "hk"
}
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({unit: '<string>', timeout: 300, lang: 'hk'})
};
fetch('https://api.anysite.io/api/centaline/valuations', 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/centaline/valuations",
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([
'unit' => '<string>',
'timeout' => 300,
'lang' => 'hk'
]),
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/centaline/valuations"
payload := strings.NewReader("{\n \"unit\": \"<string>\",\n \"timeout\": 300,\n \"lang\": \"hk\"\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/centaline/valuations")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"unit\": \"<string>\",\n \"timeout\": 300,\n \"lang\": \"hk\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/centaline/valuations")
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 \"unit\": \"<string>\",\n \"timeout\": 300,\n \"lang\": \"hk\"\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"@type": "CentalineValuation",
"unit_code": "<string>",
"building_type_code": "<string>",
"estate_name": "<string>",
"unit_address": "<string>",
"location": "<string>",
"estate_url": "<string>",
"valuation_at": 123,
"previous_valuation_at": 123,
"price": 123,
"price_change_percent": 123,
"min_price": 123,
"max_price": 123,
"min_price_change_percent": 123,
"max_price_change_percent": 123,
"saleable_area": 123,
"saleable_price_per_sqft": 123,
"building_group_id": "<string>",
"building_group_name": "<string>",
"developer": "<string>",
"management_company": "<string>",
"phase_count": 123,
"building_count": 123,
"unit_count": 123,
"is_pet_friendly": true,
"facilities": [],
"category_labels": [],
"shopping_mall": "<string>",
"nearby_places": [],
"school_net": {
"@type": "CentalineSchoolNet",
"primary_school_net": "<string>",
"primary_school_url": "<string>",
"secondary_school_district": "<string>",
"secondary_school_url": "<string>"
},
"latitude": 123,
"longitude": 123,
"image": "<string>"
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
API token from the dashboard
Headers
Body
Response
Successful Response
Show child attributes
Show child attributes
Show child attributes
Show child attributes