IDXMLS Search
IDXMLS Search API allows consumers to search for properties using various criteria
Authentication¶
API Keys
You will need to authenticate with an API key in order to use the endpoints.
There are two ways in which you can authenticate with an API key:
-
Authorization
header -
auth
GET parameter
To look around, use the test key coolbeans
.
Admin Login
You can login here with your login credentials. You will not need to use an API key if you have an active site session.
Property Search¶
Properties Search¶
When executing a search, our endpoint will respond with a list of properties that matches the criteria you specified.
- Parameters:
-
q
(string, optional) - Full-text search against listing title, description, and address -
id
(number, optional) - Unique ID assigned by IDXMLS -
mls_id
(number, optional) - MLS ID as declared by the source -
brokerage
(number or array of numbers, optional) - ID of brokerage, or array of IDs in the form of?brokerage[]=X&brokerage[]=Y...
-
status
(string, optional) - Status of property -
type
(string, optional) - Type of property -
address
(string, optional) - Full-text search against the property addresses (full or partial) -
bedroom_count
(number, optional) - No. of bedrooms. May include quantifiers e.g.>2
,<5
,>=3
-
bath_count
(number, optional) - No. of baths. May include quantifiers likebedroom_count
-
min_price
(number, optional) - Minimum price -
max_price
(number, optional) - Maximum price -
min_sq_ft
(number, optional) - Minimum living area in square feet -
max_sq_ft
(number, optional) - Maximum living area in square feet -
slir-*
(string, optional) - Request for SLIR processing on the resulting properties’ images.Example, specifying
slir-thumb=w200-c1x1
will add athumb
attribute to each properties’slir
root attribute. Thethumb
attribute will contain a list of picture media items that corresponds to the original picture medias but processed through SLIR with thew200-c1x1
modifier.You can specify multiple SLIR modifiers i.e.,
slir-thumb=w200-c1x1&slir-wide=w720
-
sort
(string, optional) - Sort properties bylowest_price
,highest_price
, orrecent
-
start
(number, optional) - Pagination offset (default:0
) -
per_page
(number, optional) - The number of results to return (default:10
)
-
Each property in the search results has the following properties:
-
id
(number) - IDXMLS-specific ID for the property -
type
(string) - Property type -
status
(string) - Property status -
listing_type
(string) - Listing type -
price
(number) -
bedroom_count
(number) -
full_bath_count
(number) -
half_bath_count
(number) -
bath_count
(number) -
sq_ft
(number) -
description
(string) - Full-text description of property. May contain escaped HTML -
foreclosure_status
(string) -
listing
(object)Contains
provider_id
,title
, anddisclaimer
. -
lot_size
(string) -
year_built
(string) -
date_listed
(string) -
date_available
(string) -
date_sold
(string) -
sale_price
(number) -
landing_page_url
(string) - URL to property details -
plan
(object)Contains
id
,name
,type
, &base_price
-
is_spec_home
(boolean) -
spec_id
(number) -
agent
(object)Contains
name
,email
,phone
,alternate_email
,picture_url
,id
, &licenses
. -
brokerage
(object)Contains
id
,name
,email
,broker_name
,mls_code
,phone
,website
,logo_url
,street_address
,city
,zipcode
, &state_code
-
office
(object)Contains the same fields as
brokerage
-
franchise
(object)Conains
name
,email
,phone
,website
, &logo_url
-
builder
(object)Contains
id
,name
,phone
,email
,lead_email
,website
,logo_url
,street_address
,city
,zipcode
, &state
-
property_manager
(object)Contains
name
,company_name
,phone
,email
,lead_email
,website
, &logo_url
.Also contains
office_days
which is a list of objects with the following properties:dow
,start_time
,end_time
, &comment
. -
characteristics
(object) -
fees
(array) - List of fees -
taxes
(array) - List of taxes -
schools
(array) - List of schools -
mls_id
(number) - MLS ID of property -
mls_name
(string) -
site
(object) - Containsurl
andname
-
media
(array) - List of media itemsContains
url
,caption
,description
,sequence_number (int)
, andmedia_type
, which can hold one of the following values:picture
,video
,floorplan layout
, andvirtual tour
-
address (object) Address of property
Contains
unit_number
,street_address
,city
,zipcode
,county
,state_code
,parcel_identifier
,building_name
,subdivision
,neighborhood_name
,neighborhood_description
,elevation
,longitude
,latitude
,geocode_type
, &directions
-
slir
(array) - List of media items of media typepicture
if SLIR processing is requested.
Execute searchGET/api/search
200
Headers
Content-Type: application/json
Body
{
"total": 10,
"results" : [ array of properties ]
}
Schema
{"type":"object","properties":{"hits":{"type":"number","description":"Total number of properties matching the criteria"},"results":{"type":"array"}},"$schema":"http://json-schema.org/draft-04/schema#"}
400
Headers
Content-Type: application/json
Body
{
"error": "Authentication failure."
}
Brokerage Search¶
Brokerage Search¶
- Parameters:
- q (string, optional) - Full-text search name and address.
- id (number, optional) - Unique ID assigned by IDXMLS
- start (number, optional) - Pagination offset (default:
0
) - per_page (number, optional) - The number of results to return (default:
10
)
Each brokerage in the search result is represented as follows:
-
id
(number) - IDXMLS-specific ID for the brokerage -
name
(string) - Name of brokerage -
street_address
(string) - Street address infered from Trulia feed -
city
(string) - City infered from Trulia feed -
zipcode
(string) - Zipcode infered from Trulia feed -
state_code
(string) - State code infered from Trulia feed
Execute searchGET/api/brokerages
200
Headers
Content-Type: application/json
Body
{
"hits": 10,
"results": [ array of brokerages ]
}
400
Headers
Content-Type: application/json
Body
{
"error": "Authentication failure."
}
Schema
{
"type": "object",
"properties": {
"hits": {
"type": "number",
"description": "Total number of brokerages matching the criteria"
},
"results": {
"type": "array"
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}