Dedicated ScrapersLoopNet Scraper API
LoopNet logoDedicated LoopNet API

LoopNet Scraper API — Extract Commercial Real Estate Data

The fastest way to start scraping LoopNet at scale. Our LoopNet API returns structured JSON for for-lease, for-sale, and auction listings, full listing detail, and broker profiles across the US, Canada, UK, France, and Spain — with cap rates, spaces, building facts, and anti-bot bypass built in. No LoopNet API key.

5Markets
5Endpoints
60+Fields per listing
From $0.54Per 1K search req

No credit card required · PAYG credits never expire

Search LoopNet Listings
# Search for-sale commercial property in Houston
import scrapebadger

client = scrapebadger.ScrapeBadger("sb_live_...")

results = client.loopnet.search(
    location="Houston, TX",
    listing_type="for-sale"
)
200 OK16s · 10 credits
{
  "listing_id": "12345678",
  "title": "1000 Main St - Class A Office Tower",
  "property_type": "Office",
  "price_text": "$24,500,000",
  "size_text": "10,000 - 250,000 SF",
  "building_rating": 4,
  "city": "Houston", "state": "TX",
  "brokers": [{ "name": "Jane Smith", "company": "CBRE" }]
}
API Reference

LoopNet API — 5 Dedicated Endpoints

Structured JSON responses with normalized data models. No HTML parsing. No proxy management. No LoopNet API key.

GET
/v1/loopnet/search
Search for-lease, for-sale, and auction commercial listings with price, size, and property-type filters
10 cr / req
GET
/v1/loopnet/listings/{listing_id}
Full listing detail — price & cap rate, spaces, building class/size/height, amenities, brokers, photos & 3D tours
12 cr / req
GET
/v1/loopnet/brokers/{slug}/{broker_id}
Broker profile with contacts, bio, specialties, license, and their active listings
8 cr / req
GET
/v1/loopnet/markets
Supported markets — US, Canada, UK, France, and Spain — with domain and currency
0 cr / req
GET
/v1/loopnet/property-types
Property type slugs (office, retail, industrial, multifamily, land, …) accepted by search
0 cr / req
Response Schema

Every Field You Need, Ready to Use

All fields are normalized from LoopNet's page data. Every datetime ships as both a Unix timestamp and an ISO-8601 string. Nested blocks — spaces, brokers, amenities, additional facts — come pre-parsed.

Listing

listing_idstringLoopNet listing identifier
pricefloatAsking price or rent (with currency & period)
cap_ratefloatCapitalization rate for for-sale listings
noifloatNet operating income
price_per_sqftfloatPrice per square foot
building_classstringBuilding class (A / B / C)
building_size_sqftintegerTotal building size in SF
year_builtintegerYear built (and renovated)
percent_leasedfloatShare of the building currently leased
zoningstringZoning designation
walk_scoreintegerWalk Score of the address
amenitiesarrayBuilding amenities list
spacesarrayAvailable spaces — size, rent/SF, term, floor
brokersarrayListing brokers with phone & company
imagesarrayPhotos, videos, documents & 3D tours

Broker

broker_idstringLoopNet broker identifier
namestringBroker display name
companystringBrokerage / company name
titlestringProfessional title
phonestringDirect phone number
emailstringContact email
biostringProfessional biography
license_numberstringReal-estate license number
specialtiesarrayPractice specialties (office, retail, …)
listingsarrayThe broker’s active listings
Coverage

5 LoopNet Markets, One API

loopnet.com, loopnet.ca, loopnet.co.uk, loopnet.fr, and loopnet.es behind a single market parameter. Prices come back in each market's native currency — USD, CAD, GBP, and EUR.

🇺🇸US
🇨🇦CA
🇬🇧UK
🇫🇷FR
🇪🇸ES
Every asset class: Office, retail, industrial, multifamily, land, hospitality, healthcare and more — pull the full slug list from the free /property-types endpoint and pass it to search, or omit it to cover all property types at once.
How it works

From API call to clean JSON in seconds

No proxy setup. No session management. No anti-bot configuration.

1

Send a request

Call any LoopNet endpoint with your API key and parameters — a location and listing type, a listing ID, or a broker slug and ID. REST or SDK.

2

We handle the hard parts

ScrapeBadger routes the request through real browser sessions on residential infrastructure, clears Akamai Bot Manager, detects blocks, and retries automatically.

3

Get structured JSON

Receive normalized JSON with prices, cap rates, spaces, building facts, amenities, broker contacts, and media links — ready to store, analyse, or pipe into your application.

Use Cases

What Developers Build with LoopNet Data

Scraping LoopNet gives you real commercial-real-estate signals — asking prices, cap rates, lease rates, available space, and broker activity across 5 markets.

CRE valuation & underwriting

Pull asking prices, cap rates, NOI, price per SF, and building facts to underwrite deals and benchmark valuations against live market inventory.

Market & rent monitoring

Track lease rates, asking prices, and available space across metros and property types to spot supply shifts and pricing gaps in near real time.

Investment & comps research

Filter for-sale and auction inventory by price, size, and property type to assemble comps and rank acquisition opportunities across 5 markets.

Broker & brokerage intelligence

Analyze brokers by specialties, listing counts, and active inventory to map who dominates a market segment and source off-market relationships.

AI training datasets

Collect structured CRE data — building facts, spaces, amenities, descriptions, and photos — for training pricing, classification, or recommendation models.

Lead & inventory pipelines

Feed new listings, price changes, and broker contacts into CRM and lead-gen tools — every listing ships broker phone numbers and companies.

Pricing

Pay Per Request. Credits Never Expire.

You only pay for successful responses — failed requests are always free. PAYG credits never expire; volume subscription tiers reduce per-credit cost further.

EndpointCredits / requestPAYGSubscription
Search Listings /search10 credits
Listing Detail /listings/{listing_id}12 credits
Broker Profile /brokers/{slug}/{broker_id}8 credits
List Markets /marketsFree
Property Types /property-typesFree

See the full plan comparison on the pricing page — subscription tiers step down per-credit cost beyond the cheapest column shown above.

Free trial
1,000 credits free
= 100 search requests
Credits expire
Never
Buy once, use anytime
Failed requests
Always free
Pay for success only
Live cost estimator
Credits per request10
Total credits needed10,000
Loading plans…
Why ScrapeBadger

Built for Reliability at Scale

ScrapeBadger's LoopNet Scraper API handles everything LoopNet throws at automated requests — so your pipeline keeps running.

Full LoopNet facts table

Every listing detail returns the complete LoopNet record — cap rate, NOI, building class, spaces with rent per SF and terms, zoning, walk score, amenities, and the raw additional-facts table.

Anti-bot bypass included

LoopNet is protected by Akamai Bot Manager with TLS/HTTP fingerprinting and sensor challenges. ScrapeBadger routes requests through real browsers automatically — no CAPTCHA solving on your end.

Structured JSON, no parsing

Responses are normalized typed JSON extracted from LoopNet’s page data — no HTML to parse, no fragile CSS selectors that break when LoopNet updates its frontend.

5 markets, one API

loopnet.com, loopnet.ca, loopnet.co.uk, loopnet.fr, and loopnet.es behind a single market parameter — prices come back in the market’s native currency (USD, CAD, GBP, EUR).

Pay per success only

Credits are only deducted for successful responses. If LoopNet returns an error or the request times out, no credits are consumed. You only pay for data you actually receive.

SDKs for 12 Languages

Official SDKs for Python, Node.js, Go, Rust, PHP, C#, Java, Kotlin, Ruby, Swift, Dart and C++ — generated from one OpenAPI spec, always in sync with the API. Full documentation with working code examples for every endpoint.

Code Examples

Simple Integration. Any Language.

Get started in minutes with Python, Node.js, or plain HTTP requests.

The scrapebadger Python library wraps the LoopNet API with typed methods. Install with pip install scrapebadger, then start scraping LoopNet in a few lines of code.

Python — Search + Detail
from scrapebadger import ScrapeBadger

client = ScrapeBadger("sb_live_...")

# Search for-sale office buildings in Houston
results = client.loopnet.search(
    location="Houston, TX",
    listing_type="for-sale",
    property_type="office",
)

# Get the full detail for the first results
for card in results.results[:3]:
    detail = client.loopnet.listing(listing_id=card.listing_id)
    print(detail.title, detail.price_text, detail.cap_rate)
Node.js — Spaces + Brokers
import ScrapeBadger from 'scrapebadger'

const client = new ScrapeBadger({
  apiKey: 'sb_live_...'
})

// Pull the spaces and brokers for a listing
const { listing } = await client.loopnet.listing({
  listingId: '12345678',
})

console.log(listing.priceText, listing.capRate)
for (const space of listing.spaces) {
  console.log(space.name, space.sizeText, space.rentText)
}
for (const broker of listing.brokers) {
  console.log(broker.name, broker.company, broker.phone)
}
FAQ

Frequently Asked Questions

Common questions about scraping LoopNet with the API — Python, Node.js, or REST.

What data does the LoopNet Scraper API return?

Search returns listing cards with listing ID, title, price or rent text, size range, property type, building rating, address, coordinates, thumbnail, and broker contacts. Listing detail returns the full record — price with currency and period, cap rate, NOI, price per SF, building class, size, height, year built and renovated, lot size, zoning, parking, walk score, amenities, every available space with rent per SF and term, photos, videos, documents, 3D-tour flag, brokers, and the complete LoopNet facts table. Broker, markets, and property-types endpoints each return their own normalized model.

Which countries does the LoopNet Scraper API cover?

Five markets: the United States (loopnet.com, USD), Canada (loopnet.ca, CAD), the United Kingdom (loopnet.co.uk, GBP), France (loopnet.fr, EUR), and Spain (loopnet.es, EUR). Pass market=us|ca|uk|fr|es on search, listing, and broker requests — prices come back in each market’s native currency. The default is the US.

Can I filter by listing type and property type?

Yes. Search accepts listing_type=for-lease (default), for-sale, or auctions, plus a property_type slug from the free /property-types endpoint — office, retail, industrial, multifamily, land, hospitality, healthcare, and more. You can also filter by min_price/max_price (per unit, SF, or acre via price_type) and min_size/max_size in square feet.

How does the LoopNet Scraper API handle anti-bot protection?

LoopNet is protected by Akamai Bot Manager, which combines TLS/HTTP fingerprinting, sensor-data challenges, and IP reputation. ScrapeBadger routes every request through real browser sessions on residential infrastructure, detects blocks, and retries automatically. You never configure proxies, manage fingerprints, or solve CAPTCHAs. No LoopNet API key or CoStar account is required.

How do I scrape LoopNet with Python?

Install with pip install scrapebadger, then initialise the client and call client.loopnet.search(location="Houston, TX", listing_type="for-sale"), client.loopnet.listing(listing_id="12345678"), or client.loopnet.broker(slug="john-doe", broker_id="w123456"). The SDK returns typed objects — listings expose .price, .cap_rate, .spaces, and .brokers, and search exposes pagination for walking result pages.

Plans & subscriptions

Bigger volume? Save up to 64%

Per-request credit costs are listed above. For higher monthly volume, subscription tiers reduce the per-credit rate substantially. All LoopNet endpoints — search, listing detail, and broker profiles across all 5 markets — included on every plan.

Get started

Start Scraping LoopNet Today

1,000 free credits. No credit card. Get your API key in under a minute.

PAYG credits never expire · Pay only for successful requests · US, CA, UK, FR & ES coverage