Bowmark AIdocs

Classic Home

Classic Home's real Made-to-Order fabric/leather catalog and its real, material-specific Shopify pricing — search real MTO products (sofas, chairs,…

Classic Home's real Made-to-Order fabric/leather catalog and its real, material-specific Shopify pricing — search real MTO products (sofas, chairs, ottomans), read one product's real fabric/leather picker, and resolve one exact fabric or leather choice to its real SKU, price and availability.

Domain: classichome.com

Also known as: Classic Home, classichome, Classic Home Inc., classichome.com

Call it directly

bowmark.providers.classichome.searchProducts(query?: string): Promise<ClassicHomeProduct[]>
bowmark.providers.classichome.getProduct(handle: string): Promise<ClassicHomeProductDetail>
bowmark.providers.classichome.addToCart(handle: string, optionValue: string): Promise<ClassicHomeCartHandoff>

Functions

FunctionWhat it does
searchProductsSearches Classic Home's real Made-to-Order catalog (sofas, chairs, ottomans) via the site's own Shopify collection JSON, optionally filtered by a free-text query against the product title.
getProductReads one product's real live fabric/leather picker: every real color/material choice with its own real price and availability, keyed by the site's own option name.
addToCartResolves ONE exact fabric/leather choice (optionValue from getProduct's own variant list, e.g. "Soft Olive") to Classic Home's own real price, availability and SKU, plus the product page to…

Types

// Classic Home's OWN shapes — not a capability contract.

interface ClassicHomeProduct {
  handle: string;        // the key getProduct/addToCart take
  title: string;
  url: string;
  priceMin: number;      // dollars — the cheapest real fabric/leather choice
  priceMax: number;      // dollars — the most expensive (usually top-grain leather)
  variantCount: number;  // >1 means a real fabric/leather choice exists
}

interface ClassicHomeVariant {
  optionValue: string;   // e.g. "Soft Olive", "Dawn-Flax", "ElPaso-Saddle"
  sku: string;
  price: number;         // dollars — this exact fabric/leather's own real price
  available: boolean;
}

interface ClassicHomeProductDetail {
  handle: string;
  title: string;
  url: string;
  optionName: string;      // usually "Color" (fabric/leather); "Title" if no real picker
  variants: ClassicHomeVariant[];
}

interface ClassicHomeCartHandoff {
  handle: string;
  optionValue: string;
  sku: string;
  price: number;         // dollars — the real price for this exact fabric/leather
  available: boolean;
  productUrl: string;    // finish add-to-cart/checkout on the real product page
}

Examples

// What does the Aspen Sofa actually cost in Pacific Blue?
const products = await bowmark.providers.classichome.searchProducts("aspen sofa");
const aspen = products[0];
const detail = await bowmark.providers.classichome.getProduct(aspen.handle);
const handoff = await bowmark.providers.classichome.addToCart(aspen.handle, "Pacific Blue");
return { price: handoff.price, sku: handoff.sku, available: handoff.available, finishOnSite: handoff.productUrl };
// Which Made-to-Order pieces have a real fabric/leather picker, and what's the price range?
const products = await bowmark.providers.classichome.searchProducts();
return products
  .filter((p) => p.variantCount > 1)
  .map((p) => `${p.title}: $${p.priceMin}-$${p.priceMax} (${p.variantCount} fabrics/leathers)`);