Wyobraź sobie taką sytuację: potencjalny klient jest na Twojej stronie i interesuje się Twoim produktem. Chce zarezerwować demo. Stary sposób oznacza, że klient wysyła e-mail, Ty odsyłasz link do kalendarza, a potem wymieniacie kolejne wiadomości, żeby znaleźć termin. To trwa długo i zwiększa ryzyko, że klient straci zainteresowanie.
Teraz wyobraź sobie lepszy sposób. Odwiedzający po prostu pyta Twojego agenta AI: „Czy mogę umówić spotkanie?”. Agent od razu sprawdza Twój kalendarz, proponuje dostępne terminy i rezerwuje spotkanie bezpośrednio na czacie.

Na tym polega wartość połączenia Cal.com z Twoim agentem Quickchat AI. W tym przewodniku przeprowadzimy Cię przez prostą integrację. W kilka minut możesz umożliwić AI obsługę rezerwacji terminów, aby nowi leadzi mogli trafić do Twojego kalendarza bez opuszczania rozmowy.
Jeśli używasz Calendly zamiast Cal.com, dostępna jest krótsza ścieżka: Calendly udostępnia hostowany serwer MCP, więc połączenie wymaga jednego kliknięcia zamiast zestawu ręcznie przygotowanych API Actions. Artykuł Zbuduj asystenta AI do planowania spotkań z Calendly opisuje ten proces, w tym sposób ograniczenia tego, co agent może robić po połączeniu.
Dlaczego warto połączyć Cal.com z agentem AI?
Cal.com to solidne narzędzie do elastycznego planowania spotkań, a jego API pozwala uruchomić automatyzację. Łącząc je z AI Actions Quickchat, możesz zmienić czat na swojej stronie w inteligentnego asystenta do umawiania spotkań.
Dlaczego ma to duże znaczenie:
- Tworzysz płynne doświadczenie użytkownika: Odwiedzający mogą zarezerwować rozmowę bezpośrednio w oknie czatu. Nie muszą przełączać kart, otwierać linków ani pisać e-maili. To szybkie, nowoczesne i wygodne.
- Pozyskujesz więcej leadów: Usuwając tarcie z procesu rezerwacji, zmniejszasz ryzyko, że lead zrezygnuje. Natychmiastowe potwierdzenie oznacza natychmiastową decyzję.
- Eliminujesz pracę ręczną: AI obsługuje cały proces planowania, od sprawdzenia dostępności po wysłanie zaproszeń. Twój kalendarz zapełnia się automatycznie, a Ty możesz skupić się na ważniejszych zadaniach.
Jak to działa?
Cały mechanizm opiera się na dwóch wywołaniach API, które Twój agent AI wykonuje do Cal.com. Oto krótki opis przebiegu rozmowy:
- Prośba: Odwiedzający prosi o umówienie spotkania. Twój agent AI inteligentnie pyta o preferowane daty i strefę czasową.
- Sprawdzenie dostępności: Agent wywołuje Cal.com, aby znaleźć wolne terminy na podstawie wcześniej skonfigurowanych typów wydarzeń.
- Propozycja: AI przedstawia użytkownikowi dostępne godziny. Gdy użytkownik wybierze termin, agent prosi o imię i nazwisko oraz adres e-mail.
- Rezerwacja spotkania: Agent wywołuje następnie API Cal.com, aby zarezerwować spotkanie, wysyłając wybrany termin i dane użytkownika w celu finalizacji rezerwacji.
- Potwierdzenie: Cal.com przejmuje dalszą obsługę i automatycznie wysyła zaproszenia kalendarzowe do Ciebie oraz do nowego leada.
Tak wygląda przykładowa rozmowa:

Czego potrzebujesz (wymagania wstępne)
Zanim zaczniemy, upewnij się, że masz przygotowane następujące elementy:
- Konto Cal.com: Darmowy plan będzie wystarczający, jeśli dopiero zaczynasz. Potrzebujesz co najmniej jednego skonfigurowanego typu wydarzenia (np. 30-minutowej rozmowy demo). Konto Cal.com możesz założyć tutaj.
- Agent Quickchat AI: Potrzebujesz dostępu do tworzenia niestandardowych AI Actions. Jeśli nie masz konta, możesz zarejestrować się tutaj.
- Klucz API Cal.com: W panelu Cal.com przejdź do Settings → API keys. Kliknij Add, nadaj kluczowi nazwę, ustaw datę wygaśnięcia i skopiuj token. Będzie potrzebny do uwierzytelniania.

Wskazówka: Publiczne typy wydarzeń w Cal.com są dostępne bez klucza API, ale zdecydowanie zalecamy użycie klucza. Zapobiega to limitowaniu zapytań i sprawia, że integracja będzie gotowa na przyszłe zmiany w API.
Krok 1: Utwórz AI Action do sprawdzania dostępności
Najpierw nauczymy Twojego agenta AI, jak znajdować wolne terminy.
W panelu Quickchat przejdź do Actions & MCPs → Custom Actions i kliknij Add Action.
1.1 Zdefiniuj dane od użytkownika
Musimy poprosić użytkownika o kilka kluczowych informacji, zanim sprawdzimy kalendarz. Zdefiniuj pola, które agent ma zebrać:
| Pole | Opis | Przykład |
|---|---|---|
start | Początek zakresu dat do przeszukania (ISO 8601) | 2025-09-18T00:00Z |
end | Koniec zakresu dat do przeszukania (ISO 8601) | 2025-09-25T23:59Z |
timeZone | Strefa czasowa użytkownika w formacie IANA | Europe/Warsaw |

1.2 Skonfiguruj wywołanie API
Teraz skonfiguruj żądanie do Cal.com:
-
Metoda:
GET -
URL endpointu API:
https://api.cal.com/v2/slots?eventTypeSlug=call&username=patryk-lasek&start={{start}}&end={{end}}&timeZone={{timeZone}}Ważne: Zastąp
callslugiem URL swojego typu wydarzenia, apatryk-lasekswoją nazwą użytkownika Cal.com. -
Nagłówki:
| Nagłówek | Wartość | Wymagany |
|---|---|---|
cal-api-version | 2024-09-04 | ✔︎ |
Authorization | Bearer <your_api_key> | Zalecany |

Nagłówek cal-api-version jest obowiązkowy. Bez niego żądanie zakończy się niepowodzeniem.
W interfejsie Quickchat placeholdery ({{start}}, {{end}}, {{timeZone}}) w URL zostaną automatycznie zastąpione informacjami, które agent zbierze od użytkownika.
Po zapisaniu agent może już pobierać i wyświetlać dostępne terminy.
Krok 2: Utwórz AI Action do rezerwacji spotkania
Po sprawdzeniu dostępności czas na ostatni etap: utworzenie rezerwacji. Zbudujmy drugą akcję.
2.1 Zdefiniuj dane od użytkownika
Dla tej akcji agent musi zebrać następujące dane:
| Pole | Opis | Wartość domyślna | Wymagane |
|---|---|---|---|
start | Wybrany termin w formacie UTC: 2025-09-21T07:00:00Z | - | ✔︎ |
name | Imię i nazwisko uczestnika | - | Opcjonalne |
email | Adres e-mail uczestnika | - | ✔︎ |
timeZone | Strefa czasowa użytkownika w formacie IANA: Europe/Warsaw | - | ✔︎ |

Uwaga dotycząca stref czasowych: Endpoint rezerwacji Cal.com wymaga, aby czas start był podany w UTC. Twój agent AI powinien obsłużyć tę konwersję. Na przykład jeśli użytkownik w Warszawie (UTC+2) wybierze 11:00, wartość wysłana do API powinna wynosić 09:00:00Z.
2.2 Skonfiguruj wywołanie API
- Metoda:
POST - URL endpointu API:
https://api.cal.com/v2/bookings - Nagłówki:
| Nagłówek | Wartość | Wymagany |
|---|---|---|
Content-Type | application/json | ✔︎ |
cal-api-version | 2024-08-13 | ✔︎ |
Authorization | Bearer <your_api_key> | Zalecany |
Zwróć uwagę, że cal-api-version jest inny dla tego endpointu. Zawsze sprawdzaj dokumentację Cal.com, aby użyć poprawnej wersji.

-
Body: W edytorze akcji Quickchat wybierz
JSONdla body i wklej następującą strukturę:{ "start": "{{start}}", "eventTypeSlug": "call", "username": "patryk-lasek", "attendee": { "name": "{{name}}", "email": "{{email}}", "timeZone": "{{timeZone}}" } }Pamiętaj, aby zastąpić
eventTypeSlugiusernamewłasnymi danymi. Informacjeattendeemuszą być zagnieżdżonym obiektem JSON, tak jak pokazano powyżej.
Gotowe. Po skonfigurowaniu i zapisaniu tej akcji Twój agent AI ma wszystko, czego potrzebuje, aby płynnie rezerwować spotkania w Twoim imieniu.
Przetestuj endpoint
Aby sprawdzić, czy wszystko działa poprawnie, możesz przetestować obie AI Actions, otwierając je, przewijając do sekcji API Endpoint i klikając “Test Response”:

Krok 3: Przetestuj nowego asystenta do planowania spotkań
Przed testem upewnij się, że strona AI Actions odpowiada konfiguracji pokazanej poniżej:

Czas na test. Przejdź do AI Preview w panelu Quickchat i rozpocznij nową rozmowę. Spróbuj zapytać na przykład:
„Chcę zarezerwować demo na przyszły tydzień”.
Zobacz, jak Twój agent:
- Pyta o preferowane daty i strefę czasową.
- Pobiera i wyświetla dostępne terminy z Twojego kalendarza Cal.com.
- Prosi o imię i nazwisko oraz adres e-mail po wybraniu terminu.
- Potwierdza zakończenie rezerwacji.
Rozwiązywanie typowych problemów
Pojawiają się błędy? Oto kilka częstych problemów i sposoby ich rozwiązania:
- Otrzymujesz błąd
403 Forbiddenlub404 Not Found? Sprawdź dokładnie, czy używasz metodyPOSTdla akcji rezerwacji. Cal.com odrzuci żądaniaGETwysłane do endpointu/bookings. - Widzisz błąd
400 Bad Requestdotyczący pól uczestnika? Prawie zawsze oznacza to niepoprawny format body JSON. Upewnij się, żename,emailitimeZonesą zagnieżdżone w obiekcieattendee, a nie umieszczone na najwyższym poziomie. - Żądanie nie działa z powodu brakującego nagłówka?
Każdy endpoint Cal.com v2 wymaga nagłówka
cal-api-version. Użyj2024-09-04dla/slotsi2024-08-13dla/bookings. - Spotkania są rezerwowane o złej godzinie?
Potwierdź, że czas
startw żądaniu rezerwacji jest wysyłany w UTC.
Podsumowanie
Gratulacje. Za pomocą tylko dwóch AI Actions zmieniłeś swojego agenta Quickchat w asystenta do planowania spotkań. Może teraz obsługiwać cały proces rezerwacji, zapewniając odwiedzającym Twoją stronę wygodne doświadczenie i zdejmując z Ciebie uciążliwą wymianę wiadomości przy ręcznym umawianiu terminów.
To dopiero początek. Dzięki elastyczności API Cal.com i AI Actions Quickchat możesz dodać przypomnienia SMS, e-maile follow-up oraz inne niestandardowe automatyzacje, takie jak zapisywanie każdej rezerwacji w HubSpot jako kontaktu i deala. Możliwości jest wiele.