Facebook Marketplace Listing Scraper · No Cookies
Pricing
from $5.00 / 1,000 results
Facebook Marketplace Listing Scraper · No Cookies
Extract detailed Facebook Marketplace listing data without login. Get title, price, condition, location (with coordinates), seller details, delivery options, and full vehicle specifications. No cookies, no authentication. JSON/CSV/Excel export.
Pricing
from $5.00 / 1,000 results
Rating
5.0
(1)
Developer
Data Slayer
Maintained by CommunityActor stats
0
Bookmarked
108
Total users
14
Monthly active users
9 hours ago
Last modified
Categories
Share
Facebook Marketplace Search & Listing Details Scraper
Find public Facebook Marketplace listings by keyword, location, or category, or retrieve a known listing by ID or URL. Each useful result is written to the Dataset exactly as it is returned, so it drops straight into JSON, CSV, Excel, API, webhook, and scheduled workflows while the existing listingId contract keeps working.
Watch the demo
YouTube video coming soon.
What this Actor does
Use one Actor for two Marketplace jobs:
- Listing details — enter one numeric listing ID or public item URL and retrieve the available listing record.
- Marketplace search — discover public listings with a keyword, location, or category and set hard result/page limits.
- Optional detail enrichment — in Search mode, request full details for a bounded number of discovered listings before their rows are saved.
- Raw listing rows — every Dataset row is the listing object returned for that item, written unchanged. No fields are renamed, added, or dropped.
- Safe run summaries — inspect empty, partial, unavailable, duplicate, and billing states separately in the
RUN_SUMMARYkey-value-store record.
Input
Details mode
| Field | Type | Required | Default | Purpose |
|---|---|---|---|---|
mode | string | No | details | Select details or search. |
listingId | string | Yes in Details mode | 750003161080442 | Numeric listing ID or a public facebook.com/marketplace/item/... URL. |
The existing listingId key remains compatible. A direct Details-mode lookup produces at most one Dataset row.
Search mode
| Field | Type | Required | Default | Range | Purpose |
|---|---|---|---|---|---|
mode | string | Yes | — | search | Enables Marketplace discovery. |
searchQuery | string | Conditional | — | Up to 200 characters | Keyword or phrase. |
location | string | Conditional | — | Up to 100 characters | Supported Marketplace location slug or identifier. |
category | string | Conditional | — | Up to 100 characters | Supported category slug or identifier. |
maxItems | integer | No | 100 | 1–1,000 | Hard cap on unique useful listing rows. |
maxPages | integer | No | 5 | 1–20 | Hard cap on search pages requested. |
includeDetails | boolean | No | false | — | Request optional details for discovered listings. |
detailLimit | integer | No | 25 | 1–100 | Maximum detail lookups; also capped by maxItems. |
Search mode requires at least one of searchQuery, location, or category.
Example: direct listing details
{"mode": "details","listingId": "1547618196594748"}
Example: bounded search with details
{"mode": "search","searchQuery": "road bike","location": "austin","category": "sportinggoods","maxItems": 100,"maxPages": 5,"includeDetails": true,"detailLimit": 25}
Output
Each Dataset row is the raw listing object returned for that item, written unchanged. No field is renamed, added, or dropped, so existing integrations and saved datasets are unaffected. Fields that commonly appear when the platform returns them include:
id, marketplace_listing_title, custom_title, formatted_price, listing_price, condition, redacted_description, location_text, location, creation_time, is_live, is_sold, is_pending, delivery_types, messaging_enabled, vehicle_make_display_name, vehicle_model_display_name, vehicle_odometer_data, vehicle_transmission_type, vehicle_fuel_type, vehicle_exterior_color, vehicle_seller_type, vehicle_specifications, and share_uri.
Duplicate listing IDs are suppressed. Empty, invalid, unavailable, deleted, failed, or status-only outcomes are not written as Dataset rows.
Example raw row
{"id": "1547618196594748","marketplace_listing_title": "2013 MINI Cooper","custom_title": "2013 MINI cooper","formatted_price": { "text": "AU$11,990" },"listing_price": { "amount": "11990.00", "currency": "AUD" },"condition": "USED","redacted_description": { "text": "2013 R56 JCW, 192,000km on the clock..." },"location_text": { "text": "Clyde, VIC" },"location": { "latitude": -38.1253, "longitude": 145.3656 },"creation_time": 1759872299,"is_live": true,"is_sold": false,"is_pending": true,"delivery_types": ["IN_PERSON"],"messaging_enabled": true,"share_uri": "https://www.facebook.com/marketplace/item/1547618196594748/"}
Pricing
Pricing is unchanged. You pay the existing per-listing price for each useful listing row written to the default Dataset, plus the existing Actor-start event (one event per GB of memory, minimum one event). Missing or deleted results are not charged.
| Event | Free | Bronze | Silver | Gold | Platinum | Diamond |
|---|---|---|---|---|---|---|
| Marketplace listing | $0.007 | $0.00217 | $0.006 | $0.005 | $0.005 | $0.005 |
Empty, partial, and unavailable results
- A valid search with no matching listings finishes with an empty Dataset and a summary status of
empty. - A missing or deleted direct listing does not create a placeholder Dataset row.
- If a search listing is useful but optional details are unavailable, the raw row is still saved.
- A repeated cursor stops pagination safely and reports a partial result instead of looping.
- Dataset-write ambiguity is not retried, preventing duplicate rows or charges. The summary records the unconfirmed state.
- Public Marketplace availability varies by location, category, account state, and time. Seller fields, coordinates, descriptions, images, and vehicle fields are optional.
- The Actor does not access private listings and does not guarantee complete historical inventory.
Common uses
- Monitor local prices and active inventory.
- Compare category supply across supported locations.
- Find resale or sourcing candidates.
- Build public listing datasets for market research.
- Enrich known item IDs from an existing workflow.
- Schedule repeated searches and send results through Apify integrations or webhooks.
Responsible use
Use public data for a lawful purpose. Marketplace rows may contain personal data shared by sellers. Follow applicable privacy, data-protection, platform, and outreach rules, and avoid sensitive profiling or unsolicited contact.
Support
If a public listing or search returns an unexpected result, include the input mode, non-sensitive filters, run ID, and expected behavior in the Actor's Issues tab. Do not post private seller data or credentials.