Bowmark AIdocs

Verve Coffee Roasters

Verve Coffee Roasters' Roaster's Choice subscription catalog and its real 'Find Your Coffee Match' quiz (Octane AI-powered) — drives the same 5 questions…

Verve Coffee Roasters' Roaster's Choice subscription catalog and its real 'Find Your Coffee Match' quiz (Octane AI-powered) — drives the same 5 questions the live site asks and returns the actual subscription it recommends, priced, with a buy link.

Domain: vervecoffee.com

Also known as: Verve, Verve Coffee, Verve Coffee Roasters, vervecoffee.com

Call it directly

bowmark.providers.vervecoffee.listRoastersChoiceSubscriptions(): Promise<VervecoffeeSubscription[]>
bowmark.providers.vervecoffee.matchCoffeeSubscription(answers: CoffeeQuizAnswers): Promise<VervecoffeeCoffeeMatchResult>

Functions

FunctionWhat it does
listRoastersChoiceSubscriptionsLists Verve's five real Roaster's Choice coffee subscription products (single origin, blend, espresso, Africa, Latin America) with their live USD price, read off the storefront's own…
matchCoffeeSubscriptionRuns Verve's real 'Find Your Coffee Match' quiz end to end — the same 5 questions the live Octane AI-powered quiz at /pages/quiz asks every visitor — and returns the actual Roaster's Choice…

Types

interface VervecoffeeSubscription {
  id: string;
  handle: string;
  title: string;
  priceFormatted: string;
  url: string;
}
interface VervecoffeeCoffeeMatch {
  id: string;
  title: string;
  descriptionHtml: string;
  startingPriceFormatted: string;
  url: string;
  subscriptionPlans: Array<{ name: string; deliveryInterval: string; priceWithDiscount: string }>;
}
interface VervecoffeeCoffeeMatchResult {
  recommendedProducts: VervecoffeeCoffeeMatch[];
}
interface CoffeeQuizAnswers {
  journeyStage: "coffee_curious" | "casual_coffee_lover" | "coffee_connoisseur" | "barista";
  brewMethod: "pourover" | "coffee_maker" | "espresso" | "french_press" | "aeropress";
  coffeeStyle: "black" | "milk_or_cream" | "sugar_or_sweetener";
  roastPreference: "light" | "medium" | "dark" | "not_sure";
  tastingNote: "chocolate" | "citrus" | "fruits" | "sweet" | "floral" | "nuts";
}

Examples

// what subscriptions does Verve sell right now, and what do they cost?
const subs = await bowmark.providers.vervecoffee.listRoastersChoiceSubscriptions();
log(subs.map(s => `${s.title}: ${s.priceFormatted}`).join(", "));
// which subscription does Verve's own quiz recommend for a dark-roast, fruit-forward espresso drinker?
const match = await bowmark.providers.vervecoffee.matchCoffeeSubscription({
  journeyStage: "coffee_connoisseur",
  brewMethod: "espresso",
  coffeeStyle: "black",
  roastPreference: "dark",
  tastingNote: "fruits",
});
log(match.recommendedProducts.map(p => `${p.title} from ${p.startingPriceFormatted} -> ${p.url}`).join("; "));