# 30 Min Meeting x Kaival with Kaival Patel

> To help me understand if a call is the right fit, please include the following in your description: What you need help with Your current situation or process What outcome you expect Any background information that helps me prepare Providing clear details increases the likelihood that I’ll accept the meeting.

- Host: Kaival Patel
- Duration: 30, 60 min
- Location: Cal Video
- Host time zone: America/Halifax
- Confirmation: Bookings are confirmed instantly.
- Payment: required, and collected on the booking page.
- Booking page: https://cal.com/kaival/30min
- Event type id: 1566406

## Check availability

```http
GET https://api.cal.com/v2/slots?eventTypeId=1566406&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": 1566406,
  "start": "<UTC ISO 8601 start from the slots response>",
  "lengthInMinutes": 30,
  "attendee": {
    "name": "…",
    "email": "…",
    "timeZone": "<IANA time zone>"
  },
  "guests": [
    "guest@example.com"
  ],
  "bookingFieldsResponses": {
    "notes": "…"
  }
}
```

- Required fields: `name` (Your name), `email` (Email address)
- Optional fields: `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.
- `lengthInMinutes` picks one of 30, 60; pass the same value to the slots request as `duration`.
