API Realtor Поиск недвижимости
Состояние API
- Состояние за 24 ч
- Норма
- Среднее время за 24 ч
- —
- Стабильно / норма
- Доступно
- Ограничено
- Почти недоступно
Последние 24 часа
Последние 30 дней
Ищите объявления о продаже жилья на Realtor по почтовому индексу США или «City, ST» в keyword с фильтрами по цене, числу спален и ванных, статусу объявления и сортировке. Цена предложения, цена продажи и их даты хранятся в отдельных полях, а результат не подтверждает, что дом ещё доступен.
Цена: $1.39 за 1 000 запросов ($0.001389 за вызов). Неудачные вызовы и пустые результаты не оплачиваются. Синхронный режим. Для долгих задач добавьте в тело запроса "mode": "async", получите job_id и опрашивайте статус.
Промпт для ИИ
Помогите мне написать скрипт для сбора данных через эндпоинт EveryInfra Realtor Поиск недвижимости (realtor/property_search).
Как работает эндпоинт:
- Запрос: POST https://api.everyinfra.com/api/v1/social с заголовком Authorization: Bearer <API key>. Читайте ключ из переменной окружения EVERYINFRA_API_KEY и никогда не прописывайте его в коде.
- В теле запроса укажите platform: realtor и action: property_search, а параметры передайте в params.
- Обязательные параметры:
- keyword: Место поиска для запросов к Realtor. В search укажите город и штат (например, Austin, TX), чтобы найти агентов. В property_search укажите 5-значный почтовый индекс США (ZIP) или сокращение City, ST.
- Необязательные параметры:
- baths_min: Минимальное количество ванных комнат. Значение используется как целое число, поэтому половинные значения вроде 1.5 не сохраняются.
- beds_min: Минимальное количество спален (целое число). Это не общее число комнат в объекте.
- city: Переопределяет название города для property_search. При поиске по ZIP-коду не передавайте другой город, чтобы условия по местоположению не противоречили друг другу.
- max_price: Максимальная цена объекта для стандартного ввода; имеет приоритет над price_max в том же запросе. Цены продажи и аренды интерпретируйте отдельно.
- min_price: Минимальная цена объекта для стандартного ввода; имеет приоритет над price_min в том же запросе. Параметр фильтрует цены объектов, а не стоимость услуг агентов.
- sort: Порядок объявлений в property_search, всегда по убыванию: newest (сначала новые, по умолчанию), price_desc (цена объявления), sold_price_desc (цена продажи), recently_sold, bedrooms_desc, lot_size_desc, photo_count_desc… (допустимые значения: bedrooms_desc / lot_size_desc / newest / photo_count_desc / price_desc / recently_sold / recently_updated / sold_price_desc)
- status: Один статус объявления для property_search, передаётся строкой; по умолчанию for_sale. Известные значения: sold, for_rent, ready_to_build, off_market, other и new_community.
- limit: Максимальное число записей в этом вызове, целое число от 1 до 200. Если параметр не указан, применяется значение по умолчанию; вызов может вернуть меньше записей. (по умолчанию: 20)
- Возвращает список записей. Основные поля каждой записи: id, url, title, status, price, sold_price, sold_at, listed_at, property_type, beds, baths, area_sqft; всего полей: 28, полный список: https://api.everyinfra.com/api/v1/social/catalog?platform=realtor.
- Пример тела запроса:
{
"platform": "realtor",
"action": "property_search",
"params": {
"keyword": "10022"
}
}
- Цена: $1.39 за 1 000 запросов; неудачные и пустые результаты не оплачиваются.
- Для десятков или сотен целей добавьте в тело запроса "mode": "async": вы сразу получите job_id и сможете опрашивать GET https://api.everyinfra.com/api/v1/jobs/{job_id}, чтобы получить результат.
- При ответе 422 исправьте запрос, используя предложенные в ошибке имена параметров и допустимые значения; при ответе 429 или 503 подождите указанное в Retry-After время и повторите попытку.
Прежде чем писать код, спросите меня, какие цели мне нужны, сколько их будет, какие поля мне нужны и в каком формате вывести результат; затем согласуйте со мной план и примерную стоимость.Параметры запроса
| Имя | Расположение | Тип | Обязательный | По умолчанию | Описание |
|---|---|---|---|---|---|
Authorization | header | string | Да | - | Укажите Bearer, а после него — ваш API-ключ. Создайте ключ в консоли; никогда не указывайте его в URL и не храните в репозитории кода. |
platform | body | string | Да | realtor | Идентификатор платформы, фиксированное значение. |
action | body | string | Да | property_search | Идентификатор возможности, фиксированное значение. |
keyword | body.params | string | Да | - | Место поиска для запросов к Realtor. В search укажите город и штат (например, Austin, TX), чтобы найти агентов. В property_search укажите 5-значный почтовый индекс США (ZIP) или сокращение City, ST. Произвольные описания объектов не принимаются. |
baths_min | body.params | integer | Нет | - | Минимальное количество ванных комнат. Значение используется как целое число, поэтому половинные значения вроде 1.5 не сохраняются. |
beds_min | body.params | integer | Нет | - | Минимальное количество спален (целое число). Это не общее число комнат в объекте. |
city | body.params | string | Нет | - | Переопределяет название города для property_search. При поиске по ZIP-коду не передавайте другой город, чтобы условия по местоположению не противоречили друг другу. |
max_price | body.params | number | Нет | - | Максимальная цена объекта для стандартного ввода; имеет приоритет над price_max в том же запросе. Цены продажи и аренды интерпретируйте отдельно. Фильтр работает с целыми числами: дробные значения округляются вверх (145.98 становится 146). |
min_price | body.params | number | Нет | - | Минимальная цена объекта для стандартного ввода; имеет приоритет над price_min в том же запросе. Параметр фильтрует цены объектов, а не стоимость услуг агентов. Фильтр работает с целыми числами: дробные значения округляются вниз (39.81 становится 39). |
sort | body.params | string (enum) | Нет | - | Порядок объявлений в property_search, всегда по убыванию: newest (сначала новые, по умолчанию), price_desc (цена объявления), sold_price_desc (цена продажи), recently_sold, bedrooms_desc, lot_size_desc, photo_count_desc или recently_updated. Сортировки по возрастанию нет, поэтому упорядочить объявления от самой низкой цены нельзя.Допустимые значенияbedrooms_desclot_size_descnewestphoto_count_descprice_descrecently_soldrecently_updatedsold_price_desc |
status | body.params | string | Нет | - | Один статус объявления для property_search, передаётся строкой; по умолчанию for_sale. Известные значения: sold, for_rent, ready_to_build, off_market, other и new_community. Значение не проверяется по фиксированному списку, поэтому другие строки не отклоняются. Передавайте один статус, а не массив. |
limit | body.params | integer (1–200) | Нет | 20 | Максимальное число записей в этом вызове, целое число от 1 до 200. Если параметр не указан, применяется значение по умолчанию; вызов может вернуть меньше записей. При значениях выше максимума эндпоинт возвращает ошибку 422 до списания средств. |
Примеры кода
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" \
-H 'Content-Type: application/json' \
--data-raw '{
"platform": "realtor",
"action": "property_search",
"params": {
"keyword": "10022"
}
}'Спецификация OpenAPI (JSON)Примеры читают ключ из переменной окружения EVERYINFRA_API_KEY; скопированный код никогда не содержит ваш ключ.
Пример ответа
Получено September 26, 2026 at 08:56 (UTC) вызовом этого API с параметрами из примера кода выше. results и count — реальный ответ этого вызова, из которого удалены персональные данные (имена, никнеймы, аватары, ссылки на профили, контакты); в списке оставлены первые 2. id, billing и quota меняются при каждом вызове, поэтому показана только их структура.
{
"id": "req_…",
"platform": "realtor",
"action": "property_search",
"results": [
{
"id": "•••",
"url": "https://www.realtor.com/realestateandhomes-detail/200-E-58th-St-Apt-6D_New-York_NY_10022_M34658-52869",
"title": "200 E 58th St Apt 6D",
"status": "for_sale",
"price": 850000,
"sold_price": 182000,
"sold_at": "1992-01-31T00:00:00+00:00",
"listed_at": "2026-09-26T09:23:16+00:00",
"property_type": "condos",
"beds": 1,
"area_sqft": 0,
"year_built": 1963,
"address": "200 E 58th St Apt 6D",
"city": "New York",
"state": "NY",
"postal_code": "10022",
"county": "New York",
"lat": 40.760578,
"lng": -73.966903,
"image_url": "https://ap.rdcpix.com/c66ce90814bb5fd99a1e190f0148454dl-m1477315349s.jpg",
"photo_count": 15,
"is_new_listing": true,
"platform": "realtor"
},
{
"id": "•••",
"url": "https://www.realtor.com/realestateandhomes-detail/303-Park-Ave-3304_New-York_NY_10022_M91518-56430",
"title": "303 Park Ave Unit 3304",
"status": "for_sale",
"price": 5350000,
"listed_at": "2026-09-25T20:01:34+00:00",
"property_type": "condos",
"beds": 2,
"area_sqft": 1461,
"year_built": 1931,
"address": "303 Park Ave Unit 3304",
"city": "New York",
"state": "NY",
"postal_code": "10022",
"county": "New York",
"lat": 40.756886,
"lng": -73.973892,
"image_url": "https://ap.rdcpix.com/f53f80b6ec7b0511ff9a94352cfa0222l-m3708302104s.jpg",
"photo_count": 30,
"is_new_listing": true,
"platform": "realtor"
}
],
"count": 20,
"billing": {
"charged": …,
"charged_usd": …,
"balance_after_usd": …,
…
},
"quota": { … }
}Поля ответа
Бизнес-данные находятся в results. В таблице перечислены поля, которые может содержать запись; значения, которые платформа не показывает, никогда не выдумываются.
| Поле | Значение |
|---|---|
id | Уникальный ID записи на платформе. Уникален только в пределах одной платформы; на разных платформах ID могут повторяться. |
url | Ссылка на запись на платформе. |
title | Заголовок. null, если на платформе нет заголовков (например, у текстовых постов). |
status | Трактуется так же, как на самой платформе |
price | Цена числом без символа валюты; см. currency. |
sold_price | Трактуется так же, как на самой платформе |
sold_at | Трактуется так же, как на самой платформе |
listed_at | Трактуется так же, как на самой платформе |
property_type | Трактуется так же, как на самой платформе |
beds | Трактуется так же, как на самой платформе |
baths | Трактуется так же, как на самой платформе |
area_sqft | Трактуется так же, как на самой платформе |
lot_sqft | Трактуется так же, как на самой платформе |
year_built | Трактуется так же, как на самой платформе |
address | Полный адрес передаётся как есть. |
city | Название города на языке платформы в исходном виде. |
state | Трактуется так же, как на самой платформе |
postal_code | Трактуется так же, как на самой платформе |
county | Трактуется так же, как на самой платформе |
lat | Трактуется так же, как на самой платформе |
lng | Трактуется так же, как на самой платформе |
image_url | Ссылка на изображение. Возможности с несколькими изображениями могут возвращать массив image_urls. |
photo_count | Трактуется так же, как на самой платформе |
is_new_listing | Трактуется так же, как на самой платформе |
is_price_reduced | Трактуется так же, как на самой платформе |
is_foreclosure | Трактуется так же, как на самой платформе |
advertiser_emails | Трактуется так же, как на самой платформе |
advertiser_phones | Трактуется так же, как на самой платформе |
platform | Идентификатор исходной платформы. Совпадает со значением platform в запросе (например, xiaohongshu, tiktok). |
Ошибки и оплата
- 401
- Ключ отсутствует или недействителен.
- 402
- Недостаточно средств на балансе. Сначала пополните баланс.
- 422
- Недопустимое имя или значение параметра. Исправьте запрос по подсказкам в сообщении об ошибке. Без списания.
- 429
- Достигнут лимит запросов в минуту. Подождите указанное в Retry-After время, затем повторите попытку.
- 503
- Не удалось выполнить. Зарезервированная сумма возвращается на баланс. Если результат неизвестен, проверьте его перед повторной попыткой.
- 200 (пусто)
- Нет данных. Без списания.