Połącz Cal.com z agentem AI w 5 minut

Patryk Lasek
Opublikowano 4 min czytania
Miniatura artykułu Połącz Cal.com z agentem AI w 5 minut

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.

Przykładowa rozmowa pokazująca, jak AI proponuje dostępne godziny i prosi użytkownika o dane

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:

  1. Prośba: Odwiedzający prosi o umówienie spotkania. Twój agent AI inteligentnie pyta o preferowane daty i strefę czasową.
  2. Sprawdzenie dostępności: Agent wywołuje Cal.com, aby znaleźć wolne terminy na podstawie wcześniej skonfigurowanych typów wydarzeń.
  3. Propozycja: AI przedstawia użytkownikowi dostępne godziny. Gdy użytkownik wybierze termin, agent prosi o imię i nazwisko oraz adres e-mail.
  4. 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.
  5. 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:

Przykładowa rozmowa pokazująca, jak AI proponuje dostępne godziny i prosi użytkownika o dane

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.

Klucz API Cal.com

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ć:

PoleOpisPrzykład
startPoczątek zakresu dat do przeszukania (ISO 8601)2025-09-18T00:00Z
endKoniec zakresu dat do przeszukania (ISO 8601)2025-09-25T23:59Z
timeZoneStrefa czasowa użytkownika w formacie IANAEurope/Warsaw

Dane od użytkownika

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 call slugiem URL swojego typu wydarzenia, a patryk-lasek swoją nazwą użytkownika Cal.com.

  • Nagłówki:

NagłówekWartośćWymagany
cal-api-version2024-09-04✔︎
AuthorizationBearer <your_api_key>Zalecany

Wywołanie API

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:

PoleOpisWartość domyślnaWymagane
startWybrany termin w formacie UTC: 2025-09-21T07:00:00Z-✔︎
nameImię i nazwisko uczestnika-Opcjonalne
emailAdres e-mail uczestnika-✔︎
timeZoneStrefa czasowa użytkownika w formacie IANA: Europe/Warsaw-✔︎

Dane od użytkownika do rezerwacji spotkania

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łówekWartośćWymagany
Content-Typeapplication/json✔︎
cal-api-version2024-08-13✔︎
AuthorizationBearer <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.

Wywołanie API - nagłówki

  • Body: W edytorze akcji Quickchat wybierz JSON dla 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ć eventTypeSlug i username własnymi danymi. Informacje attendee muszą być zagnieżdżonym obiektem JSON, tak jak pokazano powyżej.

    Wywołanie API - body

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”:

Test Response

Krok 3: Przetestuj nowego asystenta do planowania spotkań

Przed testem upewnij się, że strona AI Actions odpowiada konfiguracji pokazanej poniżej:

AI Actions

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:

  1. Pyta o preferowane daty i strefę czasową.
  2. Pobiera i wyświetla dostępne terminy z Twojego kalendarza Cal.com.
  3. Prosi o imię i nazwisko oraz adres e-mail po wybraniu terminu.
  4. 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 Forbidden lub 404 Not Found? Sprawdź dokładnie, czy używasz metody POST dla akcji rezerwacji. Cal.com odrzuci żądania GET wysłane do endpointu /bookings.
  • Widzisz błąd 400 Bad Request dotyczący pól uczestnika? Prawie zawsze oznacza to niepoprawny format body JSON. Upewnij się, że name, email i timeZone są zagnieżdżone w obiekcie attendee, 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żyj 2024-09-04 dla /slots i 2024-08-13 dla /bookings.
  • Spotkania są rezerwowane o złej godzinie? Potwierdź, że czas start w żą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.