Standard Fields
Multiple RESO Dictionary Support
This service supports multiple RESO Data Dictionary versions.
Not all listing data is suitable for display.
When using the Listings Service, you must consult the corresponding meta data services (e.g. Property Types and Standard Fields) for the PropertyType
standard field and any other field where the HasList
is true
in the meta data.
See an example here.
The Standard Fields API allows retrieval of a list of supported standard fields and list items.
Of special note is the MlsId
field, which informs which other MLSs the current user may search.
Supported Roles
Role | Reads | Writes | Notes |
---|---|---|---|
IDX | Yes | No | |
Public | Yes | No | |
VOW | Yes | No | |
Portal | Yes | No | |
Private | Yes | No |
More information about roles may be found here.
Available Services
All Standard Fields
/<API Version>/standardfields
/<API Version>/mls/<MlsId>/standardfields
HTTP Method | Description | Conditional | Notes |
---|---|---|---|
GET | Returns standard field metadata | Yes | |
POST,PUT,DELETE | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
GET Request
Parameters:
Parameter | Description | Required |
---|---|---|
_mls |
A comma-separated list of MLS IDs the standard fields should be common across | No |
GET Response
{
"D": {
"Success": true,
"LastUpdated":"2012-11-01T20:55:02Z",
"Results": [
{
"City": {
"Label": "City",
"Searchable": true,
"Type": "Character",
"ResourceUri": "/v1/standardfields/City",
"Currency": false,
"Nullable": false,
"Format": null,
"HasList": true,
"MultiSelect": false,
"MlsVisible": {
"PropertyTypes": ["A","B","C"]
},
"AllMlsVisible": {
"PropertyTypes": ["A","B","C","Z"]
}
},
"BedsTotal": {
"Label": "Total Bedrooms",
"Searchable": true,
"Type": "Integer",
"ResourceUri": "/v1/standardfields/BedsTotal",
"Currency": false,
"Nullable": false,
"Format": null,
"MlsVisible": {
"PropertyTypes": ["A","B","C"]
},
"AllMlsVisible": {
"PropertyTypes": ["A","B","C","Z"]
}
},
"ListPrice": {
"Label": "Listing Price",
"Searchable": true,
"Type": "Decimal",
"ResourceUri": "/v1/standardfields/ListPrice",
"Currency": true,
"Nullable": "Currency",
"Format": null,
"MlsVisible": {
"PropertyTypes": ["A","B","C"]
},
"AllMlsVisible": {
"PropertyTypes": ["A","B","C","Z"]
}
},
"MlsId": {
"Label": "MLS ID",
"Searchable": true,
"Type": "Character",
"ResourceUri": "/v1/standardfields/MlsId",
"Currency": false,
"Nullable": false,
"Format": null,
"HasList": true,
"MaxListSize": 1,
"MultiSelect": false,
"MlsVisible": {
"PropertyTypes": ["A","B","C"]
},
"AllMlsVisible": {
"PropertyTypes": ["A","B","C","Z"]
}
},
"PendingDate": {
"Label": "Pending Date",
"Searchable": true,
"Type": "Character",
"ResourceUri": "/v1/standardfields/PendingDate",
"Currency": false,
"Nullable": true,
"Format": null,
"Defaults": {
"FromQuantity": "6",
"FromUnit": "months",
"ToQuantity": "10",
"ToUnit": "years"
},
"MlsVisible": {
"PropertyTypes": []
},
"AllMlsVisible": {
"PropertyTypes": []
}
},
"PoolFeatures": {
"ResourceUri": "/v1/standardfields/PoolFeatures",
"Currency": false,
"Nullable": true,
"Format": null,
"Label": "Pool Features",
"HasList": true,
"MultiSelect": true,
"MaxListSize": 3,
"Searchable": true,
"Type": "Boolean",
"MlsVisible": [
"A",
"B"
],
"AllMlsVisible": {
"PropertyTypes": ["A","B","Z"]
}
}
}
]
}
}
Restricted Fields
The MlsVisible
field lists all property types where the standard field is not restricted by the MLS. Listings whose PropertyType
is not present in the array will have the corresponding standard field value masked (i.e. have a value of "********").
Individual Standard Field
/<API Version>/standardfields/<StandardField>
/<API Version>/mls/<MlsId>/standardfields/<StandardField>
HTTP Method | Description | Conditional | Notes |
---|---|---|---|
GET | Returns standard field metadata for an individual field | Yes | |
POST,PUT,DELETE | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
Parameters:
Parameter | Description | Required |
---|---|---|
_mls |
A comma-separated list of MLS IDs the standard fields should be common across | No |
GET Response
{
"D": {
"Success": true,
"Results": [
{
"PropertySubType": {
"Label": "Property Sub-Type",
"Searchable": true,
"Type": "Character",
"ResourceUri": "/v1/standardfields/PropertySubType",
"Currency": false,
"Nullable": true,
"Format": null,
"MlsVisible": {
"PropertyTypes": ["A","B","C"]
},
"AllMlsVisible": {
"PropertyTypes": ["A","B","C","Z"]
},
"HasList": true,
"FieldList": [
{
"Value": "SF",
"Name": "Single Family",
"AppliesTo": [
"A",
"B",
"C"
]
},
{
"Value": "CD",
"Name": "Condo",
"AppliesTo": [
"A",
"B",
"C"
]
},
{
"Value": "CO",
"Name": "Commercial",
"AppliesTo": [
"D"
]
}
]
}
}
]
}
}
Field Lists for a Standard Field
/<API Version>/standardfields/<StandardField>/FieldList
/<API Version>/mls/<MlsId>/standardfields/<StandardField>/FieldList
HTTP Method | Description | Conditional | Notes |
---|---|---|---|
GET | Returns the FieldList values for a standard field | No | |
POST | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
PUT | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
DELETE | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
GET Request
Parameters:
Parameter | Required | Notes |
---|---|---|
_mls | No | |
Standard search and paging syntax | No | Only Name and AppliesTo can be searched (Name Eq 'Larg*' And AppliesTo Eq 'A' ). |
GET Response
{
"D": {
"Success": true,
"Results": [
{
"Name": "Active",
"Value": "A",
"AppliesTo": ["A","B"]
},
{
"Name": "Pending",
"Value": "P",
"AppliesTo": ["A"]
},
{
"Name": "Withdrawn",
"Value": "W",
"AppliesTo": ["A","B"]
}
]
}
}
Last Updated Timestamp
/<API Version>/standardfields/lastupdated
/<API Version>/mls/<MlsId>/standardfields/lastupdated
HTTP Method | Description | Conditional | Notes |
---|---|---|---|
GET | Returns the LastUpdated attribute, which notes the last time the data provided by this service was updated. |
Yes | |
POST | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
PUT | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
DELETE | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
GET Request
Parameters:
- None
GET Response
{
"D": {
"Success": true,
"LastUpdated":"2012-11-01T20:55:02Z"
}
}
Response Description
The top level LastUpdated
attribute is only available for the All
service and reflects the last time any fields in the result list was updated.
Attribute | Description |
---|---|
ResourceUri |
The URI to retrieve the field data from. |
Type |
The data type of the field. |
Label |
The human-friendly label for the standard field. |
Currency |
true if the attribute represents currency data. |
Nullable |
true if the field can be set to a null value. |
Format |
Present if the field is intended to be displayed in a specific format.
Possible values are Phone and Currency . |
Searchable |
true if the listings can be filtered by the field. |
MlsVisible.PropertyTypes |
An array of PropertyType.MlsCode detailing which property types corresponding listing data will be visible under. |
AllMlsVisible.PropertyTypes |
An array of PropertyType.MlsCode detailing which property types corresponding listing data will be visible under, including inactive property types. |
HasList |
true if the field has a FieldList attribute. |
MultiSelect |
true if the field has a FieldList attribute and listing data for this field can have multiple values from this list. |
The Defaults
attribute is only available for Date
types:
Attribute | Description |
---|---|
Defaults.FromQuantity |
The quantity to apply to FromUnit . |
Defaults.FromUnit |
One of the following: day, month, year . |
Defaults.ToQuantity |
The quantity to apply to ToUnit . |
Defaults.ToUnit |
One of the following: day, month, year . |
The FieldList
attribute is only present when retrieving an individual field for data where HasList=true
:
Attribute | Description |
---|---|
FieldList.Name |
The human friendly name for the field. |
FieldList.Value |
The searchable code for the field. |
FieldList.AppliesTo |
An array of PropertyType.MlsCode the field list item is valid under. |
When the MultiSelect
attribute for a field is true
, the listing may have multiple values from FieldList
. In the Listing payload, the field is represented as an associative array. Below is an example of the PoolFeature
field for a listing.
{
"D": {
"Results": [
{
"StandardFields": {
"PoolFeatures": {
"Private": true
}
}
}
],
"Success": true
}
}
See the Listing Search Parameters page for details on using this field with the _filter
parameter.
Expansions
Expansion | Roles | Single Record Only? | Selection Support? | Description |
---|---|---|---|---|
ResoStandardNames |
All | No | No | An array of all of the RESO Data Dictionary names associated with the Spark® field, from the highest supported dictionary version. |