POST /api/domclick/offers/search
Price: 5 credits
Search Domclick (Sber) real-estate offers within a region. Returns offer cards: id, url, deal/offer type, price, price per m², area, rooms, floor, building floors and build year, address with coordinates and nearby metro, photos, the new-building complex, developer and the seller. Filter by deal type, category, property type, room layout, price/area/room-area/land-area/floor/building-floor ranges, kitchen area, ceiling height, renovation, wall material, building class, build-year range, apartments, balcony, bathroom type, lifts, window view, sale type, seller (owner/developer/agents), Rosreestr-verified, exclude-auction, new-build only, publication window, video, photos, online showing, metro walking/driving time, MKAD distance, rental terms (no commission/deposit, children, pets, amenities) and description keywords, with configurable sort order.
Search Domclick offers within a region. region is a GUID (e.g. Moscow = 1d1463ae-c80f-4d19-9331-a1b68a85b553) or numeric area id (aid) — resolve names via domclick/geo/suggest. Choose deal_type (sale/rent), category (living/commercial/garage) and offer_type. Each result has id, url, price, square_price, area, rooms, floor, address, latitude/longitude, subways, complex, developer, seller (with agent and company) and image+images. Narrow with rooms, price/area/room_area/land_area/floor/floors ranges, kitchen area, ceiling height, renovation, wall_type, building_class, build-year range, is_apartment, balcony, bathroom, lifts, window_view, sell_type, from_owner/from_developer/from_agents, rosreestr_approved, exclude_auction, only_newbuilding, published_filter, video/photo/online_show, max_metro_time_on_foot/by_car, min/max_mkad_distance, rental no_commission/no_deposit/with_children/with_animals/amenities and include/exclude keywords; order with sort and sort_dir.
access-token string requiredtimeout integer — Max scrapping execution timeout (in seconds) (default: 300; min: 20; max: 1500)region string required — Region/area/district/metro GUID or numeric area id (aid) to search within.deal_type string — Deal type. (default: "sale"; one of: "sale", "rent")category string — Property category. (default: "living"; one of: "living", "living_house", "commercial", "garage")offer_type array nullable — Restrict to these property types (multiple allowed). (one of: "flat", "layout", "room", "complex", "house", "house_part", "townhouse", "land")count integer required — Max number of results to return (min: 1)rooms array nullable — Restrict to these room layouts (multiple allowed). (one of: "st", "1", "2", "3", "4", "5+")min_price integer nullable — Minimum price (RUB; per month for rentals). (min: 0)max_price integer nullable — Maximum price (RUB; per month for rentals). (min: 0)min_area number nullable — Minimum total area (m²). (min: 0)max_area number nullable — Maximum total area (m²). (min: 0)min_room_area number nullable — Minimum room area (m²); for rooms. (min: 0)max_room_area number nullable — Maximum room area (m²); for rooms. (min: 0)min_land_area number nullable — Minimum land plot area (sotka). (min: 0)max_land_area number nullable — Maximum land plot area (sotka). (min: 0)min_floor integer nullable — Minimum floor of the flat. (min: 0)max_floor integer nullable — Maximum floor of the flat. (min: 0)min_floors integer nullable — Minimum number of floors in the building. (min: 0)max_floors integer nullable — Maximum number of floors in the building. (min: 0)not_first_floor boolean nullable — Exclude offers on the first floor.not_last_floor boolean nullable — Exclude offers on the last floor.last_floor boolean nullable — Only offers on the last floor.min_kitchen_area number nullable — Minimum kitchen area (m²). (min: 0)min_ceiling_height number nullable — Minimum ceiling height (m). (min: 0)renovation array nullable — Restrict to these renovation states (multiple allowed). (one of: "without_repair", "standard", "well_done", "design")wall_type array nullable — Restrict to these building wall materials (multiple allowed). (one of: "monolith", "brick_monolith", "brick", "panel", "block")building_class array nullable — Restrict to these building classes (multiple allowed). (one of: "economy", "comfort", "business", "elite")min_build_year integer nullable — Minimum building construction year. (min: 0)max_build_year integer nullable — Maximum building construction year. (min: 0)is_apartment boolean nullable — Filter apartments (true) or regular flats (false).with_balcony boolean nullable — Only offers that have a balcony.with_separated_bathroom boolean nullable — Only offers with a separated bathroom.with_connected_bathroom boolean nullable — Only offers with a connected bathroom.with_lifts boolean nullable — Only offers in buildings with a lift.with_freight_lifts boolean nullable — Only offers in buildings with a freight lift.window_view string nullable — Restrict to this window view. (one of: "garden", "park", "water", "forest", "street")sell_type array nullable — Restrict to these sale types (multiple allowed). (one of: "free_sale", "alternative")from_owner boolean nullable — Only offers listed directly by the owner.from_developer boolean nullable — Only offers listed by the developer.from_agents boolean nullable — Only offers listed by agents or private sellers.rosreestr_approved boolean nullable — Only offers verified by Rosreestr.exclude_auction boolean nullable — Exclude auction offers.only_newbuilding boolean nullable — Only new-build (primary market) offers.published_filter string nullable — Only offers published within this time window. (one of: "hour", "today", "24h", "10d", "30d")with_video boolean nullable — Only offers that include a video.with_photo boolean nullable — Only offers that have photos.online_show boolean nullable — Only offers that support an online showing.max_metro_time_on_foot integer nullable — Maximum walking time to metro (minutes). (min: 0)max_metro_time_by_car integer nullable — Maximum driving time to metro (minutes). (min: 0)min_mkad_distance integer nullable — Minimum distance from the MKAD (km). (min: 0)max_mkad_distance integer nullable — Maximum distance from the MKAD (km). (min: 0)no_commission boolean nullable — Only rentals without an agent commission.no_deposit boolean nullable — Only rentals without a security deposit.with_children boolean nullable — Only rentals that allow children.with_animals boolean nullable — Only rentals that allow pets.amenities array nullable — Only rentals with these amenities (multiple allowed). (one of: "internet", "living_furniture", "kitchen_furniture", "refrigerator", "tv", "dish_washer", "conditioner")include_keywords string nullable — Only offers whose description contains this text.exclude_keywords string nullable — Exclude offers whose description contains this text.sort string — Result ordering. (default: "qi"; one of: "qi", "price", "area", "published")sort_dir string — Sort direction. (default: "desc"; one of: "asc", "desc")@type string (default: "DomclickOffer")id integer requiredurl string nullabledeal_type string nullableoffer_type string nullableprice integer nullablesquare_price integer nullablemonthly_payment integer nullablehas_discount boolean nullablediscount_value number nullablearea number nullablerooms integer nullablefloor integer nullablefloors integer nullableis_apartment boolean nullablebuild_year integer nullableaddress string nullablelatitude number nullablelongitude number nullabledescription string nullableimage string nullableimages array (default: [])subways array (default: [])@type string (default: "DomclickSubway")name string requiredtime integer nullableline_colors array (default: [])complex object nullable@type string (default: "DomclickOfferComplex")id integer requiredname string nullablealias string nullablebuilding_id integer nullableend_build_year integer nullableend_build_quarter integer nullabledeveloper_name string nullabledeveloper_image string nullableseller object nullable@type string (default: "DomclickOfferSeller")name string nullableis_agent boolean nullableis_agency boolean nullableis_owner boolean nullableis_sbol_verified boolean nullableagent_cas_id integer nullableagent_name string nullableagent_image string nullableagent_experience string nullablecompany_id integer nullablecompany_name string nullablecompany_logo string nullablecompany_experience string nullableis_owner boolean nullableis_rosreestr_approved boolean nullablehas_video boolean nullableduplicates_offer_count integer nullablepublished_at string nullableupdated_at string nullable422 — The request body did not validate Check the fields against this schema. A URN with the wrong prefix is the most common cause.408 — The request ran past its time limit Raise `timeout` in the request body, up to the maximum this endpoint documents. Lowering `count` or turning off the `with_*` flags also helps, because less work finishes sooner.412 — Region not found or no offers matched Retrying will not help: either the entity does not exist, or the input points at a different one.429 — Too many requests: a rate limit or a usage window is exhausted When the response carries an X-Retry-After header, wait that many seconds and retry: the same number is in the body as `detail.retry_after`, and the limit clears once that window passes. The message in the body names the limit that was hit.500 — Something broke on our side Retrying will not help. If it keeps happening, send us the X-Request-ID from the response headers.529 — Rate limit reached, or the endpoint is overloaded Wait at least 30 seconds, then retry.X-Error — Error message text (present only on error)X-Request-ID — Unique request identifierX-Execution-Time — Execution time in secondsX-Result-Count — How many records the body carries. 0 means an empty result, which is a normal answer and not by itself an error. A non-zero count can come back together with X-Error when the failure happened partway through — read this header and X-Error independently.X-Total-Available-Results — How many records exist for this query, when the endpoint can say. On a `dry_run` request this is the answer and the body is empty. It saturates: the endpoint's documented maximum means 'at least that many', any smaller number is exact.X-Warning — Present when the request body carried keys this endpoint does not document. They were ignored, so any filter you meant to apply through them did not apply. Check the spelling against this schema and retry.X-Retry-After — Seconds to wait before retrying. Present only on 429.