Overview
- Jump Right In!
- Examples
- Listing Display
- MLS Data Sharing Agreements
- API URIs
- Rate Limit
- HTTP Headers
- API Clients
- Replication
Jump Right In!
Already Have an API Key?
We've written a simple PHP application demonstrating end-user authorization and data retrieval. Check out the project on github, poke around the source code, and run the application. If you're already set up with a web server and PHP, you should have this application up and running in minutes.
Examples
We have a growing set of API examples that will guide as you become familiar with our API. Check them out now, and check back often.
Listing Display
Be aware from the start that when you display listing data, you must follow the compliance rules defined by the MLS.
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.
MLS Data Sharing Agreements
Some MLSs having data sharing agreements, allowing a user to search listings in other MLSs. Consult the MlsId
field in the standard fields service to see the MLSs whose listing data can be accessed.
API URIs
The production API endpoint is located at https://sparkapi.com/. The Authentication endpoint and Tile Information Service are located at https://sparkplatform.com.
The API is versioned. The Listings resource for Spark® API version 1, for example, will be located at https://sparkapi.com/v1/listings.
>
Note: the latest API version is /v1
.
Rate Limit
The API also is rate limited. If your key exceeds the rate limit, an HTTP 429 is returned along with the corresponding Spark API error code. Our API rate limits are set at 1,500 requests per any five-minute period for an IDX API key, and 4,000 requests for VOW and Broker Back Office keys. Each request to our servers using an API key is counted as a hit. For example, during a replication request (a single request) that returns batches of 1,000 listings and includes a next pointer, making a request to the next pointer will also count as a hit. Unfortunately, we are unable to make exceptions to these limits, even on a temporary basis.
HTTP Headers
Please include the following user agent identifier with each API request:
Header | Description |
---|---|
User-Agent |
Specifies the client library being used, such as one of the supported API clients listed below. If you are using one of the API clients, there is no need to set this header manually. |
Replication
Special considerations often apply when replicating. If you want to replicate data using Spark API, please review our replication documentation.