Grand Welcome
Grand Welcome's own vacation rental search, listing detail, and real-time dated pricing/booking-link engine — a national franchise's own inventory, live…
Grand Welcome's own vacation rental search, listing detail, and real-time dated pricing/booking-link engine — a national franchise's own inventory, live availability and price, not a stale catalog.
Domain: grandwelcome.com
Also known as: Grand Welcome
Call it directly
bowmark.providers.grandwelcome.listGrandwelcomeDestinations(): Promise<GrandwelcomeDestination[]>
bowmark.providers.grandwelcome.searchRentals(destinationSlug: string, options?: { bedrooms?: number }): Promise<GrandwelcomeRentalRow[]>
bowmark.providers.grandwelcome.getRentalDetail(rentalId: string): Promise<GrandwelcomeRentalDetail>
bowmark.providers.grandwelcome.getRentalQuote(propertyId: string, options: { checkin: string; checkout: string }): Promise<GrandwelcomeQuote>Functions
| Function | What it does |
|---|---|
listGrandwelcomeDestinations | The entry door: reads the site's own /sitemap.xml for every published destination page and returns each one's slug (the exact vocabulary searchRentals takes) with a human-readable label… |
searchRentals | Runs Grand Welcome's own destination search (a market slug like "california-sea-ranch", from a rental's own page or the destination directory), optionally filtered to a bedroom count, and… |
getRentalDetail | Reads one rental in full — name, description, photos, and the internal numeric propertyId getRentalQuote needs — from the rentalId a search result or a grandwelcome.com/rentals/<id> URL… |
getRentalQuote | Runs the site's own real-time pricing engine for one property and a date range ("YYYY-MM-DD") — rent, fees, tax, total — and returns the exact Book Now checkout URL for those dates. |
Types
interface GrandwelcomeDestination {
slug: string;
label: string;
url: string;
}
interface GrandwelcomeRentalRow {
rentalId: string;
name: string;
url: string;
location: string;
propertyType: string;
petFriendly: boolean;
priceFromUsd: number | null;
priceFromFormatted: string | null;
bedrooms: number | null;
bathrooms: number | null;
guests: number | null;
ratingValue: number | null;
ratingCount: number | null;
}
interface GrandwelcomeRentalDetail {
rentalId: string;
propertyId: string;
name: string;
description: string;
images: string[];
url: string;
}
interface GrandwelcomeQuoteFee {
label: string;
amountUsd: number;
}
type GrandwelcomeQuote =
| { available: true; propertyId: string; checkin: string; checkout: string; currency: "USD";
rentUsd: number; fees: GrandwelcomeQuoteFee[]; feesTotalUsd: number; taxUsd: number;
totalUsd: number; bookNowUrl: string }
| { available: false; propertyId: string; checkin: string; checkout: string };