my_bookings
The signed-in person's time with Ben. Their hours with Ben: how many diamonds they hold (one diamond = one hour, one to one), their bookings with status (held, confirmed, cancelled) and join link, and the open hours ahead they can book with book_hour_with_ben. And the free 30-minute intro call (introCall): their upcoming one with its join link, or, when they have none, the open times they can book with book_intro_call. Each booking has its id, label, canCancel and canMove: cancel one with cancel_booking, move one with move_booking to an open time of the same kind (openHours for an hour with Ben, introCall.moveTimes for the free intro call). Booking, moving and cancelling happen here; url is a page to fall back to only if booking here fails. Each open time has label (weekday, date, time and time zone, worked out for the person's time zone, e.g. "Thursday, 17 September · 10:00–10:30 (Berlin time)") and day: quote label exactly as it is, and never work out a weekday or a date from start yourself. Pass start exactly as listed to book. openDays and introCall.openDays group the times by day; bookableUntil is the last day the calendar takes bookings for. Pass their time zone to get the times in it. Pass purpose when the person wants to book (intro_call or hour_with_ben): the next two weeks are listed, and a chat that can show a time picker shows one.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many open hours, and how many intro-call times, to list. | |
| purpose | No | What the person wants to book right now: intro_call (the free 30-minute call) or hour_with_ben (one diamond). Omit when they only ask about their bookings. | |
| timeZone | No | The person's time zone, e.g. "Europe/Berlin". Defaults to Berlin. |