MCP App Store
by KeenEthics
Business & Operations
EquipDash icon

EquipDash

by EquipDash Software LLC

Overview

EquipDash connects your rental business to ChatGPT. Manage bookings, check product availability, process payments, track inventory, and generate revenue reports — all through conversation. Use it to: - Create and manage bookings for rental products and experiences - Check availability and calculate pricing for any date range - View revenue summaries, booking trends, and top customers - Track inventory levels and get low-stock alerts - Manage staff schedules and shifts - Send payment links, process refunds, and apply promo codes - Look up customers and their booking history 123 tools across bookings, products, experiences, customers, payments, staff, inventory, promotions, reporting, and more. Connects securely via OAuth — just authorize your EquipDash account to get started.

Tools

accept_quote

ChatGPT
Accept a quote on the customer's behalf — converts it into a confirmed booking (re-checking availability when the dates were not held) and sends the normal booking confirmation emails. If the business requires online payment at acceptance, the customer is emailed a secure payment link for the amount due (deposit or full, per the booking widget's payment settings) — the booking is confirmed and unpaid until they pay.

add_booking_note

ChatGPT
Add an internal note to a booking. Use for any comments, reminders, or internal information about a booking.

add_booking_tag

ChatGPT
Add a tag to a booking. Creates the tag if it does not exist.

add_bundle_item

ChatGPT
Add one rental product, experience, or shop add-on to an existing bundle. Give it a choice_group to make it one of several pick-one alternatives.

add_custom_charge

ChatGPT
Add an additional charge to a booking (e.g. damage fee, late return fee, extra service). Only call after user confirms.

add_customer_note

ChatGPT
Add an internal note to a customer profile.

add_experience_departure

ChatGPT
Add a single date-only departure to a package or open-window experience. Only the start date is set; the end date derives from the experience's duration (a 5-day package ends 4 days later). One departure per date.

add_experience_schedule_period

ChatGPT
Add a NEW date range to an experience repeating schedule, with its own days and times - "from August we run 10, 11 and 12 on weekdays". Everything scheduled outside those dates is left alone. Date ranges may overlap when they run on different weekdays.

add_experience_sessions

ChatGPT
Put sessions on the calendar for an experience that runs at a TIME of day. Give the dates and the times and it creates one session per date per time. Use days_of_week with date_from/date_to instead of listing every date. Existing sessions are left alone. For an offering that departs on a DAY rather than a time use add_experience_departure; for an ongoing weekly pattern use set_experience_recurring_schedule.

add_form_field

ChatGPT
Add one question to the end of a waiver, survey or guide form, optionally inside an existing section. To build a whole form use build_form instead.

add_group_member

ChatGPT
Add a customer to a saved group's roster, with optional per-member notes and emergency contact details.

add_package_choice_group

ChatGPT
Add a pick-one choice group to a tour package experience (e.g. "Hotel category" with Budget/Deluxe/Premium, or "Coach type" with Volvo/Sleeper). Each option carries a per-traveler price added onto the package total. Marks the experience as a tour package automatically. Pass options inline to create them in one call.

add_package_choice_option

ChatGPT
Add a single priced option to an existing tour-package choice group. The price is per traveler and adds onto the package total.

add_product_inventory

ChatGPT
Add stock (inventory) to a rental product. For products tracked as a group, this adds quantity (merged into matching existing stock). For products tracked per item, this creates one record per unit with its own identifier/barcode - give a starting identifier plus a quantity for a numbered run (e.g. identifier "ABC-001" with quantity 3 creates ABC-001, ABC-002, ABC-003, keeping zero-padding), or give exact identifiers for specific codes. If the product has variations, variation_id is required; the variations are listed by get_product.

add_program_activity

ChatGPT
Add an activity to what a program includes. Activities are kept apart from the dates, so an activity can be included before any of its dates are picked.

add_program_message

ChatGPT
Add an email or text to the messages that go out around a booking — for all bookings, one line of business, a single item, or a program. Use plain wording; merge tags like {{first_name}} and {{start_date}} fill themselves in per person.

add_series_session

ChatGPT
Add one more session date to an existing multi-session series.

add_to_collection

ChatGPT
Add one row to the end of a collection: an item (by id or name), a whole category (new items in it then show up by themselves), or a heading that starts a new section. Call once per row, in the order the owner wants them.

add_to_waitlist

ChatGPT
Add a customer to the waitlist for an experience schedule or rental product.

add_website_page

ChatGPT
Add a page to the supplier's website. Pass sections to build it with the owner's content in one call (a footer is added for you); otherwise presets scaffold common pages (about, contact, faq, gallery, landing, blank), or it starts with a hero and a text section of sample text. The new page appears in the site navigation, and is not live until the site is published. Put the owner's own content in props so it lands in the same call. Shapes: hero {headline, subtext, button_text, button_url, video: a YouTube or Vimeo link or the address of a video uploaded in the builder - it plays muted on a loop instead of the photo, and an empty video goes back to the photo}; richtext and imagetext {heading, body}; faq {heading, items: [{q, a}]}; testimonials {heading, source: google|typed, google_count: 3|6, google_min_stars: 4 (4 and 5 stars) or 1 (any stars), quotes: [{text, name, meta}]} - google shows the shop's real Google reviews, never typed; staff (a team) {heading, subtext, items: [{name, role, bio}]}; features and steps {heading, items: [{title, text}]}; stats {items: [{number, label}]}; map {heading, address}; cta {heading, button_text, button_url}; featured_catalog {heading, source: rentals|experiences|bundles|store|services, item_ids: [ids] to pick items}; price_table, category_tiles, packages and schedule fill their prices, photos, times and spots from the catalog and calendar - never write those in. Pick by what the owner asked for: a rates, prices or price table is price_table; a timetable, schedule or "this week's" sessions is schedule; shop by category is category_tiles (each tile uses its first item's photo); bundles, combos or packages is packages. featured_catalog is only a few items to show off. price_table (a price list) {heading, source: rentals|experiences, mode: all|category|pick, category_id, item_ids}; category_tiles {heading, mode: all|pick, category_keys: ["store:<id>", "rental:<id>", "experience:<id>"]}; packages (the shop's bundles) {heading, subtext}; schedule (upcoming sessions from the calendar) {heading, mode: all|pick, item_ids: [experience ids], days_ahead: 3|7|14}; newsletter and contactform {heading, subtext, button_text}; gallery {heading, images: [image urls]}; locations {heading, mode: all|pick, location_ids} lists the shop's locations with address, hours and map from Settings > Locations; embed {code: the embed code or link the owner pasted, exactly as given, variant: full|side, height: short|medium|tall, heading, body}. Hours, contact and footer print the shop's own hours, phone, email and address from its business details. Button links: "book", a page slug, "experience/<id>", "product/<id>", or a full https:// address - never a path like /experiences. Write only what the owner told you: never invent facts about the business, its people or its reviews. The result lists what was saved and any sample text still showing; report only what was saved.

add_website_section

ChatGPT
Add a section to a page of the supplier's website (hero, text, gallery, features, testimonials, FAQ, team, contact form, map, hours, and more), with its content, in one call. By default it lands just above the footer. Put the owner's own content in props so it lands in the same call. Shapes: hero {headline, subtext, button_text, button_url, video: a YouTube or Vimeo link or the address of a video uploaded in the builder - it plays muted on a loop instead of the photo, and an empty video goes back to the photo}; richtext and imagetext {heading, body}; faq {heading, items: [{q, a}]}; testimonials {heading, source: google|typed, google_count: 3|6, google_min_stars: 4 (4 and 5 stars) or 1 (any stars), quotes: [{text, name, meta}]} - google shows the shop's real Google reviews, never typed; staff (a team) {heading, subtext, items: [{name, role, bio}]}; features and steps {heading, items: [{title, text}]}; stats {items: [{number, label}]}; map {heading, address}; cta {heading, button_text, button_url}; featured_catalog {heading, source: rentals|experiences|bundles|store|services, item_ids: [ids] to pick items}; price_table, category_tiles, packages and schedule fill their prices, photos, times and spots from the catalog and calendar - never write those in. Pick by what the owner asked for: a rates, prices or price table is price_table; a timetable, schedule or "this week's" sessions is schedule; shop by category is category_tiles (each tile uses its first item's photo); bundles, combos or packages is packages. featured_catalog is only a few items to show off. price_table (a price list) {heading, source: rentals|experiences, mode: all|category|pick, category_id, item_ids}; category_tiles {heading, mode: all|pick, category_keys: ["store:<id>", "rental:<id>", "experience:<id>"]}; packages (the shop's bundles) {heading, subtext}; schedule (upcoming sessions from the calendar) {heading, mode: all|pick, item_ids: [experience ids], days_ahead: 3|7|14}; newsletter and contactform {heading, subtext, button_text}; gallery {heading, images: [image urls]}; locations {heading, mode: all|pick, location_ids} lists the shop's locations with address, hours and map from Settings > Locations; embed {code: the embed code or link the owner pasted, exactly as given, variant: full|side, height: short|medium|tall, heading, body}. Hours, contact and footer print the shop's own hours, phone, email and address from its business details. Button links: "book", a page slug, "experience/<id>", "product/<id>", or a full https:// address - never a path like /experiences. Write only what the owner told you: never invent facts about the business, its people or its reviews. The result lists what was saved and any sample text still showing; report only what was saved.

adjust_store_inventory

ChatGPT
Adjust stock quantity for a store product. Use positive numbers to add stock, negative to remove.

apply_promo_code

ChatGPT
Validate and apply a promo code to a booking. Only call after user confirms.

apply_voucher

ChatGPT
Apply/redeem a voucher as payment on a booking. Immediately applies the voucher — no confirmation step needed.

approve_booking_request

ChatGPT
Approve a booking request: confirm the booking and charge the card the customer saved when they asked, if any. Re-checks that the time or the items are still free first. Confirm what was asked for, the dates and the total with the owner before calling this.

approve_time_off

ChatGPT
Approve a pending staff time-off request.

archive_booking

ChatGPT
Archive a booking so it is hidden from the bookings list. Archived bookings leave the calendar and remain in manifest, reports, customer detail, and search. Archiving never frees stock or seats; cancelling does. An upcoming or unfinished booking is refused unless even_if_unfinished is true, which is only passed after the owner confirms.

archive_booking_option

ChatGPT
Stop offering a way of booking without losing it. Bookings already sold on it keep its name and its prices; it disappears from every new-booking screen. This is what to use when the owner wants one gone - an experience always keeps at least one way to be booked, so the last one cannot be retired.

archive_customer

ChatGPT
Archives a customer so they no longer appear in listings or customer pickers. Booking history is preserved. Reversible with unarchive_customer.

archive_experience

ChatGPT
Archive an experience: hidden from every sales channel and listing, but all bookings and history are kept. Works from any status. Reverse with unarchive_experience.

archive_product

ChatGPT
Archive a rental product - hidden from listings and every sales channel but kept with its booking history. Works from any status. Reverse with unarchive_product.

archive_program

ChatGPT
Archive a program: it stops selling everywhere and drops out of the programs list. Existing bookings are untouched. Reversible with unarchive_program.

archive_rate_category

ChatGPT
Stop offering a rate category on new bookings without losing it. Existing bookings and pricing keep it; it disappears from every new-booking screen. This is what to use when the owner wants a rate "gone" but it is already in use - deleting one that prices anything is never possible.

archive_survey

ChatGPT
Archive a survey — hidden from the default listing and never auto-sent, but kept with its responses.

assign_guides_to_experience

ChatGPT
Assign one or more guides to an experience availability slot. Returns assigned, blocked (time-off) and warned (no shift covering the time) lists.

assign_staff_to_workshop

ChatGPT
Assign one or more staff members to a workshop job.

attach_checklist_to_workshop

ChatGPT
Attach a checklist template to a workshop job, creating a new checklist instance with all items from the template.

attach_group_to_booking

ChatGPT
Attach a saved group to a booking — the roster materializes into the booking's participants (snapshot; later group edits do not touch the booking).

attach_weather_rule_to_experience

ChatGPT
W3B — attach a supplier-wide weather threshold rule to a specific experience. On breach, the evaluator surfaces upcoming experience sessions falling in the breach window and (with effect_notify_admin=true, default) emails weather.manage users.

attach_weather_rule_to_product

ChatGPT
W3B — attach a supplier-wide weather threshold rule to a specific rental product. On breach, the evaluator surfaces upcoming bookings for that product and (with effect_notify_admin=true, default) emails weather.manage users. Idempotent — re-attaching updates pivot flags.

bulk_change_session_duration

ChatGPT
Change how long these timed sessions run without moving their starts. Date-only sessions are left alone. The experience default and repeating schedule are not changed.

bulk_change_session_time

ChatGPT
Move these sessions to a different time of day, each keeping its own date and duration. Sessions running across more than one day are left alone.

bulk_delete_shifts

ChatGPT
Delete every shift within a date range. Destructive — requires user_confirmed: true.

bulk_update_session_capacity

ChatGPT
Set how many people (or groups, for a private offering) each of these sessions takes. A session already holding more than the new number is left alone and named in the reply.

bulk_update_shifts

ChatGPT
Change start_time or end_time on every shift in a date range.

calculate_rental_price

ChatGPT
Calculate the exact rental price for one or more products over a date range using the system pricing engine. Use this whenever you need total prices — NEVER calculate prices manually.

cancel_booking

ChatGPT
Cancel a booking. Without user_confirmed, returns the applicable cancellation policy and refund preview. Pass user_confirmed=true to actually cancel the booking.

cancel_series

ChatGPT
Cancel a multi-session series — every upcoming session booking is cancelled; past sessions stay untouched.

cancel_waitlist_entry

ChatGPT
Cancel a waitlist entry — the customer stops waiting for a spot and gets no further availability notifications for it.

capture_security_deposit

ChatGPT
Capture (keep) a held security deposit for damage or loss — the customer is charged from the deposit the business is holding. Pass amount for a partial capture; omit it to capture the full held amount. When the deposit is split into parts (per participant), pass security_deposit_id for the part to capture. Without confirmed: true the tool returns a preview instead of capturing.

check_bundle_availability

ChatGPT
Check if a product bundle is available for specific dates.

check_departure_fit

ChatGPT
Whether one departure fits, before saying yes to it: is the shared item it runs on (a boat, a vehicle, a room) free of anything already booked, which departures nobody has booked that it closes, and who can lead it (guides free then with the certificates they hold, guides busy and what they are leading, guides away). Pass booking_id for a booking or a request; otherwise schedule_id, or experience_id with the date and start time.

check_experience_availability

ChatGPT
Check available time slots for an experience on a specific date. Returns scheduled sessions with capacity, availability, and pricing.

check_product_availability

ChatGPT
Check if a product is available for specific dates and quantity. Returns availability and estimated pricing for the period.

clock_in_staff

ChatGPT
Clocks a staff member in on the time clock, recording the actual start of work. Links today's scheduled shift when one exists.

clock_out_staff

ChatGPT
Clocks a staff member out on the time clock, recording the actual end of work.

complete_checklist_item

ChatGPT
Complete a checklist item on a workshop job. For checkbox items pass value '1'. For pass/fail pass 'pass' or 'fail'. For text/numeric items pass the value.

complete_session

ChatGPT
Complete ONE session (departure) for everyone on it who checked in. A booking whose last day this was is completed in full; bookings nobody checked in on are left alone.

confirm_booking

ChatGPT
Confirm a draft booking. Re-checks availability when the draft was not holding its dates, then confirms it and, by default, emails the customer their confirmation and waiver link. Without user_confirmed the tool returns a preview; with user_confirmed=true the booking is confirmed.

confirm_fit

ChatGPT
Confirm a fit ticket for a booking (or one of its participants). Appends an audit row, computes the DIN suggestion server-side, and triggers the customer-profile sync. Pickup is gated on this being called.

confirm_pending_sms

ChatGPT
Sends an SMS that send_sms_template_to_booking previously proposed, identified by its pending_id. This is the call that actually delivers the message.

confirm_weather_breach_proposal

ChatGPT
Confirm a pending weather closure. Before calling, tell the owner its close_summary from list_pending_weather_breach_proposals (place, hours, bookings affected). Creates a W4 RentalBlackout scoped to the rule's location, covering the breach window. Idempotent: confirming an already-decided proposal is a no-op. Customers see the location blocked in the widget / POS immediately.

connect_custom_domain

ChatGPT
Put the shop's booking page or website on its own address, like book.theirshop.com. A booking page address needs no website. Returns the two records the owner adds at the company where they bought the domain (say "the two records at your domain company", never "DNS records"); it goes live on its own once they are in, and the owner is emailed. Pro plan.

copy_content_blocks

ChatGPT
Reuse the Additional customer information section (what's included, what to bring, pickup/check-in details, restrictions, cancellation notes, custom sections, and their order) from one product or experience on other items — copies it from a source item onto the target items you name. By default every section that has content is copied; "sections" narrows it to specific ones. Copying replaces those sections on each target. Targets that are products automatically skip experience-only sections (itinerary, health & safety).

copy_schedule_week

ChatGPT
Copy every shift from one week to another. Both week_start values should be a Monday.

create_blackout

ChatGPT
Create a rental blackout period (business-wide closure). recurrence "one_off" needs start_date + end_date (YYYY-MM-DD); "weekly" needs days_of_week (array of 0=Sun..6=Sat) and may include an optional end_date ("repeat until"). With is_all_day false, start_time/end_time (HH:MM) close only part of the day. Blackouts hard-block bookings on every channel and never cancel existing bookings.

create_booking

ChatGPT
Create a booking for rentals, experiences, and/or store products. Without user_confirmed, the tool returns a preview of what will be created; pass user_confirmed=true to actually create the booking. Store-only bookings (buying physical products) do not require dates. Store products can also be added as add-ons to rental or experience bookings. If any selected product has require_participants=true, or any experience has participants_required=true, participant details must be provided.

create_booking_option

ChatGPT
Add another way to sell one experience, e.g. a private lesson alongside the group one. How it is priced (per person or one price for the group) and whether it takes the whole session are two separate things - a semi-private lesson is priced per person AND books out the session, so never infer one from the other. It lands at the bottom of the list; use reorder_booking_options to move it. Set its price afterwards with the experience pricing tools.

create_bundle

ChatGPT
Create a new product bundle. Items can be added later via the bundle editor.

create_campaign

ChatGPT
Create a new marketing email campaign as a draft. The user can refine recipients and send it later.

create_checklist_template

ChatGPT
Create a custom checklist template with items for workshop inspections and maintenance.

create_collection

ChatGPT
Create a collection: one page of anything the shop sells, in the owner's order, with its own link. Then use add_to_collection for what goes in it.

create_custom_report

ChatGPT
Build and save a report under Reports > My reports, from blocks of fields. Returns the figures and a link. Use this whenever the owner asks you to build, make or save a report, including one emailed on a schedule (then call update_custom_report with email_every) - a report is never a bot. For a one-off number, use the other report tools.

create_customer

ChatGPT
Create a new customer. Call this directly when the user confirms they want to create — do NOT search first.

create_email_template

ChatGPT
Customise the subject/body of an existing email template type for the supplier. Email templates are seeded per type — this tool overwrites the editable copy.

create_experience

ChatGPT
Create a new experience/activity. Pricing can be "group" (single price per group) or "participant" (per-person with rate categories like Adult, Child). For participant pricing, first call list_experience_rate_categories to get available rate category IDs.

create_experience_category

ChatGPT
Create a new EXPERIENCE category. Use this when the user wants to create a category for experiences/activities.

create_extra

ChatGPT
Create a booking extra — an add-on customers can tack onto rental product or experience bookings (e.g. "Helmet $5", "Bike Insurance $9", "Photo Package $25 per person"). Three kinds, set with fulfillment_type: a plain charge (default), a rental item the customer borrows and brings back, or a store product they buy and keep. A rental or store extra links one of the shop's existing items (by id or name) and takes ITS price and stock — do not invent a price for those. Other defaults: charged once, available on all rental products, not on experiences, unlimited stock.

create_group

ChatGPT
Create a saved group (a reusable participant roster) with an optional starting roster of customer ids.

create_knowledge_article

ChatGPT
Teach the booking chat a new answer it can give customers — policies, directions, parking, what to bring, weather calls, age or pet rules. Live immediately. Use update_knowledge_article when the topic is already covered.

create_open_season

ChatGPT
Add an "open dates" (operating season) window — the dates the business takes bookings. recurrence "yearly" repeats every year (only the month-day matters, so it may wrap the New Year, e.g. Nov 1 to Mar 31); "one_off" is a specific-year range. Needs start_date and end_date (YYYY-MM-DD). Once any window exists, dates outside every window become unbookable on every channel; existing bookings are never cancelled.

create_policy

ChatGPT
Create a new cancellation/reschedule policy. Supports the multi-tier refund schedule used by the supplier portal: pass tiers as an array of {applies_after_hours, refund_percentage, refund_method?} entries (sorted descending by hours). Single-tier "all-or-nothing" policies can omit tiers and pass refund_percentage for back-compat.

create_product

ChatGPT
Create a new rental product. Only name + pricing are required. Do NOT ask for optional fields (description, category, sku, status) — use defaults. Supports flat (single price) or schedule (tiered) pricing.

create_product_category

ChatGPT
Create a new RENTAL PRODUCT category. Use this when the user wants to create a category for rental products.

create_product_variation

ChatGPT
Add a variation to a rental product (e.g. a size, length, or color option). Properties that don't exist on the product yet are created automatically. The product's existing variations and properties are listed by get_product.

create_program_run

ChatGPT
Create a cohort of a program (e.g. "Term 3" of a template program): clones the program's menu — activities, pricing, description, category, image — into a NEW program with NO dates, linked back to the original as its template. Add session dates to the cohort afterwards with add_series_session; each cohort sells and tracks participants on its own.

create_promo_code

ChatGPT
Create a new promo code. Only call after user confirms.

create_quote

ChatGPT
Create a quote - a priced proposal the customer agrees to before it becomes a booking. Takes the same customer, dates and line items as create_booking (rentals, experiences, bundles, store products) but saves a draft quote instead of a confirmed booking. By default the dates are NOT held; set reserve_dates=true to hold them while the customer decides. Send it to the customer afterwards with send_quote.

create_rate_category

ChatGPT
Create a rate category (person type) for participant pricing — Adult, Child, Senior, Student, and so on. These belong to this account: whenever the owner names a person type that does not exist yet, create it. Pass "components" instead to make a combo rate — one flat price covering a set group, e.g. Family = 2 Adult + 2 Child.

create_season

ChatGPT
Create a new pricing season. Requires Pro plan. Season types: "date" (date range), "time" (time-of-day range), "days" (days of the week only).

create_series

ChatGPT
Create a program: a bookable package with a name, the activities it includes and/or a menu of session dates (which can span multiple activities), and a pricing option. No bookings are created — customers enroll later.

create_service_booking

ChatGPT
Book a service for a customer. A drop-off service takes a drop-off date. A service booked for a time with a person needs start_at (check get_service_times first, never invent a time) and optionally staff_id; without staff_id whoever is free is booked. Returns the new booking.

create_settings_record

ChatGPT
Add one new setup record - a location, tax rate, custom field, staff role, service type, manifest document, pricing template or special opening-hours period. Call list_settings_records first so you use real field names and know which are required. Money-affecting kinds (tax rates, pricing templates) preview before they are created.

create_staff

ChatGPT
Create a new staff member. Only call after user confirms.

create_staff_shift

ChatGPT
Create a new staff shift. Only call after user confirms.

create_store_category

ChatGPT
Create a new STORE PRODUCT category. Use this when the user wants to create a category for store products (merchandise/retail items).

create_store_product

ChatGPT
Create a new store product for sale.

create_support_ticket

ChatGPT
Create a new support ticket. Only call after user confirms.

create_survey

ChatGPT
Create a new customer survey. The user can add questions and publish it later.

create_tag

ChatGPT
Create a booking tag (a reusable label for bookings, e.g. "VIP" or "Needs review").

create_time_off

ChatGPT
Record time off for a staff member (vacation, sick leave, …). Approved on creation. Overlapping entries for the same person are refused.

create_voucher

ChatGPT
Create a new gift voucher. Only call after user confirms.

create_waiver

ChatGPT
Create a new waiver/form with optional initial fields. The user can add more fields later in the editor.

create_weather_threshold_rule

ChatGPT
Create a W3 weather threshold rule for the current supplier. Examples: a small-craft advisory is ("marine_advisory", "=", omit threshold_value) when the location uses the marine forecast, otherwise ("wind_speed_kmh", ">", 40) (22 knots); ("thunderstorm", "=", omit threshold_value) for a lightning watch. applies_to defaults to what the shop sells (all experiences, all products, or both). metric values: wind_speed_kmh, wind_gust_kmh, precipitation_mm, thunderstorm, temperature_c, wave_height_m, swell_height_m, marine_advisory, snowfall_cm. marine_advisory is true when gusts reach 40 km/h or waves reach 1.2 m. Marine metrics (wave_height_m, swell_height_m, marine_advisory) require location.use_marine_forecast=true. operator is one of >, >=, <, <=, =. effect_fire_agents and effect_dashboard_banner default true; effect_propose_auto_close (auto-close) defaults false. display_condition comes back in the shop's own units. All threshold values are in METRIC units (km/h, °C, mm, m, cm) regardless of supplier locale.

decline_quote

ChatGPT
Decline a quote on the customer's behalf — record that the customer turned it down. Any dates held for the quote are released immediately. A decided (accepted/declined/expired) quote cannot be declined.

delete_blackout

ChatGPT
Deletes a rental blackout period by id. Ids are listed by list_blackouts.

delete_bundle

ChatGPT
Delete a bundle. Refused when the bundle already has bookings - disable it instead to keep the history.

delete_campaign

ChatGPT
Delete a campaign. Only draft or cancelled campaigns can be deleted — a scheduled one must be unscheduled first, and a sent campaign is kept for its report.

delete_checklist_template

ChatGPT
Delete (archive) a custom checklist template. Any product or experience using it as its booking checklist has that gate turned off. Prebuilt templates cannot be deleted.

delete_customer

ChatGPT
Permanently delete a customer who has NO bookings. A customer with bookings cannot be deleted — archive them instead, or use forget_customer for a GDPR erasure.

delete_customer_note

ChatGPT
Delete an internal note from a customer profile.

delete_experience

ChatGPT
Permanently delete an experience or tour package. Blocked while it has ANY bookings — archive it instead. This cannot be undone.

delete_experience_category

ChatGPT
Delete an EXPERIENCE category. Only possible while it has no experiences and no child categories — move or delete those first.

delete_experience_departure

ChatGPT
Delete ONE departure of an experience. Blocked while the departure has bookings.

delete_experience_sessions

ChatGPT
Remove sessions from the calendar. A session that already has bookings is kept and named in the reply. Get the ids from list_experience_sessions.

delete_extra

ChatGPT
Delete a booking extra from the catalog. Existing bookings keep their charges (snapshots).

delete_form_field

ChatGPT
Remove one question from a form. Previews first; call again with user_confirmed=true to actually remove it. WARNING: this also permanently deletes every answer already given to that question, including signed ones - the preview reports how many.

delete_group

ChatGPT
Delete a saved group. Its member list goes with it; bookings that already used the roster keep their participants. The member customers themselves are untouched.

delete_knowledge_article

ChatGPT
Remove an answer so the booking chat stops telling customers it. Permanent — prefer update_knowledge_article when the answer just needs correcting.

delete_open_season

ChatGPT
Deletes an "open dates" (operating season) window by id. Ids are listed by list_open_seasons. Deleting the only window reopens the whole year.

delete_policy

ChatGPT
Delete a cancellation/reschedule policy along with its tiers and applications. Permanent — bookings already cancelled under this policy retain their refund history.

delete_product

ChatGPT
Permanently delete a rental product. Blocked while it has ANY bookings — archive it instead. This cannot be undone.

delete_product_category

ChatGPT
Delete a rental product category. Blocked while products or child categories sit under it.

delete_promo_code

ChatGPT
Delete a promo code. Bookings that already used it keep their discount.

delete_rate_category

ChatGPT
Permanently remove a rate category. Only possible while nothing is priced by it and no combo includes it - otherwise archive_rate_category is the right call, which the response will say.

delete_schedule_template

ChatGPT
Delete a saved schedule template. Destructive — requires user_confirmed: true.

delete_season

ChatGPT
Remove a pricing season. Returns a preview first; call again with user_confirmed=true to actually remove it. A season still attached to product or experience pricing is refused - detach it first.

delete_settings_record

ChatGPT
Permanently remove one setup record. Always returns a preview of what would go first; call again with user_confirmed=true to actually delete. Get the id from list_settings_records. Some deletes are refused outright - your only location, or your default one.

delete_staff

ChatGPT
Delete a staff member. Blocked while they have upcoming shifts or guide assignments — remove or reassign those first.

delete_staff_certification

ChatGPT
Remove a certification from a staff member's profile. Find the certification id first with list_staff_certifications. Only call after the user confirms.

delete_staff_shift

ChatGPT
Delete a staff shift. Only call after user confirms.

delete_survey

ChatGPT
Delete a survey.

delete_tag

ChatGPT
Delete a booking tag. Bookings that had it simply lose the label.

delete_time_off

ChatGPT
Delete a time-off entry — the staff member becomes available for those days again.

delete_voucher

ChatGPT
Delete a gift voucher. Only possible while it has never been redeemed — a voucher with any usage cannot be deleted.

delete_waiver

ChatGPT
Delete a waiver/form. It can no longer be signed or attached. For surveys use delete_survey instead.

delete_weather_threshold_rule

ChatGPT
Soft-delete a W3 weather threshold rule. Existing breach history (confirmed / dismissed / cleared proposals) is preserved as audit trail.

delete_website_page

ChatGPT
Delete a page from the supplier's website. The home page, auto catalog pages and detail-page layouts cannot be deleted.

delete_website_post

ChatGPT
Delete a news post from the shop's website for good. To only take it off the site, use update_website_post with status "draft" instead.

detach_waiver

ChatGPT
Detach a waiver/form from a rental product or experience so it is no longer required when booking. The form itself is kept.

detach_weather_rule_from_experience

ChatGPT
W3B — detach a weather threshold rule from an experience. The rule itself stays in place.

detach_weather_rule_from_product

ChatGPT
W3B — detach a weather threshold rule from a rental product. The rule itself stays in place (still usable for other products / via the supplier-wide effects).

dismiss_weather_breach_proposal

ChatGPT
Dismiss a pending W3 propose-auto-close proposal. No closure is created; existing agent-drafted reschedule emails (if any) stay in the approval queue for manual handling. Idempotent.

duplicate_bundle

ChatGPT
Duplicate a bundle with its full composition. The clone starts disabled until the owner enables it.

duplicate_campaign

ChatGPT
Duplicate a campaign into a new editable draft (content, audience, promo codes).

duplicate_experience

ChatGPT
Duplicate an experience with its pricing, departures and recurring schedule. The copy is named "<name> (Copy)" and starts as a DRAFT, so it sells nothing until it is reviewed and activated.

duplicate_experience_session

ChatGPT
Copy one session onto another date, keeping its time, capacity and guide requirement. Who is guiding is not copied.

duplicate_product

ChatGPT
Duplicate a rental product as a draft copy — pricing, variations and variation properties carried over.

duplicate_program

ChatGPT
Copy a program — its activities, dates and pricing, but not its bookings. The copy starts with online sales switched off so it can be edited before it sells.

duplicate_quote

ChatGPT
Duplicate a quote as a fresh draft (re-quote). Lines carry over and re-price from the live catalog; the new quote starts unsent with no dates held.

duplicate_survey

ChatGPT
Duplicate a survey as a draft copy — questions, settings and assignments carried over; responses and send logs are not.

duplicate_website_section

ChatGPT
Duplicate a section on a page of the supplier's website - the copy lands right under the original.

enroll_in_program

ChatGPT
Enroll a customer in a program — one confirmed booking covering every session of the cohort (one experience line per session). When the program has pick-one choice groups, pass exactly one chosen schedule_id per group in choices.

export_waivers

ChatGPT
Kick off a bulk export of signed waivers — produces a zip with one PDF per waiver + manifest CSV. Email goes to the supplier admin when the job completes.

forget_customer

ChatGPT
GDPR "right to erasure" for a customer: hard-deletes them when they have no bookings, otherwise anonymizes their personal data (name, email, phone, address) while keeping the financial booking records for accounting. Irreversible.

front_desk_add_house_rule

ChatGPT
Add a rule the front desk follows on the chat and on the phone, in one plain sentence. A new rule is a preference unless the owner says it may never be broken.

front_desk_add_transfer_rule

ChatGPT
Send one kind of call to a person instead of Dash. Write what the call is about in the shop's own words - the front desk reads them on the call. Read front_desk_get_settings first: when a rule for that kind of call already exists, change that one instead.

front_desk_archive

ChatGPT
Put chats or calls away. Nothing is deleted - they leave the list and come back under their own filter.

front_desk_call_back

ChatGPT
Ring back the person from a front desk conversation, on the shop own line. Only calls a number that called the shop first.

front_desk_delete_house_rule

ChatGPT
Remove a house rule, so the front desk stops following it. Get the id from front_desk_list_house_rules.

front_desk_delete_transfer_rule

ChatGPT
Stop passing that kind of call on, so Dash takes them again. Get the id from front_desk_get_settings.

front_desk_dismiss_question

ChatGPT
Take a question off the list without answering it. Nothing is written, so the front desk still hands that one to a person.

front_desk_get_settings

ChatGPT
How the phone answers: what it says when it picks up, which voice says it, whether calls are recorded, whether it rings the owner first, and which calls get passed to somebody else. Read this before changing any of it.

front_desk_list_conversations

ChatGPT
The chats and calls that came in, with what each one wanted and what Dash did about it. Filter by channel, by date, by what Dash did, or to the ones still waiting on a person. Use it to sum up a day or a week without reading every transcript, then front_desk_read_call for one in full.

front_desk_list_house_rules

ChatGPT
The house rules the front desk follows, in the owner's order, and which of them it may never break. Read this before adding one so the same rule is not written twice.

front_desk_list_questions

ChatGPT
Questions customers asked that the front desk could not answer, most asked first. Answer one with front_desk_teach and it leaves this list.

front_desk_mark_handled

ChatGPT
Say somebody dealt with a chat or a call, so it stops waiting on a person and drops off the Needs you count.

front_desk_read_call

ChatGPT
One conversation from the front desk: who it was, what they wanted, what Dash did, and what was said.

front_desk_reopen

ChatGPT
Put a chat or call back in front of whoever is on, after it was marked as dealt with.

front_desk_reorder_house_rules

ChatGPT
Put the house rules in a new order. Any rule left out keeps its place underneath the ones that were sent.

front_desk_restore

ChatGPT
Put chats or calls that were filed away back on the list.

front_desk_status

ChatGPT
Is the booking-page chat live, is the phone answering, and how much of each allowance is left this month. Read this before answering anything about whether the front desk is on.

front_desk_summary

ChatGPT
What the front desk did today, per channel: conversations, how many became a booking, and what those bookings were worth. Answers "what did the phone do today?" and "how is the chat going?".

front_desk_teach

ChatGPT
Answer a question the front desk could not answer. The answer is saved as a knowledge article, so the chat and the phone both give it from then on: parking, directions, what to bring, age or pet rules, weather calls.

front_desk_text_caller

ChatGPT
Text the person from a front desk conversation. Only reaches the number that contacted the shop.

front_desk_update_house_rule

ChatGPT
Reword a house rule, or change whether the front desk may ever break it. Get the id from front_desk_list_house_rules.

front_desk_update_settings

ChatGPT
Change how the phone answers. Send only what changes - the next caller hears it. Get the voice ids from front_desk_get_settings.

front_desk_update_transfer_rule

ChatGPT
Change which calls get passed on, or the number they go to. Get the id from front_desk_get_settings.

generate_cancellation_notes

ChatGPT
Generate the "Cancellation notes" content block for a product, experience, or store product using AI, and save the result to the item. Returns the generated payload.

generate_check_in_details

ChatGPT
Generate the "Check-in details" content block for a product, experience, or store product using AI, and save the result to the item. Returns the generated payload.

generate_content_blocks

ChatGPT
Write the "Additional customer information" sections for a product or experience with AI and save them, using what the item already says about itself. Use this when the owner asks you to write, draft, or fill in those sections rather than dictating the content — when they give you the content, use create_product / update_product / create_experience / update_experience instead. Uses AI credits.

generate_does_not_include

ChatGPT
Generate the "What's not included" content block for a product, experience, or store product using AI, and save the result to the item. Returns the generated payload.

generate_health_and_safety

ChatGPT
Generate the "Health & safety" content block for a product, experience, or store product using AI, and save the result to the item. Returns the generated payload.

generate_highlights

ChatGPT
Generate the "Highlights" content block for a product, experience, or store product using AI, and save the result to the item. Returns the generated payload.

generate_itinerary

ChatGPT
Generate the "Itinerary" content block for a product, experience, or store product using AI, and save the result to the item. Returns the generated payload.

generate_restrictions

ChatGPT
Generate the "Restrictions" content block for a product, experience, or store product using AI, and save the result to the item. Returns the generated payload.

generate_what_to_bring

ChatGPT
Generate the "What to bring" content block for a product, experience, or store product using AI, and save the result to the item. Returns the generated payload.

generate_whats_included

ChatGPT
Generate the "What's included" content block for a product, experience, or store product using AI, and save the result to the item. Returns the generated payload.

get_activity

ChatGPT
Who changed what in the shop (the activity log): bookings cancelled or moved, refunds and payments, prices, customers edited or deleted, settings, team roles and exports, with who did it, when and from where (portal, POS, phone app, API, Dash, booking page, or a customer's own booking link). Use for questions like "who refunded booking 1482?", "what did James change yesterday?" or "who changed the kayak price?". Pass booking_id (or subject + subject_id) for one record's history.

get_agent

ChatGPT
Get details of a specific Dash Agent including its configuration, tools, trigger settings, and recent run history.

get_agent_runs

ChatGPT
Get the run history for a Dash Agent. Returns recent runs with status, summary, and token usage.

get_ai_credit_balance

ChatGPT
Get the current AI credit balance, including monthly plan credits remaining, purchased credit pack balance, and total available credits.

get_ai_credit_usage

ChatGPT
Get AI credit usage for the current month, including credits used, remaining, percentage used, number of requests, and breakdown by feature (e.g. assistant, descriptions).

get_amount_due

ChatGPT
Get the remaining balance (amount due) on a booking, including payments and voucher redemptions.

get_applicable_policy

ChatGPT
Resolve which cancellation policy applies to a single product, experience, bundle, or store product. Mirrors the widget detail-page hierarchy: specific item → category → all-{type} → all. Returns the policy with its tier ladder so you can show the customer the exact refund schedule before booking.

get_available_guides_for_slot

ChatGPT
Return a grouped picker: which guides are available, partially available (with a shift but a warning), or blocked (time-off, double-booked) for an experience slot.

get_booking

ChatGPT
Get detailed information about a specific booking by ID or reference number.

get_booking_agreement

ChatGPT
Look up the rental agreement for a booking: whether it has been signed, who signed it and when, whether it was emailed, and the wording the customer sees.

get_booking_condition_reports

ChatGPT
Get all condition reports for a specific booking. Shows condition assessments logged at pickup and return.

get_booking_demand

ChatGPT
Get per-day rental booking counts and experience session participants for scheduling context.

get_booking_form_status

ChatGPT
Check which waivers/forms are complete or pending for a booking.

get_booking_history

ChatGPT
Read a booking's History tab: every change, payment, email, pickup, return and check-in, newest first, with who did it and from where (a staff member, the customer through their own booking link, Dash AI, or automatically). Use it for any "who changed", "what changed", "when did", "did the customer change" or "has anyone touched" question. Never say a booking is unchanged without reading this first.

get_booking_notes

ChatGPT
Get all internal notes on a booking.

get_booking_request

ChatGPT
Review one booking request in full before answering it: what they asked for (a departure, or rental items with a pickup and return), what they wrote, the total, whether there is room, and which qualified guides are free.

get_booking_stats

ChatGPT
Get booking statistics for a date range. Use "period" for standard ranges (preferred), or start_date/end_date for custom ranges.

get_bookings_missing_waivers

ChatGPT
List today's pickups + experience check-ins that have not yet completed a mandatory waiver signature, with consent-tracking state per booking (signed progress, opened-but-not-signed count, next reminder due, chase exhausted). Surfaces gear-handover and check-in friction before customers arrive.

get_bundle

ChatGPT
Get detailed information about a product bundle including items and pricing.

get_business_hours

ChatGPT
Get the business operating hours.

get_byok_status

ChatGPT
Get the supplier's Bring-Your-Own-Key (BYOK) status: whether BYOK is enabled, and per-provider status (openai, anthropic, moonshot, xai, google) including last-4 key suffix and validation state. Never returns the full plaintext key.

get_calendar_sync_status

ChatGPT
Check two-way calendar sync: whether Google Calendar is connected, which directions are on (bookings out / blocks in), the read-only iCal feed URL to subscribe in any calendar app, and how many external iCal subscriptions block availability.

get_campaign_report

ChatGPT
Get the full performance report for a campaign: send/delivery counts, opens, clicks, and attributed bookings/revenue when available.

get_campaign_stats

ChatGPT
Get performance statistics for an email campaign.

get_checklist_template_detail

ChatGPT
Get full details of a checklist template including all items with their types and criticality.

get_checklist_templates

ChatGPT
List available checklist templates for workshop maintenance. Returns prebuilt templates and supplier's custom templates.

get_closed_days

ChatGPT
Which dates the business is closed between two dates, and why: closures, dates outside the open dates, and special hours set to Closed.

get_cohort_message_schedule

ChatGPT
Show what is scheduled to send and what already went out — the real date for each message, how many people it reached, and anything skipped. Give a cohort ID for one cohort, or a scope for a whole set of messages.

get_condition_history

ChatGPT
Get the condition report history for a specific inventory item. Shows all condition assessments logged at pickup and return over time.

get_custom_domains

ChatGPT
The shop's own addresses (like book.theirshop.com): what each opens (booking page or website), whether it is live, and if not, the two records to add at the company that holds the domain (say "the two records at your domain company", never "DNS records") with the short names to type, and the steps at the company that holds the domain. Only call an address live when status is "live".

get_customer

ChatGPT
Get detailed customer information including booking history.

get_customer_notes

ChatGPT
Get all internal notes on a customer profile.

get_delivery_run

ChatGPT
List the delivery run over a range of days: every drop-off at a customer's address and every collection back from one, the same stops the Deliveries run sheet shows, with the day and time, customer, address, items and distance. Use it for any question about deliveries, drop-offs, collections or the van over one or more days. Never say there are no deliveries or collections in a window without reading this for the whole window.

get_embed_code

ChatGPT
Get the codes that put one item on the shop's own website: the direct link, the embed code (an iframe of the whole item page), a calendar-only embed for rentals and experiences, a floating "Book now" / "Buy now" button, and an Add to booking button for the shop's own product page (bundles and programs get Book now). Works for rentals, experiences, store products, bundles, programs, collections, the gift card page and the services page. Every code passes ?ref= link tags and ad click ids through to the booking.

get_embed_settings

ChatGPT
Read how the shop's booking pieces look on its own website: the single item style (full page, calendar only or a button), the Add to booking button words and icon, the My booking button, and whether they match the website's look.

get_experience

ChatGPT
Get detailed information about an experience.

get_experience_recurring_schedule

ChatGPT
Read the repeating schedule an experience runs on - the weekdays, the times, and the dates or seasons it applies to. Call this before changing a repeating schedule so the parts not mentioned are kept.

get_experience_schedule

ChatGPT
Get upcoming scheduled experience sessions with capacity and availability info. Shows all scheduled time slots across all experiences, with how many spots are booked vs available.

get_expiring_certifications

ChatGPT
List staff certifications that are expired or expiring within a window (default 30 days).

get_expiring_compliance

ChatGPT
The papers for every boat in the shop: inspection and insurance expiry dates, each date's state (not_set, valid, expiring within 30 days, expired), the policy number, and whether a lapse stops bookings. Also lists older charter experiences that keep their own dates. To change a date use update_product.

get_fit_ticket

ChatGPT
Get the resolved fit ticket for a booking: pack items at fit_ticket step, the latest fit confirmation per participant, customer fit history, and the suggested DIN value.

get_form

ChatGPT
Get details of a waiver/form template including fields and assigned products/experiences.

get_form_builder_options

ChatGPT
List every kind of question you can put on a waiver, survey or guide form - text, choices, ratings (NPS, stars, satisfaction, effort), signature, initials, agreement checkbox, section headings, file upload and more - and how to describe each. Call this before build_form or add_form_field; an unrecognized type is refused rather than quietly turned into a text box.

get_form_responses

ChatGPT
List responses submitted for a waiver/form. Returns submitter name (from linked customer or form fields), submission date, and all submitted field values.

get_gear_out_by_hour

ChatGPT
How many units of each item are out at the same time in each hour of the day, in the shop's time, over a range of days: rental hires from pickup to return plus the gear sessions hold, back to back counted once (the Today screen's "Up to N at once"). Use it for "busiest hour", "most out at once", "what time of day is most gear out", "how many kayaks are out at 2 PM on Saturdays". Filter by weekdays and by items (names like "kayak", ids or categories). Returns the busiest hour, each hour's most and average at once, and each item's own peak. Rentals carry pickup and return times, so these questions always have an answer. Not a count of bookings or of when bookings were made, and not for what is out right now: get_today's out_now answers that.

get_google_drive_status

ChatGPT
Check Google Drive archiving: whether Google Drive is connected, which Google account and folder signed waivers are saved to, and when a record was last archived.

get_help_article

ChatGPT
Get the full content of a specific help centre article by slug. Use search_help_centre first to find article slugs.

get_inventory

ChatGPT
Get inventory status for a product. Optionally check availability at a specific date/time range — shows each inventory item and whether it is available or booked during that period.

get_inventory_by_location

ChatGPT
Get inventory breakdown by business location for a product. Shows how many units are at each location with current availability.

get_inventory_report

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

get_inventory_status

ChatGPT
Get status of individual inventory items for a product, showing which items are available, rented, or in workshop.

get_late_pickups

ChatGPT
Get bookings with overdue pickups (confirmed but not yet picked up past start date).

get_late_returns

ChatGPT
Get bookings with overdue returns (picked up but not returned past end date).

get_locations

ChatGPT
Get the business locations.

get_low_inventory_products

ChatGPT
Get products with low current availability. Shows products where current available quantity (accounting for active bookings) is below the threshold. This is point-in-time availability for TODAY.

get_low_stock_store_products

ChatGPT
Get store products with low stock levels, including out of stock items.

get_mailchimp_status

ChatGPT
Check the Mailchimp connection: whether it is connected, which audience customers go into, who goes, whether bookings add tags, how many customers are in Mailchimp, and when it last synced.

get_manifest

ChatGPT
Get the manifest / participant list for experience sessions on a date, or the detailed manifest for one departure (pass schedule_id). The detailed manifest lists each participant, their check-in status, and — for tour packages — the booking's chosen options (e.g. "Hotel category: Deluxe", "Coach type: Sleeper"). When the experience asks each person something, the detailed manifest also carries sizes_and_answers: each person's sizes and answers (a certificate level, a weight), who is still missing one, and the kit for the session counted by size with any size the shop owns too few of. For boat charters it also includes USCG passenger details.

get_my_account

ChatGPT
Show the signed-in person's own name, the email they sign in with, and whether two-factor authentication (2FA) is on. Read only.

get_my_notifications

ChatGPT
Show which emails land in the signed-in person's own inbox and whether each is currently on. Use this when someone asks why they are, or are not, getting a particular email.

get_needs_you

ChatGPT
What needs the owner right now - the list on the owner's dashboard Dash card: booking requests, booked departures in the next two days with no guide, late returns, unpaid bookings, marketplace problems, boat papers and staff certifications to renew, and changes waiting for the owner's OK. Each group has a count, its lines and where to fix it.

get_nps_trend

ChatGPT
Get NPS score trend over recent months for a survey.

get_payment_transactions

ChatGPT
List payment transactions for a booking. Shows all payments, refunds, and security deposit transactions.

get_product

ChatGPT
Get detailed information about a product.

get_program_insights

ChatGPT
Get a program's insights summary: upcoming sessions, enrollments, revenue and pricing — for answering questions on the program detail page.

get_promo_code

ChatGPT
Get promo code details and usage statistics.

get_qualified_staff_for_experience

ChatGPT
List staff who hold every certification an experience requires, each current (not expired) as of a given date. Identifies the guides cleared to run a certification-gated departure.

get_rental_time_out

ChatGPT
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, hours for gear rented by the hour. Each booking is cut to the window, cancelled bookings are left out, and each item lists the bookings behind its numbers. Set by_unit to split an item into its individual units.

get_revenue_summary

ChatGPT
Get performance snapshot for a date range. Shows sales revenue, bookings in period, bookings received, and breakdowns by rental vs experience. Use "period" for standard ranges (preferred).

get_reward_settings

ChatGPT
Read the shop's loyalty rewards: the thank-you code customers get after a visit (when it sends, the discount, how long it lasts), the bring-a-friend discounts, and what rewards did in the last 12 months.

get_schedule_insights

ChatGPT
Get scheduled hours, staff count, per-staff hour breakdown, and coverage gaps for a week.

get_security_deposits

ChatGPT
How much the shop kept from security deposits over a period, and on which bookings and items: the total kept, what went back, each booking with its customer, items, amount kept and the day it was kept, and the same totals grouped by item.

get_selling_channels

ChatGPT
Where the shop sells on marketplaces (GetYourGuide, Viator): whether each is connected and taking bookings, the setup steps done, every problem stopping a sale in plain words, and how GetYourGuide prices are matched. Pass experience_id to get one experience: its status on each marketplace (GetYourGuide, Viator and Manawa), the ID to paste there (id_name is what that site calls it), and its last marketplace booking.

get_series

ChatGPT
Get one multi-session series with its sessions, bookings and payment totals.

get_service_due

ChatGPT
Which rental units are due for their next scheduled service, or close to it. Reads each unit against its product's service interval (rentals and/or days since its last service), most urgent first. For what is already IN the workshop use get_workshop_items.

get_service_times

ChatGPT
Free times on one day for a service that is booked for a time with a person (an appointment, a fitting, a lesson), and who is free at each time. Use it before booking or moving an appointment, and when the owner asks who is free. A drop-off service has no times; it says so.

get_settings

ChatGPT
Show the current setup for one settings area, together with exactly which fields can be changed and what each accepts (type, allowed values, units). ALWAYS call this before update_settings — it is what tells you the real field names. Use list_settings_areas first if you do not know the area key.

get_shift_history

ChatGPT
View the audit trail for a shift: who created it, every edit, and status changes.

get_sms_history

ChatGPT
List recent SMS messages for this supplier. Optionally filter by booking_id, customer_id, or status (delivered / failed / etc).

get_sms_wallet_balance

ChatGPT
Returns the current SMS wallet balance, its low-balance status, and estimated message counts at US/UK/AU rates.

get_staff

ChatGPT
Get staff member details.

get_staff_availability

ChatGPT
When a staff member can work: their usual week, what they said about upcoming dates, and days off waiting for an OK.

get_staff_schedule

ChatGPT
Get staff shifts for a date, optionally filtered by staff member.

get_store_product

ChatGPT
Get details of a specific store product by ID, including variations, stock levels, and images.

get_store_stats

ChatGPT
Get store sales statistics including total revenue, items sold, average order value, and active product count for a given period.

get_stripe_status

ChatGPT
Check the Stripe Connect status for this business. Shows whether Stripe is connected, onboarding complete, charges/payouts enabled.

get_supplier_widget_settings

ChatGPT
Read every widget-configuration field for the current supplier: URL slug, trust badges, default listing mode, timezone display style, tagline, and social share image. Use before update_supplier_widget_settings so you know the current state.

get_support_ticket

ChatGPT
Get details of a support ticket.

get_surcharges

ChatGPT
List the shop's surcharge rules: extra amounts added to bookings on chosen days of the week or dates (weekend rate, holiday surcharge). Each rule has its id, the label customers see, when it applies, the amount and unit, and whether it is active (a rule with no amount or no days or dates charges nothing).

get_survey_analytics

ChatGPT
Get NPS score, response rate, and analytics for a survey.

get_till

ChatGPT
The cash drawer today at each location: is the till open, what it started with, cash sales and refunds, cash put in or taken out, what should be in the drawer now, once closed what was counted, over or short, and what went to the bank, and any cash taken that day that no till counted.

get_timesheet

ChatGPT
Get actual hours worked per staff member for a date range (timesheet for payroll).

get_today

ChatGPT
The day at a glance, exactly as the Today screen shows it: what needs the owner next (late pickups, late returns, missing waivers, unpaid, no guide), the gear to get out by time, each session with booked/capacity, check-ins, signed waivers and payment, and the hires to pick up, out now and due back. It also gives the shop's clock (now) and, for today, starting_now: the first time a hire can start from now, and out_now: the units of each item out of the shop this minute (picked up and not back, plus gear on running sessions). Use for "what is on today", "who is coming in", "what is late", "what do we need to get out". For "how many kayaks are out right now" call it with section "out_now" and answer from out_now alone.

get_today_busy_windows

ChatGPT
Aggregate today's pickup/return/experience-start times into 30-minute buckets and return the peak windows. Identifies counter rush hours.

get_top_customer_cities

ChatGPT
Get the top cities customers come from, ranked by distinct customer count. Based on customers who made bookings in the period.

get_top_customers

ChatGPT
Get top customers by bookings and revenue for a date range.

get_top_experiences

ChatGPT
Get top performing experiences by bookings or revenue for a date range.

get_top_products

ChatGPT
Get top performing rental products by bookings or revenue for a date range.

get_top_store_products

ChatGPT
Get top-selling store products by revenue or quantity sold for a given period.

get_understaffing_warnings

ChatGPT
Flag days with bookings but no staff scheduled, and experience sessions missing a guide.

get_voucher

ChatGPT
Get voucher details and usage statistics.

get_waitlist_stats

ChatGPT
Get waitlist statistics: total waiting, notified today, conversions this month, conversion rate.

get_waiver_export_status

ChatGPT
Get the status of a specific bulk waiver export by ID. Returns a fresh 24h signed download URL if the file is currently downloadable.

get_weather_forecast

ChatGPT
Get today and tomorrow's weather forecast for the supplier's primary location. Returns temperature high/low, condition, expected rain and wind speed, each day with a display block in the shop's own units (mph and °F for an imperial shop). Sourced from Open-Meteo and cached for 30 minutes.

get_website

ChatGPT
The supplier's website at a glance: published state, public URL, custom domain, site SEO, theme (colors, fonts, button style) and every page with its id, title, slug and section count. Call this FIRST before editing anything - every other website tool needs the page ids it returns.

get_website_page

ChatGPT
One page of the supplier's website: its sections in order, each with id, type and current content (headlines, text, button labels). Call it to find the section id and prop names before update_website_section.

get_who_is_on_now

ChatGPT
List staff currently on the clock (clocked in, including who is on break).

get_workshop_checklists

ChatGPT
Get all checklists attached to a workshop job with progress and item completion status.

get_workshop_detail

ChatGPT
Get full details of a specific workshop item by workshop log ID. Shows job details, timeline, overdue status, and notes — like the workshop detail page.

get_workshop_items

ChatGPT
List items currently in the workshop (maintenance, repair, etc.).

hold_deposit_on_saved_card

ChatGPT
Hold (or charge, per the shop setting) a booking's security deposit on the card the customer saved when they paid online. Only works when the booking was paid online through a provider that keeps the card. Without confirmed: true the tool returns a preview instead of taking the deposit.

list_affected_bookings_by_weather_rule

ChatGPT
For a weather threshold rule, the bookings its weather would reach. When the rule has an open proposal, these are exactly the bookings in that proposal's hours (the ones its Close bookings counts); otherwise the bookings in the rule's lookahead window from now. Each row says when it runs in shop time.

list_agent_templates

ChatGPT
List the pre-built Dash Agent templates, optionally filtered by use-case category or industry. Each entry includes the template id used to create an agent from it.

list_agents

ChatGPT
List all Dash Agents for this supplier. Returns agent names, statuses, trigger types, and run stats.

list_blackouts

ChatGPT
List rental blackout periods — business-wide closures that make rentals unbookable on every channel (holidays, maintenance windows, one-off events).

list_booking_options

ChatGPT
List the ways one experience can be booked - a surf school might sell 'Group lesson', 'Semi-private' and 'Private lesson'; a cooking class 'Join a class' and 'Book the kitchen'; a boat 'Shared cruise' and 'Whole boat'. Every experience has at least one. Call this before pricing an experience, before setting up a session only one of them runs on, and before booking, so the right way of booking is priced and charged.

list_booking_requests

ChatGPT
List booking requests for experiences and rental items the owner approves by hand. Use this for "what is waiting on me", "any requests?", or before approving or declining one.

list_bookings

ChatGPT
List bookings with optional filters. Returns paginated results.

list_bundles

ChatGPT
List product bundles/packages with optional search. Returns bundle details with items and pricing.

list_campaigns

ChatGPT
List email marketing campaigns.

list_collections

ChatGPT
List the shop's collections (hand-picked pages of anything it sells, each with its own link) and what is in each one, in order.

list_custom_reports

ChatGPT
The shop's own reports under Reports > My reports: id, name, what each shows and who it is emailed to.

list_customers

ChatGPT
List customers with optional search and date filters.

list_experience_categories

ChatGPT
List all experience categories.

list_experience_guides

ChatGPT
List guides currently assigned to an experience availability slot.

list_experience_rate_categories

ChatGPT
List experience rate categories (e.g., Adult, Child, Senior) used for participant-based pricing. Call this before creating an experience with participant pricing to get the rate category IDs.

list_experience_schedule_periods

ChatGPT
List the date ranges an experience repeating schedule is built from - each with its own days and times ("July runs 9, 10 and 11am; August runs 10, 11 and 12"). Read this before changing a schedule so the range ids are known.

list_experience_sessions

ChatGPT
List one experience's sessions with their ids, dates, times, capacity, how many are booked, the spots still on sale (the booking page's number, with the reason when gear or guides leave fewer) and which guides are on. The session_id it returns is what every session change, move, staffing or removal needs.

list_experiences

ChatGPT
List experiences/tours with optional filters. Returns details including pricing, duration, and capacity.

list_extras

ChatGPT
List the booking extras catalog (add-ons like helmets, insurance, photo packages sold on rental product and experience bookings). Filter by product_id or experience_id to see what is offered on a specific item.

list_form_fields

ChatGPT
Show what is currently on a waiver, survey or guide form - its sections and every question inside them, in order, with each id. Use this before editing or reordering anything.

list_forms

ChatGPT
List all waiver and form templates for the business.

list_google_reviews

ChatGPT
Read the customer reviews pulled in from the shop's Google Business profile: who left it, how many stars, what they wrote, and whether it has been answered.

list_groups

ChatGPT
List the business's saved groups (reusable participant rosters) with their members.

list_items_by_date

ChatGPT
List every experience available on a specific date, grouped with their bookable time slots. Returns the same activity + slot grid the date-first widget listing renders.

list_knowledge_articles

ChatGPT
List everything the owner has taught the booking chat — the answers it gives customers about things not in the catalog (parking, dogs, weather calls, age limits). Use before writing a new one so an existing answer is updated instead of duplicated.

list_open_seasons

ChatGPT
List "open dates" (operating season) windows — the date ranges the business takes bookings. With any active window, dates OUTSIDE every window are unbookable on every channel. No windows = open all year.

list_pending_weather_breach_proposals

ChatGPT
List pending weather closures waiting on the owner to confirm or dismiss. Each was raised when a threshold rule with auto-close off (effect_propose_auto_close=false) and effect_dashboard_banner=true crossed its line. close_summary says what confirming does and affected_bookings_count how many bookings fall in the hours: tell the owner before confirming. Confirming creates a location closure; dismissing leaves bookings open. rule_condition is in the shop's own units.

list_policies

ChatGPT
List all cancellation/reschedule policies for the supplier with their tier ladders, non-refundable fees, refund methods, and applications.

list_pricing_templates

ChatGPT
List the reusable pricing templates the shop has set up (Settings → Rentals). A template holds a whole rate card — the durations and what each one costs — so many products can share one. Call this FIRST whenever a product should be priced by a named rate card ("Performance tier", "Standard rates"), then pass its id to create_product/update_product as pricing_template_id. Tells you whether each template needs a base price.

list_product_categories

ChatGPT
List all product categories.

list_products

ChatGPT
List rental products with optional filters. Returns product details including starting price.

list_program_messages

ChatGPT
List the emails and texts that go out around a booking — what each one says, who it goes to, and when. Covers all bookings, one line of business (rentals, experiences or bundles), a single item, or a program.

list_program_participants

ChatGPT
List who is enrolled in a program — one row per person, with the rate type they were booked at, how many sessions they cover and which booking they came in on. A reusable program rolls up every one of its cohorts.

list_promo_codes

ChatGPT
List promo codes with optional search.

list_quotes

ChatGPT
List the business's quotes with their current state (draft, sent, viewed, accepted, declined, expired), customer, total, expiry date and whether the dates are held.

list_schedule_templates

ChatGPT
List saved schedule templates.

list_seasons

ChatGPT
List pricing seasons configured for this supplier. Seasons define date ranges, time ranges, or day-of-week rules used for seasonal pricing on products and experiences.

list_series

ChatGPT
List the business's programs — bookable packages of session dates that a customer books as ONE enrollment. Shows each program's activities, dates, pricing, whether it is a reusable template, and whether it is archived.

list_services

ChatGPT
List the services the shop offers: price, whether each is dropped off or booked for a time with a person, how long it takes and who does it. Optionally filter by location and show per-day, per-location availability.

list_settings_areas

ChatGPT
List every part of the shop's setup that can be viewed or changed — business details, localization, rentals, experiences, payments, the booking widget, messaging, reviews, SMS and more. Each entry returns an area key to pass to get_settings. Start here when you need to change how something is configured and do not already know the area key.

list_settings_records

ChatGPT
List the setup records of one kind - locations, tax rates, custom fields, staff roles, service types, manifest documents, pricing templates or special opening hours - together with exactly which fields can be set on each and which are required. Call with no collection to see which kinds exist. ALWAYS call this before creating or updating one of these records.

list_staff

ChatGPT
List staff members.

list_staff_certifications

ChatGPT
List all certifications held by a staff member, each with its expiry status (valid / expiring / expired / no expiry). Use to see what a guide holds before adding or updating, or to find a certification's id.

list_store_categories

ChatGPT
List all STORE PRODUCT categories for this business.

list_store_products

ChatGPT
List store products with optional filters. Store products are physical items for sale (not rental products).

list_support_tickets

ChatGPT
List support tickets for the current user.

list_surveys

ChatGPT
List customer satisfaction surveys.

list_tags

ChatGPT
List all available booking tags for this business.

list_time_off

ChatGPT
List staff time-off requests. Filter by staff, status, or date range.

list_unsigned_agreements

ChatGPT
Who has not signed the rental agreement? The bookings picked up in a date window whose rental agreement is not signed yet, soonest first, with the customer, pickup time, whether it was emailed and whether they opened it. picks_up, emailed and opened are already phrased against the shop's clock ("emailed yesterday evening", "never opened"): quote them as given. The agreement is separate from waivers and forms (get_bookings_missing_waivers). Says agreements_on false when the shop has agreements switched off.

list_vouchers

ChatGPT
List gift vouchers with optional search.

list_waiver_exports

ChatGPT
List the supplier's recent bulk waiver export jobs with status + download eligibility.

list_weather_threshold_rules

ChatGPT
List W3 weather threshold rules for the current supplier. Each rule defines a metric + operator + value (e.g. "wind_speed_kmh > 25") at a specific location (or all locations), with effects on breach: fire subscribed agents; propose_auto_close closes the hours automatically; with it off, dashboard_banner offers the owner a one-click close (both off = bots only). display_condition is in the shop's own units. Returns rules with their current dedupe state (last_breached_at).

list_website_posts

ChatGPT
The news posts on the shop's website, newest first: id, title, topic, status (draft, scheduled or live), when it goes or went live in the shop's time, how many people read it, and its web address once live.

load_schedule_template

ChatGPT
Apply a saved schedule template to a target week.

log_condition_report

ChatGPT
Log a condition report for an inventory item in a booking. If condition is "damaged" on return, the item is automatically sent to workshop.

lookup_barcode

ChatGPT
Look up what a barcode belongs to (product or inventory item).

mark_delivery_handover

ChatGPT
Record that the van dropped off a delivery booking at the customer's address (step delivered), or collected it at the end of the hire (step collected). The booking moves to picked up or returned with it. Only for bookings that are delivered; collected only when the shop goes back for the items.

mark_participants_back

ChatGPT
Mark people back from a session they were checked in on: named people by participant_id, everyone on one booking (booking_id, seats not named yet included), or everyone out on the session (everyone=true). undo=true puts named people back to still out. When the last person out is marked back the session finishes, as Complete does.

mark_shifts_open

ChatGPT
Clear the staff assignment on every shift in a date range and mark them OPEN.

match_marketplace_price

ChatGPT
Match one of the shop's prices (a rate category such as Family or Traveler) to a GetYourGuide price type, or keep it off GetYourGuide with NONE. Prices named like a GetYourGuide type (Adult, Child, Senior) are matched automatically, so this is for the leftovers get_selling_channels lists. Each GetYourGuide type carries one price.

move_booking_dates

ChatGPT
Reschedule a rental or experience booking to new dates without changing items. Auto-sends reschedule emails to admin + customer. On a rental the customer has already picked up, the return can still be moved later or earlier while the pickup stays as it is - use this to shorten a booking someone used less of (came late, brought it back early) and pass reconciliation_method=refund_to_card to give the difference back.

move_service_appointment

ChatGPT
Move a service booked for a time (an appointment) to a new time, and optionally to another person. Check the new time with get_service_times first. Never pick a time the owner did not ask for.

move_staff_shift

ChatGPT
Move a shift to a new date, time, or staff member (drag-and-drop equivalent).

move_website_section

ChatGPT
Move a section to a different position on its page. 0 means first after the big banner, which stays at the top unless above_banner is true. The result lists the page order now.

notify_waitlist_entry

ChatGPT
Send availability email notification to a specific waitlist entry.

preview_widget_page_meta

ChatGPT
Preview the per-page SEO meta (title, description, Open Graph, Twitter card, canonical URL, robots) that the widget will emit for a given page. Use page_type="item_detail" together with item_id + item_type to preview an experience/product/store-product detail page, or omit them for listing/cart/checkout pages.

process_refund

ChatGPT
Process a Stripe refund for a booking. Requires confirmation. The booking must have a Stripe payment to refund.

publish_roster

ChatGPT
Publish the roster for a date range: emails each team member their shifts and marks the shifts published. Default range is next week (Monday–Sunday). By default only new/changed shifts go out; publish_all emails everyone their full week again.

quote_delivery

ChatGPT
Work out what delivering to an address would cost, before anything is booked. Answers with the distance, the charge and what the charge covers, or the shop's own reason it is not on offer (too far, under the minimum order, not enough notice, address not found). The distance comes from open map data, so it is close rather than exact - say so if you quote it to a customer.

record_payment

ChatGPT
Record a manual/offline payment on a booking (cash, bank transfer, credit card swipe, etc). For Stripe online payments, use send_payment_link instead.

record_security_deposit

ChatGPT
Record a manual (cash, bank transfer, other) security deposit as held on a booking - the shop physically holds the money; no card is charged. Nothing may be collected yet. Pass amount when the owner names the figure taken; it becomes the booking's deposit. Without confirmed: true the tool returns a preview instead of recording.

record_voucher_payment

ChatGPT
Record a payment against a voucher purchase (e.g. the buyer paid cash in store). When the payments cover the voucher's value it becomes paid and redeemable, and the purchaser/recipient emails go out.

reject_time_off

ChatGPT
Reject a pending staff time-off request.

release_security_deposit

ChatGPT
Release a security deposit hold or refund a security deposit charge for a booking. Requires confirmation.

remove_booking_tag

ChatGPT
Remove a tag from a booking.

remove_bundle_item

ChatGPT
Take one item out of a bundle. The product, experience or add-on itself is untouched.

remove_checklist_from_workshop

ChatGPT
Remove a checklist from a workshop job.

remove_custom_domain

ChatGPT
Remove one of the shop's own addresses. It stops opening the booking page or website straight away; the pages stay at their EquipDash address.

remove_experience_schedule_period

ChatGPT
Remove one date range from an experience repeating schedule. The future sessions only that range produced are removed; any with bookings are kept.

remove_group_member

ChatGPT
Remove a customer from a saved group's roster. The customer record itself is untouched.

remove_guide_from_experience

ChatGPT
Remove a guide from an experience availability slot.

remove_program_activity

ChatGPT
Remove an activity from a program, along with any of its dates that were on the program.

remove_program_message

ChatGPT
Remove a message from a program's plan. Future cohorts stop sending it; anything already sent stays in the customer's history.

remove_program_session

ChatGPT
Removes one date from a program. Session IDs are listed by get_series.

remove_website_section

ChatGPT
Remove a section from a page of the supplier's website. The footer cannot be removed.

reorder_booking_options

ChatGPT
Set the order the ways of booking are listed in everywhere customers and staff see them - booking page, POS, apps. Send the complete list of ids for one experience in the order wanted, top first.

reorder_bundle_items

ChatGPT
Set the order a bundle's items appear in. Pass every item id in the order you want.

reorder_form_fields

ChatGPT
Put a form's questions in a new order. Pass the ids in the order you want; anything left out keeps its relative order at the end.

reorder_rate_categories

ChatGPT
Set the order rate categories are listed in everywhere customers and staff see them - booking widget, POS, experience pricing. Send the complete list of ids in the order wanted, top first.

reorder_website_pages

ChatGPT
Reorder the supplier's website pages (navigation order). Pass every page id from get_website in the new order.

repeat_staff_shift

ChatGPT
Copy a shift onto one or more target dates (same staff, same times).

reschedule_experience_slot

ChatGPT
Bulk-moves every booking on an experience departure to a new datetime — for example when a whole departure is rescheduled for weather. Sends each customer the new time and a fallback link to pick a different slot. Atomic — rolls back the whole sweep if any booking conflicts.

restore_booking_option

ChatGPT
Offer a retired way of booking again. Use list_booking_options with include_archived to find retired ones.

restore_rate_category

ChatGPT
Offer a retired rate category again. Use list_experience_rate_categories with include_archived to find retired ones.

revert_booking_pickup

ChatGPT
Undo a rental booking's pickup — put the items back to confirmed (in the shop again). Only possible while nothing on the booking is marked returned. Payments and deposits are untouched.

revert_booking_return

ChatGPT
Undo a rental booking's return — put the items back to picked up (out with the customer again). Works for a partial return too. Payments and deposits are untouched.

revert_experience_booking

ChatGPT
Undo a step on an experience booking marked by mistake. step "completion" puts a completed booking back to checked in; step "check_in" puts a checked-in booking back to confirmed (undo the completion first). Payments are untouched.

run_agent

ChatGPT
Trigger a manual run of a Dash Agent. The agent will execute in the background.

run_custom_report

ChatGPT
Run one of My reports and read its figures, block by block, with a link to open it.

save_schedule_template

ChatGPT
Save the current week as a named schedule template.

schedule_campaign

ChatGPT
Schedule a draft campaign to be sent at a future date/time (ISO 8601, UTC).

search_customers

ChatGPT
Search for customers by name, email, or phone.

search_help_centre

ChatGPT
Search help centre documentation for guides and how-to articles. Returns matching articles with titles, sections, excerpts, and links.

send_booking_agreement

ChatGPT
Email a booking's rental agreement to its customer with a secure link where they read it and sign. Sending again delivers the latest wording. Does nothing once the agreement is already signed.

send_booking_email

ChatGPT
Send an email to the customer for a booking. Can send a booking confirmation, reminder, or overdue notification (overdue pickup, overdue return, overdue check-in).

send_campaign_now

ChatGPT
Send a draft or scheduled campaign to its whole audience right now (email or SMS). This goes out to real customers immediately — always confirm with the user before calling.

send_customer_email

ChatGPT
Send a custom/freeform email to a customer with an arbitrary subject and body. The email will be rendered inside the supplier's branded email template.

send_damage_charge

ChatGPT
Record an estimated damage charge on a condition report and send the Stripe payment link + dispute-evidence pack to the customer. Requires bookings.fulfillment permission.

send_form_to_customer

ChatGPT
Generate an access link for a waiver/form for a booking customer. Returns the URL that can be shared with the customer.

send_hours_to_payroll

ChatGPT
Send the hours worked in the current pay period to Xero Payroll now, as draft timesheets the owner approves in Xero. They also go automatically every night. Only works when Xero is connected with payroll (Australia, New Zealand, UK).

send_payment_receipt

ChatGPT
Send a payment receipt email to the customer for a specific payment transaction. Requires confirmation.

send_pre_arrival

ChatGPT
Send the pre-arrival contextual message (directions, what to bring, waiver link) to the customer for an upcoming booking. Only sends if the supplier has pre-arrival messages enabled.

send_quote

ChatGPT
Email a quote to its customer with a secure link where they review it and accept or decline. Sending again after an edit delivers the latest version.

send_survey

ChatGPT
Email a survey to a booking's customer right now. The survey must be published and apply to the booking.

send_to_workshop

ChatGPT
Send rental inventory to the workshop for maintenance, repair or cleaning. Item mode: pass inventory_id for a specific asset. Quantity mode: pass product_id with quantity for a group-tracked pool. Without dates the send is immediate; with scheduled_start_at it is scheduled for later.

send_waiver_reminders

ChatGPT
Chase the customers who still haven't signed their waivers — re-sends the waiver request only to the unsigned. One booking (booking_id) or several at once (booking_ids). Honors the supplier's waiver-reminder cadence settings.

set_asset_out_of_service

ChatGPT
Take a rental asset out of service (or bring it back). Out-of-service units are not bookable, but unlike a workshop send no workshop job is created. For a group-tracked pool pass quantity to mark only some units down; omit it to take the whole record down or bring it all back.

set_booking_extra_price

ChatGPT
Sets the price of an extra on a booking whose price is set when booked (get_booking shows price_pending and extra_line_id), adds it to the booking total and emails the customer the updated booking.

set_business_hours

ChatGPT
Set the shop's weekly opening hours. Give days (or leave days out to mean every day) with an open and close time, or mark those days closed. Use for "open 7 to 6 every day", "we are closed Sundays", "Saturdays we open at 8". This sets the WEEKLY pattern; a one-off date is a closure or special hours, not this. Times are 24-hour "HH:MM".

set_experience_day_times

ChatGPT
Change the start times ONE day of the week runs on an experience's repeating schedule, leaving the rest of the schedule alone - "add a 9:30 PM on Fridays", "drop the 8am on Sundays", "put Saturday back to the usual times". Every other day keeps following the shared times. Use set_experience_recurring_schedule when the whole pattern changes.

set_experience_price

ChatGPT
Change one price an experience already sells: one rate (Adult, Child...) or its group price, optionally for one season or one way of booking it.

set_experience_question

ChatGPT
Add, change or stop one question an experience asks each person at checkout, such as a certificate level, a weight or "Can you swim?". Leave out field_id to add one; pass field_id (from get_experience asks_each_person) to change it, or with remove=true to stop asking it here (answers already given are kept). checked_at_checkin=true means the crew checks it at check-in and a missing answer is flagged, never blocking. For item sizes use sync_experience_equipment with ask_size instead.

set_experience_recurring_schedule

ChatGPT
Set the repeating schedule an experience runs on - which weekdays, at which times, over which dates or seasons - and regenerate its sessions. This REPLACES the existing repeating schedule: future sessions the new pattern no longer produces are removed, except any with bookings.

set_group_size_prices

ChatGPT
Price an activity by the size of the group: "$90 for 2, $120 for 3 to 4, $160 for 5 to 8". Each size becomes one private way of booking it with its own price, on the same activity; sent again it updates the same ones, so a change to one size sends every size.

set_marketplace_confirmation_email

ChatGPT
Switch on or off whether a customer who books through GetYourGuide, Viator or Manawa gets the shop's own booking confirmation email. The email leaves out prices, since the marketplace took the payment, and has no cancel or change links. Off until the owner switches it on, per marketplace.

set_package_choices

ChatGPT
Replaces all choice groups and options on a tour package in one call — the edit path for a package (changing a price or label, removing or reordering an option or group). Takes the full desired set of groups; anything omitted is removed. The current set is returned by get_experience. The experience must already be a tour package.

set_program_session_choice

ChatGPT
Group a program date into a 'pick one' choice, so the customer takes exactly one of the dates in that group instead of all of them (e.g. a Saturday or Sunday option). Alternatives share the same choice name. A null choice name returns the date to being always included.

set_program_waiver

ChatGPT
Choose how forms apply to a program: 'per_activity' means every included activity's own forms apply, 'single' means ONE form covers the whole program (and needs a published participant form).

set_staff_availability

ChatGPT
Set when a staff member can work: their usual week, specific dates, or both. Days left out keep their current hours.

set_up_service

ChatGPT
Add a service the shop offers, or change one: its price, whether it is dropped off or booked for a time with a person (an appointment), how long it takes, the gap after, who does it, how many at once and how far ahead it can be booked. Send only what changes. Give service_id to change an existing service; leave it out to add one.

sign_booking_agreement

ChatGPT
Counter-sign a booking's rental agreement in person — the customer is present and signs on the spot (the POS counter flow). Records the signature and stores the signed copy on the booking. To email the customer a link to sign remotely instead, use send_booking_agreement.

suggest_booking_request_time

ChatGPT
Offer another departure, a new proposed start for a flexible experience, or different rental pickup and return times. The customer gets one button to confirm; nothing is charged until they do.

sync_google_reviews

ChatGPT
Check Google for new reviews now and draft a reply for anything unanswered. Nothing is posted: each reply waits for the owner to approve it. This also runs on its own every night.

sync_mailchimp

ChatGPT
Send every customer who should be in Mailchimp across again now, with their tags.

toggle_agent

ChatGPT
Enable or disable a Dash Agent. Disabled agents will not run on schedule or respond to events.

toggle_automation

ChatGPT
Turn an always-on marketing automation on or off: abandoned_cart (recovery email after an unfinished checkout) or win_back (monthly email to inactive customers). Omit active to flip the current state.

transfer_product_inventory

ChatGPT
Move rental product stock between business locations. For item-tracked products, moves specific units — pass their identifiers, or a quantity to move that many units from the source location. For group-tracked products, moves a quantity from one location's stock to another (merged into existing stock at the destination).

trigger_calendar_sync

ChatGPT
Run calendar sync now: push bookings out to Google Calendar and pull external blocks (Google + iCal subscriptions) in as closures.

unarchive_booking

ChatGPT
Restore (unarchive) a previously archived booking so it appears in the bookings list again.

unarchive_customer

ChatGPT
Restores an archived customer so they reappear in listings and customer pickers.

unarchive_experience

ChatGPT
Restore an archived experience. It comes back disabled - switch it on to sell it on the booking widget, POS and website again.

unarchive_product

ChatGPT
Restore an archived rental product. It comes back disabled - switch it on to rent it again.

unarchive_program

ChatGPT
Put an archived program back into circulation so it can sell again.

unarchive_survey

ChatGPT
Restore an archived survey to the default listing.

unassign_staff_from_workshop

ChatGPT
Remove a staff member from a workshop job.

uncomplete_checklist_item

ChatGPT
Reset a completed checklist item back to incomplete.

unschedule_campaign

ChatGPT
Cancel a scheduled campaign send, returning the campaign to draft.

update_blackout

ChatGPT
Change a closure - its label, the dates or weekdays it covers, whether it is all day, its times, or whether it is active at all. Send only what changes. Get the id from list_blackouts.

update_booking

ChatGPT
Update an existing booking.

update_booking_option

ChatGPT
Rename a way of booking, change how it is priced, whether it is private or shared, or change the party size it takes. Only send the fields being changed. Renaming does not rewrite bookings already sold on it - they keep the name they were sold under.

update_bundle

ChatGPT
Change a bundle's settings: name, descriptions, pricing mode and flat price, security hold, cancellation policy, whether customers can see it, and the separate-dates / gear-runs-with-activity flags. Pass only the fields you are changing.

update_bundle_item

ChatGPT
Change one item already in a bundle: quantity, its pick-one group and label, percent off, rental lengths and per-length deals, pinned variation or rate, and whether the rental can still be booked on its own.

update_campaign

ChatGPT
Edit a draft or scheduled campaign — its name, preview text, email/SMS content, template, call-to-action, audience, or linked survey. Only the fields passed are changed. A campaign that has already been sent cannot be edited.

update_collection

ChatGPT
Change how one collection looks: its name, layout, columns, prices, the Calendar tab, the search box, how many items show before Show all, and the date box. Only the fields given change.

update_customer

ChatGPT
Update an existing customer. Only call after user confirms changes.

update_customer_note

ChatGPT
Edit the text of an existing internal note on a customer profile.

update_embed_settings

ChatGPT
Change how the shop's booking pieces look on its own website. Only the fields given change.

update_experience_category

ChatGPT
Update/rename an existing EXPERIENCE category.

update_experience_departure

ChatGPT
Edit ONE departure of an experience: move it to another date, change its start/end time, or change its capacity. Pass only what changes. Dates and times are supplier-local (YYYY-MM-DD and HH:MM 24-hour). For a multi-day trip pass end_date too, so the return moves with the start.

update_experience_session

ChatGPT
Change one session - its date, start time, capacity, how many guides it needs, or who is guiding it. Get the session_id from list_experience_sessions.

update_extra

ChatGPT
Update a booking extra (kind, linked item, price, name, availability, stock, active). Only affects future bookings — existing bookings keep the price they were charged.

update_form_settings

ChatGPT
Change how a waiver or survey behaves - its name, whether it is published, what it applies to, whether it is collected at checkout, guardian signing, how long a signature stays valid, and for surveys when it is sent, whether it goes by text, the review links it routes to and the completion reward. Send only what changes.

update_group

ChatGPT
Rename a saved group or change the organization customer that owns it. Pass only what changes.

update_knowledge_article

ChatGPT
Rewrite an answer the booking chat already gives customers. Send only the parts that change — the chat stops using the old wording straight away. Get the id from list_knowledge_articles.

update_mailchimp_settings

ChatGPT
Change who goes to Mailchimp and whether bookings add tags. Pass only what the owner asked to change.

update_my_account

ChatGPT
Change the signed-in person's own name or the email they sign in with. Passwords are never changed here - direct the person to the Account details page for that.

update_my_notifications

ChatGPT
Turn emails to the signed-in person's own inbox on or off. Send only the ones you want to change. Call get_my_notifications first for the names.

update_open_season

ChatGPT
Change the dates you are open for business - the label, the start or end date, or whether the period is active. Send only what changes. Overlapping another open period is refused. Get the id from list_open_seasons.

update_policy

ChatGPT
Update an existing cancellation/reschedule policy. Scalar fields (name, description, allow_cancellations, etc.) use standard "omit = preserve" semantics. For tiers and applications: OMIT the key entirely to preserve the existing rows unchanged; pass an ARRAY (including []) to atomically REPLACE the whole set with exactly what you supply (so [] deletes every tier / application). Mixing these two behaviours is the single most common mistake — if in doubt, call list_policies first, edit the returned arrays, and send them back in full.

update_product

ChatGPT
Update an existing product. Only call after user confirms changes.

update_product_category

ChatGPT
Update/rename an existing RENTAL PRODUCT category.

update_product_inventory

ChatGPT
Update an existing inventory record of a rental product: its identifier (item-tracked), quantity (group-tracked), location, or availability dates. Inventory record IDs are listed by get_inventory.

update_product_variation

ChatGPT
Update an existing product variation's SKU, description, or property values. Only the provided properties change — others keep their current value. Variation IDs are listed by get_product.

update_program

ChatGPT
Edit a program: its name, description, categories, pricing, whether it sells online, the enrollment cap, or whether it is a reusable program. Only send what changes — anything left out is untouched.

update_program_message

ChatGPT
Change one message in a program's plan — its wording, who it goes to, when it goes out, or whether it is paused. Future sends across every cohort reschedule; anything already sent stays as it was.

update_promo_code

ChatGPT
Edit an existing promo code — rename it, change the discount, usage limits, validity dates, deactivate it, or replace what it applies to. Only the fields passed are changed.

update_quote

ChatGPT
Update an open quote's expiry and/or date hold. valid_until sets the expiry date (pass null to clear it so the quote never expires); reserve_dates holds (true) or releases (false) the quoted dates while the customer decides. Only quotes not yet decided can be updated.

update_rate_category

ChatGPT
Rename a rate category or change its description. For a combo rate, pass "components" to change who is included. Editing the label updates it everywhere the rate is shown, including on existing bookings.

update_reward_settings

ChatGPT
Set up loyalty rewards: a thank-you discount code after every visit (or every 3rd or 5th, or when the survey is finished), and bring a friend (a code customers share; the friend saves on their first booking, the customer gets a thank-you code once the friend has been). Only the fields passed change.

update_season

ChatGPT
Change an existing pricing season - its name, the dates it covers, the time-of-day window, or which weekdays it applies to. Send only what changes. Get the id from list_seasons. Requires the Pro plan.

update_service_job_status

ChatGPT
Advance a workshop service job: mark it dropped_off (starts the clock), ready (for pickup), or picked_up (collected).

update_settings

ChatGPT
Change the shop's setup for one settings area. Send only the fields you want to change — anything omitted keeps its current value. Call get_settings for the same area first so you use real field names and allowed values; unknown field names are reported back, never guessed at. Returns what actually changed, old value to new.

update_settings_record

ChatGPT
Change one existing setup record. Send only the fields you want to change - anything omitted keeps its current value. Get the id from list_settings_records. Money-affecting kinds (tax rates, pricing templates) preview before the change lands.

update_staff

ChatGPT
Update a staff member. Only call after user confirms.

update_staff_shift

ChatGPT
Update an existing staff shift. Only call after user confirms.

update_store_category

ChatGPT
Update/rename an existing STORE PRODUCT category.

update_store_product

ChatGPT
Update an existing store product.

update_supplier_widget_settings

ChatGPT
Update any subset of the supplier's widget settings: URL slug, trust badges, default listing mode, timezone display style, tagline, social share image. All fields are optional — untouched fields keep their current value. Call get_supplier_widget_settings first to see the current state.

update_survey

ChatGPT
Change a survey: its name, when and how it is sent, who receives it, whether it is live, and what it applies to. Send only what changes. Get the id from list_surveys.

update_tag

ChatGPT
Rename a booking tag. The new name applies everywhere the tag is used.

update_voucher

ChatGPT
Edit a gift voucher — purchaser/recipient details, personal message, expiry date, or deactivate/reactivate it. Only the fields passed are changed. The value itself never changes after creation.

update_waiver

ChatGPT
Rename a waiver/form or change its signature settings (validity months, guardian signing). Fields and layout stay in the form builder.

update_weather_threshold_rule

ChatGPT
Update a W3 weather threshold rule. Only the fields you pass are touched; everything else stays. Same field shape as create_weather_threshold_rule.

update_website_page

ChatGPT
Update a page of the supplier's website: rename it, show or hide it in the navigation, or set its SEO title and description. Pass only the fields to change.

update_website_settings

ChatGPT
Update the supplier's site-wide website settings: the SEO title and description search engines show for the site, the Google Analytics measurement id, today's note: a short dated line at the top of every page ("today: calm water, open all day") that hides at the shop's midnight, and how customers book: online, or in person (prices only, with a Call us or Visit us button and no cart) for a shop that takes no bookings online. Send only what the owner asked to change. Gift card sales and other shop settings are update_settings, never this tool.

update_website_theme

ChatGPT
Change how the supplier's website looks: the button and brand color, the highlight color, the text color, button shape, the header Book now button (wording and where it goes), heading and body fonts, a light or dark page, the header layout, header color and social icons in the header, or a whole style pack in one go. Words and layout are kept. "Make the buttons orange" is primary_color, never accent_color. For a dark site with light text use surface "dark", never a dark text or brand color. The result reads back what the site paints now.

update_workshop_job

ChatGPT
Edit an open workshop job reason or due date. Omit a field to keep it; pass null to clear it. Give due_date in the shop's own time: a date means the end of that day.

validate_promo_code

ChatGPT
Check if a promo code is valid (without applying it to a booking).

validate_voucher

ChatGPT
Check if a voucher code is valid and has remaining balance. Does NOT apply the voucher — use apply_voucher to redeem against a booking.

view_waitlist

ChatGPT
View waitlist entries. Can filter by type (experience/rental), status, and search term.

waive_booking_surcharge

ChatGPT
Waive a surcharge on one booking (it then adds nothing to the total), or add a waived one back with waive false. Get surcharge_line_id from the surcharges list in get_booking. Adds a note to the booking.

Capabilities

Writes

Example Prompts

Click any prompt to copy it.

App Stats

506

Tools

1

Prompts

ChatGPT

Platforms

Works with

ChatGPT

Data refreshed daily