Bowmark AIdocs

Bogle Family Vineyards

Bogle Family Vineyards' real Tock tasting-experience catalog and the computed open dates/times for one — the same booking calendar Tock's own widget reads…

Bogle Family Vineyards' real Tock tasting-experience catalog and the computed open dates/times for one — the same booking calendar Tock's own widget reads before showing bookable slots. Rung 17, headed browser only (Cloudflare).

Domain: boglewinery.com

Also known as: Bogle, Bogle Family Vineyards, boglewinery.com

Call it directly

bowmark.providers.boglewinery.listExperiences(): Promise<BoglewineryExperience[]>
bowmark.providers.boglewinery.checkAvailability(experienceId: number, slug: string): Promise<BoglewineryAvailability>

Functions

FunctionWhat it does
listExperiencesReads Bogle's real, live Tock experience catalog — name, description, price and bookable party-size range for every experience, including the Home Ranch Tasting Experience.
checkAvailabilityChecks which upcoming dates and times Tock currently shows as open for one experience — pass experienceId and slug from listExperiences(). An empty result is the site's real answer…

Types

interface BoglewineryPrice {
  priceDescription: string;                          // e.g. "Starting at $20 per person"
  pricePerPersonCents: { min: number; max: number } | null;
}

interface BoglewineryExperience {
  id: number;          // the id checkAvailability takes
  slug: string;         // the slug checkAvailability takes
  name: string;
  description: string;
  price: BoglewineryPrice;
  partySizes: number[]; // bookable party sizes Tock currently offers
  state: string;        // e.g. "AVAILABLE", "SOLD"
}

interface BoglewineryAvailability {
  experienceId: number;
  slug: string;
  openDate: string[];   // "YYYY-MM-DD" — empty is a real answer (nothing currently open)
  openTime: string[];   // "HH:MM"
}

Examples

// See what Bogle offers, then check when the Home Ranch tasting is actually open.
const experiences = await bowmark.providers.boglewinery.listExperiences();
const homeRanch = experiences.find((e) => e.slug === "home-ranch-tasting-experience");
const availability = await bowmark.providers.boglewinery.checkAvailability(homeRanch.id, homeRanch.slug);
return { homeRanch, availability };