/suumo/properties/search
curl --request POST \
--url https://api.anysite.io/api/suumo/properties/search \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"count": 2,
"timeout": 300,
"ward": "<string>",
"line": "<string>",
"stations": [],
"property_type": "used_mansion",
"price_min": 1,
"price_max": 1,
"area_min": 1,
"area_max": 1,
"building_area_min": 1,
"building_area_max": 1,
"land_area_min": 1,
"land_area_max": 1,
"layouts": [],
"walk_max": 2,
"condo_facets": [],
"house_facets": [],
"land_facets": []
}
'import requests
url = "https://api.anysite.io/api/suumo/properties/search"
payload = {
"count": 2,
"timeout": 300,
"ward": "<string>",
"line": "<string>",
"stations": [],
"property_type": "used_mansion",
"price_min": 1,
"price_max": 1,
"area_min": 1,
"area_max": 1,
"building_area_min": 1,
"building_area_max": 1,
"land_area_min": 1,
"land_area_max": 1,
"layouts": [],
"walk_max": 2,
"condo_facets": [],
"house_facets": [],
"land_facets": []
}
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({
count: 2,
timeout: 300,
ward: '<string>',
line: '<string>',
stations: [],
property_type: 'used_mansion',
price_min: 1,
price_max: 1,
area_min: 1,
area_max: 1,
building_area_min: 1,
building_area_max: 1,
land_area_min: 1,
land_area_max: 1,
layouts: [],
walk_max: 2,
condo_facets: [],
house_facets: [],
land_facets: []
})
};
fetch('https://api.anysite.io/api/suumo/properties/search', 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/suumo/properties/search",
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([
'count' => 2,
'timeout' => 300,
'ward' => '<string>',
'line' => '<string>',
'stations' => [
],
'property_type' => 'used_mansion',
'price_min' => 1,
'price_max' => 1,
'area_min' => 1,
'area_max' => 1,
'building_area_min' => 1,
'building_area_max' => 1,
'land_area_min' => 1,
'land_area_max' => 1,
'layouts' => [
],
'walk_max' => 2,
'condo_facets' => [
],
'house_facets' => [
],
'land_facets' => [
]
]),
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/suumo/properties/search"
payload := strings.NewReader("{\n \"count\": 2,\n \"timeout\": 300,\n \"ward\": \"<string>\",\n \"line\": \"<string>\",\n \"stations\": [],\n \"property_type\": \"used_mansion\",\n \"price_min\": 1,\n \"price_max\": 1,\n \"area_min\": 1,\n \"area_max\": 1,\n \"building_area_min\": 1,\n \"building_area_max\": 1,\n \"land_area_min\": 1,\n \"land_area_max\": 1,\n \"layouts\": [],\n \"walk_max\": 2,\n \"condo_facets\": [],\n \"house_facets\": [],\n \"land_facets\": []\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/suumo/properties/search")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"count\": 2,\n \"timeout\": 300,\n \"ward\": \"<string>\",\n \"line\": \"<string>\",\n \"stations\": [],\n \"property_type\": \"used_mansion\",\n \"price_min\": 1,\n \"price_max\": 1,\n \"area_min\": 1,\n \"area_max\": 1,\n \"building_area_min\": 1,\n \"building_area_max\": 1,\n \"land_area_min\": 1,\n \"land_area_max\": 1,\n \"layouts\": [],\n \"walk_max\": 2,\n \"condo_facets\": [],\n \"house_facets\": [],\n \"land_facets\": []\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/suumo/properties/search")
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 \"count\": 2,\n \"timeout\": 300,\n \"ward\": \"<string>\",\n \"line\": \"<string>\",\n \"stations\": [],\n \"property_type\": \"used_mansion\",\n \"price_min\": 1,\n \"price_max\": 1,\n \"area_min\": 1,\n \"area_max\": 1,\n \"building_area_min\": 1,\n \"building_area_max\": 1,\n \"land_area_min\": 1,\n \"land_area_max\": 1,\n \"layouts\": [],\n \"walk_max\": 2,\n \"condo_facets\": [],\n \"house_facets\": [],\n \"land_facets\": []\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"url": "<string>",
"@type": "SuumoPropertyCard",
"name": "<string>",
"headline": "<string>",
"price": 123,
"address": "<string>",
"transport": "<string>",
"area": 123,
"building_area": 123,
"land_area": 123,
"layout": "<string>",
"balcony_area": "<string>",
"built_year_month": "<string>",
"image": "<string>"
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}/suumo
/suumo/properties/search
Search SUUMO (スーモ) for-sale properties by prefecture and category (used condominium, used/new house, land), optionally scoped to a city/ward or to a railway line and specific stations, with filters for price range, floor/building/land area range, floor-plan layout, maximum building age, maximum walking distance to the nearest station, per-category amenities (e.g. pets allowed, elevator, south-facing, city gas, flat ground) and sort order. Returns property cards with name, price, address, transport, area, building area, land area, layout, balcony area, build year-month and image.
Price: 5 credits per 30 results
POST
/
api
/
suumo
/
properties
/
search
/suumo/properties/search
curl --request POST \
--url https://api.anysite.io/api/suumo/properties/search \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"count": 2,
"timeout": 300,
"ward": "<string>",
"line": "<string>",
"stations": [],
"property_type": "used_mansion",
"price_min": 1,
"price_max": 1,
"area_min": 1,
"area_max": 1,
"building_area_min": 1,
"building_area_max": 1,
"land_area_min": 1,
"land_area_max": 1,
"layouts": [],
"walk_max": 2,
"condo_facets": [],
"house_facets": [],
"land_facets": []
}
'import requests
url = "https://api.anysite.io/api/suumo/properties/search"
payload = {
"count": 2,
"timeout": 300,
"ward": "<string>",
"line": "<string>",
"stations": [],
"property_type": "used_mansion",
"price_min": 1,
"price_max": 1,
"area_min": 1,
"area_max": 1,
"building_area_min": 1,
"building_area_max": 1,
"land_area_min": 1,
"land_area_max": 1,
"layouts": [],
"walk_max": 2,
"condo_facets": [],
"house_facets": [],
"land_facets": []
}
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({
count: 2,
timeout: 300,
ward: '<string>',
line: '<string>',
stations: [],
property_type: 'used_mansion',
price_min: 1,
price_max: 1,
area_min: 1,
area_max: 1,
building_area_min: 1,
building_area_max: 1,
land_area_min: 1,
land_area_max: 1,
layouts: [],
walk_max: 2,
condo_facets: [],
house_facets: [],
land_facets: []
})
};
fetch('https://api.anysite.io/api/suumo/properties/search', 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/suumo/properties/search",
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([
'count' => 2,
'timeout' => 300,
'ward' => '<string>',
'line' => '<string>',
'stations' => [
],
'property_type' => 'used_mansion',
'price_min' => 1,
'price_max' => 1,
'area_min' => 1,
'area_max' => 1,
'building_area_min' => 1,
'building_area_max' => 1,
'land_area_min' => 1,
'land_area_max' => 1,
'layouts' => [
],
'walk_max' => 2,
'condo_facets' => [
],
'house_facets' => [
],
'land_facets' => [
]
]),
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/suumo/properties/search"
payload := strings.NewReader("{\n \"count\": 2,\n \"timeout\": 300,\n \"ward\": \"<string>\",\n \"line\": \"<string>\",\n \"stations\": [],\n \"property_type\": \"used_mansion\",\n \"price_min\": 1,\n \"price_max\": 1,\n \"area_min\": 1,\n \"area_max\": 1,\n \"building_area_min\": 1,\n \"building_area_max\": 1,\n \"land_area_min\": 1,\n \"land_area_max\": 1,\n \"layouts\": [],\n \"walk_max\": 2,\n \"condo_facets\": [],\n \"house_facets\": [],\n \"land_facets\": []\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/suumo/properties/search")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"count\": 2,\n \"timeout\": 300,\n \"ward\": \"<string>\",\n \"line\": \"<string>\",\n \"stations\": [],\n \"property_type\": \"used_mansion\",\n \"price_min\": 1,\n \"price_max\": 1,\n \"area_min\": 1,\n \"area_max\": 1,\n \"building_area_min\": 1,\n \"building_area_max\": 1,\n \"land_area_min\": 1,\n \"land_area_max\": 1,\n \"layouts\": [],\n \"walk_max\": 2,\n \"condo_facets\": [],\n \"house_facets\": [],\n \"land_facets\": []\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/suumo/properties/search")
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 \"count\": 2,\n \"timeout\": 300,\n \"ward\": \"<string>\",\n \"line\": \"<string>\",\n \"stations\": [],\n \"property_type\": \"used_mansion\",\n \"price_min\": 1,\n \"price_max\": 1,\n \"area_min\": 1,\n \"area_max\": 1,\n \"building_area_min\": 1,\n \"building_area_max\": 1,\n \"land_area_min\": 1,\n \"land_area_max\": 1,\n \"layouts\": [],\n \"walk_max\": 2,\n \"condo_facets\": [],\n \"house_facets\": [],\n \"land_facets\": []\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"url": "<string>",
"@type": "SuumoPropertyCard",
"name": "<string>",
"headline": "<string>",
"price": 123,
"address": "<string>",
"transport": "<string>",
"area": 123,
"building_area": 123,
"land_area": 123,
"layout": "<string>",
"balcony_area": "<string>",
"built_year_month": "<string>",
"image": "<string>"
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
API token from the dashboard
Headers
Body
application/json
Available options:
tokyo, kanagawa, osaka, saitama, chiba, aichi, hyogo, fukuoka, hokkaido, kyoto Required range:
x >= 1Required range:
20 <= x <= 1500Minimum string length:
1Available options:
used_mansion, used_house, new_house, land Required range:
x >= 0Required range:
x >= 0Required range:
x >= 0Required range:
x >= 0Required range:
x >= 0Required range:
x >= 0Required range:
x >= 0Required range:
x >= 0Available options:
studio, one_room, two_room, three_room, four_room, five_room_plus Available options:
new, 1, 3, 5, 7, 10, 15, 20, 25, 30 Required range:
x >= 1Available options:
newest, price_asc, price_desc, area_asc, area_desc, built_oldest, built_newest Available options:
pets_allowed, parking_available, south_facing, elevator, roof_balcony Available options:
parking_two_cars, has_movie, city_gas, ldk_15_tatami_plus, south_facing Available options:
hilltop, regular_shape, flat_ground, city_gas, public_sewer Available options:
without, with Response
Successful Response