Ever wished for a personal assistant to help you manage your schedule? I know I have. With the constant overlap of meetings, events that happen outside of my working hours, and a deluge of communication in Slack, it can become overwhelming to keep everything organized and on track.
Fortunately, I've been testing out a brand new way to do the heavy lifting for me: by creating my own version of ChatGPT with OpenAI's GPTs and Zapier's AI actions.
The combination of the two allows you to build a custom GPT directly in ChatGPT that pulls in the power of Zapier's 6,000+ apps. That means you can take action in apps like Slack or Google Calendar—all from within ChatGPT's interface.
Picture this: I built my very own Google Calendar GPT that lets me ask about upcoming events on my calendar, send messages to team members about my schedule in Slack, and even search the web for information about meeting attendees.
Here's how you can build your own from scratch.
Want to test out the calendar assistant GPT before you build your own? Try out the live demo.
Before you get started
You'll need a Zapier account to get started. It's free to sign up.
You'll also need a ChatGPT Plus or Enterprise account. Already have the required account type? Click Log in to start chatting.
If you're having trouble logging in, your best bet is to reload your page. For specific login issues, check out OpenAI's troubleshooting tips.
Set up your Zapier AI actions
First, we'll need to create and enable the AI actions you want your GPT to perform directly within Zapier. This refers to setting up the apps and the relevant actions you want your GPT to have access to. For the purpose of this tutorial, we'll be adding two actions: Find a Google Calendar event and send a direct message in Slack.
Head over to https://actions.zapier.com/gpt/actions/ to get started.
Once you've opened this page, click Add a new action. You'll see this window:
Type Google Calendar into the search bar, and select Google Calendar: Find Event.
Now it's time to customize your Google Calendar action. The first three fields (Action, Zapier Account, and Google Calendar Account) will be auto-populated. You shouldn't need to edit them, but you can connect a different Google Calendar account if you need to.
Under Calendar, you can decide to either have AI guess a value or set a specific value for this field. I recommend this second option so you can select your exact calendar base.
Once you've done that, click Enable action. You'll be brought back to the page listing all of your AI actions.
Next, let's carry out the same steps for our Slack action. Click Add a new action and type Slack into the search bar. Select Slack: Send Direct Message.
Remember to connect your specific Slack account. Then you can have the AI guess the values for the usernames and the message text. When you're interacting with your GPT, you can tell it what to write and who to send the message to, so having AI guess the field is a more flexible option.
Next, click Show all options.
Scroll down until you find the Send as a bot? option. I recommend setting a specific value for this field and selecting No from the dropdown menu. If you leave it set to the default setting, any message your GPT sends will be shown as a bot (and you won't be able to see the sent message). If you choose No, this message will come from you—which is what we want in this case.
Once you've finished customizing your fields, click Enable action.
Create your custom GPT
Once you've created your AI actions, log into ChatGPT and head over to the sidebar and click Explore. Next, click Create a GPT.
The GPT builder will display a split screen: the Create panel is where you enter your prompts to build your chatbot; the Preview panel allows you to interact with your chatbot as you build, making it easier to determine how to refine it.
To get started, you can enter your instructions in the message box of the Create page. If you need inspiration or want to ask it what it can do, you can type it out here.
Because I want to create a calendar assistant that can connect to both my Slack and Google Calendar accounts, I'll type out the instructions in the message box. This will serve to give it context.
Once you've typed out your instructions, press Enter.
The GPT builder will then suggest a few things based on your instructions: a chatbot name, profile picture, and default conversation starters.
The GPT builder will prompt you to enter more specific instructions to fine-tune your chatbot's behavior. The more context you give it, the more prompts and conversation starters the GPT will generate in the Preview panel, like so:
You can test your chatbot—interact with it how you normally would—and use its responses to inform your modifications.
Note: These preliminary instructions serve to give your GPT context, but it won't connect your apps for you. We'll cover how to do this below.
Configure your GPT
Now it's time to configure your GPT with more advanced instructions. Click Configure on your GPT builder screen.
If you don't like the name and description the GPT builder generated, you can change your chatbot's name and description in the relevant fields.
You can also change the profile picture by clicking on the image and uploading either the relevant file from your computer or by using DALL·E.
Configure your instructions
Once you've finished customizing these fields, scroll down to the Instructions field. You can update the instructions generated by the GPT builder or enter additional instructions and guidelines on how your chatbot should or shouldn't behave.
In our case, I'm going to add specific instructions for how the GPT should format its output, which kinds of events it should pull from my calendar, and what information it should pull from the internet. Here's an example:
Next, you'll need to tell your GPT builder how to interact with your Zapier actions—the ones you set up earlier. These instructions should detail each step your GPT will take as it searches for a Google Calendar event, for example, or searches for a Slack user to message.
Don't worry if you're not sure what to write. I recommend copying and pasting our Zapier example below directly into your Instructions field, but you can also check out our AI actions help documentation for more information and examples of instructions. Remember, these rules are just a starting point, so feel free to experiment!
###Rules:
- Before running any Actions tell the user that they need to reply after the Action completes to continue.
- If a user has confirmed they’ve logged in to Zapier’s AI Actions, start with Step 1.
###Instructions for Zapier Custom Action:
Step 1. Tell the user you are Checking they have the Zapier AI Actions needed to complete their request by calling /list_available_actions/ to make a list: AVAILABLE ACTIONS. Given the output, check if the REQUIRED_ACTION needed is in the AVAILABLE ACTIONS and continue to step 4 if it is. If not, continue to step 2.
Step 2. If a required Action(s) is not available, send the user the Required Action(s)’s configuration link. Tell them to let you know when they’ve enabled the Zapier AI Action.
Step 3. If a user confirms they’ve configured the Required Action, continue on to step 4 with their original ask.
Step 4. Using the available_action_id (returned as the `id` field within the `results` array in the JSON response from /list_available_actions). Fill in the strings needed for the run_action operation. Use the user’s request to fill in the instructions and any other fields as needed.
Remember to copy and paste this text directly below your other instructions, like so:
Next, you need to add in information from your required actions—this refers to the apps (Slack and Google Calendar) you enabled in a previous step.
The information you need is the name of your Slack and Google Calendar actions. This is how you should format it:
REQUIRED_ACTIONS:
- Action: Google Calendar: Find Event
- Action: Slack: Send Direct Message
If, however, you want to share your GPT with other people so they can also use it, you'll need to include the actions' configuration links. This will allow other users to set up their own Zapier AI Actions directly with your GPT.
While we've provided the configuration links for these specific actions below, you can learn how to set up configuration URLs from scratch here.
Here are the configuration links for your Google Calendar and Slack actions:
REQUIRED_ACTIONS:
- Action: Google Calendar: Find Event
- Configuration Link: https://actions.zapier.com/gpt/start?setup_action=google%20calendar%20find%20event
- Action: Slack: Send Direct Message
- Configuration Link: https://actions.zapier.com/gpt/start?setup_action=Slack%20Send%20Direct%20Message
Note: If you're building the GPT just for your personal use, you won't need to add the configuration links, just the action names.
Copy and paste this information into your GPT instructions, below your rules.
Once you're done, exit the instructions field and head back into your GPT builder. (Your instructions will save automatically.)
Add conversation starters, upload files, and add capabilities
Head back to your Configure panel. Under Conversation starters, you can click X beside any prompt to remove it or enter a new prompt in an empty field. Remember, these are the example prompts you or your users will see when you open the finished GPT.
You can also add any company files you have to your GPT in the Knowledge field. For example, you might want to upload your company's style guide or any customer service PDFs you have to give it additional context. In my case, I'll leave it blank.
Next, check to make sure that your GPT can browse the web as we want our calendar assistant to access information from LinkedIn and other sites. To do this, enable Web Browsing.
Add the necessary actions to your GPT
Now it's time to officially connect your GPT to your Zapier AI actions, which will bring all your apps together. Click Create new action.
This will bring you to the actions page, which looks like this:
First up, copy this special URL to your clipboard:
https://actions.zapier.com/gpt/api/v1/dynamic/openapi.json?tools=meta
You can copy this URL from this blog post or from the Zapier instructions, located here. (You'll only need to use this URL once in your GPT set-up.)
Inside your GPT builder, click Import from URL.
Paste in your special URL in the empty HTTPS field and click Import.
This will generate text inside the Schema box, which defines the components and paths available in the API.
Important: You should now click Save or Update in the top-right corner of your GPT builder.
You'll be able to select who you want to share your custom chatbot with: Only me, Only people with a link, or Public. If you're on an Enterprise plan, you'll also have Anyone at [your company] as an option.
Once you've enabled your choice, click Confirm to publish your GPT.
Test your GPT
Now that we've finished configuring our GPT, it's time to test it out and make sure everything's working correctly. After you've saved your GPT, you'll be able to click View GPT.
This will open the public front-end page of your GPT.
To test your GPT, ask it a question about your schedule. This will kick your AI actions into gear. Just remember that you'll have to click Sign in with actions.zapier.com to grant your GPT access to your Zapier account.
This will take you to another window where you can enable OpenAI to access your Zapier account. Click Allow.
You'll be taken back to your GPT. Now, thanks to the rules you set up in your GPT, it will first check to make sure that specific Google Calendar action is available:
Click Allow.
Your GPT will now scan your calendar and send your full agenda to you, according to how you set up your formatting earlier:
Now because I have an overlap in my schedule, I'm going to test out my Slack action and let someone know I won't be attending the Content monthly meeting.
Once your GPT confirms the Slack message, make sure to double-check that it got sent in Slack.
Finally, I'd like to test the GPT's web browser function, using myself as an example:
You might use this function, for example, when a new guest outside of your company gets added to a meeting and you'd like to know more about them. You might want to research a customer, a guest attendee, or even pull up recent news about a company itself.
If you're happy with the way everything is working, you're now ready to use your assistant. If something looks off or you want to modify the GPT's instructions, go back and edit your GPT.
To do this, just click into the dropdown menu of your Google Calendar Assistant and click Edit GPT.
This will bring you to the backend of your GPT where you can continue refining. If you want to share your GPT with other people, just click Copy link and you can share that URL with the rest of your team.
Build GPTs that pull in the power of thousands of apps
With Zapier AI Actions and OpenAI's GPT-builder, you can build custom assistants that can help streamline the way you work across thousands of apps—boosting your productivity.
This is just the start of what you can do. Start experimenting now and see what you can build!