Skip to main content

Reports Tools

Access business analytics including revenue summaries, booking statistics, trends, top-performing products, customers, and experiences, and inventory utilization.

Required scope: reports:read

All report tools are read-only.

Tools Overviewโ€‹

ToolDescriptionRead-only?
get_revenue_summaryRevenue and performance snapshotYes
get_booking_statsBooking statistics for a periodYes
get_booking_trendsWhen customers made their bookings (by hour, weekday or date)Yes
get_gear_out_by_hourGear out at the same time in each hour of the day, and the busiest hourYes
get_top_productsTop rental products by bookings or revenueYes
get_rental_time_outNights, days or hours each rental item was out in a date windowYes
get_top_experiencesTop experiences by bookings or revenueYes
get_top_customersTop customers by bookings and revenueYes
get_inventory_reportInventory utilization and fulfillment dataYes

get_revenue_summaryโ€‹

Get a performance snapshot for a date range. Shows sales revenue, bookings in period, bookings received, and breakdowns by rental vs experience.

Parametersโ€‹

NameTypeRequiredDescription
periodstringNoPredefined period: today, yesterday, this_week, last_week, this_month, last_month, this_year. Preferred over custom dates.
comparebooleanNoIf true, also returns stats for the previous equivalent period for comparison
start_datestringNoCustom start date (only if period is not used)
end_datestringNoCustom end date (only if period is not used)

get_booking_statsโ€‹

Get booking statistics for a date range.

Parametersโ€‹

NameTypeRequiredDescription
periodstringNoPredefined period: today, yesterday, this_week, last_week, this_month, last_month, this_year
comparebooleanNoIf true, includes previous period comparison
start_datestringNoCustom start date
end_datestringNoCustom end date

When customers made their bookings, counted at the time each booking was created, in the shop's time zone. It does not say when gear is out or sessions run: use get_gear_out_by_hour for that.

Parametersโ€‹

NameTypeRequiredDescription
group_bystringYeshour (the hour bookings were made), day_of_week (the weekday they were made), date (bookings made per date)
periodstringNoPredefined period: this_week, last_week, this_month, last_month, this_year
start_datestringNoCustom start date
end_datestringNoCustom end date

get_gear_out_by_hourโ€‹

How many units of each rental item are out at the same time in each hour of the day, over a range of days, in the shop's time zone. Rental hires count from pickup to return, plus the gear each session holds. Back-to-back hires count once, the same way the Today screen counts "Up to N at once". Use it to find the busiest hour, for example the hour with the most kayaks out on Saturdays.

Parametersโ€‹

NameTypeRequiredDescription
periodstringNoA named range: this_week, last_week, this_month, last_month, last_30_days, next_30_days, this_year, last_year. start_date and end_date win over it.
start_datestringNoFirst day, YYYY-MM-DD in the shop's time zone. Defaults to 12 weeks ago when no period is given.
end_datestringNoLast day, YYYY-MM-DD. Defaults to 4 weeks ahead. Up to one year after start_date.
weekdaysarray of stringsNoOnly these days: monday to sunday, for example ["saturday", "sunday"]. Every day when left out.
itemsarray of stringsNoItem names or part of them, for example ["kayak", "paddleboard"]. Matches any item whose name contains one.
product_idsarray of integersNoRental item IDs to count.
category_idsarray of integersNoCategory IDs. Every item in them is counted.

With no items, product_ids or category_ids, every item is counted together.

Responseโ€‹

FieldDescription
busiest_hourThe hour with the most units out at once: hour, most_at_once, on (the date it happened) and average_at_once
by_hourOne row per hour from the first to the last hour with gear out: hour, most_at_once, on, on_weekday, average_at_once
by_itemEach item's own peak: item, most_at_once, first_at, busiest_hour
days_countedDays in the range that match weekdays
days_with_gear_outOf those, the days with any of the items out
timezoneThe shop's time zone the hours are in
truncatedtrue when the range held more hires or sessions than one request reads. Narrow the dates.

most_at_once is the highest any counted day reached in that hour. average_at_once is spread over every counted day, quiet days included.

Exampleโ€‹

{
"name": "get_gear_out_by_hour",
"arguments": { "weekdays": ["saturday"], "items": ["kayak", "paddleboard"] }
}

get_rental_time_outโ€‹

How long each rental item was out in a date window, in the unit it is rented by: nights and days for gear rented by the day or week, hours for gear rented by the hour or less. Each booking is cut to the window, so a booking that runs over the end of the month counts only its nights inside the month. Cancelled bookings, quotes and drafts are left out. A line renting 2 of an item counts its time twice.

Parametersโ€‹

NameTypeRequiredDescription
periodstringNothis_month (default, the 1st to today), whole_month, last_month, this_week, last_week, last_7_days, last_30_days or this_year, in the shop's own calendar
date_fromstringNoStart date (YYYY-MM-DD) for any other window. Overrides period
date_tostringNoEnd date (YYYY-MM-DD), inclusive. Defaults to today
product_idintegerNoOnly this rental item
by_unitbooleanNoAlso split each item into its units (fleet numbers)

Returnsโ€‹

checked_window and items, most time out first. Each item has name, product_id, nights and days or hours, bookings (how many bookings it went out on) and booking_ids. With by_unit, each item also has units, one row per unit, plus Not given a unit yet for lines with no unit assigned.


get_top_productsโ€‹

Get top performing rental products by bookings or revenue. Counts bookings made in the range (by booking date), not when the gear was out: for time out, use get_rental_time_out.

Parametersโ€‹

NameTypeRequiredDescription
start_datestringNoStart date (defaults to start of month)
end_datestringNoEnd date (defaults to today)
limitintegerNoNumber of results (default 10)
sort_bystringNoSort by value (revenue) or quantity (booking count). Default: value

get_top_experiencesโ€‹

Get top performing experiences by bookings or revenue.

Parametersโ€‹

NameTypeRequiredDescription
start_datestringNoStart date (defaults to start of month)
end_datestringNoEnd date (defaults to today)
limitintegerNoNumber of results (default 10)
sort_bystringNoSort by value (revenue) or quantity (booking count). Default: value

get_top_customersโ€‹

Get top customers by bookings and revenue.

Parametersโ€‹

NameTypeRequiredDescription
start_datestringNoStart date (defaults to start of month)
end_datestringNoEnd date (defaults to today)
limitintegerNoNumber of results (default 10)

get_inventory_reportโ€‹

Get inventory utilization report showing product performance, availability, and fulfillment data.

Parametersโ€‹

NameTypeRequiredDescription
start_datestringNoStart date (defaults to start of month)
end_datestringNoEnd date (defaults to today)