Bowmark AIdocs

Haus Labs by Lady Gaga

Haus Labs by Lady Gaga product catalogue — every clean-beauty SKU, its variants, its prices and what is in stock — read off the live Shopify Plus…

Haus Labs by Lady Gaga product catalogue — every clean-beauty SKU, its variants, its prices and what is in stock — read off the live Shopify Plus storefront. The Foundation Shade Finder is the broadcast wedge: a multi-step quiz ChatGPT cannot operate, mapped locally to one specific priced shade with the buy-page handoff.

Domain: hauslabs.com

Also known as: hauslabs, Haus Labs, Haus Labs by Lady Gaga, Lady Gaga

Call it directly

bowmark.providers.hauslabs.listHauslabsProducts(opts?: { limit?: number; productType?: string }): Promise<HauslabsProduct[]>
bowmark.providers.hauslabs.getHauslabsProduct(handle: string): Promise<HauslabsProduct>
bowmark.providers.hauslabs.runFoundationShadeFinder(input: { family: 'Deep' | 'Medium Deep' | 'Medium' | 'Light Medium' | 'Light' | 'Fair'; depth: 'deeper' | 'medium' | 'lighter'; undertone: 'warm' | 'cool' | 'neutral' | 'rosy' | 'golden'; hasAddOne?: boolean }): Promise<HauslabsShadeMatch>

Functions

FunctionWhat it does
listHauslabsProductsReads the live Haus Labs catalogue as the storefront publishes it — every product, its handle, title, vendor, description, tags, images and the per-variant price the storefront is quoting…
getHauslabsProductReads one product by its handle — every variant, its exact price, the image the storefront is showing and whether that specific variant is purchasable right now.
runFoundationShadeFinderResolves a buyer's Foundation Lab quiz answers to ONE specific shade: the variant title, the SKU, the real price, the availability, the buy-page URL.

Types

interface HauslabsVariant {
  id: string;
  title: string;
  price: string;
  compareAtPrice: string | null;
  sku: string | null;
  available: boolean;
  options: string[];
}
interface HauslabsProduct {
  handle: string;
  title: string;
  vendor: string;
  productType: string;
  url: string;
  descriptionHtml: string | null;
  optionNames: string[];
  variants: HauslabsVariant[];
  priceRange: { min: string; max: string } | null;
  inStock: boolean;
  tags: string[];
  images: string[];
}
interface HauslabsShadeMatch {
  quiz: { family: string; depth: string; undertone: string; hasAddOne: boolean };
  variant: {
    number: number;
    family: string;
    id: string;
    sku: string | null;
    price: string;
    available: boolean;
  };
  product: HauslabsProduct;
  warnings: string[];
}

Examples

// what is the cleanest price-range spread on the Foundation line right now?
const f = await bowmark.providers.hauslabs.getHauslabsProduct("triclone-skin-tech-medium-coverage-foundation");
log(`${f.title}: ${f.variants.length} variants, ${f.inStock ? "in stock" : "sold out"}, price range ${f.priceRange?.min}-${f.priceRange?.max} cents`);
// what foundation shade does the quiz recommend for a buyer who picks DEEP family + DEEPER depth + ROSY undertone?
const m = await bowmark.providers.hauslabs.runFoundationShadeFinder({ family: "Deep", depth: "deeper", undertone: "rosy" });
log(`shade ${m.variant.number} ${m.variant.family} — $${(Number(m.variant.price)/100).toFixed(2)} (${m.variant.available ? "in stock" : "sold out"}) -> ${m.product.url}`);