Propsmart Data Feed Specification
Table of Contents
Introduction
Propsmart allows data feed partners to provide bulk property data by sending us a data file or providing a web data feed.
Data file The file can be sent using either FTP or the website's upload form. The file must be in tab separated value format and use all of the available property fields in the specified order. See the tab separated values format section for more information and examples.
Data feed The feed should be provided as a URL, which we will crawl on a regular basis. The accepted format of the data feed is RSS 2.0. See the RSS 2.0 section for more information and examples.
Once you have determined your preferred method of providing data, you will need to follow our data field guidelines. Please contact us with any questions, to set up a custom ftp account for you, or to let us know when your feed is ready.
Tab-Separated Values Format
The tab-separated values file format is a simple data file format that delimits the field values with the tab character and signals the end of the data item with a carriage return character. The order of the data fields is important to correctly import the property data into Propsmart. Please see the examples below.
Example 1 a text file; works with any standard text editor.
Example 2 an Excel worksheet; works with Microsoft Excel. Note: You must save the Excel worksheet file as "Text (Tab delimited) (*.txt)" before sending it to Propsmart.
RSS 2.0 Format
Please see the RSS 2.0 Specification for a more detailed explanation.
Here is an example of a RSS 2.0 feed. See the data field guidelines for the list of available fields.
<?xml version="1.0"?>
<rss version="2.0" xmlns:ps="http://www.propsmart.com/datafeed">
<channel>
<title>XYZ Realty RSS 2.0 Feed</title>
<link>http://www.xyzrealty.com/rss2feed/propsmart.php</link>
<description>A RSS 2.0 data feed used by Propsmart to add properties.</description>
<item>
<title>Beautiful 2 story victorian house</title>
<description>Nestled on a beautifully landscaped...</description>
<ps:address>123 main street</ps:address>
<ps:city>Kansas City</ps:city>
<ps:state>MO</ps:state>
<ps:price>105000</ps:price>
<ps:bedroom>4</ps:bedroom>
<ps:bathroom>2.5</ps:bathroom>
<ps:image1>http://www.xyzrealty.com/image/123-main-1.jpg</ps:image1>
<ps:image2>http://www.xyzrealty.com/image/123-main-2.jpg</ps:image2>
<ps:image3>http://www.xyzrealty.com/image/123-main-3.jpg</ps:image3>
</item>
<item>
<title>A little beach house</title>
<description>Japanese country architecture... </description>
<ps:address>1625 oak street</ps:address>
<ps:city>San Francisco</ps:city>
<ps:state>CA</ps:state>
<ps:price>305000</ps:price>
<ps:squarefeet>2500</ps:squarefeet>
<ps:bedroom>3</ps:bedroom>
<ps:bathroom>2</ps:bathroom>
<ps:image1>http://www.xyzrealty.com/image/1625-oak-1.jpg</ps:image1>
</item>
</channel>
</rss>
Data Field Guidelines
The Propsmart Listing Service supports the following fields. The order is not important in an XML data feed. Contact us if you need custom fields.
| Name | Field Name | Data Type | Description |
|---|---|---|---|
| Property Category | category | Integer | Defaults to "1". Accepted values "1", "2", "3", "4". 1 = Forsale; 2 = Rental; 3 = Land; 4 = Commercial |
| Address * | address | Text (255) | The street address. e.g. "123 main street" |
| Unit | unit | Text (25) | e.g. "#8" |
| City * | city | Text (100) | e.g. "Kansas City" |
| State * | state | Text (25) | e.g. "MO" |
| Postalcode * | postalcode | Text (10) | e.g. "64108" |
| Country | country | Text(20) | Defaults to "United States" |
| Bedroom * | bedroom | Integer | e.g. "2" |
| Bathroom * | bathroom | Decimal (6,2) | The number of baths. For 3 baths, enter 3. For 3 and 1/2 baths, enter 3.5. For 3 and 3/4 baths, enter 3.75. |
| Squarefeet * | squarefeet | Integer | e.g. "2000" |
| Price * | price | Integer | e.g. "105000" |
| MLS Number | mls | Text (25) | e.g. "3019393" |
| Title | title | Text (255) | Title of property. e.g. "Beautiful 2 story victorian house" |
| Description | description | Text (10000) | Description of property. Note: Can not contain html tags, carriage returns will be converted to tags. |
| Url | url | Text (2048) | A hyperlink to an external site. e.g. "http://www.xyzrealty.com/forsale/123-main.html" |
| Url Text | urltext | Text (255) | The displayed text of the url. e.g. "XYZ Realty Property" |
| Url Virtual Tour | vtour | Text (2048) | A hyperlink to an external site with a virtual tour page. e.g. "http://www.xyzrealty.com/vtour/123-main.html" |
| Image Url 1 | image1 | Text (1024) | The URL of a property Image. e.g. "http://www.xyzrealty.com/image/123-main-1.jpg" |
| Image Url 2 | image2 | Text (1024) | The URL of a property Image. e.g. "http://www.xyzrealty.com/image/123-main-2.jpg" |
| Image Url 3 | image3 | Text (1024) | The URL of a property Image. e.g. "http://www.xyzrealty.com/image/123-main-3.jpg" |
| Image Url 4 | image4 | Text (1024) | The URL of a property Image. e.g. "http://www.xyzrealty.com/image/123-main-4.jpg" |
| Address Visible | addressvisible | Text (1) | Accepted values "y", "n". y = display property address; n = do not display address Note: If not supplied, defaults to yes. |
| Latitude | lat | Decimal (9, 6) | e.g. "-30.020225" (Decimals, not degrees. If left blank, we will attempt to geocode based on address.) |
| Longitude | long | Decimal (9, 6) | e.g. "128.320192" (Decimals, not degrees. If left blank, we will attempt to geocode based on address.) |
| Directions | directions | Text | e.g. "At the intersection of 12th and main go 1.2 miles east, then turn north on baltimore" |
| Year Built | yearbuilt | Integer | e.g. "2002" |
| Builder | builder | Text (50) | e.g. "XYZ Homes" |
| Subdivision | subdivision | Text (100) | e.g. "Eaglecrest" |
| Lot Size | lotsize | Text (25) | e.g. "2.1 acres" |
| School District | schooldistrict | Text (255) | e.g. "Arlington" |
| School Elem | schoolelem | Text (50) | e.g. "Arlington Elementary" |
| School Mid | schoolmid | Text (50) | e.g. "Arlington Middle School" |
| School High | schoolhigh | Text (50) | e.g. "Arlington High School" |
| Contact Email | contactemail | Text (255) | e.g. "ron.smith@xyzrealty.com" |
| Contact Name | contactname | Text (255) | e.g. "Ron Smith" |
| Contact Phone | contactphone | Text (25) | e.g. "(555) 555-5555" |
| Contact Address | contactaddress | Text (100) | e.g. "1600 Main Street" |
| Contact Fax | contactfax | Text (25) | e.g. "(555) 555-5556" |
| Listing Agency | agency | Text (50) | e.g. "XYZ Realty" |
| Property Id | propertyid | Text (25) | A unique ID from your system. e.g. "3049" Note: Used if missing street number or mls number; needed to uniquely identify property. |
| PS Screen Name | screenname | Text (25) | A Propsmart Screen Name. Used to match up a property with a member. |
* Minimum required fields in bold and marked with an asterisk.