Listings: Search Parameters

This page documents the parameters that may be used for the _filter parameter in a Listings API search. While the Search and Paging Syntax page documents general search parameters that apply to any service that searches, this page documents search parameters specific to the Listings API.

Field Parameters

Parameter Description
Standard field name Any standard field name from the Standard Fields service that is marked as searchable may be used. For example, ListPrice or BathsTotal.
ListingCart Listings may be limited by listing cart ID. A ListingCart cannot be combined with other fields for filtering, so it should be the only field in a filter.
SavedSearch Listings may be limited by saved search ID. For example, the IDX Links service returns a saved search ID. A SavedSearch cannot be combined with other fields for filtering, so it should be the first and only field in a filter.
SharedListings Listings may be limited by shared listing ID; for example, 15Ar might be one possible value.
StreetAddress Performs a "smart" street address search, as opposed to directly matching the string value of a field such as UnparsedAddress. Does not support wildcards -- instead, opt for user inputted street address criteria, such as "120 1st Street".
OpenHouses Listings may be limited to those that have open houses within a specific time frame using a datetime value.
TourOfHomes Listings may be limited to those that have tours within a specific time frame using a datetime value.
MlsId If omitted, all listing searches are scoped to the current MLS. Datasharing agreements amongst MLSs may provide access to listings beyond the current MLS, and can be discovered by using the Standard Fields service. To search for these listings, specify the MlsId of one or more MLSs listed by the Standard Fields service in the filter string.
Location Listings may be searched by geographic area. A search shape is required for this field, and shape the following functions are available to build the shapes:
  • polygon('latitude1 longitude1, latitude2 longitude2, latitude3 longitude3, ...')
    Polygon searches generate a shape for the ring of input coordinates.
  • rectangle('latitude1 longitude1, latitude2 longitude2')
    Rectangle searches generate a shape using bounding box for the two input coordinates.
  • radius('latitude1 longitude1',radius)
    Radius searches generate a circle at center point for the input coordinates with a size of the radius as a decimal in miles.
  • radius('<Listing.ListingKey>',radius)
    A radius search can also be performed with a given listing's location as the center point.
Radius Listings may be searched for within a radius of a geographic point. This feature is similar to the radius() function for the Location field, but is supported by all MLSs.
Radius Eq latitude,longitude,radius
Radius searches generate a circle at center point for the input coordinates with a size of the radius as a decimal in miles.

_orderby Parameters

Listings may be ordered by any searchable main list field from the Standard Fields service, or by the ModificationTimestamp field.

You can also order listings by the special _orderby fields below:

Field Description
Random With _orderby=Random, listings that match your _filter will be returned in random order. Note that randomizing listings can be a slow process on large data sets, so be sure to provide a _filter that limits the number of listings you are randomizing.

MultiSelect Fields

Listing fields with MultiSelect set to true in the Standard Fields meta data are searched just like all listing fields with a FieldList:
  _filter=PoolFeatures Eq 'Private'
Read more about MultiSelect fields here.