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
| Function | What it does |
|---|---|
listHauslabsProducts | Reads 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… |
getHauslabsProduct | Reads 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. |
runFoundationShadeFinder | Resolves 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}`);