Skip to main content

Getting Started with PropAPIS

Extract real estate data from 20+ platforms in just 5 minutes.

This guide will help you make your first API call and start extracting property data from Zillow, Rightmove, Idealista, and other real estate platforms.

Prerequisites

Before you begin, you will need:

  • PropAPIS Account: Sign up free (no credit card required)
  • Development Environment: Python 3.7+, Node.js 14+, or any HTTP client
  • Basic Programming Knowledge: Familiarity with REST APIs and JSON

Time Required: 5 minutes

Step 1: Create Account and Get API Key

Create Your Account

  1. Visit propapis.com/signup
  2. Enter your email and create password
  3. Verify your email address
  4. 14-day free trial starts automatically

Generate API Key

  1. Log in to your dashboard
  2. Navigate to API Keys section
  3. Click Generate New Key
  4. Copy your API key (keep it secret)

Note: Your API key is like a password. Never share it publicly or commit it to version control. Use environment variables to store it securely.

Example environment variable:

export PROPAPIS_API_KEY="your_api_key_here"

Step 2: Install SDK (Optional)

Python SDK

pip install propapis

JavaScript SDK

npm install propapis

PHP SDK

composer require propapis/propapis-php

Or use REST API directly with any HTTP client.

Step 3: Make Your First Request

Python Example

from propapis import PropAPIS

# Initialize with API key
api = PropAPIS(api_key='your_api_key')

# Get property data
property_data = api.platforms.zillow.get_property(
address='123 Main St, Austin, TX 78701'
)

# Print results
print(f"Address: {property_data.address}")
print(f"Price: ${property_data.price:,}")
print(f"Bedrooms: {property_data.bedrooms}")
print(f"Bathrooms: {property_data.bathrooms}")
print(f"Sqft: {property_data.sqft:,}")
print(f"Zestimate: ${property_data.zestimate:,}")

JavaScript Example

const PropAPIS = require('propapis');

// Initialize with API key
const api = new PropAPIS({ apiKey: 'your_api_key' });

// Get property data
api.platforms.zillow.getProperty('123 Main St, Austin, TX 78701')
.then(property => {
console.log(`Address: ${property.address}`);
console.log(`Price: $${property.price.toLocaleString()}`);
console.log(`Bedrooms: ${property.bedrooms}`);
console.log(`Zestimate: $${property.zestimate.toLocaleString()}`);
})
.catch(error => console.error('Error:', error));

REST API Example

curl -X GET \
'https://api.propapis.com/v1/zillow/property?address=123%20Main%20St%2C%20Austin%2C%20TX' \
-H 'Authorization: Bearer YOUR_API_KEY'

Response Example

{
"address": "123 Main St, Austin, TX 78701",
"price": 450000,
"bedrooms": 3,
"bathrooms": 2.5,
"sqft": 2100,
"lot_size": 0.25,
"year_built": 1995,
"property_type": "Single Family",
"zestimate": 465000,
"rent_zestimate": 2500,
"status": "active",
"days_on_market": 15,
"listing_agent": "John Smith",
"photos": ["url1", "url2"]
}

Step 4: Search for Properties

Search Active Listings

# Search properties in Austin, TX
listings = api.platforms.zillow.search_listings(
location='Austin, TX',
status='active',
min_price=300000,
max_price=500000,
min_bedrooms=3,
property_type='Single Family'
)

print(f"Found {len(listings)} properties")

for listing in listings[:10]:
print(f"{listing.address} - ${listing.price:,}")

Get Market Statistics

# Get market trends
market = api.platforms.zillow.get_market_trends(
location='Austin, TX'
)

print(f"Median Price: ${market.median_price:,}")
print(f"YoY Change: {market.yoy_change:+.1f}%")
print(f"Active Listings: {market.active_count:,}")
print(f"Avg Days on Market: {market.avg_dom:.0f}")

Error Handling

Handle API errors gracefully:

from propapis import PropAPIS, APIError

api = PropAPIS(api_key='your_api_key')

try:
property_data = api.platforms.zillow.get_property('123 Main St, Austin, TX')
print(f"Price: ${property_data.price:,}")

except APIError as e:
if e.status_code == 404:
print("Property not found")
elif e.status_code == 429:
print("Rate limit exceeded")
else:
print(f"API error: {e}")

Rate Limits

Different plans have different rate limits:

  • Starter: 100 requests per minute
  • Professional: 500 requests per minute
  • Enterprise: 2000 requests per minute

Check your current usage in the dashboard.

Supported Platforms

PropAPIS supports 20+ real estate platforms:

North America:

  • Zillow (US)
  • Realtor.com (US)
  • Redfin (US)
  • Trulia (US)

Europe:

  • Rightmove (UK)
  • Zoopla (UK)
  • Idealista (Spain, Portugal, Italy)

Asia-Pacific:

  • PropertyGuru (Singapore, Malaysia, Thailand)
  • Domain (Australia)

And many more platforms available.

Next Steps

Now that you have made your first API call, explore these resources:

Documentation

  • Platform Guides: Detailed docs for each platform
  • Use Cases: Real-world implementation examples
  • API Reference: Complete endpoint documentation

Tools and Resources

  • SDKs: Python, JavaScript, PHP, Java libraries
  • Code Examples: Sample applications and scripts
  • Webhooks: Real-time notifications
  • Dashboard: Monitor usage and manage API keys

Common Use Cases

  • Investment Analysis: Calculate ROI, cap rates, cash flow
  • Lead Generation: Find motivated sellers and new listings
  • Market Research: Analyze trends across multiple markets
  • Portfolio Management: Track property values automatically
  • CMA Automation: Generate comparative market analyses

Support

Need help? Contact us:

  • Documentation: docs.propapis.com
  • Email Support: support@propapis.com
  • Community Forum: forum.propapis.com
  • Live Chat: Available in dashboard

Quick Reference

Python Quick Start

from propapis import PropAPIS
api = PropAPIS(api_key='your_api_key')

# Get property
prop = api.platforms.zillow.get_property('address')

# Search listings
listings = api.platforms.zillow.search_listings(location='Austin, TX')

# Get market data
market = api.platforms.zillow.get_market_trends(location='Austin, TX')

Common Parameters

  • location: City, state, ZIP code, or full address
  • status: active, pending, sold
  • property_type: Single Family, Condo, Townhouse
  • min_price, max_price: Price range filters
  • min_bedrooms, max_bedrooms: Bedroom filters

Get Started Now

Ready to extract real estate data at scale?

  1. Sign up for free trial
  2. Get your API key
  3. Make your first API call
  4. Build your application

Start your 14-day free trial at propapis.com/signup