2/25/2025 – BuiltOnAir Live Podcast Full Show – S21-E08
Duration: 0 minutes
Be Sure to Subscribe to the podcast!
To get all the latest videos and demonstrations from the BuiltOnAir Podcast, subscribe and get notified on our Youtube channel here and our newsletter/community here.
FULL EPISODE VIDEO
Watch the full video of the show. See below for segment details.
The BuiltOnAir Podcast is Sponsored by On2Air – Integrations and App extensions to run your business operations in Airtable.
In This Episode
Welcome to the BuiltOnAir Podcast, the live show. The BuiltOnAir Podcast is a live weekly show highlighting everything happening in the Airtable world.
Check us out at BuiltOnAir.com. Join our community, join our Slack Channel, and meet your fellow Airtable fans.
Alli Alosa – Hi there! I’m Alli 🙂 I’m a fine artist turned “techie” with a passion for organization and automation. I’m also proud to be a Community Leader in the Airtable forum, and a co-host of the BuiltOnAir podcast. My favorite part about being an Airtable consultant and developer is that I get to talk with people from all sorts of industries, and each project is an opportunity to learn how a business works.
Kamille Parks – I am an Airtable Community Forums Leader and the developer behind the custom Airtable app “Scheduler”, one of the winning projects in the Airtable Custom Blocks Contest now widely available on the Marketplace. I focus on building simple scripts, automations, and custom apps for Airtable that streamline data entry and everyday workflows.
Dan Fellars – I am the Founder of Openside, On2Air, and BuiltOnAir. I love automation and software. When not coding the next feature of On2Air, I love spending time with my wife and kids and golfing.
Show Segments
Round The Bases – 00:01:40 –
Meet the Creators – 00:01:41 –
Meet Micki O'Neil from CEDS Financial.
Micki workw at CEDS Finance, a nonprofit small business lender that works mostly with low-income business owners. My primary role is to support applicants and clients in strengthening their business operations. I came to CEDS Finance with experience as an entrepreneur, educator, nonprofit leader, and financial analyst.
Feature Alert – 00:01:41 –
We dive into Google Calendar Sync feature –
Micki uses Airtable's integration with Google Calendar to make it easy for potential clients to set up an "intake appointment" to learn about our loan application process and requirements. Appointment options are filtered based on language and location (video/in-office) and are distributed reasonably across staff members.
Automate Create – 00:01:42 –
Watch as we review and work through automations. Kamille will walk us through a basic setup for integration Airtable with Google Sheets.
Full Segment Details
Segment: Round The Bases
Start Time: 00:01:40
Roundup of what’s happening in the Airtable communities – Airtable, BuiltOnAir, Reddit, Facebook, YouTube, and Twitter.
Segment: Meet the Creators
Start Time: 00:01:41
Micki O'Neil – CEDS Financial
Meet Micki O'Neil from CEDS Financial.
Micki workw at CEDS Finance, a nonprofit small business lender that works mostly with low-income business owners. My primary role is to support applicants and clients in strengthening their business operations. I came to CEDS Finance with experience as an entrepreneur, educator, nonprofit leader, and financial analyst.
Segment: Feature Alert
Start Time: 00:01:41
Airtable Feature – Google Calendar Sync
We dive into Google Calendar Sync feature –
Micki uses Airtable's integration with Google Calendar to make it easy for potential clients to set up an "intake appointment" to learn about our loan application process and requirements. Appointment options are filtered based on language and location (video/in-office) and are distributed reasonably across staff members.
Segment: Automate Create
Start Time: 00:01:42
Airtable Automations – Google Sheets – Airtable Integration
Watch as we review and work through automations. Kamille will walk us through a basic setup for integration Airtable with Google Sheets.
Full Transcription
The full transcription for the show can be found here:
iA[00:00:00] Intro: Welcome to the Built On Air podcast, the variety show for all things Airtable. In each episode, we cover four different segments. It's always fresh and different and lots of fun while you get the insider info on all things Airtable. Our hosts and guests are some of the most senior experts in the Airtable community. [00:00:26] Join us live each week on our YouTube channel every Tuesday at 11am Eastern and join our active community at BuiltOnAir. com. Before we begin, a word from our sponsor, On2Air. com. backups. Onto where backups provides automated air table backups to your cloud storage for secure and reliable data protection, prevent data loss and set up a secure air table backup system with onto air backups at onto air dot com. [00:00:50] As one customer, Sarah said, having automated air table backups has freed up hours of my time every other week. And the fear of losing anything. Long time customer [00:01:00] David states, On2Wear backups might be the most critical piece of the puzzle to guard against unforeseeable disaster. It's easy to set up, and it just works. [00:01:08] Join Sarah, David, and hundreds more Airtable users like you to protect your Airtable data with On2 backups. Sign up today with promo code built on air for a 10 percent discount. Check them out at onto air. com. And now let's check out today's episode and see what we built on air. [00:01:38] Dan Fellars: Welcome back into the built on air podcast. We are in our final episode of season 21, episode eight, we'll be taking the month of March off. So we'll be back in April. So good to be back with you one more time this season. Got myself, Camille and Ali with us as always, and special guest, Mickey O'Neill. [00:01:59] [00:02:00] Welcome, Mickey. Good to have you on. We'll learn more about Mickey and her story later in the show. I'll walk us through what we're going to be talking about. Built on Air podcast. It's an hour long show. Keep you up to date on everything in this world of no code, low code and Airtable. We'll start with our round the bases on all the news and updates. [00:02:18] In all the different communities and product offerings, then we'll talk about our sponsor onto our backups and how you can get into that. And then we'll learn about Mickey and her background and story and how she came into Airtable world. And then she's going to show us how she uses Google calendar sync in her base and how that works. [00:02:39] Walk us through that. Then finally, a shout out to join our community at Built on Air. And then finally, Camille is going to walk us through how to integrate with Google Sheets. So, a lot of Google integrations today. Okay, round the bases. [00:02:56] Alright, if you have been to the Airtable [00:03:00] community, you may have seen a big announcement. [00:03:02] They are in read only, well, they're supposed to be in read only mode, right? Apparently it's, that's not true. You can still, you can still post and I believe you can still reply. So at some point it's going to be turned off and they're moving to a new platform. Is, is, is that correct? Is that what they announced? [00:03:22] Kamille Parks: That's what it sounds like. [00:03:24] Dan Fellars: Yeah. Or [00:03:25] Kamille Parks: it's the same platform with a major overhaul. [00:03:29] Dan Fellars: Maybe. Yeah. But it looks like, so they've already moved their help center. I don't know if you guys saw this. Somebody in the built on air community posted that this is all changed. So they've already migrated to this. [00:03:40] And I think I think what they said was this is the same platform as the community. So they've already moved this over. And then the community, whatever platform this is, I can't remember. I think somebody told me what it was [00:03:54] Alli Alosa: chorus. [00:03:56] Dan Fellars: Was that it? [00:03:58] Alli Alosa: Was it [00:04:00] Khoros [00:04:00] Dan Fellars: or Kronos or Kronos? [00:04:02] Alli Alosa: Yeah, Kronos. [00:04:04] Dan Fellars: Yeah, that sounds right. [00:04:05] I could probably do some digging and figure that out, but yeah, so, so, well, it'll be interesting to see. I know the last time they did this, it was it was not, did not go over well. [00:04:23] Yeah, so you can reminisce on the good old days of the community. I think [00:04:32] Kamille Parks: someone in our slack community was like, whatever they do, they hope the actual. Like migration of data includes all like interactions and badges and stuff like that, because, you know, I forget who said it, but I agree, because I don't want to have to answer that many questions again to rise like up to whatever ranking system they're going to [00:05:00] put in now before it was numerical. [00:05:01] And then it was some kind of Like a weird nickname for every, like, community level that there was, I don't know, all the planets, all the planets made no sense. Yeah. [00:05:13] Alli Alosa: It's like, which one's which, which planet is better than the other? I have no eight and a half planets [00:05:18] Kamille Parks: and people only live on one. So. [00:05:23] Dan Fellars: Okay. So maybe it is different. So this is powered by document 360. So maybe it's different. I think Kronos was the. So it's not the same platform. Okay. So anyways, they've been hard at work going through everything, different layout, looks like everything kind of carried over, but So we'll see. But anyways, in the meantime, if you are looking for support a couple of different ways, places you can go somebody auto nets on the Reddit community recommended that you can, that he's [00:06:00] willing to do he or she is willing to do office hours. [00:06:02] And so you can dm them. And willing to help out there. I also know that the Airtable forums community is a great place to go online. And then of course the built on air community as well. So there are places to get answers while they are in quiet mode and see what happens when they relaunch. [00:06:28] Okay. Couple new announcements. I just saw these this morning. So grid view enhancements for fixed data dependencies when using data dependencies with fixed. Rescheduling dependency properties are now visible and editable directly in the grid view. [00:06:50] Anybody, you guys heavy users of data depend or date dependency? [00:06:55] Kamille Parks: No, not really. And it's kind of hard from the screenshot to [00:07:00] tell where that [00:07:02] Micki O'Neil: is. Yeah, I guess [00:07:07] Kamille Parks: if you for the fields. That are related to your date dependency settings. There is an icon in like the top right of the name of the field. [00:07:17] That makes sense. And the, the field bar I guess clicking on that icon will show you the dialogue. That's my, my guess. [00:07:27] Dan Fellars: Yeah, maybe. Yeah. So anyways, if you're doing that, it's just a shortcut. It's not new functionality. It's just like, this was already available in the settings. So I think it's just a shortcut. [00:07:41] Okay. There's one more. This one's kind of interesting because they back, they just put it out there, but they backdated it to January. So I don't know if this came out in January. Real quick before. So tech in a row says I had a use case where this was useful, but to be truly useful, I need to be able to set the buffer through [00:08:00] automation. [00:08:00] That's interesting. [00:08:05] Okay, so it looks like they modernize the admin panel table. Let's see what this looks like. So now you can kind of filter what what fields are visible. Things like that. I haven't noticed this. It's like, is it just, is it on all of them or just the user? [00:08:25] Kamille Parks: I don't know. This is of course relevant to business and enterprise scale plans. [00:08:30] I checked yesterday and it wasn't on the enterprise plan that I have access to. So I guess they're still rolling it out. I do know that the admin panel is a little bit frustrating and that the users section is like Built out where you could click on any anything and it would give you useful information. [00:08:49] And then groups is terrible. There's no information in there. And it's just it's a real hodgepodge of some of these tables were in a pretty good spot. And some [00:09:00] of them simply weren't. And I'm wondering when we get access to whatever these updates were, does it make all things equal? Or is it just, you know, hiding some fields, which is useful, but not amazing. [00:09:17] Yeah, [00:09:19] Alli Alosa: I tried to run a report the other day. There's an under like the report section. There's different, what's the word I'm looking for? Like modules, modules or like the, what's the thing? Events, different events that you can filter by for the audit log. And one of those is AI, but literally nothing comes up. [00:09:42] Like nothing, even though I've definitely been using AI and I don't know, I'm like where I was hoping it could give me a detailed breakdown of like where all my credit usage was, but no, maybe some [00:09:57] Dan Fellars: interesting. All [00:10:00] right. So a couple of new minor, minor enhancements coming out, moving on from LinkedIn. This is just kind of a use case from somebody in the real estate appraisal world of how you could basically map all of your appraisals or basically any, anything with a location. [00:10:20] You, I think you do need the geo codes for it. But there is an extension. There's a Google map extension or in the extensions that you can use and it will look like this. You can click on anyone. It'll give you a little bit of details, but then you can link to go to that record. So he's basically saying like this, there's like appraisal software that does just this, that you can replace in air table. [00:10:46] And at some point you'll be able to do this inside of an interface, which would be nice. [00:10:51] Alli Alosa: Hopefully. Yes. Can't wait for that. [00:10:54] Dan Fellars: Yeah, so there's a nice real world use case. Next one. [00:11:00] If you do presentations, so gamma is a, is a presentation software. They just announced an integration with air table so you can embed shareable views inside of your gamma report. [00:11:12] So I've played with this in the past. It's kind of cool. You can build pretty nice looking Reports and things like that. So if you're looking for that, you can do it. I'm going over to the reddit community. Similar questions. We see these all this time. Easy interface builder alternative. Everybody is always looking, asking softer. [00:11:35] I think there's even another one right here. Softer versus stacker. Stacker feels like it hasn't got as much love as lately, but there are some people in here who are fans of it. And but they do talk about how it's evolved, but there is still kind of a classic stacker that still supports Airtable. [00:11:55] So, anyways, that's, that's an ongoing question that's [00:12:00] always going to be there. [00:12:01] Alli Alosa: Absolutely. And the new, the new stacker, which is called Astra, does now support Airtable. They [00:12:09] Dan Fellars: rebranded? [00:12:10] Alli Alosa: That's just their new product. I'm a little lost on they're still called Stacker, but I think it's called Stacker Astra. [00:12:16] So it's like, there's Classic and there's Astra. Gotcha. So [00:12:20] Micki O'Neil: that's their new product. [00:12:22] Alli Alosa: Yeah, it's new. They handle large data sets much better than other platforms because they cache the data. So it, it like doesn't slow down. It's not doing a live call every time. Thank you. Which can help speed things up on both sides and the front end. [00:12:44] But softer is much more customizable, so trade offs. [00:12:48] Dan Fellars: Yeah, yeah, gotcha. Okay, one more. We got here. So this I thought was interesting. This is kind of more in the general AI world. But there [00:13:00] has been discussion. I should have posted from the built on air community of people using open a eyes. [00:13:06] Browser feature that is expensive. I think it's like 200 a month to, to get access to you have to be on their pro tier. But anyways, perplexity, which is a, it's alternative to OpenAI to chat GBT. They're coming out with their own browser. So I'm seeing, and I know Google has one that's similar as well, that's kind of like the next phase of AI is. [00:13:31] automated browsers. And so we're starting to see that start to heat up. So that's a space that I'm keeping an eye on. I don't know if any of you have played with any of these options. It's kind of amazing. If you look at, I was looking, I didn't, you can't get a free trial. I wasn't ready to pull the trigger on that price point, but for open AI's, you know, it just has a chat sidebar and you can just say, pull this information, go to this page, click on this, [00:14:00] or even just like general, like. [00:14:02] Find me a recipe and it'll go to a website, search for it, bring it back to you. Like, it'll just do whatever you ask it to do. [00:14:11] Kamille Parks: So it's like a smart crawler built in, I guess. Yeah. [00:14:15] Dan Fellars: Yeah. Yeah. And it'll, it'll be crazy. Like that whole industry of scraping and everything is, this is kind of like the next generation of that. [00:14:27] Intro: Yep. [00:14:31] Dan Fellars: Okay, a couple more from the built on air community. So we had talked about this last week or previous weeks. We've even done a demo on it. So trigger automations. They finally announced it in their community. But one thing that I thought was interesting that Max points out is this, this part in the FAQ, can I send a reply to emails received via this automation? [00:14:54] So we didn't do that in the segment that I put together. It says yes, you can using Gmail. [00:15:00] Somebody's like, Oh, can you not do it without look and they, they think you can, you just, it just didn't say it in the FAQ, but you basically, it'll give you an email ID for the incoming email and you can just reply to that email ID and they will then get the, the users on there to do a reply all, which I thought was interesting. [00:15:26] So that's kind of a cool feature. And then, yeah, as, as mentioned here, it is only on business and enterprise, so it's not on teams. So, that's one thing that is available at the higher tiers only. One of many. Okay, another one, another topic we've also talked about, but people are starting to notice in the community. [00:15:50] Russ, friend of the show, points out that it now shows 120 seconds as the runtime. So that's two minutes. They [00:16:00] originally said one minute. I know, Allie, this, this is the Allie, the Allie number. [00:16:05] Alli Alosa: Oh, yeah. I named this [00:16:07] Dan Fellars: picture after you. [00:16:09] Alli Alosa: It was, it was 30 seconds, and then they increased it to 60 seconds, and now apparently it's increased to 120 seconds, and this all happened within a matter of like two months. [00:16:19] Yeah. Not complaining about that part, that I'm I will take it. That sounds great. [00:16:26] Kamille Parks: I was like, I feel like we talked about this, but then I'm remembering, no, we talked about it going from 30 to 60 and it's suddenly two minutes. Yeah. And to, we did [00:16:37] Dan Fellars: notice it said 120, even though they said it would only be 60. [00:16:41] Kamille Parks: Yeah, I don't know if this is a thing where like, if they intended. Teams plan to have 60 seconds and then business and enterprise have 120 and then they're like, nevermind, just 120 for everyone. Or if they were like incrementally increasing their [00:17:00] resources on their end in order to support this or someone made a typo. [00:17:05] Because that someone had to type that right in the design of the script action steps. So there's really no telling what happened. But there's I remember recently we had a script timeout. on our end and it said 32 out of 60 seconds and we were like, well, how is that a timeout if we had allegedly 28 extra seconds? [00:17:34] So I'm hoping that that's balanced. If it's still in the process of rolling out, then that's all well and good. But when it's done, I. Do you hope when it says one 20 that it's actually one 20 [00:17:51] Dan Fellars: and then somebody did point out, I think it was Kavon pointed out somewhere else that this is for the entire script inside of air table. But if you're using a [00:18:00] fetch to make an API request, that fetch has a different time out, which is that 30 seconds is the fetch time out 30 seconds. So you need to be aware if you are making a call to a third party API, if that API takes a long time to respond, it still might time out. [00:18:20] So, yeah, I don't, I don't know the exact time out on that. I wonder if they can increase that as well. Okay, and that concludes everything to keep you up to date in Airtable moving on. [00:18:34] If you are running your business on Airtable, best practice is to make sure your data is stored outside of Airtable. In addition to Airtable's backups, that's where OntoAir comes in. [00:18:43] It'll make sure your data, including your, all your record data, your attachments, and your meta schema information. are all backed up outside. We support Box, Dropbox, Google Drive, and OneDrive, and we also have the ability to restore it back into [00:19:00] Airtable if needed. So check it out, ontoair. com, use promo code builtonair for a discount, and you can rest easy knowing that your data is safe and secure outside of Airtable. [00:19:12] Okay, with that, Mickey, why don't we learn a little bit about you. Allie will ask you a couple questions. I'm going to make you a Big so we can see here we go. [00:19:23] Alli Alosa: Awesome, Mickey. Thank you so much for joining us today. Thanks for having me. Of course, we are very happy to have you. So we'll start off with the big question, which is how did you discover Airtable? [00:19:36] And tell us a little bit more about your background. [00:19:39] Micki O'Neil: Yeah. So I actually, I feel like it was a pretty serendipitous discovery of Airtable. I had just started at the organization said finance, which is a nonprofit. Just quickly tell you about them, a nonprofit CDFI community development, financial institution. [00:19:57] We do lending to small business [00:20:00] owners and focus on small business owners that can't get capital elsewhere. So the majority of our clients are immigrants and refugees and low income small business owners. But so I started there and I did have, I'd actually just, I started during COVID. When things were largely still fully remote, and I had just done some data program because I really love data analysis and such, but this job was nothing about that. [00:20:28] I I'm not a computer. I have never done any coding or anything like that. But I, so in my job, it's like the first week one of my orientation activities was to sign up for an Airtable account and add my weekly tasks to our Airtable and we just had like a very simple free workspace and I went into to do that and I was like, I don't really know how to do this. [00:20:52] Like, I'm sure somebody could show me in like one minute how to add what I'm supposed to do, but I don't. You know, I'm still my first [00:21:00] week. I don't have a lot of work. There's nobody right around me. So I'll just watch the videos and teach myself. And soon as I watched them, I was like, wow, this is way more powerful and does a lot more things that we're not doing at all. [00:21:12] And that just. like, started me, and I never watch training videos. I hate that. So it was a good lesson for me to like, sometimes you can teach yourself something. And instead of just asking, I learned a lot by doing that. And so I went down a rabbit hole of Airtable. And at the same time, we were in the process, the organization was really small, in the process of trying to grow and make our processes more efficient. [00:21:39] So I just started kind of in my spare time, like on my own, because it had nothing to do with my job description, like starting developing processes in Airtable. So we had like an inquiry. form that people still filled out on paper by hand. And then we would go in and type it up and I was like, okay, I think we could probably just create a form and have it feed directly [00:22:00] into Airtable. [00:22:00] And then we started doing like our application management process through there to basically develop this pretty complex base that I wish I could go back and start over again cause I did it. When I started it, when I didn't really know what I was doing. But that is our CRM and application management system. [00:22:19] And again, I did that kind of on the, on the side, but kind of rolled it out slowly and every time it was just like addressing a pain point. So it was like adopted very easily, which was great. Cause I think sometimes these big system changes can be really hard from a change management, but people just loved it. [00:22:35] And so now we use Airtable. for almost everything. We have a, a business plan. And one of the things we did at the beginning is we started, I have my role actually was about our business support. We get a lot of federal funding to provide support and we had to track our hours. And so I just created a technical assistance calendar where we [00:23:00] tracked our hours, set into fed into Airtable. [00:23:03] We had some naming conventions. It could kind of identify what types of hours. It could link it right to the client via the email. And so that was how we set up our system for tracking almost all of our hours and our meetings with clients. And that worked really well. And then so what I wanted to show today is so when basically, as I said, we adopted it pretty easily. [00:23:29] And people just kept coming and saying, can we do this? Can we do this? Can we do this? And one of the things that we did that was taking a fair amount of time and we've actually. Gone past this iteration now, but we would get these inquiries and then we would, somebody would email them to set up an intake appointment and now at the time was required in our front office person did that and then would try to like go back and forth via email and, and try to set [00:24:00] up and find, okay, I have to give this person an intake and then like distributed equally and also figure out, are they going to come into the office? [00:24:07] What languages do they speak? So that was taking a really long time. And so, so that's what I was kind of going to show. So we thought, you know, we came and somebody's like, can we do this via Airtable? Cause we also thought about, you know, obviously you have like these calendar, we don't, none of us had Calendly. [00:24:24] We'd already invested or any sort of scheduling system. We, we're a pretty bootstrap nonprofit. And so we didn't have, we couldn't really get Calendly accounts for everybody, but also we weren't quite sure if it could do what we wanted because, and I don't know if it can to be honest, but. Because we wanted like a round robin type, which I know they can do, but we didn't want that exactly. [00:24:48] We needed it like to be filtered. First, people needed to be able to select people by language. And then they also needed to be able to select, we have a hybrid system, a lot of our clients, because a lot of our clients are [00:25:00] like immigrants and not super tech savvy, they wanted to be able to actually still come into the office. [00:25:06] So if they wanted to schedule a length of a meeting in Somali, In the office, there was a very limited set of appointments they could schedule. But then we also needed to do, distribute it evenly. So, we developed that in, in Airtable. So, that was what I was going to show you of kind of how we solved that problem. [00:25:25] Alli Alosa: That is so cool. Like, all of it. I mean, your story is extremely relatable. Like, I relate to it. That's exactly kind of what happened to me. It's like, you discover it and you're like, oh, could it do this? Could it do that? And you like, check the bug. And then everybody else is like, oh, do you think you could do that with it? [00:25:41] And you're like, yeah, [00:25:42] Micki O'Neil: right. And then you're like, let me solve it. I don't know how, but like, like, yeah. And I do think like, I've never, I don't, some of what I'm going to show you would definitely be easier if I knew scripting. I've done a little bit of scripting. I don't know it very well, but I do think it's like [00:26:00] somebody, I've always loved Excel. [00:26:01] I've always loved like solving problems and the logic and the math and the, and I feel like it, Airtable is a really good fit for folks who don't necessarily come from that coding background, but still have kind of that mindset a little bit of like solving those, because you can kind of still jump in without all of, you can have the logical framing versus just the coding language. [00:26:23] Alli Alosa: Absolutely. Yeah, that's exactly. It's a great like the it was at one. I think it was at their table a couple of years ago. They said they really aim to have a low floor and a high ceiling, which I think is a really great way of describing it like a. Easy way to enter and also you can iterate and really push the boundaries, which is awesome. [00:26:43] Micki O'Neil: Yeah [00:26:43] Alli Alosa: So you you said scripting would probably make things a little bit easier Are there any other challenges that you had hit around the along the way? [00:26:52] Micki O'Neil: Yeah, I mean, I think so. I actually had a simpler version of this that I was going to show you guys but then [00:27:00] It actually is almost it's 90 percent of the complexity and doesn't do some of the extra cool things that we did because it searching for what dealing with time and air time and air table is really difficult. [00:27:12] I find. I think that's normal in data pieces, but I'm not used to that. And then specifically like figuring out how to, the automations that were the hardest were searching for conflicts because you could catch like most of them and then you'd still have a like odd one that would slip through because it, you didn't account for that. [00:27:33] And just like figuring out like, I mean, I was a middle school math teacher. So you'd think I would be able to do like greater than and less than formulas pretty easily. They get really complicated when you're trying to figure out, is this time before this time, and if so, and does it fall in between these two, so so that was super complicated. [00:27:51] I think that probably could be easier, more easily done with scripting. [00:27:56] Kamille Parks: [00:28:00] Yes. I've done several implementations that are basically, Prevent overlapping calendar events in air table and I've done it only with scripting. So I'm curious how you did it without it. I recall being very annoyed when I first made my first iteration and then just sort of copied it over. [00:28:19] Micki O'Neil: Yeah, we so we have this. I will say this takes a these bases take a lot of automations. I run the one automation of the one I'm going to show you guys, like a Saturday, like I trigger, it's a weekly, it triggers it like Saturday at like 3 a. m. so that it can do it when there, you know, there's not a huge load on the system. [00:28:39] We have never had any problem with running out of our automations even though we use Airtable a ton and with business I could distribute it. To different workplaces workspaces if we needed to, but I haven't had to do that. So even though it's like crazy to me, because it does use a lot of automations that hasn't been an issue, but it definitely would be an issue. [00:28:57] I think if you were on a lower plan, [00:29:00] [00:29:00] Alli Alosa: potentially, certainly, [00:29:01] Micki O'Neil: you know, [00:29:02] Alli Alosa: could be at least. I am excited to see what you've built. [00:29:06] Dan Fellars: Okay. [00:29:07] Alli Alosa: Okay. [00:29:07] Dan Fellars: Let's do it. Okay. So Nikki's going to walk us through, like she mentioned, how she syncs her calendars and does all that. Let me put your screen on. There you go. [00:29:17] Micki O'Neil: Oh, wrong. [00:29:18] Let me change the tab. Okay. So. You know what? I didn't realize how can I make myself. Okay. Well, anyway, I can't see you guys. So I don't know. I forgot to figure to make sure I could do that before we jumped on. But so this is the base that we started with. And so a couple of things to note is you can do the. [00:29:38] Google Calendar integration in a few different ways. One, you can literally just sync each calendar and we'll go, you can just go here and each individual, if you're using individual calendars for this, this project, we are we also use for our tracking hours. We have like a. Company wide calendars that we put things on and then, but we always want, but actually part of [00:30:00] the reason this works really well is because we want the invites to originate on those company or those organization calendars because because that's how we track our hours. [00:30:10] So that's partly, but this one thing we just have folks, the weird thing about, I will say about these, you can't cause these are people I duplicated this base, but they, each individual has to come in and sync their calendar because you don't have, Permission to do that, but you have to, you do have to choose dates and then you have to remember to like update them. [00:30:29] So I have, I have a few reminders to update for daylight savings because you have to change a couple things and at the end of the year to just come in and extend. You could make it the dates go forever, but then you have some of these. Recurring events that happen forever and then you have a million of those records. [00:30:45] The other thing you can do, so I like the sync. We usually use the sync, but the sync does have delays. It has like five minute delays roughly. If you use the automations [00:31:00] instead, so when something gets added to a calendar, that's pretty automatic. That's like a 15 seconds. So if you really can't handle that five minute delay with a sync, you can do this through automations. [00:31:11] The other thing with an automation is then you can actually edit it the like edit the title if you want within here, I can't edit without going to open in Google calendar. So those are just, they used to also syncing versus adding through Automations used to also treat recurring events differently. I think those now get treated the same way. [00:31:34] One of them didn't really, a recurring event would only show up once, but I think they fixed that. But anyway, so, so yeah, so we sync here. And then what we have is, so every week, basically, it goes in and creates, on Saturday midnights or whatever, it comes in and creates a record for the week. And then about 15, and then, and also creates [00:32:00] a, a record, a junction type record from the staff member and the week, the staff member that's getting scheduled. [00:32:09] And so, and then about 15 minutes later, so this is, I tried to come up with some better way to trigger it once it was ready and it. Using it. It turned out the easiest solution was the simplest, which just wait 15 trigger, create another automation that trigger 15 minutes later, because then everything would have time to go. [00:32:29] But then it creates. So it creates the week we can staff and then like records for records for The appointments and so what will happen. So the way that happens is this is always so you can determine exactly how far in advance do you want people to be able to schedule right so we just said in here we want it to be about three week three to four weeks so it will create records.[00:33:00] [00:33:00] So this will always be 23 days forward, which right now is only Thursday, but on the date the date when it triggers, it'll be Monday. Okay. The 25th or what Monday, whatever the date is. So it's, this is set up to have it be the right time when it, when the automation is triggered to go. And this is what I meant by and then this sets up the start time for the initial appointment. [00:33:26] And this is what, like I just had to change this because it was starting at 1030 and this, or at 10 and then going until 6. And so, Because of daylight savings time. So you do have to come in and adjust the how many times forward at daylight savings. Anyway, that's getting fairly technical, but And then it creates basically with all the appointments and it creates a version of each appointment linked to each person for the week. [00:33:57] So this is all of the [00:34:00] appointments, possible appointments for that week. It does create a lot of records, but you can also come in and again, if I knew scripting, I would probably have it. Delete old records on a regular basis. I do come in and hand delete some sometimes. So that's never been really an issue, but so it connects to all of them. [00:34:22] And then this is what, and then we use actually use fill out for, so this is their, all the available appointments. When it, when it create, and then we use fill out for booking, and I'll get that in a second. But I know I'm jumping around a little bit, but does this make sense so far? Yes. Okay. So then what happens is when these appointments get made initially, on that like Saturday overnight, it first then searches when a, when a appointment first comes into this view. [00:34:55] So the condition trigger is it, it comes into this view and this view [00:35:00] is, means it's available. The time is available. It's after today, et cetera. What it has a staff person associated with it. So once it comes into this view, then it searches for the calendar table for any potential conflicts that match. [00:35:20] With it uses the email for the staff member, and so look for the calendar that comes from that email and all the times and it is a little bit crazy to feel like that part. Actually, that part's not quite as difficult. I've done that initial one in one automation. It runs a lot, but it's one of the animation. [00:35:40] The part that gets more difficult is new events that come into the calendar space. And every time a new event comes in, it triggers, it finds the person and finds the time and tries to the status, it makes it conflicted. So let me show you the status that I have. It'll actually come here. [00:36:00] So the statuses I have are so conflicted means literally so that can become conflicted when there's something else on your calendar that's conflicted. [00:36:14] Unless it's already called book for intake book for intake is something that is booked here. And I'll say why that's important for him in a second. available obviously currently full and then I think I when it's fully full we just put I guess it goes back to full. So what happens is in fill out when somebody's booking they can they put in their language let me show you this [00:36:47] I did not this is a demo version so it doesn't have the full but I could say so if I put in English and video I can see any I can make an appointment at any time so I [00:37:00] can just and I can schedule it like let's say I want to Find Monday, so it does, it's not, so it does have some limitations. You can see it's a little bit slower, but I can choose anything on Monday. [00:37:12] So when I choose English and video, I can do any, there's no, anybody could be available for that, but let's say I choose and I did so Somali and in office. That's only one person, and he's in the office on Wednesdays and Thursdays. So that's the first part, and that is really, I did this first before Airtable had dynamic filtering, and before I used, before fill out, and it was a lot more complicated. [00:37:45] You could, I think, do this natively with Airtable Forms, but fill out so much better. But now that they have dynamic filtering, that definitely helps. But, so what happens is, once they get booked, then [00:38:00] that's where the, the reason why I have these weeks and weeks and staff is because that enables the kind of round robin and distribute, distribution. [00:38:08] Is, it will say, okay, [00:38:14] this person has Zero intakes for this week scheduled those thus far we now actually have a lot fewer So this is actually isn't as necessary because we've changed our process, but at the time we were doing Everybody was full every week when we first started this, but it would say okay. This person's target is three And this person and they have zero. [00:38:37] Let me see if I can go back to a week. We're here. So, yeah, we're not actually getting to the target to the we're not filling up very much anymore, but we were. So what would happen is I would let people get scheduled up until they hit their target. So, like, somebody could have. And this is all based on links to these, just, this is just a conditional, [00:39:00] how many they have scheduled is just like literally how many appointments they booked for intake. [00:39:04] So they could get scheduled up until they hit their target. Once they hit their target, they can, they were no longer, it changed it to currently full. So anything that was available changed to currently full. They no longer were in that view. But once everybody else hit their target, so that then forced people to then do everybody else. [00:39:24] Once everyone fit their target, and that's why there's a separate weeks event, is it says, okay, everybody's at their target. Once everyone's at their target, then it re releases all the ones that were currently filled, it goes back to being available. And so, and then until it becomes, and then until somebody gets to the, that's why I had a difference of target and limit. [00:39:47] So once they hit their limit, For the week, they're done done. But kind of that target was enabling it to like kind of distribute somewhat round robin like without so that it wasn't concentrated. And then the [00:40:00] limit was, you know, this is only a certain part of their job. So we, there was a while where we were like. [00:40:05] Booked out for three weeks when things were Got busy. So that's kind of so that's how we did this and I said I tried to I actually created a Easier one because now people wanted they want to link this is a link that gets now it gets sent to people automatically once they submit a inquiry They're like, can we get a link to schedule other things? [00:40:31] And so I was like, okay, maybe I can, and we did it. We had also done it for our closings, to schedule our closings, kind of similarly to this. So I did it to create, and I created it without, it's simpler, so it doesn't have I don't need to use these constraints, but it's honestly pretty it's the automations for Finding conflicts are pretty complicated. [00:40:57] And so I don't know we'll still [00:41:00] use this because we don't want to pay for Calendly but it is a lot of it is a fairly complicated in terms of So this is when, this is when the new appointment and it searches, this is the easy one, when it, when a new appointment is created and it searches the existing calendar appointments. [00:41:22] So there's just five records, [00:41:27] find, four or five find records actions, and then if it finds one, then it makes it as, Conflicted. Although then I added another Larry of complexity. Like you're saying, I like to see if I could. So they're like, can we make it either 30 minutes or 60 minutes? I don't know. So I did do one where there is it's in 30 minutes. [00:41:49] But they can say it's available. There's a status on this one that is available for the first 30 minutes only. So it will only show up when somebody scheduling a 30 minute, not when there's somebody [00:42:00] scheduling an hour. But yeah, these ones aren't that complicated. But once it gets into A new event on the calendar. [00:42:08] It has to have, I have three different automations for every new event that it runs through and they're, yeah, they're [00:42:19] Dan Fellars: awesome. Capabilities to implement something pretty sophisticated. Yeah. [00:42:30] Micki O'Neil: As I said, this one I probably wouldn't do unless like for us, like, again, we don't really have a. Additional software budget. [00:42:37] The simpler version would definitely be better to do in a, in a scheduler, but if you are already investing in air table and that's kind of what your software budget is, then you try to do as much as you possibly can through it. [00:42:49] Dan Fellars: Yeah. Great. Thank you for sharing that, Mickey. That's awesome. Thank you for coming on. [00:42:57] Kamille Parks: Very [00:42:57] Dan Fellars: impressive. [00:43:00] Yeah, [00:43:03] Alli Alosa: I love that. Great job. Seriously, you're using all the tools to your disclosal. It's perfect. [00:43:11] Dan Fellars: Cool. So if you want to meet amazing people like Mickey and thousands of others join us in the built on air community built on air Dot com slash join it's free to join sign up log into our community. [00:43:22] You can also subscribe to our newsletter Get you great insights into everything going on, as well as subscribe to our YouTube channel, follow us on socials, and we'd love to have you be a part of our community. Okay, Camille, walk us through Google Sheets integration. [00:43:43] Kamille Parks: So this question kind of came to me. [00:43:46] From a friend of a friend, and it was basically, how do you integrate Google Sheets with Airtable? And you have a couple of different options at your disposal, and they're all different. So, [00:44:00] similar to what Miki said at the start of her segment, with Integrating Google Calendar and Airtable, there's some built in integrations, and then there's integrations that you can kind of make for yourself, and then there's, like, a purely scripting option. [00:44:14] I'm not going to be covering purely scripting, but I am going to go over Airtable. What you can do at a very high level using just air table. And then if you have an automation helper like make or zap here or in my case, and again, what can you do with those platforms as well? If you need to do a little bit more, so this is a that I took from one of the templates and then cut out a lot of extra information in it. [00:44:44] But the general idea is I have a table in this case, interactions where I want some of this data to be present in a Google sheet. So that can come in a variety of forms. And this is kind of up to, you know, your violet, your mileage may [00:45:00] vary. It's kind of a dealer's choice kind of thing. When you want this information to move back and forth, and if you want to move stuff from Google Sheets into Airtable or the other way around, so you might want to do any time a new row is created, create that same row in the opposing system. [00:45:21] Or the other way around, or you might want to do I do reporting, for instance, and send this data at the end of the week or at the start of each day. So, different ways of thinking about it there. Now, how can you integrate with Google Sheets straight from Airtable? One thing I want to call out is if you click the plus to create a new table you'll see Google Sheets here, and then I will just do a example. [00:45:55] This is importing. This is not the same as setting up a link [00:46:00] between your two sheets. So, The sheet that I selected as example, it's this one here, and I'll go over it in a little bit more detail later. This will do a one time import of the data and you'll be able to pick between the different sheets that you have in that one file that you selected. [00:46:19] You can do both in my case, I have 2, so I can do both of them, or I can pick 1 or the other and then you can map the fields to air tables. Column types. There are some restrictions on what it'll allow you to choose but it is a one time import. So I'm going to cancel out of that and instead go over some of your other options. [00:46:42] So it's kind of relegated to automations in terms of native built in, integrations. One is from sheets to air table. There is a available trigger for google sheets when a row is created. Whenever a row is created, [00:47:00] you can map those values into your air table table of choices. So to demonstrate, I will Do my level best to create a new row and have it show up appropriately, test two, [00:47:20] Micki O'Neil: person, [00:47:20] Kamille Parks: and then nonsense. [00:47:22] Micki O'Neil: Does this have to be formatted as a table? [00:47:25] Kamille Parks: No. So while I'm on this screen, and it'll hopefully give Airtable a little bit of time to process what I have done in this sheet is I've formatted this as a table in Google Sheets. Now, Google Sheets on its own has done some enhancements to their functionality where it's, it's air table like, I guess, in that you can have column types. [00:47:48] So these are what they call chips. Same as like a like a drop down, a single select or a multi select you can have like a user token. You can have dates. You could have always had dates, but you know, you get the [00:48:00] picture. There's some advantages to doing this because it makes filtering easier while you're in Google Sheets, but it does not have to do that Or be formatted in this way in my other sheet. [00:48:12] This is just you know, I made this bold myself There's nothing fancy about this one This would have worked as well. I do Like that regardless of whichever method you choose Google kind of not Google air table recognizes the first row and uses those as your header. So it is easy to tell what data is which. [00:48:34] So now that, oh, here it is. So with enough time all the information came in from the row that I made. So I wanted to highlight that because the integration. That's built in is smart enough to not do it. The instant the row is created in Google sheets, because if I just did it, the [00:49:00] instant the row was created, there would have been no data in there, right? [00:49:02] I had to select a date and then account and blah, blah, blah, blah, blah. That is not the case for the other way around. So if you wanted to do an automation triggered when a new row is created in the interactions table and create or append a row to Google sheets, it will do it immediately because that's how air table treats its own trigger for a new row is created. [00:49:29] So you want to have a. different trigger that would allow you to put in information that you want here and then send it off into Google sheets. So if you have a workflow where you want to export your data automatically into Google sheets at the end of each day, that's fine. As long as you're not in the middle of typing at like 4 59 p. [00:49:53] m. But I did want to call that out. The other thing I want to make note of, and this is kind of general across the [00:50:00] board. This is not just Google Sheets. It's any other system you're integrating with. In my instance, I have a couple of linked record fields. And in my testing, I forgot that originally the primary field for contacts was a full name concatenation. [00:50:16] It was a formula, and I put in just a fake person's name and the automation failed because it couldn't create a new person record because it couldn't modify a formula. So for the purposes of demonstration, I made it a single line text so it could create new values as it, as it needed to, to fill in. But if you do have a linked record relationship where the primary field in the other table is a formula, you know, As is the case here for interactions, this is a formula. [00:50:50] If you have that in place, what I sometimes like to do is have a an extra field just a regular text field [00:51:00] That is like a temporary holding place just so that I can make sure that the data gets here and then when I have time later, I can parse that information myself or have another automation try to parse that information out on its own. [00:51:16] In this case, this is very simple automation where I could probably have some inter mediary steps here to create a missing contact first, if need be. But if you have more than one linked relation like I do, I have contacts and accounts, it gets pretty complicated doing that check first. Does this person exist? [00:51:38] If not, Create that person and then create the record links to that person, but also do that for accounts as well. So you can imagine how many conditional logic steps you would have to have if you do it all within this one automation. So that's just one example of how to integrate sheets with The other way around, append [00:52:00] rows to sheets. [00:52:00] This is what I was talking about, where it's perhaps better to do this on a schedule. Because again, if you do, when a record is created, you're going to get one blank row in Google Sheets. You could also have another implementation where I have a a checkbox to indicate has this already been exported into Sheets. [00:52:20] I could have another checkbox or a single select or something like that that says send to Google Sheets and make that the trigger. That's pretty safe as well. But analyzing what this automation is doing is at a scheduled time. Find all the records in my interactions table where in Sheets is blank. [00:52:39] Sort the list by date just so that things work. Line up pretty well on the Google Sheets side. And then for each record in that list, I'm appending it in this case to my second table or my second sheet. Rather, this is not a table. This is just regular Google [00:53:00] Sheets behavior. And then I'm creating a new row. [00:53:04] And the interface is a little bit different here. It still does accurately pull in what the name of each of the columns are based on that first row. So it's still helpful, but it is a little bit different in how it how it's Coming in here but pretty straightforward from there she's is a bit. [00:53:23] It's much more forgiving in terms of putting in brand new pieces of data. So it's not going to care that it has. No, it's never seen that contact name before. For instance, unlike your table with you have the link record relationship on. So. That's two ways to integrate with Google Sheets. And then the third sort of way, you start to get into using other tools to help you establish that connection between both of the platforms. [00:53:55] And I don't really have time to get into a very overview [00:54:00] of what what that might look like. It might be something that we do on an the next season. And I know most people are probably using make or Zapier, but personally, I use N8n as my automation processor. So I'll just go over generally what you could do in this system, which is also the case in Sheets and Make and Zapier. [00:54:22] So similarly, I'm starting on a schedule. I think I set this to run every day. But something that is immediately possible here, and the same with make, and the same with Zapier, but not possible with Airtable's native integrations, is creating a whole new sheet in the first place. So, if I go back to Airtable, and I, Do their sheets integration for things that are available as actions. [00:54:50] I can only append a row. So I have to select a sheet that already exists. Whereas if I were to use a different [00:55:00] connector platform, I have the ability to create a whole new sheet or a whole new. Workbook. So that immediately opens the door to saying if you want to have a separate sheet or a separate whole doc for your weekly you know, your weekly logs or whatever, whatever data you're transferring back and forth, that is something that you can do when you have another platform helping you out, basically. [00:55:26] So once you have a brand new sheet you'd be able to find records in air table. If I just look at this, I'm using filter by formula and basically doing the same thing that my air table automation was doing. Get me all records where the in sheets checkbox is unchecked and then from there. I'm doing append rows. [00:55:49] So this part is basically the same, but I'm able to dynamically populate what sheet and which workbook to fill in based [00:56:00] on the brand new sheet that I created at the start of the automation. So that's another thing that you could do to integrate sheets and, and it kind of opens the door for a lot of different things. [00:56:14] Mostly because Sheets is integrated with Google's drive like suite of tools. And I often find it easier to share sheets with people who are a little bit less tech savvy. And if you're concerned about price with Airtable, obviously you have to pay for anyone who needs to modify data. [00:56:40] If it's If it's something that is a pretty big concern for a workflow, what you could do is have people edit a simple sheet like this, try and lock it down as much as you can, and have automations transfer that into your Airtable where things can, you have all the benefits of having a true [00:57:00] relational database, but you're not paying, you know, Through your nose. [00:57:04] Do you have people modify simple little interactions? And then I'll pause there. I think that's kind of the overarching high level view of what you can do with air table. And there's much more advanced workflows you can enable as well. But you're kind of building on some of the things that I had already got up for. [00:57:26] Dan Fellars: So question. So back in air table, Yeah. So it only has a trigger on a new row. Is that correct? It doesn't have trigger on update. [00:57:36] Kamille Parks: Yeah, let's look at the triggers. So when a row is created, which is useful, again, that's not great. If I go back to N8N and Look at their sheets. It's only going to show me their actions by default because I've already started. [00:57:54] But for any and specifically I could do when a row is added, which is the same or when a row is [00:58:00] updated or there's basically an absurd added or updated. So I could do both in 1 trigger, which is nice. And then all of the different actions. Here's what you could do. You could delete the whole sheet if you wanted to. [00:58:12] You know, you can get all of the rows in a sheet rather than just the one that was recently updated or added. So, again, if you're, if you need more than what Airtable allows you to do out of the box I would suggest looking at another platform. Make is the sort of darling for the community. I think Scott Rose is a big Make proponent. [00:58:32] I like Make as well, but I personally use N8N. [00:58:37] Dan Fellars: And then what is it, what is it considered? So you said it does wait, is it based on a time or do you have to have all fields entered before it triggers? [00:58:46] Kamille Parks: I couldn't tell you when exactly the trigger happens when and again, this is when a row is added in sheets, I think what happens is. [00:58:57] When you move away, perhaps, [00:59:00] I think if I do that, it will recognize the row as being added. I have not been able to like truly identify when air table Or when sheets rather sends the trigger to air table. [00:59:14] Dan Fellars: Interesting. [00:59:16] Alli Alosa: I remember once upon a time dealing with Trying to create sheets. Excuse my cuter voice there. [00:59:23] And it would just completely stop working at least using Zapier if somebody had like, for example, opened up Google Sheets, gone to like row 61 here and entered in a formula and then deleted it, like that would just completely break the integration, like it just would no longer be able to add anything or watch it anymore. [00:59:44] Kamille Parks: Yeah. [00:59:45] Dan Fellars: Yeah. Very sensitive. [00:59:47] Kamille Parks: That's the dangers of sheets. Right? Because you could do anything anywhere like this as, as much as they're adding like column types that really only affects up to row 58 and everything outside of this, [01:00:00] this green line here is like no man's land. So be very careful if you're trying to do this in the first place. [01:00:09] Dan Fellars: Awesome. Thank you, Camille. That's always good. Very powerful. Somebody asks if you're interested in a future one, pitting Zapier versus make versus end it and or whatever else could be interesting. There's a lot of ways you can take that. So maybe we'll think about that one. That concludes not only today's episode, but this season. [01:00:29] So like I mentioned, we will be off for a few weeks. We'll be back the first week of March and hopefully everybody has a great time off. Feel free to watch any of the episodes that you missed. On our YouTube channel and join our community and we will see you next time. Have a good one.[01:01:00] [01:01:02] Intro: Thank you for joining today's episode. We hope you enjoyed it. Be sure to check out our sponsor onto our backups, automated backups for air table. We'll see you next time on the built on air podcast.