Update September 2020
Zillow no longer supports the API required for this workflow.
We have pulled the project source code from GitHub.
About
The tiller-zillow-simple script is a simple Google Apps Script to read Zestimates® from the Zillow API and insert them into the Balance History sheet in a Tiller-compatible spreadsheet.
This simple script was built as an integration demonstration and includes only lightweight error checking. We hope it meets your needs out of the box, but further tweaks may be required to get it working in your environment.
Who Is This For?
This workflow is especially useful for users interested in tracking net worth including their real estate assets.
This script is recommended for intermediate users who are:
- Comfortable opening and running scripts from the Script Editor
- Requesting a Zillow API key
Creating a Zillow API Key
- Register for Zillow web services.
- Click Continue with Google and enter your Google credentials.
- Enter the required fields. Where it says “Example URL where Zillow API Data will be displayed”, I used
https://docs.google.com/spreadsheets/d/
. Do not enable any of the three API options. - Accept the Terms of Use and click Submit.
- Check your email for your Zillow Web Services Identification (
ZWSID
). - Test your new ZWSID with a URL like:
https://www.zillow.com/webservice/GetZestimate.htm?zws-id=ZWSID&zpid=ZPID
Be sure to replace theZWSID
&ZPID
with values for your credentials and property request.
Setting Up Your Project
To configure your project, implement the following steps in Google Sheets:
- Visit Zillow and browse to the property you’d like to link.
- Click on the
Public View
link. - Find the Zillow Property ID number in the URL— it will have a format similar to:
...homes/for_sale/48000000_zpid/47.63...
. (In this example, the Property ID is48000000
.) - Create a Zillow Web Services ID by visiting Zillow’s API Overview page.
- Follow the link to
Get a Zillow Web Services ID (ZWSID)
and follow the steps. - Open the Tiller Google-Sheets spreadsheet you’d like to integrate with Zillow.
- Click on Tools → Script editor to open the spreadsheet’s bound scripts.
- Copy the contents of zillow.js from this repo into the Google Sheets script editor.
- Set the
zwsid
variable (at the start of the code) equal to your new Zillow Web Services ID. - Set the
zpid
variable (at the start of the code) equal to your new Zillow Property ID. - Save the script file.
- Click on the Set Function dropdown in the control bar and select the
zestimateInsert
function. - Click the run/play button.
- In the ‘Authorization required’ window that appears, click ‘Review Permissions’, then authenticate and allow the script to run.
If you’ve completed all the steps successfully, you should have a new entry in your Balance History reflecting the Zestimate® of the linked property.
Multiple Properties
Most users will configure only a single Zillow Property ID like this:
var zpid = '11111111';
If you’d like to run the script against multiple properties, the zpid
can be configured as an array:
var zpid = '[11111111, 22222222, 33333333]'
Next Steps
You might consider adding:
- An onOpen() function to create a menu item to execute an update
- Triggers to automate script execution
Troubleshooting
If you have a question or need help first search the community to see if someone has already asked and if not click here to quickly post a question about this tool in the Get Help > Spreadsheet templates category.
Be sure to customize the title of your post with keywords about the issue or question so others can easily find the Q&A in search.