Custom Fields
Listing Expansions
When using this meta data in conjunction with listing data, be sure
to use the CustomFieldsRaw
or CustomFieldsExpandedRaw
expansions instead of
the CustomFields
or CustomFieldsExpanded
expansions.
The Custom Fields API allows retrieval of grouped lists of supported custom fields.
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 Custom Fields
URI: /<API Version>/customfields
HTTP Method | Description | Conditional | Notes |
---|---|---|---|
GET | Returns custom 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 custom fields should be common across | No |
GET Response
Example:
{
"D": {
"Success": true,
"LastUpdated": "2012-11-01T20:52:13Z",
"Results": [
{
"General Property Description": {
"Fields": {
"Directions": {
"ResourceUri": "/v1/customfields/Directions",
"HasList": false,
"Label": "Directions",
"MaxListSize": 0,
"Searchable": true,
"Type": "Character",
"MlsVisible": ["A", "G", "M"],
"AllMlsVisible": ["A", "G", "M", "Z"]
},
"Flood Plain": {
"ResourceUri": "/v1/customfields/Flood Plain",
"HasList": true,
"MultiSelect": false,
"Label": "Flood Plain",
"MaxListSize": false,
"Searchable": true,
"Type": "Character",
"MlsVisible": ["A", "G", "I", "J", "M"],
"AllMlsVisible": ["A", "G", "I", "J", "M", "Z"]
},
"Taxes": {
"ResourceUri": "/v1/customfields/Taxes",
"HasList": false,
"Label": "Taxes",
"MaxListSize": 0,
"Searchable": true,
"Type": "Decimal",
"MlsVisible": ["B", "C", "E"],
"AllMlsVisible": ["B", "C", "E", "Z"]
}
},
"Label": "General Property Description"
}
}
]
}
}
Individual Custom Field
URI: /<API Version>/customfields/<CustomField.FieldName>
HTTP Method | Description | Conditional | Notes |
---|---|---|---|
GET | Returns metadata for an individual custom field | 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 custom fields should be common across | No |
GET Response
Example:
{
"D": {
"Success": true,
"Results": [
{
"Taxes": {
"ResourceUri": "/v1/customfields/Taxes",
"HasList": false,
"Label": "Taxes",
"MaxListSize": 0,
"Searchable": true,
"Type": "Decimal",
"MlsVisible": ["B", "C", "E"],
"AllMlsVisible": ["B", "C", "E", "Z"]
}
}
]
}
}
Field Lists for a Custom Field
/<API Version>/customfields/<CustomField.FieldName>/FieldList
/<API Version>/mls/<MlsId>/customfields/<CustomField.FieldName>/FieldList
HTTP Method | Description | Conditional | Notes |
---|---|---|---|
GET | Returns the FieldList values for a custom 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": "Large",
"Value": "LG",
"AppliesTo": ["A"]
},
{
"Name": "Medium",
"Value": "MD",
"AppliesTo": ["B"]
},
{
"Name": "Small",
"Value": "SM",
"AppliesTo": ["A","B"]
}
]
}
}
Last Updated Timestamp
/<API Version>/customfields/lastupdated
/<API Version>/mls/<MlsId>/customfields/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 Format
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. |
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
- None