• Home

  • Automation with Zapier

  • Zapier tutorials

Zapier tutorials

11 min read

How to create an approvals table with Zapier Tables

By Elena Alston · January 31, 2024

Most internal tasks and processes don't look that complicated from the outside. In fact, every company I've ever worked at has had quite straightforward processes in place. Need a new computer? Fill out an office gear form. Want time off? Request it through your HR tool. Piece of cake. (For the requester, that is.)

But it's the people behind these processes that have it hard. When you're reviewing hundreds of requests from employees and customers—like budget requests, internal IT approvals, or approving leads—things can get out of hand. 

That's especially true when these kinds of processes require manual, human input. Having the right database tool—that's also built for automation—is key. 

Zapier Tables is a no-code database tool that lets you easily move and store data, and build Zaps—what we call automated workflows—to fire off actions in other apps you use. 

That means you can easily create an approvals table that gives you the power to review records before giving them the green light. Then, once you've approved (or rejected) a request, Zapier will trigger automated workflows to notify employees, add that data to another tool, and more. 

In this blog post, I'll walk you through exactly how to create your own approvals table using Zapier Tables. Plus, I'll show you how to create automated workflows that will take this process to the next level. 

Table of contents

Are you ready to store, organize, edit, and automate all of your data in one place? Start the Build workflows with Zapier Tables course to level up your Tables skills.

Before you begin

Make sure you have a Zapier account. You can build your own project today at tables.zapier.com.

Screenshot of tables homepage

Overview: How to create an approvals table

Here's the quick version of how to create an approvals table with Zapier Tables, though we'll go into more detail down below:

  • Go to the Zapier Tables dashboard

  • Click + Create

  • Choose Blank table or Import data

  • Customize your table and add an approval button

  • Create Zaps to move your table data

  • Customize your settings

Step 1: Build your table in Zapier Tables 

Let's start off with creating an approvals table from scratch. Head over to your Tables dashboard. On the top-right corner of your screen, click + Create. 

Screenshot of create button

Once you've done that, you'll see multiple table types you can choose from. If you're starting from scratch (and don't have any existing employee requests), you'll want to click Blank table

Screenshot of blank table

Give your table a name and a description so you and your team can identify it, then click Create table

Screenshot of approvals table

This will create your table within Zapier Tables.

Note: If you want to create an approvals table from a template, you can use this ready-made template to get started.

Your table will include several empty fields, which you can now customize. 

Screenshot of empty table

If you have an existing database with requests you want to add to your new table, click on Import data.

Screenshot of import data option

You'll be prompted to upload a file with your existing data. Choose a file to upload from your computer, then click Continue. Tables will let you preview how your data will look. Give your table a different name if you'd like, add a description, and click Import

Screenshot of preview data

This will create a table with your imported data.

Step 2: Customize your table

For my table, I'm going to build an approval process for employees who need to request a budget for software tools. 

We'll include fields for each person's name, email address, hire date, role, and the tools. 

To edit the existing fields, click on the field name, and click Edit field

Screenshot of edit field button

A right-hand side panel will appear—this is where you can edit the field name and field type, align the text, and add an icon.

Screenshot of edit field window

Under field type, you can choose between a number of options such as text, long text, date and time, number, email address, and more.

screenshot of field types

Once you've finished editing each field, remember to click Save

If you need to add a new field, just click on the + icon in the right-hand corner and repeat the same process as above.

screenshot of add new field option

Tip: You can also rearrange the order of your fields by clicking on the field name and dragging-and-dropping it into a new place. 

For any other field adjustments, you can click on each field name in order to lock, hide, and delete fields. 

Screenshot of field settings

Remember, your table doesn't have to be super detailed, but it should include the key information your team needs to approve software budgets. 

This is what our main fields look like: 

Screenshot of field names

Now it's time to add approval and rejection buttons to your table, so you can easily review and take action on any software requests moving forward. 

Note: These buttons will only work if you create a Zap for them, but we'll talk more about that below. 

Add an approval button to your table

Click on the +icon to add a new field. Add the name (in our case, we'll just use Yes). Under Field Type, select Button.

Screenshot of button field in tables

You can also adjust your button's alignment and include an icon if you want. 

Under Type of Button, you can select Trigger Zap or Continue Zap. If you select Trigger Zap, that means that whenever you click on the button to approve a software request, it will kickstart an automated workflow (like for example, notifying your finance team in Slack).  

If you select Continue Zap, that means that your workflow will run up until this action and wait until you click it. For example, you might want to wait until you have a certain number of requests before you batch-send Slack messages.

Screenshot of button type

In our instance, we're going to choose Trigger Zap so that every time we approve a request, we'll send information from the employee's request to another app (like Slack). 

Once you've set up your field's type, you'll also need to set a label (the text that goes inside your button) so it's easily identifiable. 

Screenshot of button labels

Finally, you can also enable or disable your buttons, which is the state it's set to by default. You can also choose to disable the button once it's been clicked, which I fully recommend doing so you don't end up approving the same person four times. 

Once you've set up those fields, remember to click Create. Here's what our button field looks like: 

Screenshot of button

Note: Your button will be grayed out until we set up the connecting Zap. 

Add a rejection button to your table

Now that we've set up our approval button, we're also going to add a rejection button. To do this, just add a new field by clicking on the +icon once more.

Screenshot of add new field

Give your new field a name and select Button under Field Type

Screenshot of no field

Because I also want to trigger a Zap that will do something different in this case (like warn the requester they weren't approved), I'll select Trigger Zap under Type of Button.  

Then, under Default Button Label, I'll use "Reject" as the keyword. 

This is what my two buttons now look like: 

Screenshot of buttons ready

Tip: If at this stage you need to import records into your table (or download your existing records), you can easily do that by clicking on the three-dot icon in the upper right hand corner of your table.

Screenshot of three dot icon

If you want to view a specific record in full, click in any field and click Expand record

Screenshot of expand record

Expanding a record lets you take some additional steps, like copying a link to the specific record, duplicating it, deleting it, and so on. 

screenshot of record details

Step 3: Build your button Zaps

Now that we've set up our core table, it's time to build the Zaps that will start whenever we click on the "approve" or "reject" button. Until you build your Zaps, your buttons will remain grayed out. 

Build your approval Zap

In this instance, I'm going to build a Zap that notifies the finance team in Slack whenever a software budget is approved, so that they can take the necessary steps from there. 

If your table doesn't have any entries yet, I recommend filling out at least one field with some information, even if it's just test data. Otherwise, your Zap won't be able to select a record when you're setting it up. 

To set up a Zap, just click Set up button inside your dedicated field.

Screenshot of set up button field

Next, click +Create.

Screenshot of create zap button

You'll be taken straight to the Zap editor, where the trigger app and event (Trigger Zap Button Clicked) will already be filled in, like this: 

Screenshot of Zap

Because you're creating this Zap directly from within your table, your table ID and your trigger button will also be set up in your trigger step:

Screenshot of trigger step

Click Continue

Now it's time to test your trigger so Zapier can find a test record to make sure the trigger is working properly. Click Test trigger. Once the test runs successfully, click Continue with selected record.

Screenshot of record selected

In this next step, you'll set up the action—the event your Zap will perform once it's triggered. Start by searching for and selecting your action app. 

We'll use Slack in our example, as we want to notify the finance team in Slack whenever a software budget has been approved. But you can choose whichever app and event that best suits your workflow. 

In my instance, I'll select Send Channel Message as my action event. Click Continue

Screenshot of action step

Next, connect your Slack account to Zapier by clicking on the dropdown menu and selecting +Connect a new account. You'll need to give Zapier permission to access your Slack account.  (Note: You may have to first log in to Slack if you're not already logged in.) Once you've connected your account, click Continue.

Now you need to tell your Zap where to send the Slack message. Choose a Slack channel from the dropdown. This will be where our accounting team will get notified automatically whenever a tool request gets approved.

Screenshot of Slack set up

Next, type out the message that you'd like to send. You can add data from previous steps in your Zap by clicking inside any empty field where you want the data to go (such as inside the Message Text field) and selecting an option—or multiple options—from the Insert Data dropdown menu. 

In this instance, we'll pull in the requester's name, their email address, and the approved software from our table, like so: 

screenshot of slack message

After you finish customizing your message text, you'll have further options to set up your message. For example, if you want the message to be sent from a bot instead of your Slack handle, make sure you select Yes under Send As A Bot? You can also give your bot a name, use a Slack emoji as the bot's icon, include a link to the Zap itself, and more. 

Next, you'll need to test your Zap. Zapier will show you a preview of the Slack channel message before it's sent. Click Test & Continue

Screenshot of Zap sample

Zapier will now send a test message to the Slack channel you selected with the message you've just set up. 

If you're happy with how the message looks in Slack, you're ready to begin using your Zap. It will automatically send a Slack channel message every time you click the approval button in Tables. 

Build your rejection Zap

Now, I want to do something slightly different for my reject button. If a software request doesn't get approved, I want to trigger a workflow that sends the requester an email, asking them to get in touch with their manager. 

But you can set up any Zap you like here—it just depends on what you want your workflow to look like. For example, you might want to send your requester a notification in Slack or add the rejected software to an Airtable row. 

In my instance, I'll follow the same process as my approval Zap for the trigger step, but I'll use Gmail for my action app. Then I'll select Send Email for my action event. 

Screenshot of Gmail action in editor

Next, I'll connect my Gmail account. 

Now it's time to customize the email notification that will send each time my Zap triggers. 

I'll pull in my Tables data from my previous step into my Zap by clicking inside any empty field.

Click on theTo field, then click on the Tables step in the dropdown menu to see all the data from your trigger. Then select the information you want to map to that field.

Screenshot of action set up in editor

I'm also going to add data from my table to the Body field when crafting my email message:

Screenshot of body message in Zap editor

Once you're happy with the way your Gmail message looks, don't forget to test the Zap to make sure it's working correctly and then publish it. 

Step 4: Customize your table's settings

If you head back into your table, you'll see that both your approval and rejection buttons are now enabled:

Screenshot of approve button

You can view all your Zaps that are connected to your table by clicking the Linked assets icon on the top section of your table. You can view the Zaps you've set up, see if they're switched on, and create new Zaps directly within the left-hand side panel that pops up.

Screenshot of linked assets icon

If you click on the settings icon in the left-hand panel, you can edit the name and description of your table, delete it, and more.

Once you're happy with your table layout, you can also share the table with other team members by clicking Share in the top-right corner. 

Screenshot of share button

Provided you have a Team or Company plan, you can share your table with coworkers, stakeholders, and anyone else in your organization. You can also create a public link. There are a few different levels of access (builder, editor, view-only, no access), which is quite handy if, for example, you don't want other team members to accidentally delete or edit a field. 

Screenshot of sharing settings

Other ways to enable approvals

Depending on the type of approval process you want to set up, you have a few other options to add approval steps to your table. 

Click on Settings, which will open the Table Settings pane to the right.

You can choose to send records manually (pending) or automatically

Screenshot of table settings

Processing records manually means that if you set up a Zap that triggers when your record is updated, you'll have the chance to review it first before processing it through the Zap. 

This option is great when you want to approve a record before it’s sent through a Zap. You might want to wait until a lead record is completely filled in or verify that the employee records are correct before triggering a connected Zap.

For example, you could set up a Zap that triggers when a specific field is updated. In my example below, I've set up a Zap that triggers whenever the email proof field is updated, and sends the email link to a Slack channel. With the pending record turned on, I can review the record first. 

Screenshot of pending records

If, on the other hand, you choose to send your records automatically, that means that any record you add in will trigger any connected Zaps without a delay. 

Another good idea is to set up a checkbox field. This field acts in a similar way to a button field, where you can set up a Zap to trigger when it's either selected or unselected. 

Screenshot of checkbox field

For example, if an employee software request is completed, you can check off the checkbox. You can then build a Zap to trigger when the box is checked, so that it sends approved requests to the IT team for reporting.

Test out your table

Now that your table is finished (hurrah!), you should think about doing a final check to make sure everything's working as it should. 

Just click Approve on any test record you have in your table, like so:

Screenshot of final table

Now, thanks to the Zap I set up previously, a Slack message is automatically sent to the accounting channel, notifying the team: 

Screenshot of sample Slack message

And now that I've approved Winston's request, the button will be grayed out, so I can easily keep track of who's been approved and who hasn't. 

Screenshot of approval buttons

Now let's test out our rejection button to make sure it's working. Within seconds, your Gmail account will fire off an email, letting the requester know about next steps. Here's mine:

Screenshot of sample email Zap

You can always troubleshoot and tweak anything you're not happy with. Once you've double-checked that everything is working smoothly, your new table is now ready to be used and shared with your team. 

Streamline your internal processes with Zapier Tables

With Zapier Tables, you can build an entire approvals workflow that does a great job of setting you and your team up for success. Whether you want to build an approval system to process software requests, or one to process leads before you send them to your sales team, you can streamline your workflows. 

Zapier Tables is a great option for managing your data and connecting it with the apps you use—and the other teams involved. 

New to Zapier? It's workflow automation software that lets you focus on what matters. Combine user interfaces, data tables, and logic with 6,000+ apps to build and automate anything you can imagine. Sign up for free.

Related reading:

This article was originally published in September 2023 and was most recently updated in January 2024.

Get productivity tips delivered straight to your inbox

We’ll email you 1-3 times per week—and never share your information.

mentioned apps

Related articles

Improve your productivity automatically. Use Zapier to get your apps working together.

Sign up
A Zap with the trigger 'When I get a new lead from Facebook,' and the action 'Notify my team in Slack'