1stDibs
Search 1stDibs' luxury/vintage marketplace and read a listing's real price plus its concrete completing action (Make an Offer / Contact Seller) — no login.
Domain: 1stdibs.com
Also known as: 1stDibs, 1stdibs, 1stdibs.com, First Dibs
Call it directly
bowmark.providers.firstdibs.search(query: string): Promise<FirstdibsSearchResult[]>
bowmark.providers.firstdibs.getListing(url: string): Promise<FirstdibsListing>Functions
| Function | What it does |
|---|---|
search | Runs 1stDibs' keyword search (or a category-facet URL) and returns real listings with real price, currency, availability and url. |
getListing | Reads one listing's real price and its concrete completing action(s) — Make an Offer and/or Contact Seller, whichever this seller has enabled. |
Types
interface FirstdibsSearchResult {
name: string;
url: string;
price: number;
priceCurrency: string;
availability: string;
image: string | null;
}
interface FirstdibsCompletingAction {
makeOffer: boolean;
contactSeller: boolean;
purchase: false;
}
interface FirstdibsListing {
name: string;
url: string;
description: string;
brand: string | null;
price: number;
priceCurrency: string;
completingAction: FirstdibsCompletingAction;
}Examples
const results = await bowmark.providers.firstdibs.search("walnut sofa");
const listing = await bowmark.providers.firstdibs.getListing(results[0].url);
return { price: listing.price, completingAction: listing.completingAction };