AppFolio Scraper: Rental Listings and Property Manager Data
Pricing
from $0.66 / 1,000 rental listings
AppFolio Scraper: Rental Listings and Property Manager Data
Extract public AppFolio rental listings from authorized tenant listing URLs with normalized rent, beds, baths, availability, address, coordinates, photos, application links, and optional detail-page contacts.
Pricing
from $0.66 / 1,000 rental listings
Rating
0.0
(0)
Developer
GetAScraper
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
π AppFolio Scraper: rental listings and property manager data
|
Turn public AppFolio listings into a ready-to-use rental inventory Bring live listing pages into one consistent dataset with rent, room, location, pet, size, keyword, photo, and optional public property-manager filters. |
|
π Current listings See rent and availability as published. |
π Location-ready Use addresses and map coordinates for research. |
πΈ Media and actions Keep photos, applications, showings, and links together. |
βοΈ Public contacts Add office and phone details from enriched pages. |
Need a repeatable view of rental supply without copying listing details by hand? AppFolio Scraper turns authorized public listing pages into clean records for housing research, vacancy monitoring, lead workflows, and scheduled snapshots.
β¨ Why use it?
- Property managers can review current rental supply across several public listing pages in one dataset.
- Housing researchers can compare rent, availability, property facts, addresses, and coordinates in a consistent shape.
- Leasing teams can narrow results by rent, bedrooms, bathrooms, size, city, postal code, move-in date, pet policy, keywords, and application links.
- Lead teams can keep public application, showing, contact, office, and phone details beside each listing when the source publishes them.
- Operations teams can run the same source list again when they need a fresh snapshot.
β οΈ Use and source terms
Use this Actor only with AppFolio listing sources and data you are authorized to access. Public availability does not override source terms. Review the AppFolio listing terms, each source's access instructions, and your local requirements before running it.
The Actor does not require a login and does not access private customer accounts. It only returns information published on the supplied listing pages. Source availability and terms can change, so you are responsible for deciding whether a run is permitted.
π§ How it works
|
STEP 1 Add listing pages Provide one or more public AppFolio listing or detail URLs. |
STEP 2 Set your target Combine source filters with size, keyword, and application-link filters. |
STEP 3 Use the dataset Download structured listing records for research, workflows, or monitoring. |
Detail enrichment is optional. Turn it on when you need descriptions, amenities, pet policy, public office details, or phone fields from listing pages that publish them.
π° Pricing
Pay per successful result. Empty runs cost nothing, and there are no subscriptions. When detail enrichment is enabled, each enriched result also includes a separate detail-enrichment charge because it requires an additional source page. The default run is intentionally bounded at 25 listings, with higher limits available through the input form.
β Enjoying AppFolio Scraper?
|
β β β β β A short review helps rental teams find a cleaner path from listing pages to usable property data. A 5-star rating takes 10 seconds and helps other property managers, researchers, and lead teams find it. Your feedback also tells us what to build next. |
| β Β Β Rate this Actor on Apify |
π₯ Input
| Field | Type | Required | Description |
|---|---|---|---|
startUrls | array of URLs | No | Public HTTPS AppFolio listing or detail URLs you are authorized to access. The form includes a sample source by default. |
minRent | integer | No | Keep listings at or above this published rent. Leave empty to include every rent level. |
maxRent | integer | No | Keep listings at or below this published rent. Leave empty to include every rent level. |
minBedrooms | integer | No | Keep listings with at least this many bedrooms. Studios count as zero bedrooms. |
maxBedrooms | integer | No | Keep listings with no more than this many bedrooms. Combine it with minBedrooms for a range. |
minBathrooms | integer | No | Keep listings with at least this many bathrooms. |
maxBathrooms | integer | No | Keep listings with no more than this many bathrooms. Combine it with minBathrooms for a range. |
cities | array of strings | No | Keep listings in these exact published city names. Add one city per row. |
postalCodes | array of strings | No | Keep listings in these published postal codes. Add one code per row. |
catPolicy | enum | No | Choose Any, Cats allowed, or Cats not allowed. Defaults to Any. |
dogPolicy | enum | No | Choose Any, Dogs allowed, Small dogs allowed, or Dogs not allowed. Defaults to Any. |
desiredMoveIn | string | No | Pass a desired move-in date to the source filter. Leave empty when the date does not matter. |
sortBy | enum | No | Choose the source order: most recent, rent low to high, rent high to low, or bedrooms. Defaults to most recent. |
minSqft | integer | No | Keep listings with published square footage at or above this value. |
maxSqft | integer | No | Keep listings with published square footage at or below this value. |
includeKeywords | array of strings | No | Keep listings whose published text, amenities, appliances, or pet policy contains at least one term. |
excludeKeywords | array of strings | No | Remove listings whose published text, amenities, appliances, or pet policy contains any term. |
requireApplicationUrl | boolean | No | Keep only listings that publish a public application link. Defaults to false. |
scrapeDetails | boolean | No | Fetch optional description, amenities, pet policy, public office, phone, and action fields from each detail page. Defaults to false. |
maxItems | integer | No | Maximum matching unique listings across all sources. Defaults to 25 and accepts values from 1 to 500. |
maxPages | integer | No | Maximum listing pages to read from each source while looking for matches. Defaults to 10 and accepts values from 1 to 25. |
requestDelayMs | integer | No | Minimum wait between requests to the same source. Defaults to 10000 milliseconds and accepts values from 10000 to 60000. |
The Actor respects the source's published access instructions and uses a minimum delay between requests. Free-plan runs are limited to 25 listings, 3 runs per rolling 24 hours, and a 30-minute wait between runs.
π Data table
| Field | Type | Description |
|---|---|---|
platform | string | Source platform identifier, set to appfolio. |
id | string | Stable tenant and listing identifier. |
listingId | string | Listing identifier from the detail page. |
tenant | string | AppFolio tenant hostname. |
url | string | Public listing detail URL. |
sourceUrl | string | Listing page used to discover the record. |
sourceListingId | string | Listing card or map identifier when published by the source. |
title | string | Published listing title. |
description | string | Detail-page description when scrapeDetails is enabled and the source publishes one. |
address | string | Full published address. |
street | string | Parsed street address. |
city | string | Parsed city. |
state | string | Parsed state or region. |
zip | string | Parsed postal code. |
latitude | number | Published map latitude. |
longitude | number | Published map longitude. |
rent | number | Single published rent value when available. |
rentMin | number | Lower value of a published rent range. |
rentMax | number | Upper value of a published rent range. |
rentFormatted | string | Original published rent text. |
currency | string | Currency inferred from the published rent symbol. |
beds | number | Published bedroom count. |
baths | number | Published bathroom count. |
sqft | number | Published square-footage value. |
available | string | Published availability text. |
amenities | array | Published amenity labels from an enriched detail page. |
utilities | string | Published utilities information from an enriched detail page. |
appliances | array | Published appliance labels from an enriched detail page. |
petPolicy | array | Published pet-policy labels from an enriched detail page. |
image | string | Primary published photo URL. |
images | array | Published photo URLs from the listing. |
applyUrl | string | Public application URL when published. |
showingUrl | string | Public showing-scheduling URL when published. |
contactUrl | string | Public contact URL when published. |
officeName | string | Public property-management office name from an enriched detail page. |
phone | string | Public property-management phone number from an enriched detail page. |
scrapedAt | string | ISO timestamp for the extracted record. |
π§Ύ Example record
This enriched example comes from a public AppFolio listing. Optional fields that the source does not publish are omitted.
{"platform": "appfolio","id": "apg.appfolio.com:afef0c1a-9a36-48a5-9bae-de6400f67d37","tenant": "apg.appfolio.com","scrapedAt": "2026-09-20T05:23:57.260Z","listingId": "afef0c1a-9a36-48a5-9bae-de6400f67d37","url": "https://apg.appfolio.com/listings/detail/afef0c1a-9a36-48a5-9bae-de6400f67d37","sourceUrl": "https://apg.appfolio.com/listings","sourceListingId": "243","title": "Beautiful New Studio Close to Twitter","description": "Living at 1335 Folsom puts you in the middle of everything San Francisco has to offer. From theaters and museums to trendy breweries and farmers markets, weekly entertainment is all within walking distance.","address": "1335 Folsom St, Unit 306, San Francisco, CA 94103","street": "1335 Folsom St, Unit 306","city": "San Francisco","state": "CA","zip": "94103","latitude": 37.773184,"longitude": -122.411916,"rent": 3005,"rentFormatted": "$3,005","currency": "USD","beds": 0,"baths": 1,"sqft": 402,"available": "9/28/26","amenities": ["Balcony", "Roof Deck with BBQs", "Community Room"],"utilities": "Tenant pays all utilities","appliances": ["Refrigerator", "Stove/Oven", "Microwave", "Dishwasher"],"petPolicy": ["Cats allowed", "Small dogs allowed"],"image": "https://images.cdn.appfolio.com/apg/images/f81048aa-6d3a-48ed-b161-5bc2a518ce8b/large.jpg","images": ["https://images.cdn.appfolio.com/apg/images/f81048aa-6d3a-48ed-b161-5bc2a518ce8b/large.jpg","https://images.cdn.appfolio.com/apg/images/8425c189-a1ae-4891-a68d-c03684c14ecf/large.jpg","https://images.cdn.appfolio.com/apg/images/7de08553-4e9f-45f1-b497-4f8c8e6fa65c/large.jpg"],"applyUrl": "https://apg.appfolio.com/listings/rental_applications/new?listable_uid=afef0c1a-9a36-48a5-9bae-de6400f67d37&source=Website","showingUrl": "https://apg.appfolio.com/listings/showings/new?listable_uid=afef0c1a-9a36-48a5-9bae-de6400f67d37&source=Website","contactUrl": "https://apg.appfolio.com/listings/detail/afef0c1a-9a36-48a5-9bae-de6400f67d37/contact_us_form","officeName": "ATLAS PROPERTY GROUP","phone": "(415) 216-4945"}
Missing source fields are omitted rather than replaced with placeholders.
β FAQ
Does it need a login?
No. It reads public AppFolio listing pages and does not access private customer accounts. Only provide sources and data you are authorized to access.
How fresh is the data?
Each run reads the supplied live listing pages. Rent, availability, photos, and contact details reflect what the source publishes at run time.
Can it extract private phone numbers?
No. Phone and office fields are returned only when the public detail page publishes them and scrapeDetails is enabled. The Actor does not open private contact walls or sign-in areas.
Which sources are supported?
Use public HTTPS AppFolio tenant pages under *.appfolio.com/listings, including listing pages with filters and public detail URLs. Other websites are rejected so the output stays within the Actor's supported source scope.
π Other actors
- Lianjia Source Monitor β: Track public property source pages for housing research.
- Landflip Scraper: US Land Listings & Broker Leads β: Collect land listings and broker lead fields.
- πΎ LandAndFarm scraper: US land listings and broker leads β: Export public land listings and related contacts.
- ποΈ Etagi Real Estate Scraper: ΠΠ°ΡΡΠ΅Ρ ΠΡΠ°ΠΆΠΈ β: Gather property listings and real-estate details.
- CommercialRealEstate.com.au scraper: prices, agents, and deal status ready for your spreadsheet β: Build structured commercial property research datasets.