Creating Checklists with Airtable and Integromat

integromatlogo
A while ago now, I wrote a blog post about creating checklists in Airtable using Zapier. Since then I have had several people ask how to do exactly the same - but with Integromat (which really makes it much simpler). So here goes…

In this Article, we are going to go through the process of automatically creating task lists in Airtable - with the automation handled through Integromat. In order to copy this you will need an Airtable account and an Integromat account (a free account will be fine to get you started in this case).


First Let's Create the Base in Airtable

In this example, we're going to work on the basis of a project app. When a new project is created we are going to enter a checklist (from a lookup table) and Zapier will then create the tasks from the entered checklist.


The Project Table

Here's how the project table is setup:




This is all quite straightforward - with the only unusual item being the Created Time field which Integromat needs in order to be able to watch for new records.


Checklists





This table simply contains a Name field and then shows which Checklist Items are linked to it and also which Projects. Generally I prefer to create these links in the Many (or child) side of a one to many relationship. There is also a field called ID which is a formula field containing RECORD_ID().


Checklist Items





This table contains a Name field, who to assign the task to (a Collaborator field), a number of days after today that the task is due and which Checklist it forms a part of. The Checklist ID field will be used later to enable Integromat to search for Items connected to a particular Checklist - and it's a lookup field picking up the ID field from the linked Checklist record.

With all this information, we are now in a position where Airtable has all the information it needs to generate a task and assign it to a project and collaborator.


The Tasks Table




Here we see the Tasks table containing 3 tasks (which were generated by Integromat from the Checklist). I've implemented this table so that manually entered tasks can also be input (not from checklist items. If you enter a value in the Brief description field rather than the Checklist Item, then the Task field (Name field) will show the description rather than the Checklist item - the formula is:

Screen Shot 2017-10-07 at 13.25.47


So, that's the Airtable side of things. Now let's look at how Integromat takes this and generates the tasks automatically…


Building the 'Scenario'

Integromat calls each process you set up a Scenario - here's what the completed one for this project looks like:





Note that the numbers attached to the top right of each step shows the number of times this step was processed the last time we manually ran the scenario.

Firstly, the Scenario is going to be triggered by a New Record in the Project table - as you can see above. One of the fields returned by this step is going to be the ID of the Checklist which is used to find the Checklist Items in the second step and finally, the third step (which will run for each Checklist Item returned in the second step) creates each new Task for the project.

Let's look at each step in this process and see how they're set up.

Watch for new Project

The first step uses the Airtable 'apps' Watch Records option - which is created as follows:



Select Airtable as the App and then click on the Watch Records option - you could also choose Watch Records in View if you wanted to filter which records trigger your scenario.

Once you've done this, you will be able to configure the options:



With this created, the scenario will trigger for each new record in the table - but not immediately. Like Zapier, Integromat's link to Airtable runs periodically and the time minimum interval depends upon your licence level. While you're building the scenario though you can run it when you like - and even select an existing record to run it for if you want.


Search for Checklist Items

Now Integromat has the Project, you can use a Search step to look for all the Checklist Items associated with the Projects Checklist - here's the set up of this step (using the Search records option for the Airtable app):




Note, the Formula looks for records where the Checklist ID field is equal to a value returned by the first step - you select it like this:





Note the Max Records option in this step - this will select multiple records and you can limit it if you want - and Integromat will run later step for all records retuned by this step (none of the Javascript needed in Zapier to achieve this).


Create Project Specific Tasks

All we have to do now is to create the tasks for this project using this final step which uses the Airtable Create a record option - here's how to configure this step:




Here you need to note the Map options for some of the fields (which allows you to map a value from another step).


Summary

If you've read my previous post about doing this with Zapier, I think you'll agree that this process is much simpler - Integromat makes dealing with multiple records really much simpler!


Final Note…

There is one issue when using Integromat with Airtable and that is the fact that when designing Scenarios you will come across this error from time to time:





This is a limitation of the Airtable API (Integromat doesn't have this problem with any other apps) but it doesn't effect live running of the Scenarios. I wish Airtable and Integromat would sort this out because Integromat is an amazing tool for automating Airtable! In the end I find the irritation acceptable given the ability the tool provides.

I hope you've found this article useful and please feel free to make any comments or suggestions!


Next Time

As I've now shown how to do this with two tools (Integromat and Airtable) - and the same technique would work in exactly the same way in one of the other databases I use, Knack, I thought that next time I would show how to achieve the same using the third database I use - Ninox. Watch this space (spoiler - no Zapier or Integromat required).

This is now available to read here!
blog comments powered by Disqus