Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Crexi Scraper — US Commercial Real Estate Data & Broker Leads (No API)

Apify Actor Run on Apify No API key Commercial Real Estate Export

This is the documentation & usage guide. The scraper itself runs fully hosted on the Apify platform — nothing to install, no code to deploy.


Extract US commercial real estate listings from Crexi without a login or API key. This Crexi scraper pulls CRE listing data — asking price, cap rate, square footage, year built, full address + GPS coordinates — and the listing brokers behind each deal, then exports everything to CSV, JSON or Excel. Filter by property type, US state, keyword or price, or paste a Crexi search URL, and the Actor returns hundreds to hundreds of thousands of commercial listings with optional broker-contact enrichment for B2B lead generation. No API key, no login, no browser.

Whether you are sourcing office, retail, industrial or multifamily deals, building a commercial real estate comps database, or assembling a broker outreach list, the Crexi Scraper turns crexi.com search results into clean, structured, spreadsheet-ready rows in one run — thousands of records with no authentication required.

What you get / Output fields

Every commercial listing comes back as a flat row with up to 40 fields, including:

  • 🏢 Property — name, property type (Office, Retail, Industrial, Multifamily, Land, Hospitality…), subtypes, investment type and listing status (For Sale / Auction / Lease / Call for Offers).
  • 💰 Deal metrics — asking price (USD), cap rate, square footage, number of units, lot size in acres, year built, building class (A/B/C) and occupancy percentage.
  • 🗺️ Location — street address, city, county, state code, full state name, ZIP, composed full address and exact latitude / longitude for mapping.
  • 🧑‍💼 Broker leads — brokerage name, broker name(s), broker license number(s), public Crexi broker profile URL(s) and the brokerage website — the B2B contact data.
  • 🖼️ Media & flags — number of images, thumbnail URL, broker-team logo, Opportunity-Zone flag, video / virtual-tour flags.
  • 📝 Content & dates — marketing description, investment highlights, activation date, last-updated date and the scrape timestamp.

Use cases

  • CRE market research — analyze asking prices, cap rates and price-per-sqft by property type and US state.
  • Commercial broker lead generation — build B2B outreach lists of CRE brokers with names, license numbers, profile URLs and brokerage websites.
  • Investor deal sourcing — filter Office, Retail, Industrial or Multifamily by price band and surface deals that match your mandate.
  • Commercial comps database — assemble CRE comps with size, year built, cap rate and location for underwriting and valuation.
  • Mapping & dashboards — feed geo-coded listings (latitude / longitude) into a GIS map or investment dashboard.
  • Opportunity Zone screening — filter on isInOpportunityZone to surface tax-advantaged commercial assets.
  • Loan & underwriting pipelines — pull deal metrics for lenders and acquisitions teams evaluating commercial properties.

Quick start

You can run the Crexi Scraper from the Apify Console (no code), the Apify CLI, the REST API, or the official JavaScript / Python clients. Leave the input empty to browse the newest US commercial listings nationwide.

1. Apify Console (no code)

  1. Open the Actor: apify.com/logiover/crexi-scraper
  2. Click Try for free.
  3. Leave the input empty for a nationwide sample, or set Property types, US states, Keyword and price — or paste a Crexi search URL.
  4. Click Start and download results from the Output tab (JSON, CSV, Excel, XML).

2. Apify CLI

npm install -g apify-cli
apify login
apify call logiover/crexi-scraper --input='{
  "propertyTypes": ["Retail"],
  "states": ["TX"],
  "fetchDetails": true,
  "fetchBrokers": true,
  "maxResults": 200
}'

3. API / cURL

curl -X POST "https://api.apify.com/v2/acts/logiover~crexi-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "propertyTypes": ["Office"],
    "states": ["CA", "NY"],
    "minPrice": 1000000,
    "maxPrice": 20000000,
    "maxResults": 200
  }'

4. JavaScript (apify-client)

import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });

const run = await client.actor('logiover/crexi-scraper').call({
  searchUrls: ['https://www.crexi.com/properties/texas/retail-commercial-real-estate'],
  fetchDetails: true,
  fetchBrokers: true,
  maxResults: 200,
});

const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Got ${items.length} commercial listings`);

5. Python (apify-client)

from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")

run = client.actor("logiover/crexi-scraper").call(run_input={
    "propertyTypes": ["Multifamily"],
    "keyword": "Austin",
    "fetchDetails": False,
    "fetchBrokers": False,
    "maxResults": 1000,
})

items = client.dataset(run["defaultDatasetId"]).list_items().items
print(f"Got {len(items)} listings")

More detailed, copy-pasteable examples live in examples/: CLI · API / cURL · JavaScript · Python.

Input

All fields are optional — leave everything empty to browse the newest US commercial listings nationwide. Give the Actor either one or more searchUrls, or use the explicit filter fields (which include dropdowns for property type and US state).

Field Type Description
searchUrls array Crexi search/result URLs copied from crexi.com. Property-type, state and keyword filters in the URL are parsed automatically. Leave empty to use the explicit filter fields.
propertyTypes array (dropdown) Filter by property type: Multifamily, Office, Retail, Industrial, Land, Hospitality, Mixed Use, Self Storage, Mobile Home, Special Purpose, Health Care. Empty = all types.
states array (dropdown) US state filter — 2-letter codes (CA, TX, NY) or full names. Empty = all states.
keyword string Free-text search (city, address, asset name).
minPrice / maxPrice integer Asking-price range in USD.
includeUnpriced boolean Include listings without a published price (auctions, call-for-offers, lease). Default true.
fetchDetails boolean Add cap rate, year built, lot size, units, occupancy, building class and description per listing. Default true.
fetchBrokers boolean Add broker name, license, profile URL and brokerage website per listing. Default true.
maxResults integer Stop after this many listings. 0 = no limit (a single search can span hundreds of thousands).
useProxy boolean Route through Apify Proxy (datacenter default).
proxyConfiguration object Apify Proxy settings. Datacenter is the default; Residential is optional.
maxConcurrency integer How many detail/broker enrichment calls to run in parallel per page (1–20).

Tip — get a search URL: open crexi.com, apply your property-type / state / price filters in the UI, then copy the crexi.com/properties/... URL from the address bar and paste it into searchUrls.

Output

One row per commercial listing. Example record (trimmed):

{
  "id": "a1b2c3d4",
  "name": "Prime Retail Strip Center",
  "url": "https://www.crexi.com/properties/123456/texas-prime-retail-strip-center",
  "propertyType": "Retail",
  "subtypes": "Strip Center",
  "status": "For Sale",
  "askingPrice": "4250000",
  "capRate": "6.75",
  "squareFootage": "18500",
  "units": "8",
  "lotSizeAcres": "1.85",
  "yearBuilt": "2004",
  "buildingClass": "B",
  "occupancy": "95",
  "address": "1200 Main Street",
  "city": "Austin",
  "county": "Travis",
  "state": "TX",
  "zip": "78701",
  "fullAddress": "1200 Main Street, Austin, TX 78701",
  "latitude": "30.2672",
  "longitude": "-97.7431",
  "brokerageName": "Lone Star Commercial",
  "brokerNames": "Jane Smith, Mark Lee",
  "brokerLicenses": "0654321, 0654322",
  "brokerProfileUrls": "https://www.crexi.com/profile/jane-smith",
  "brokerageWebsite": "https://lonestarcre.com",
  "isInOpportunityZone": "false",
  "numberOfImages": "24",
  "activatedOn": "2026-06-18T00:00:00Z",
  "updatedOn": "2026-07-01T00:00:00Z",
  "scrapedAt": "2026-07-06T12:00:00Z"
}
Field Description
id Crexi asset ID
name Listing / asset name
url Direct link to the Crexi listing
propertyType / subtypes / investmentType Property type(s), subtypes and investment type
status Listing status (For Sale, Auction, Lease, Call for Offers)
askingPrice Asking price in USD
capRate Capitalization rate (when published)
squareFootage / units / lotSizeAcres Building size, unit count, lot size in acres
yearBuilt / buildingClass / occupancy Year built, building class (A/B/C), occupancy %
address / city / county / state / stateName / zip / fullAddress Address components
latitude / longitude GPS coordinates
brokerageName / brokerNames / brokerLicenses Brokerage and broker names + license numbers
brokerProfileUrls / brokerageWebsite Public Crexi profile URL(s) and brokerage website
isInOpportunityZone Opportunity Zone flag
hasVideo / hasVirtualTour / numberOfImages / thumbnailUrl / brokerTeamLogoUrl Media flags and image URLs
description / highlights Marketing description and investment highlights
activatedOn / updatedOn / scrapedAt Listing activation, last-update and scrape timestamps

Integrations & automation

  • Schedule the Crexi Scraper on Apify to refresh your CRE dataset daily or weekly.
  • Webhooks — trigger a POST to your endpoint when a run finishes.
  • Google Sheets / Amazon S3 / databases — push results via Apify's built-in integrations.
  • Zapier, Make, n8n and Pipedream — connect through Apify to build automated deal-sourcing and broker-outreach pipelines.
  • CRM sync — feed broker leads straight into your sales stack after each run.

Export formats

Results can be downloaded or streamed as CSV, JSON, JSONL, Excel (XLSX) and XML from the run's dataset — via the Console Export button or the Apify API.

FAQ

Do I need a Crexi login or API key?

No. The Actor requires no Crexi account, cookies or API key — only an Apify account. Empty input works and returns thousands of listings.

Is this a Crexi API alternative?

Yes. Crexi has no public developer API, so this Actor works as an unofficial Crexi API alternative — it returns clean, structured listing and broker records you can call on a schedule.

How do I scrape Crexi commercial real estate listings?

Open the Actor, optionally set property type / state / price (or paste a Crexi search URL), and click Start. You get commercial listings with prices, cap rates, addresses and broker contacts as structured rows.

Can I get broker contact details for lead generation?

Yes. Enable Fetch broker contact leads (fetchBrokers) to pull each listing's broker name, license number, public Crexi profile and brokerage website — ready for B2B outreach.

Does it include cap rate and other deal metrics?

Yes, when published. Enable Fetch listing details (fetchDetails) to add capRate, yearBuilt, lotSizeAcres, units, occupancy, buildingClass and the marketing description to each record.

How do I export Crexi data to Excel or CSV?

Run a search, then download the dataset as CSV, JSON, Excel or XML from the run page, or pull it via the Apify API. Every listing and broker lead is a flat, ready-to-import row.

Can I scrape Crexi from a search URL I copied?

Yes. Paste any crexi.com search URL into searchUrls and the scraper reads the property-type, state and keyword filters from the URL automatically.

How many results can I get?

A single search can span hundreds of thousands of listings. Set maxResults to cap the run (0 = no limit), and narrow with property type, state and price filters to reach relevant inventory faster.

Does it include GPS coordinates for mapping?

Yes. Every listing carries latitude and longitude alongside the full address, so you can feed geo-coded commercial listings straight into a GIS map or dashboard.

Is scraping Crexi legal?

This Actor collects only publicly available listing and broker data. You are responsible for using it in line with Crexi's terms and applicable laws (such as GDPR/CCPA for personal data).

Related actors


📄 Documentation only — this repository contains no scraper source code. The Actor runs on the Apify platform. ▶️ Run it: https://apify.com/logiover/crexi-scraper

Licensed under the MIT License · © 2026 logiover

About

Crexi scraper — extract US commercial real estate listings, prices, cap rates & broker leads from crexi.com. No API key. Export to CSV/JSON/Excel.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors