Getting Started
To get started using the MLS Router API, please refer to the points below:
...
You'll need either a paid account or a test account. If you'd like a test account please click here.
...
please sign up
...
on RF Dashboard. (How to Sign Up on RF Dashboard)
When we set up your account, we'll provide a Client ID, Client Secret, and an API key that you'll need for use in API requests.
Authentication
To access the MLS Router API, authentication is required. The API uses the OAuth2 Client Credentials flow for authentication.
...
The request should include the following in the Request Body as x-www-form-urlencoded key/values:
Parameter | Description |
---|---|
client_id | The client ID provided by Realtyna |
client_secret | The client secret provided by Realtyna |
grant_type | The grant type, which should be "client_credentials" |
...
Authorization
: Set this header with the value "Bearer <access_token>" (replace<access_token>
with the actual access token obtained during authentication).x-api-key
: Include this header with the API key provided by Realtyna. (Optional)Origin
: Include this header with the API key provided by Realtyna. (Optional)Referer
: Include this header with the API key provided by Realtyna. (Optional)
The endpoint structure of all search requests is:
...
Valid resource
values include the names of the valid RESO resources: Property, Member, Office, PropertyRooms and OpenHouse.
Sample for Property Search:
Code Block |
---|
https://api.realtyfeed.com/reso/odata/Property |
Info |
---|
RESO Media is nested within the Property Resource. |
...
Parameter | Description | |
---|---|---|
$top | To get more records per query, we use the $top parameter. If you want just one record, you can specify $top=1, or if you want one hundred, $top=100. (default is 10 - max value is 200100) | |
$skip | Use $skip to skip over a number of records. This is most useful in combination with $top to iterate over the results of a query. (default is 0) | |
$select | You can limit the fields you want with $select. For example, if you want just the ListingKey and the StandardStatus, you would use $select=ListingKey, StandardStatus. If you want all the fields, you would use $select=ALL | |
$filter | You can get specific records you want with the $filter. | |
$orderby | You can sort results via the $orderby parameter. This parameter accepts “ASC” and “DESC” as an argument (default is “ASC”). $expand | To retrieve OpenHouse data as a part of the Property payload. |
The supported parameters can be combined as needed
...
Function | Description |
---|---|
contains(haystack, 'needle') | Returns true response if needle is found in haystack |
...
The API returns record within the specified resource having a primary key value matching the provided recourdresource_id
. For example:
Request
Code Block |
---|
GET https://api.realtyfeed.com/reso/odata/Property('ListingKey') or GET https://api.realtyfeed.com/reso/odata/Member('MemberKey') |
Don’t hesitate to contact Realtyna Support, if you have any questions.
Errors
401 Unauthorized
A 401 http response results when authentication fails. This is likely due to using an invalid x-api-key or account suspension.
...
A 500 http response results when an unexpected problem occurs with a request. If after several retries the 500 error still persists, it should be escalated to the Realtyna Support Team for troubleshooting.
...
Searchable Fields:
Property
Field | Description | |
---|---|---|
ListingKey | A unique identifier for this record from the immediate source. | |
ModificationTimestampThe transactional timestamp automatically recorded by the MLS system representing the date/time the listing was last modified. | ||
ListingIdThe well known identifier for the listing. The value may be identical to that of the Listing Key, but the Listing ID is intended to be the value used by a human to retrieve the information about a specific listing. | ||
PropertyType | A list of types of properties such as Residential, Lease, Income, Land, Mobile, Commercial Sale, etc... | |
PropertySubType | A list of sub types to Residential, Residential Lease, Manufactured in Park, Commercial and Business Opportunity listings. e.g. Single Family Residence, Condominium, Manufactured on Land, Townhouse, Multi Family, Office, Retail, etc. | |
ListPrice | The current price of the property as determined by the seller and the seller's broker. For auctions this is the minimum or reserve price. | |
BathroomsTotalInteger | The simple sum of the number of bathrooms. For example for a property with two Full Bathrooms and one Half Bathroom, the Bathrooms Total Integer will be 3. | |
BedroomsTotal | The total number of bedrooms in the dwelling. | |
StandardStatus | The status of the listing as it reflects the state of the contract between the listing agent and seller or an agreement with a buyer (Active, Active Under Contract, Canceled, Closed, Expired, Pending, Withdrawn). | |
LotSizeArea | The total area of the lot. | |
LivingArea | The total livable area within the structure. | |
BuildingAreaTotal | Total area of the structure. Includes both finished and unfinished areas. | |
OriginatingSystemName | The name of the Originating record provider. Most commonly the name of the MLS. | |
City | The city in listing address. | |
PostalCode | The postal code portion of a street or mailing address. | |
UnparsedAddress | The UnparsedAddress is a text representation of the address with the full civic location as a single entity. It may optionally include any of City, StateOrProvince, PostalCode and Country. | |
YearBuilt | The year that an occupancy permit is first granted for the house or other local measure of initial habitability of the build. | |
ListAgentFullName | The full name of the listing agent. (First Middle Last) | |
ListOfficeName | The legal name of the brokerage representing the seller. | |
StoriesTotal | The total number of floors in the building. | |
TaxLot | A type of legal description for land in developed areas where streets or other rights-of-ways delineate large parcels of land referred to as divided into lots on which homes or other types of developments are built. | |
TaxBlock | A type of legal description for land in developed areas where streets or other rights-of-ways delineate large parcels of land referred to as divided into lots on which homes or other types of developments are built. | |
GarageSpaces | The number of spaces in the garage(s). | |
Cooling | A list describing the cooling or air conditioning features of the property. | |
InteriorFeatures | A list of features or description of the interior of the property included in the sale/lease. | |
ExteriorFeatures | A list of features or description of the exterior of the property included in the sale/lease. | |
PublicRemarks | Text remarks that may be displayed to the public. | |
LaundryFeatures | A list of features and locations where the laundry is located in the property being sold. i.e. Gas Dryer Hookup, In Kitchen, In Garage, etc. | |
FireplacesTotal | The total number of fireplaces included in the property. | |
PoolFeatures | A list of features or description of the pool included in the sale/lease. | |
PetsAllowed | Are pets allowed at the property? A list of yes, no and more detailed restrictions/allowances. | |
WaterfrontFeatures | Features of the waterfront on which the property is located. | |
AccessibilityFeatures | A list or description of the accessibility features included in the sale/lease. | |
LotFeatures | A list of features or description of the lot included in the sale/lease. |
Member
Field | Description |
---|---|
MemberFullName | |
MemberEmail | |
MemberMlsId | MLS ID of the agent in MLS |
OfficeMlsId | MLS ID of the agent’s Office in MLS |
ModificationTimestamp | |
OriginatingSystemName | |
MemberKey | Agent’s system Key in MLS |
MemberStatus | |
OfficeKey | |
MemberDirectPhone |
Office
Field | Description |
---|---|
OfficeName | |
OfficeEmail | |
OfficeMlsId | MLS ID of the agent in MLS |
ModificationTimestamp | |
OriginatingSystemName | |
OfficeStatus | |
OfficeKey |
OpenHouse
Field | Description |
---|---|
OpenHouseKey | |
ListingKey | Get Openhouse records based on associated ListingKey |
ListingId | Get Openhouse records based on associated ListingID |
ModificationTimestamp | |
OriginatingSystemName | |
OpenHouseStatus | |
OpenHouseDate |
PropertyRooms
Field | Description |
---|---|
RoomKey | |
ListingKey | Get Room records based on associated ListingKey |
ListingId | Get Room records based on associated ListingID |
ModificationTimestamp | |
OriginatingSystemName |