Working with the Zillow API

We recently completed a website that displays property estimates using the data from http://zillow.com:

http://www.estimatepropertyvalues.com

Zillow provides excellent documentation on how to utilize their API’s which made is easy to configure. This application pulls zillow data in real time and displays it alongside and within a google map. Each plot on the map holds a tabbed view of information including property details and charts. The application is designed to operate using mostly ajax calls for faster responses. The main challenge here was how to display a large quantity of data in a clean, uncluttered fasion.


Zillow provides a few different calls that allow retrieval of property ‘zestimate’ valuations and other information like lot size and square footage. The system also has ‘comparisons’ that display a number of properties that are similar in size/price/location.I found the API calls to be extremely fast. The only issue I found was fetching images for the comparisons. For each property i pulled 10 comparisons and then loaded up the zestimate results for those, as well as the zestimate charts. These charts were a problem to fetch and load during an ajax call and caused a huge delay in drawing the property location icons on the google map. What I wanted to do was defer the image loading until after I had written all of the text-based HTML.

My solution was to proxy the image call. Instead of placing the direct link to zillow for each chart, the url goes back to my server. My server then finds the image and streams it directly back. This works perfectly as image loading is deferred and the processing does no impact the initial drawing of the comparison properties on the map. 

One Response to “Working with the Zillow API”

  1. Jim says:

    The proxy is a nice solution to the image problem, I am having the same issue. Can you elaborate?

Leave a Reply

You must be logged in to post a comment.