1stDibs Scraper [$1.5/1K💰] | Luxury Furniture | Designer Data avatar

1stDibs Scraper [$1.5/1K💰] | Luxury Furniture | Designer Data

Pricing

from $1.40 / 1,000 results

Go to Apify Store
1stDibs Scraper [$1.5/1K💰] | Luxury Furniture | Designer Data

1stDibs Scraper [$1.5/1K💰] | Luxury Furniture | Designer Data

Extract luxury furniture and decor listings from 1stDibs — designer, brand, period, materials, dimensions, condition, authenticity, seller profiles and prices in 10 currencies. Built for resale comps, design sourcing and luxury market analysis. $1.50 per 1,000 listings.

Pricing

from $1.40 / 1,000 results

Rating

0.0

(0)

Developer

Ahmed Jasarevic

Ahmed Jasarevic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

1stdibs Scraper

Extract luxury, antique and vintage product listings from 1stDibs — prices in 10 currencies, designer and period attribution, materials, dimensions, condition, dealer profiles and authenticity flags — straight into a dataset, with no browser and no API key.

Built for:

  • Luxury furniture price monitoring and antique market research
  • Dealer and gallery tracking across 1stDibs categories
  • Building a structured 1stdibs product database
  • Competitor intelligence for galleries, consignment and resale businesses
  • Appraisal, insurance and catalog enrichment workflows

1stDibs is one of the largest online marketplaces for antique, vintage and contemporary design. This actor turns its public browse and product pages into structured rows you can monitor over time: asking prices normalized to USD plus 10 local currencies, attribution (designer, maker, brand, period, place of origin), materials and style, full dimensions, condition notes, every image, the selling dealer's profile (location, years on platform, response time, tier) and the platform's authenticity signals (vetted professional seller, authenticity guarantee, gold/platinum tier). Runs can cover furniture, jewelry, art, fashion, lighting, rugs — any category path you give it.

How It Works

How the 1stDibs Scraper works: category pages and embedded JSON become product records with prices, provenance and dealer details.

The Actor fetches browse and product pages as plain HTML, then reads the JSON store embedded in each page instead of rendering a browser. It follows pagination at 60 items per page and optionally opens every product for the full dealer and provenance record.

Each row includes the product identity, price in 10 currencies, designer, materials, dimensions, condition, photos and seller profile. Use it to compare catalog prices, provenance and dealer inventory.

The actor never renders pages. Every server-rendered 1stDibs page embeds its complete data as a JSON store in the HTML, and the actor reads exactly that:

  1. Browse/category URLs are fetched as plain HTML (CheerioCrawler, no headless browser) and the embedded JSON store is resolved by chasing internal references — the same data the site's own frontend hydrates from.
  2. Listing pages provide discovery and pagination: 60 items per page, ?page=N followed automatically until maxItems is reached.
  3. With detail scraping enabled, each product page is fetched the same way for the full record — all attributes, all photos, dealer storefront profile, return policy and authenticity badge text.
  4. Rows are pushed to the dataset as they are extracted, so partial runs still deliver data.

Result pages under /search/ are excluded by the site's robots rules, so the actor only walks browse/category pages and the product pages linked from them.

Input Parameters

FieldTypeRequiredDefaultNotes
startUrlsarray of URLsNoFurniture + Jewelry1stDibs browse/category pages to enumerate (e.g. https://www.1stdibs.com/furniture/). Pagination follows ?page=N automatically.
maxItemsintegerNo100Maximum products to scrape (1–10,000). Free-plan accounts are capped at 10 products per run.
scrapeDetailsbooleanNotruetrue visits every product page for the full detail set (charged per detail). false = fast listing-only mode: title, URL, price in 10 currencies and first image only — an order of magnitude cheaper and faster.
proxyobjectNodisabledStandard Apify proxy picker — enable it in the console UI only if 1stDibs starts blocking your IP.

Output Fields

One dataset row per product (full detail mode):

  • Identity: name, id, url, description, referenceNumber, categoryPath, vertical, breadcrumbs
  • Pricing: price (USD) and prices — converted values in USD, EUR, GBP, CHF, CAD, AUD, SEK, NOK, DKK, MXN
  • Attribution: designers (name + role: Designer/Maker/Artist), brand, period, dateOfManufacture, placeOfOrigin, productionType, estimatedLeadTime
  • Physical: materials + materialsDisplay, style + styleDisplay, dimensions (human-readable strings) + dimensionsIn (numeric map), condition
  • Media: images (CDN large path, master/zoom URL, alt text)
  • Dealer: seller — company name, profile URL, location, established year, months on platform, response-time summary, tier (gold/platinum), distinguished flag
  • Authenticity & availability: authenticity (vettedProfessionalSeller, authenticityGuarantee, goldTier, platinumTier, distinguishedDealer, returnPolicyAccepted), isSold, isAvailable, isOnHold, availability, isCustomizable

Listing-only mode (scrapeDetails: false) returns: id, url, name, price, priceCurrency, prices, images, isSold, source: "listing".

Example Input

{
"startUrls": [{ "url": "https://www.1stdibs.com/furniture/seating/chairs/" }],
"maxItems": 25,
"scrapeDetails": true
}

Example Output

{
"name": "Pair of Mid-Century Lounge Chairs",
"id": "f_16283947",
"url": "https://www.1stdibs.com/furniture/seating/lounge-chairs/pair-mid-century-lounge-chairs/id-f_16283947/",
"price": 4800,
"prices": { "USD": 4800, "EUR": 4400, "GBP": 3750, "CHF": 4250, "CAD": 6500, "AUD": 7300, "SEK": 51000, "NOK": 52000, "DKK": 33000, "MXN": 84000 },
"designers": [{ "name": "Example Designer", "role": "Designer" }],
"brand": "Example Workshop",
"period": "1960s",
"placeOfOrigin": "Denmark",
"materials": ["Leather", "Teak"],
"style": "Mid-Century Modern",
"dimensions": "Height: 27.6 in (70 cm), Width: 24.8 in (63 cm)",
"condition": "Good",
"seller": {
"company": "Example Gallery",
"location": "Copenhagen, Denmark",
"established": 2011,
"tier": "gold"
},
"authenticity": { "vettedProfessionalSeller": true, "authenticityGuarantee": true },
"isSold": false,
"isAvailable": true
}

Automate 1stDibs Price Monitoring With Schedules & Webhooks

  • Daily price checks: schedule the same input (e.g. your category URL, scrapeDetails: false) once a day and diff the price, isSold and isAvailable fields between runs to detect price changes and sold inventory.
  • New arrivals: run weekly over category pages sorted by the site's newest stock and keep only rows whose id did not appear in the previous run's dataset.
  • Webhooks: attach a dataset webhook so each completed run pushes rows into your CRM, Google Sheets or warehouse; the Apify API and API endpoints give you the same rows programmatically.
  • Recurring runs also improve Store recommendation signals — scheduled monitoring is the intended usage pattern for this actor.

Frequently Asked Questions

Why use this actor instead of the official API?

1stDibs does not offer a public REST API for its catalog — there is no documented endpoint for bulk listing, price or dealer data. The company does publish an official MCP server for AI assistants, and several third-party scraping APIs resell 1stDibs data at per-call pricing (e.g. Bright Data at $1.5 per 1,000 page loads, Anakin with credit-based calls). This actor reads the same data 1stDibs already embeds in its public pages, charges per result rather than per page load, and gives you a free-plan preview before any payment.

What are alternatives to this data source?

  • Official 1stDibs MCP server (com.1stdibs/1stDibs) — conversational product lookups for AI assistants, not bulk export.
  • Third-party scraper APIs — Bright Data's 1stDibs Scraper API and Anakin Wire both offer maintained endpoints with free starting tiers.
  • Sibling marketplaces — Chairish, Pamono and AptDeco carry overlapping vintage/design inventory and are easier to source through official channels.

Is there a 1stdibs API?

There is no public 1stDibs REST API for catalog data. What exists is the official 1stDibs MCP server for AI tools, plus paid third-party APIs that scrape on your behalf. For structured bulk access to listings, prices and dealer profiles, an Apify actor like this one is the practical route.

How do I export 1stdibs prices to CSV or Excel?

Run the actor, open its dataset in the Apify Console and export CSV, Excel, JSON or XML in one click — or pull the same data through the Apify dataset API on a schedule.

Can I monitor 1stdibs price drops over time?

Yes — schedule daily runs over the same category URL with scrapeDetails: false, then compare the price and isSold fields across runs. Cheaper listing-only mode makes frequent monitoring affordable.

Does it work for jewelry, art and fashion too?

Yes. Give it any 1stDibs browse/category URL — furniture, jewelry, art, fashion, lighting, rugs — and it enumerates the category with the same field set.

For AI Agents & LLM Apps

Purpose: returns structured 1stDibs product rows (title, 10-currency prices, designer/period/materials/dimensions, condition, dealer profile, authenticity flags) extracted from public browse and product pages — no login, no API key.

Minimal input:

{ "startUrls": [{ "url": "https://www.1stdibs.com/furniture/" }], "maxItems": 5 }

Listing-only (cheapest) mode:

{ "startUrls": [{ "url": "https://www.1stdibs.com/furniture/" }], "maxItems": 5, "scrapeDetails": false }

Output fields: name, id, url, description, referenceNumber, price, prices, designers, brand, period, dateOfManufacture, placeOfOrigin, materials, style, dimensions, condition, images, seller, authenticity, categoryPath, breadcrumbs, isSold, isAvailable, isOnHold, availability, isCustomizable.

Behaviors an agent should know:

  • scrapeDetails defaults to true — each product page fetch incurs a Product detail charge; set it to false for metadata-only rows at listing-page speed.
  • Free-plan runs are capped at 10 products regardless of maxItems.
  • startUrls auto-paginate (?page=N) until maxItems is reached — there is no page-depth input.
  • Detail rows are pushed atomically with their charge; if a maxTotalChargeUsd budget runs out, the run stops gracefully without emitting unpaid rows.
  • /search/ result pages are not crawled (robots-excluded); pass browse/category URLs only.

Billing: pay-per-event — result at $0.0015 per result and Product detail at $0.001 per detail page fetched; free-plan preview runs are uncharged.

This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by 1stDibs, Inc. It fetches only publicly accessible browse/category and product pages with plain HTTP requests — no account login is required, and it does not interact with CAPTCHA or anti-bot challenges (an optional proxy setting exists as a fallback if access is ever blocked). Users are responsible for their own compliance with 1stDibs's Terms of Service and applicable data-protection law when storing or republishing the extracted data, which includes dealer business information and publicly listed prices.

SEO Keywords

1stdibs scraper, 1stdibs api, 1stdibs data, 1stdibs price data, 1stdibs export, 1stdibs alternative, 1stdibs mcp, luxury furniture price data, luxury furniture scraper, antique furniture prices, vintage furniture market research, designer furniture price index, antique dealer directory, furniture price monitoring, luxury marketplace scraper, vintage design data, gallery price tracking, furniture market intelligence, 1stdibs listings, antique valuation data