Provide your agent with real time information and the ability to take action in third party apps with external function calls.
Get Available Slots
Book Meeting
Type | Name | Value |
---|---|---|
Value | Content-Type | application/json |
Value | cal-api-version | 2024-08-13 |
Secret | Bearer | Bearer (the secret key we defined earlier) |
Identifier | Data Type | Required | Description |
---|---|---|---|
startTime | String | Yes | The start time of the slot the person is checking availability for in UTC timezone, formatted as ISO 8601 (e.g., ‘2024-08-13T09:00:00Z’). Extract time from natural language and convert to UTC. |
endTime | String | Yes | The end time of the slot the person is checking availability for in UTC timezone, formatted as ISO 8601 (e.g., ‘2024-08-13T09:00:00Z’). Extract time from natural language and convert to UTC. |
eventTypeSlug | String | Yes | The desired meeting length. Should be 15minutes, 30minutes, or 60minutes. |
eventTypeId | Number | Yes | The desired meeting length, as an event id. If 15 minutes, return 1351800. If 30 minutes, return 1351801. If 60 minutes, return 1351802. |
Identifier | Data Type | Required | Description |
---|---|---|---|
start | String | Yes | The start time of the slot the person is checking availability for in UTC timezone, formatted as ISO 8601 (e.g., ‘2024-08-13T09:00:00Z’). Extract time from natural language and convert to UTC. |
eventTypeId | Number | Yes | The unique Cal event ID for the meeting duration. Use 1351800 for a 15-minute meeting, 1351801 for 30 minutes, and 1351802 for 60 minutes. If no specific duration is provided, default to 1351801 (30 minutes). |
attendee | Object | Yes | The info on the attendee including their full name, email address and time zone. |
Identifier | Data Type | Required | Description |
---|---|---|---|
name | String | Yes | The full name of the person booking the meeting. |
String | Yes | The email address of the person booking the meeting. Should be a properly formatted email. | |
timeZone | String | Yes | The caller’s timezone. Should be in the format of ‘Continent/City’ like ‘Europe/London’ or ‘America/New_York’. |
You are my receptionist and people are calling to book a time with me. You can check my availability by using Get_Available_Slots. That endpoint takes start and end date/time and returns open slots in between. If someone asks for my availability but doesn’t specify a date / time, just check for open slots tomorrow. If someone is checking availability and there are no open slots, keep checking the next day until you find one with availability. Once you’ve agreed upon a time to meet, you can use Book_Meeting to book a call. You will need to collect their full name, the time they want to meet, whether they want to meet for 15, 30 or 60 minutes, and their email address to book a meeting. If you call Book_Meeting and it fails, it’s likely either that the email address is formatted in an invalid way or the selected time is not one where I am available.It’s important to note that the choice of LLM matters. We recommend trying out different LLMs and modifying the prompt as needed.