# TSPW — Opening Faceoff Call with Josh St Laurent

> A 30-minute first conversation — no pitch, mostly listening. Who I am, how Top Shelf Private Wealth works, and a low-pressure look at what your career earnings could actually build. If we're both a fit, we go deeper from there.

- Host: Josh St Laurent
- Duration: 30 min
- Location: Attendee phone number, Zoom Video
- Host time zone: America/Los_Angeles
- Confirmation: Bookings are confirmed instantly.
- Booking page: https://cal.com/jsaint/tspw-opening-faceoff
- Event type id: 6226356

## Check availability

```http
GET https://api.cal.com/v2/slots?eventTypeId=6226356&start=YYYY-MM-DD&end=YYYY-MM-DD&timeZone=<IANA time zone>
cal-api-version: 2024-09-04
```

The response is `{"data":{"YYYY-MM-DD":[{"start":"<ISO 8601 with offset>"}]}}`; no API key is needed.

## Book

```http
POST https://api.cal.com/v2/bookings
cal-api-version: 2026-02-25
Content-Type: application/json

{
  "eventTypeId": 6226356,
  "start": "<UTC ISO 8601 start from the slots response>",
  "attendee": {
    "name": "…",
    "email": "…",
    "timeZone": "<IANA time zone>"
  },
  "location": {
    "type": "attendeePhone",
    "phone": "…"
  },
  "guests": [
    "guest@example.com"
  ],
  "bookingFieldsResponses": {
    "sms-phone": "…",
    "sms-consent": "…",
    "how-did-you-hear": "…",
    "notes": "…"
  }
}
```

- Required fields: `name` (your_name), `email` (Email address), `sms-phone` (Mobile number (for appointment reminders))
- Optional fields: `sms-consent` (I agree to receive appointment and account-related text messages from Top Shelf Private Wealth at the number provided. Message frequency varies. Message and data rates may apply. Reply STOP to opt out, HELP for help. [Privacy Policy](https://topshelfprivatewealth.com/privacy) · [Terms](https://topshelfprivatewealth.com/terms)), `how-did-you-hear` (How did you hear about me?), `notes` (Additional notes), `guests` (Add guests)
- `name` and `email` go in `attendee` and `guests` is a list of emails; every other field goes in `bookingFieldsResponses` under its name.
- `location` is required: `location.phone` is the attendee’s own.
