Privileged API Keys Only
Special permission is required to access this service. Please contact api-support@sparkplatform.com or your API key provider to request access to this data.
Developers: Templates
API templates allow MLS and Association staff to override field display and search restrictions for a given access role.
API keys restricted to a template can only access the RESO Web API endpoint.
Supported Roles
Role | Reads | Writes | Notes |
---|---|---|---|
IDX | No | No | |
Public | No | No | |
VOW | No | No | |
Portal | No | No | |
Private | Yes | Yes | Only accessible by MLS and association users, and by API keys granted explicit permission. |
More information about roles may be found here.
Available Services
All Developer Templates
/<API Version>/developers/templates
HTTP Method | Description | Conditional | Notes |
---|---|---|---|
GET | Returns all templates accessible by the current user. | No | |
POST | Creates a new template | No | |
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 |
---|---|---|
Standard search and paging syntax | No | |
Standard expansion parameters | No |
GET Response
{
"D": {
"Success": true,
"Results": [
{
"Id": "20160328145528265879000000",
"ResourceUri": "/v1/developers/templates/20160328145528265879000000"
"OwnerId": "20160328145519032513000000",
"AssociationId": "20160328145458846124000000",
"MlsId": "20160328145437348560000000",
"Name": "Company IDX Template",
"Description": "The best template out of all the templates.",
"SyndicationId": "20160328145508904022000000",
"ListingPhotoLimit": null,
"Role": "idx",
"CreatedTimestamp": "2013-06-27T10:01:06-05:00",
"ModificationTimestamp": "2013-06-27T10:01:06-05:00",
"RestrictiveFilters": {
"RESODictionaryVersion": 1.0,
"Agent": null,
"Property": {
"Filter": "StandardStatus eq 'Active'"
}
},
"FieldOverrides": {
"RESODictionaryVersion": 1.0,
"Agent": null,
"Property": {
"Residential": {
"TotalBaths": {
"Rule": "Visible"
},
"ListPrice": {
"Rule": "Hidden"
}
}
}
}
}
]
}
}
POST Request
Request body:
{
"D": {
"Name": "Company IDX Template",
"Description": "The best template out of all the templates.",
"SyndicationId": "20160328145508904022000000",
"ListingPhotoLimit": null,
"Role": "idx",
"RestrictiveFilters": {
"RESODictionaryVersion": 1.0,
"Agent": null,
"Property": {
"Filter": "StandardStatus eq 'Active'"
}
},
"FieldOverrides": {
"RESODictionaryVersion": 1.0,
"Agent": null,
"Property": {
"Residential": {
"TotalBaths": {
"Rule": "Visible"
},
"ListPrice": {
"Rule": "Hidden"
}
}
}
}
}
}
POST Response
The standard success/fail response is returned.
Individual Developer Template
/<API Version>/developers/templates/<Template.Id>
HTTP Method | Description | Conditional | Notes |
---|---|---|---|
GET | Returns a specific API template | No | |
POST | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
PUT | Updates a template record | No | |
DELETE | Deletes a template record | No | A template cannot be destroyed if it is used by any API key. |
GET Request
Parameters:
Parameter | Required | Notes |
---|---|---|
Standard expansion parameters | No |
GET Response
See the GET request section for for the templates service.
PUT Request
Request body:
{
"D": {
"Name": "Company VOW Template",
"Role": "vow"
}
}
PUT Response
The standard success/fail response is returned.
DELETE Request
Parameters:
- None
DELETE Response
The standard success/fail response is returned.
Field Overrides for a Template
/<API Version>/developers/templates/<Template.Id>/FieldOverrides
HTTP Method | Description | Conditional | Notes |
---|---|---|---|
GET | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
POST | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
PUT | Updates the FieldOverrides data for a template. |
No | |
DELETE | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
PUT Request
Request body:
{
"D": {
"RESODictionaryVersion": 1.0,
"Agent": {
"All": {
"MemberKey": {
"Rule": "Visible"
}
}
},
"Property": {
"Residential": {
"TotalBaths": {
"Rule": "Visible"
},
"ListPrice": {
"Rule": "Hidden"
}
}
}
}
}
PUT Response
The standard success/fail response is returned.
Restrictive Filters for a Template
/<API Version>/developers/templates/<Template.Id>/RestrictiveFilters
HTTP Method | Description | Conditional | Notes |
---|---|---|---|
GET | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
POST | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
PUT | Updates the RestrictiveFilters data for a template. |
No | |
DELETE | Returns HTTP 405 (Method Not Allowed) | No | Not implemented |
PUT Request
Request body:
{
"D": {
"RESODictionaryVersion": 1.0,
"Property": {
"Filter": "StandardStatus eq 'Active'"
}
}
}
PUT Response
The standard success/fail response is returned.
Developers: Template Description
Attribute | Data Type | Writeable | Required | Description |
---|---|---|---|---|
Id |
Character | No | No | The unique identifier for the template. |
ResourceUri |
Character | No | No | The URI to the individual template. |
OwnerId |
Character | No | No | The ID of the user that owns the template. This will match either AssociationId or MlsId . |
AssociationId |
Character | No | No | Populated if the template belongs to an association. |
MlsId |
Character | No | No | The MLS the template belongs to. Always populated, even if owned by an association. |
Name |
Character | Yes | Yes | The name of the template. |
Description |
Character | Yes | Yes | A longer description detailing the purpose of the template. |
SyndicationId |
Character | Yes | No | The Id of the syndication used to filter listings. Only listings opted in (or, not opted out) of the specified syndication will be delivered. |
ListingPhotoLimit |
Intenger | No | No | If set, only the first number of listing photos specified by this value will be returned. |
Role |
Character | No | No | The base role for the template. |
CreatedTimestamp |
Timestamp | No | No | The time the template was created. |
ModificationTimestamp |
Timestamp | No | No | The time the template was last updated. |
Expansions
Expansion | Roles | Single Record Only? | Selection Support? | Description |
---|---|---|---|---|
FieldOverrides |
All | No | No | A hash of filters auto-applied to resource data
for keys using this template. Any
RESO resource, such as Property and Member,
can be an attribute for this hash. For the Property resource, field override settings are further grouped
by property class. All other resources are merely grouped under an All
attribute.Possible Rule values are "Hidden" , which means the field is
never visible, or "Visible" , which means the field is always visible
regardless of the base Role for the template. Omitted fields follow
the rules for the base Role .
|
RestrictiveFilters |
All | No | No | A hash of field restrictions overriding those defined by the Role
for keys using this template. Any
RESO resource, such as Property and Member,
can be an attribute for this hash.The only attribute for each resource is Filter , which is either null
for no restriction, or a RESO OData filter
string that will automatically be applied to all search requests for this resource.
|