MLS Scraper - Real Estate Listings avatar
MLS Scraper - Real Estate Listings

Pricing

from $0.01 / 1,000 results

Go to Apify Store
MLS Scraper - Real Estate Listings

MLS Scraper - Real Estate Listings

Extract real estate listings from MLS databases. Get property details, prices, photos, agent info & market data. Perfect for real estate analytics, investment research & market monitoring.

Pricing

from $0.01 / 1,000 results

Rating

0.0

(0)

Developer

John Rippy

John Rippy

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

MLS Scraper - Direct MLS Data (BYOK)

Access direct MLS data with your own credentials by John Rippy | johnrippy.link


Bring Your Own Keys (BYOK)

This actor lets you connect to your MLS board's data feed using your own credentials. Get real-time listing data, off-market properties, and data not available on public sites.

Why Direct MLS Access?

FeaturePublic Sites (Zillow, etc.)Direct MLS
Data freshness15min - 24hr delayReal-time
Off-market listings❌ Not available✅ Available
Coming soon listings❌ Rarely✅ Yes
Full agent infoPartial✅ Complete
Price historyLimited✅ Full history
Custom fields❌ No✅ All MLS fields
Rate limitsAggressiveYour allocation

Supported MLS Systems

API Types

API TypeDescriptionCommon Providers
RETSTraditional MLS standardMost regional MLSs
Web APIModern REST APINewer MLS systems
RESO Web APIRESO-compliant RESTCRMLS, Bright MLS, etc.
Spark APIFBS Data ServicesVarious boards
Bridge APIBridge InteractiveMultiple MLSs

Major MLS Boards

  • CRMLS (California)
  • Bright MLS (Mid-Atlantic)
  • NWMLS (Pacific Northwest)
  • MRED (Midwest)
  • ARMLS (Arizona)
  • HAR (Houston)
  • REcolorado
  • And 500+ more...

Getting Your Credentials

Step 1: MLS Membership

You need an active MLS membership or IDX agreement with your board.

Step 2: Request API Access

Contact your MLS to request:

  • RETS credentials (username/password + login URL)
  • OR Web API access (API key + endpoint URL)
  • OR OAuth access (client credentials)

Step 3: Configure This Actor

Enter your credentials in the input settings.


Quick Start Examples

Example 1: Demo Mode (Free Testing)

{
"demoMode": true
}

Example 2: RETS Connection

{
"mlsProvider": "CRMLS",
"apiType": "rets",
"apiUrl": "https://rets.yourmls.com/Login",
"username": "your_rets_username",
"password": "your_rets_password",
"city": "Los Angeles, CA",
"listingStatus": "active",
"maxResults": 100
}

Example 3: RESO Web API

{
"mlsProvider": "Bright MLS",
"apiType": "reso_web_api",
"apiUrl": "https://api.brightmls.com/reso/odata/Property",
"accessToken": "your_oauth_access_token",
"county": "Montgomery",
"priceMin": 500000,
"priceMax": 1000000
}

Example 4: Incremental Sync

{
"mlsProvider": "NWMLS",
"apiType": "web_api",
"apiUrl": "https://api.nwmls.com/v2/listings",
"apiKey": "your_api_key",
"modifiedSince": "2024-12-20",
"maxResults": 1000
}

Input Parameters

Authentication

ParameterTypeRequiredDescription
demoModebooleanNoRun with sample data (free testing)
mlsProviderstringNoYour MLS board name
apiTypestringNoAPI type: rets, web_api, reso_web_api, spark_api, bridge_api
apiUrlstringYes*Your MLS API endpoint
usernamestringYes*RETS/API username
passwordstringYes*RETS/API password
apiKeystringYes*API key (if required)
accessTokenstringYes*OAuth access token (for RESO)

*At least one authentication method required (unless using demoMode)

Location Filters

ParameterTypeDescription
citystringCity to search (e.g., "San Francisco, CA")
zipCodestringZIP code
countystringCounty name
mlsAreastringMLS-specific area code

Property Filters

ParameterTypeDescription
priceMinintegerMinimum price
priceMaxintegerMaximum price
bedsMinintegerMinimum bedrooms
bathsMinintegerMinimum bathrooms
sqftMinintegerMinimum square feet
sqftMaxintegerMaximum square feet
propertyTypesarrayresidential, condo, townhouse, multi_family, land, commercial
listingStatusstringactive, pending, sold, expired, withdrawn, coming_soon, off_market
daysOnMarketMaxintegerMax days on market

Date Filters

ParameterTypeDescription
listingDateFromstringListings from this date (YYYY-MM-DD)
listingDateTostringListings until this date
modifiedSincestringOnly listings modified since (for incremental syncs)

Output Options

ParameterTypeDefaultDescription
includePhotosbooleantrueInclude photo URLs
includeHistorybooleanfalseInclude price history
includeAgentbooleantrueInclude agent/office info
maxResultsinteger100Maximum listings (1-10000)

Output Format

{
"mlsNumber": "MLS-2024-001234",
"platform": "mls",
"addressNormalized": "123 MAIN ST, SAN FRANCISCO, CA 94102",
"addressRaw": "123 Main Street, San Francisco, CA 94102",
"city": "San Francisco",
"state": "CA",
"zipCode": "94102",
"county": "San Francisco",
"price": 1350000,
"originalPrice": 1395000,
"status": "active",
"beds": 3,
"baths": 2,
"sqft": 1850,
"yearBuilt": 1925,
"propertyType": "residential",
"listingDate": "2024-12-10",
"daysOnMarket": 14,
"description": "Stunning Victorian home...",
"features": ["Hardwood Floors", "Fireplace", "..."],
"photos": ["https://..."],
"virtualTour": "https://...",
"latitude": 37.7751,
"longitude": -122.4193,
"agent": {
"name": "Sarah Johnson",
"phone": "(415) 555-0123",
"email": "sarah@realty.com",
"brokerage": "Premier Realty"
},
"priceHistory": [
{ "date": "2024-12-10", "price": 1395000, "event": "Listed" },
{ "date": "2024-12-17", "price": 1350000, "event": "Price Change" }
],
"taxInfo": {
"annualAmount": 14500,
"assessedValue": 980000
},
"hoa": {
"fee": 0,
"frequency": "none"
},
"scrapedAt": "2024-12-24T12:00:00Z"
}

Use Cases

Real Estate Investors

  • Access coming soon and off-market listings
  • Get real-time price changes
  • Track days on market trends

Real Estate Agents

  • Build custom MLS search tools
  • Automate CMA (Comparative Market Analysis)
  • Sync listings to your website

Proptech Companies

  • Build property databases
  • Power search applications
  • Analyze market trends

Market Researchers

  • Comprehensive market data
  • Historical price analysis
  • Inventory tracking

Pricing

EventCost
Per listing scraped$0.05
Demo modeFree

Why Pay-Per-Listing?

MLS data is valuable and access is limited. This pricing model:

  • Aligns cost with value received
  • No monthly fees when not using
  • Scale up/down based on needs

Part of the Real Estate Scraper Suite

ActorDescriptionStatus
zillow-scraperZestimate, tax history✅ Available
redfin-scraperAgent data, accurate sqft✅ Available
realtor-scraperComprehensive photos✅ Available
real-estate-aggregatorCombine all 3 + deduplicate✅ Available
mls-scraperDirect MLS data (BYOK)✅ You're here!

FAQ

Do I need MLS membership?

Yes, or an IDX agreement that includes API access.

Which MLS boards are supported?

Any MLS that provides RETS or Web API access. Most major boards do.

Can I use this without credentials?

Yes! Use demoMode: true to see sample output and test your integration.

How do I get API credentials?

Contact your MLS board's IT department or member services. Mention you need RETS or Web API access.

Is this data licensed for redistribution?

Depends on your MLS agreement. Most IDX agreements have display rules. Check with your board.

Can Apify access my MLS?

Most MLS APIs are IP-restricted. You may need to whitelist Apify's IP ranges or use a proxy configuration.


Support


Built by John Rippy | johnrippy.link


Keywords

mls scraper, mls api, rets scraper, real estate data api, mls listing scraper, direct mls access, byok mls, mls board data, reso web api, real estate api, property listing api, mls data feed, mls integration, real estate automation, mls data extraction, off-market listings, coming soon listings, mls property data