Row House
Row House's own live class schedule and seat availability, run for real — real class names, times, instructor and free_spots per studio, off the site's…
Row House's own live class schedule and seat availability, run for real — real class names, times, instructor and free_spots per studio, off the site's own undocumented scheduler API, plus a real booking handoff.
Domain: therowhouse.com
Also known as: Row House, The Row House, therowhouse, RowHouse
Call it directly
bowmark.providers.therowhouse.listLocations(): Promise<TheRowHouseLocationSummary[]>
bowmark.providers.therowhouse.getSchedule(slug: string): Promise<TheRowHouseSchedule>Functions
| Function | What it does |
|---|---|
listLocations | Lists every Row House studio's slug and page URL, off the site's own published sitemap.xml. |
getSchedule | Reads one studio's live class schedule (real class names, instructor, start/end time, capacity, and live free_spots) plus its own address/phone/parking detail, and each class's booking_url… |
Types
interface TheRowHouseLocationSummary {
slug: string;
url: string;
}
interface TheRowHouseLocationDetail {
slug: string;
name: string;
address: string;
city: string;
state: string;
zip: string;
phone: string | null;
timezone: string;
parkingInfo: string | null;
siteUrl: string;
}
interface TheRowHouseClass {
id: string;
title: string;
description: string | null;
startsAt: string;
endsAt: string;
capacity: number;
freeSpots: number;
instructorName: string | null;
bookingUrl: string;
}
interface TheRowHouseSchedule {
location: TheRowHouseLocationDetail;
classes: TheRowHouseClass[];
warnings: string[];
}Examples
// what free-trial classes are open this week at the Sherman Oaks studio?
const sched = await bowmark.providers.therowhouse.getSchedule("sherman-oaks");
log(sched.classes
.filter(c => c.freeSpots > 0)
.map(c => `${c.title} ${c.startsAt} — ${c.freeSpots} spots open -> ${c.bookingUrl}`)
.join("\n"));// which studios does Row House have, and where?
const locations = await bowmark.providers.therowhouse.listLocations();
log(locations.map(l => l.slug).join(", "));