# Get Commercial Real Estate Listings with Python

**Use case:** 

Use a ready-made CRE listings task through the Apify API from Python and receive structured public property data as JSON or CSV.

## Input

```json
{
  "city": "Austin",
  "state": "TX",
  "assetClasses": [],
  "sourcesEnabled": [
    "loopnet",
    "crexi"
  ],
  "transactionTypes": [
    "sale"
  ],
  "maxResultsPerSource": 50,
  "includeListingDetails": false,
  "startUrls": [],
  "outputSortBy": "source_default",
  "deduplicate": true,
  "normalizeCapRate": true,
  "monitoringMode": false,
  "maxRequestRetries": 5,
  "crexiCookies": "***",
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "US"
  }
}
```

## Output

```json
{
  "address": {
    "label": "Address",
    "format": "string"
  },
  "city": {
    "label": "City",
    "format": "string"
  },
  "state": {
    "label": "State",
    "format": "string"
  },
  "zip": {
    "label": "ZIP / postal code",
    "format": "string"
  },
  "market": {
    "label": "Market",
    "format": "string"
  },
  "transaction_type": {
    "label": "Transaction type",
    "format": "string"
  },
  "source": {
    "label": "Source",
    "format": "string"
  },
  "listing_url": {
    "label": "Listing URL",
    "format": "string"
  },
  "source_listing_id": {
    "label": "Source listing ID",
    "format": "string"
  },
  "asset_class": {
    "label": "Asset class",
    "format": "string"
  },
  "sub_type": {
    "label": "Sub-type",
    "format": "string"
  },
  "status": {
    "label": "Status",
    "format": "string"
  },
  "change_type": {
    "label": "Change type",
    "format": "string"
  },
  "first_seen_at": {
    "label": "First seen",
    "format": "string"
  },
  "last_seen_at": {
    "label": "Last seen",
    "format": "string"
  },
  "change_detected_at": {
    "label": "Change detected at",
    "format": "string"
  },
  "previous_status": {
    "label": "Previous status",
    "format": "string"
  },
  "previous_asking_amount_usd": {
    "label": "Previous amount USD",
    "format": "number"
  },
  "asking_price_or_rent": {
    "label": "Price / rent",
    "format": "string"
  },
  "asking_amount_usd": {
    "label": "Amount USD",
    "format": "number"
  },
  "price_per_sqft": {
    "label": "Price per sqft",
    "format": "string"
  },
  "price_per_unit": {
    "label": "Price per unit",
    "format": "string"
  },
  "rent_per_sqft_per_year": {
    "label": "Rent per sqft per year",
    "format": "string"
  },
  "estimated_annual_rent": {
    "label": "Estimated annual rent",
    "format": "string"
  },
  "estimated_monthly_rent": {
    "label": "Estimated monthly rent",
    "format": "string"
  },
  "noi": {
    "label": "NOI",
    "format": "string"
  },
  "cap_rate": {
    "label": "Cap rate",
    "format": "string"
  },
  "building_size_sqft": {
    "label": "Building sqft",
    "format": "number"
  },
  "total_available_sqft": {
    "label": "Available sqft",
    "format": "number"
  },
  "lot_size_sqft": {
    "label": "Lot sqft",
    "format": "number"
  },
  "lot_size_acres": {
    "label": "Lot acres",
    "format": "number"
  },
  "units": {
    "label": "Units",
    "format": "number"
  },
  "year_built": {
    "label": "Year built",
    "format": "number"
  },
  "days_on_market": {
    "label": "Days on market",
    "format": "number"
  },
  "broker_name": {
    "label": "Broker name",
    "format": "string"
  },
  "broker_company": {
    "label": "Broker company",
    "format": "string"
  },
  "broker_company_website": {
    "label": "Broker website",
    "format": "string"
  },
  "broker_phone": {
    "label": "Broker phone",
    "format": "string"
  },
  "broker_email": {
    "label": "Broker email",
    "format": "string"
  },
  "broker_profile_url": {
    "label": "Broker profile",
    "format": "string"
  },
  "broker_license_numbers": {
    "label": "Broker licenses",
    "format": "string"
  },
  "is_cross_listed": {
    "label": "Cross-listed",
    "format": "string"
  },
  "also_listed_on": {
    "label": "Also listed on",
    "format": "string"
  },
  "scraped_at": {
    "label": "Scraped at",
    "format": "string"
  }
}
```

## About this Actor

This example demonstrates how to use [LoopNet + Crexi Scraper · CRE Listings · CoStar Alternative](https://apify.com/kazkn/commercial-real-estate-brokerage-intel) with a specific input configuration. Visit the [Actor detail page](https://apify.com/kazkn/commercial-real-estate-brokerage-intel) to learn more, explore other use cases, and run it yourself.