4/11/2023 – BuiltOnAir Live Podcast Full Show – S14-E01
Duration: 61 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.
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.
Round The Bases – 00:04:24 –
Automate Create – 00:38:04 –
Watch as we review and work through automations. How to use a Formula to drive the Single Select Values
Field Focus – 00:47:39 –
A deep dive into the Understanding API Keys – We'll explain the different types of API Keys
An App a Day – 00:59:55 –
Watch as we install, explore, and showcase the TaskRobin.io App from the Airtable Marketplace. The app is described as “Send emails directly to Airtable base”.
Full Segment Details
Segment: Round The Bases
Start Time: 00:04:24
Roundup of what’s happening in the Airtable communities – Airtable, BuiltOnAir, Reddit, Facebook, YouTube, and Twitter.
Segment: Automate Create
Start Time: 00:38:04
Airtable Automations – Formula to Single Select
Watch as we review and work through automations. How to use a Formula to drive the Single Select Values
Segment: Field Focus
Start Time: 00:47:39
Learn about the Understanding API Keys – We'll explain the different types of API Keys
A deep dive into the Understanding API Keys – We'll explain the different types of API Keys
Segment: An App a Day
Start Time: 00:59:55
Airtable App Showcase – TaskRobin.io – Send emails directly to Airtable base
Watch as we install, explore, and showcase the TaskRobin.io App from the Airtable Marketplace. The app is described as “Send emails directly to Airtable base”.
The full transcription for the show can be found here:
[00:01:42] All right, welcome back to the [00:01:44] BuiltOnAir Podcast. After a month break, [00:01:47] month and a week, [00:01:48] we're off an extra week. [00:01:49] So thanks for being patient with us. [00:01:51] Good to be back with you. [00:01:53] We are now into season 14 [00:01:55] starting episode one. [00:01:57] Welcome back, Alli. [00:01:58] Good to see you again. [00:02:00] Thank you. Glad to be back. [00:02:01] Good to see you too. [00:02:02] Yeah, lots going on in the Airtable World. [00:02:06] Kamille couldn't make it today, [00:02:08] but we are excited for this new season. [00:02:11] I was thinking about what [00:02:13] what we're gonna be doing [00:02:15] this season, a couple of things. [00:02:16] This will be Dare Table [00:02:19] will be during this season. So [00:02:21] we'll maybe do a live show from [00:02:23] Dare Table if we can. [00:02:25] I, I think I promised that [00:02:26] last year and we didn't do it. So [00:02:28] this year I'll try to [00:02:30] try to fulfill that promise. [00:02:32] Do a live show, meet lots of, [00:02:34] lots of you. [00:02:35] Hopefully we'll be out there and [00:02:36] hopefully we'll meet some, [00:02:38] some new people and [00:02:40] would love to have you [00:02:41] on the show as well. [00:02:43] So, [00:02:44] other stuff I think we're gonna plan, [00:02:46] there's a lot going on. [00:02:47] Actually, today we'll be [00:02:49] talking about some, some [00:02:50] chat GP T stuff. [00:02:51] I think we're gonna have a, [00:02:53] an episode focused entirely on chat [00:02:55] GP T and Airtable. [00:02:57] So that'll be exciting. [00:03:00] We'll announce probably a new [00:03:02] sponsor this season. [00:03:03] We're in the works with a, [00:03:05] with a new sponsor and, [00:03:07] not quite ready to announce that yet, [00:03:09] but I think this season will be [00:03:11] bringing on a new sponsor. [00:03:12] So that'll be good. [00:03:14] So, yeah, lots of exciting stuff [00:03:17] going on in, in the BuiltOnAir world and [00:03:20] always good to be back with you. [00:03:22] Hopefully, everybody enjoyed your [00:03:24] your month break from us, [00:03:26] caught up on all our old episodes [00:03:28] and ready to begin a [00:03:29] new season. [00:03:31] So let me walk through [00:03:33] what we're gonna be doing today. [00:03:35] We always start off with our [00:03:37] Round the Bases, [00:03:37] getting you caught up on what's [00:03:39] new in the Airtable communities. [00:03:41] Then we'll spotlight [00:03:42] On2Air, our primary sponsor. [00:03:44] Then [00:03:45] Alli is gonna go through [00:03:48] how to use formulas [00:03:49] to drive your single select fields. [00:03:52] And then I'm gonna be [00:03:54] talking about API keys [00:03:56] and understanding all the [00:03:57] difference between API [00:04:00] tokens and keys [00:04:01] and very confusing stuff [00:04:02] going on to help you [00:04:04] decipher the changes that are, [00:04:06] that have happened there. [00:04:08] Then a quick shout out [00:04:09] to our community. [00:04:10] Then we'll end with a, [00:04:11] with an app highlight, [00:04:13] an extension task robin that's, [00:04:14] that's in the marketplace So we'll, [00:04:17] we'll check that out to end it. [00:04:19] All right. Let's see. [00:04:21] So we've been off a month. [00:04:23] So lots of new stuff going on. [00:04:25] Let, let's start with the features. [00:04:28] So [00:04:30] Airtable released quite a [00:04:32] few features since we last met. [00:04:34] Probably some of the bigger [00:04:36] ones came from the the [00:04:38] new interface design features [00:04:40] that launched March 1st. [00:04:44] So, right, right after we ended [00:04:47] and so yeah, new page layouts. [00:04:51] What else we got? [00:04:54] sides sheet. That's a cool one, [00:04:58] reusable record detail. [00:05:03] Default values in interfaces. [00:05:06] They also, I don't know if I have it here. [00:05:08] They also added default values to [00:05:09] single, single selects. [00:05:12] Is it in multi [00:05:13] select? The default multi [00:05:15] select? [00:05:16] I so rarely use multi [00:05:18] select fields, [00:05:19] I don't even know. [00:05:20] Let me see quickly. I will check that. [00:05:22] It does not look like it. [00:05:24] OK? Just single select. So [00:05:27] yeah, [00:05:27] yeah. So default values but, [00:05:29] but in interface forms [00:05:31] you can get those let's [00:05:33] see [00:05:34] quicker access to schema changes at [00:05:39] a [00:05:39] gotta see what else [00:05:43] templates. [00:05:44] Yeah. [00:05:46] So yeah, they did announce, [00:05:47] I don't know if I have it here, [00:05:49] but they [00:05:50] they you can now edit your fields [00:05:52] directly in interfaces [00:05:53] so you can make changes [00:05:55] to the the field configuration. [00:05:57] So you don't have to jump back to the data [00:06:01] thoughts on any of these changes? [00:06:03] What's your favorite? [00:06:04] My favorite is probably the side [00:06:07] sheet option for the [00:06:08] record detail layouts. [00:06:10] I'm finding that really, [00:06:11] really nice and handy. [00:06:14] I think it just looks really [00:06:16] like really sleek and clean. [00:06:19] I am, [00:06:20] I wish I were a bigger fan [00:06:22] of the new page layouts. [00:06:23] I, [00:06:24] I was just saying to Dan [00:06:26] before we went live here, [00:06:27] it bothers me how inconsistent [00:06:29] it is across the different [00:06:30] layouts because if you [00:06:31] start off with a list view [00:06:34] layout or a gallery view, [00:06:36] I love that you can, [00:06:38] you can let the user filter [00:06:39] or change like filter sort [00:06:41] and then they can even [00:06:42] change what the layout is [00:06:43] that they're looking at [00:06:45] really, really cool stuff [00:06:46] that I wish were available [00:06:48] when you drag a list layout [00:06:50] or a, a list element rather into [00:06:53] a different layout, [00:06:54] which is not available right now [00:06:57] and [00:06:58] you can't actually even drag any other [00:07:01] elements onto the page if you [00:07:02] go with one of these new layouts, [00:07:04] which [00:07:05] is annoying as well. [00:07:07] Yeah. [00:07:08] Yeah. So enough to get you excited. [00:07:11] But maybe not get you all the way [00:07:14] there that you would hope to. [00:07:15] So hopefully there's, [00:07:17] there's still iterations coming. [00:07:19] Hopefully, I would, I would think [00:07:20] that they're gonna [00:07:21] make it consistent across [00:07:22] the board. It seems [00:07:23] kind of halfway done at this point. [00:07:27] I also love the ability to add [00:07:29] a new record right from [00:07:30] that screen, which is nice. [00:07:33] That's good right there. Yeah. [00:07:35] Yeah. [00:07:36] Yeah. And the [00:07:39] Yeah, I can't remember when [00:07:40] everything came out but, [00:07:42] like, the ability to add [00:07:43] these, like, tab filters. [00:07:44] I can't remember if that's [00:07:46] part of this upgrade or if [00:07:47] that was previous. [00:07:49] Think it was part of that. [00:07:50] Yeah. [00:07:51] Yeah, that's a big one. [00:07:52] I know we use that quite a bit. [00:07:54] So, that's really nice. [00:07:56] I think we talked about [00:07:57] that before. So that, [00:07:58] that might have came up previous. [00:08:01] yeah, the slide side sheet. [00:08:02] I don't, I don't know if [00:08:04] I have one handy to show. [00:08:05] But basically, yeah, you can click [00:08:07] on a record and it comes from the right [00:08:09] side [00:08:10] and so you can see the the record [00:08:12] details instead of like a pop up model. [00:08:15] So that's pretty slick. [00:08:18] So yeah, cool stuff there. [00:08:21] I think there's more, [00:08:23] let's see. [00:08:26] This was one I believe [00:08:28] somebody posted this [00:08:29] from the BuiltOnAir Slack community [00:08:33] talking about different [00:08:36] interface designer permission [00:08:38] dependencies. [00:08:40] I thought this was was worth [00:08:42] pointing out. [00:08:46] So you can [00:08:51] see, I got to refresh [00:08:52] my memory on this one. [00:08:58] Yeah, I I haven't noticed [00:09:00] any differences amongst [00:09:03] dependencies and sharing things. [00:09:06] Feels like we're just gonna move [00:09:08] the options around like [00:09:09] where you can access [00:09:10] them, [00:09:11] but [00:09:13] got you. Yeah, [00:09:14] yeah, it might have been. [00:09:17] I think, I think what happened [00:09:18] now that I remember, [00:09:19] I think somebody pointed [00:09:20] this out and was asking if this was new [00:09:23] but then I think there might [00:09:24] have been feedback that, [00:09:26] that it hasn't changed and [00:09:27] so it's just new to the person [00:09:29] that pointed it out. So [00:09:30] there may not be anything here. [00:09:33] I [00:09:33] really, I can't wait for the day [00:09:35] where we have conditional [00:09:37] visibility entirely [00:09:38] on interfaces. Yeah. [00:09:40] Right. [00:09:41] Yeah. The whole there is like [00:09:43] if you're using a, a collaborator [00:09:46] field or user [00:09:47] field. But you have to do that [00:09:49] for everybody. So that's where it's [00:09:51] frustrating. [00:09:54] Yeah. [00:09:55] Yeah, if you can make it [00:09:56] a different type of conditional [00:09:59] is needed. So, [00:10:01] yeah, that, that might have been [00:10:03] what I was talking about as well. [00:10:05] But you can do more permissions [00:10:07] in your interfaces than you can at the, [00:10:10] at the data grid level. [00:10:13] So it definitely is a, [00:10:14] a step in the right direction. [00:10:16] Absolutely. [00:10:19] All right. OK. Here's another one [00:10:21] that they it's been in beta for a while. [00:10:23] So I had seen it previously but, [00:10:26] but now it's live, record templates. [00:10:28] Have you played with record templates? [00:10:30] I did when it was in the beta [00:10:32] and I never really [00:10:34] found a use case for it. [00:10:36] I suppose like [00:10:39] maybe it could be nice [00:10:41] from an interface if you're like, [00:10:44] you have a, a form to open up, [00:10:45] you know, create new [00:10:46] project and it sets the [00:10:47] status to new automatically [00:10:49] or something. But [00:10:51] at least when it was in beta [00:10:52] and I have to say [00:10:53] I haven't played with it since [00:10:54] they released it widely, but [00:10:56] there was no way to [00:10:58] dynamically set anything. So [00:11:00] it just didn't really feel useful. [00:11:05] Yeah, you can [00:11:08] yeah, you have to define. [00:11:09] So basically the use case is [00:11:11] you have like a project and [00:11:13] maybe the project has a [00:11:15] project type and depending [00:11:17] on the project type, [00:11:18] you have different tasks [00:11:20] associated with that. [00:11:22] And so this is very common, [00:11:23] we do this quite a bit [00:11:24] with project management [00:11:25] bases. [00:11:27] And so this allows you to, [00:11:30] when a new project is created, [00:11:32] you can set up an automation to [00:11:35] to [00:11:36] basically create new tasks based on that [00:11:41] that template type. [00:11:44] And so you create these record [00:11:46] templates, [00:11:46] so you can have a template for each [00:11:48] type of project [00:11:49] and then associate them. [00:11:52] Yeah, it's, it's kind of nice [00:11:54] for a very basic use case. [00:11:57] I don't know that [00:11:59] like we would probably still [00:12:01] do this the way that we've always [00:12:03] done it, which is maybe [00:12:04] with a little bit of [00:12:05] scripting to, [00:12:06] to, you know, really make it dynamic. [00:12:10] But this does help for, [00:12:12] for your very standard simple use case, [00:12:15] I think. [00:12:16] Absolutely. [00:12:18] Yeah, I guess [00:12:19] I didn't realize that I'm just, [00:12:20] I just opened it up [00:12:21] to play with it quickly. [00:12:22] So yeah, you can add more than one record [00:12:25] as part of the template. So that is nice. [00:12:29] And they did allow now they [00:12:30] do have relative date settings. Which [00:12:34] is interesting, [00:12:36] but I don't really know [00:12:38] that that's helpful. It doesn't, [00:12:40] doesn't quite look like it is. [00:12:42] Yeah. Doesn't do [00:12:43] what I would think it does. [00:12:45] Yeah. [00:12:45] Yeah, we'll do. We should, [00:12:47] we should plan on doing a, [00:12:48] a segment on going deep [00:12:49] into record templates [00:12:51] because that it's worth, [00:12:52] it's worth learning it and adding [00:12:54] to your, [00:12:55] to your toolbox. [00:12:57] But yeah, let us know [00:12:58] in the comments [00:12:59] if you're, if you're watching, [00:13:00] let us know how you're using [00:13:01] record templates, what you think of them. [00:13:03] I could see this being flushed out more. [00:13:06] There's more you could do here. [00:13:08] Exactly. Right. [00:13:09] Like I'd love to be able to, [00:13:12] you know, fill in, make it dynamic and [00:13:15] like, for example, [00:13:16] if there's a collaborator field, you know, [00:13:18] make sure that that's filled out [00:13:20] with the person that created the record, [00:13:23] like have it assigned to that person or, [00:13:26] and like make it due always a week from [00:13:28] today or something like that. [00:13:32] Yeah, there's options, [00:13:33] I wish were there that [00:13:34] I don't believe currently are. [00:13:36] Yeah. [00:13:36] Yeah. Yep. [00:13:38] Very good. [00:13:39] So yeah, that's a new one [00:13:42] that got, that got added. [00:13:45] I think that's all the feature, [00:13:47] new items that came out this last month, [00:13:51] all just kind of blends together. [00:13:53] I know. Right. I mean, [00:13:55] the other thing I can think of that [00:13:57] I am so not a big fan of [00:14:00] and doesn't seem to [00:14:01] either. It's not released 100% yet. [00:14:04] They're rolling it out or it's only, [00:14:06] I haven't quite figured out [00:14:08] when I, when it appears [00:14:09] and when it doesn't, [00:14:11] but there's the new apply button on [00:14:12] the filters for particular views, [00:14:15] which [00:14:16] I really [00:14:17] not a fan of, [00:14:18] I really don't like [00:14:20] at all. It's really slowing me down [00:14:21] and I've noticed it's, [00:14:23] I think it's usually [00:14:23] on views that have, [00:14:25] or tables that have a lot of records. [00:14:29] I don't know how many records [00:14:30] that has to be for it to show up, [00:14:32] but [00:14:33] it's really slowing me down. [00:14:35] And I've had a lot of people say like, [00:14:36] oh, well, [00:14:37] it's good if the view is [00:14:39] being watched by Zapier [00:14:40] and it prevents you from [00:14:42] like accidentally, you know, [00:14:44] flooding the view with [00:14:45] all these records when you [00:14:47] don't realize it. [00:14:48] But [00:14:49] they don't actually show you, [00:14:51] like, say you're changing the filters, [00:14:53] they don't show you the preview of what [00:14:54] it's gonna look like when you hit [00:14:56] apply. So you don't even know what the [00:14:57] changes are that you're [00:14:59] making until you click the button. [00:15:01] Yeah. [00:15:01] So it's, [00:15:02] I could go on forever [00:15:04] about that but not a fan. [00:15:05] Yeah. Yeah. Yeah. [00:15:07] And is it so I can't remember [00:15:09] so it's only so if you [00:15:10] don't have many records, [00:15:12] then it doesn't show, [00:15:13] but then it does show [00:15:14] when you have a lot of records? [00:15:16] I believe so. I think that [00:15:17] that's the pattern I've noticed. [00:15:20] But I don't know how many records [00:15:21] is the threshold for it to show up. [00:15:23] Yeah, that makes it even [00:15:24] more confusing. You're like, [00:15:26] wait, [00:15:27] where did but go [00:15:28] or why is that there now? [00:15:30] I know it's so confusing and like when I, [00:15:32] because like I'm used to just [00:15:34] clicking away from the filter [00:15:35] and if the button is [00:15:36] there [00:15:37] now a little pop up comes up [00:15:39] and says, wait, [00:15:40] you didn't apply your changes but [00:15:41] then the options in the pop up are just [00:15:44] back or discard. [00:15:45] It doesn't let you click apply [00:15:47] in the pop up either. [00:15:49] So it just slows me down [00:15:50] even further because [00:15:51] I've got to say back and then [00:15:52] click apply and I'm like [00:15:57] oh man [00:15:59] sometimes. [00:16:01] Yeah. [00:16:02] Yeah. Scott agrees. [00:16:04] Very tedious and unnecessary. [00:16:07] Yeah. [00:16:08] Yeah. Oh man. Add it to the list. [00:16:12] OK. [00:16:13] Well, let's move on. [00:16:14] I think we've got some [00:16:15] cool things to show here. [00:16:18] So this is one. [00:16:19] So Ben Bailey just noticed this. [00:16:21] I think this has been here [00:16:23] for a while, but I was like, [00:16:24] hey, this is kind of cool. [00:16:25] I don't know that we [00:16:26] ever highlighted this. [00:16:27] It was new to Ben [00:16:29] so it might be new to others. [00:16:32] But this is in an interface button. So [00:16:36] there's [00:16:37] different types of buttons. [00:16:39] So this is a button inside [00:16:41] of an interface that's [00:16:42] different than a button [00:16:43] outside the interface. [00:16:46] And then I think even within [00:16:48] interface, there's two different types of [00:16:50] buttons. [00:16:52] but anyway, so this is kind of a, [00:16:55] a cool little way where [00:16:57] go to URL and records. [00:16:59] So it basically allows [00:17:00] you to pick a field that, [00:17:01] that has a URL and it's, [00:17:04] yeah. [00:17:05] So that is very useful. [00:17:07] So if you want to go to some external, [00:17:10] so they have go to external URL where you, [00:17:13] where you define it right there. [00:17:15] But this is kind of just [00:17:17] a way to reference a [00:17:18] field. [00:17:20] I like that a lot. [00:17:22] Yeah. [00:17:22] Yeah, Carlton, I guess is [00:17:24] new to him as well. So [00:17:26] worth highlighting a [00:17:29] little trick there. [00:17:31] Let's see what else we got? [00:17:33] Oh, this was one, [00:17:34] I was hoping that that Kamille [00:17:35] was here to, to take credit for this one. [00:17:38] This was actually really cool. [00:17:40] A lot of people didn't [00:17:41] know about this one. [00:17:42] So and it took me a while [00:17:44] to figure out what she was talking about. [00:17:47] So, are you familiar with, [00:17:48] with this? You want to explain it? [00:17:50] Yeah, I use this often actually, [00:17:53] it's really, really nice. [00:17:55] So, [00:17:56] and this, [00:17:58] it comes with some caveats. [00:18:00] So you, you need to make sure that [00:18:01] you have no duplicate [00:18:03] record names in a table, [00:18:05] which is best practice. [00:18:08] But [00:18:09] say you are syncing a table [00:18:13] when you sync a table or a view [00:18:16] into another base, you then can [00:18:18] change the field type of any of those [00:18:20] synced fields that are in the synced view [00:18:23] or table [00:18:24] into the synced base. [00:18:27] And so if you've got [00:18:29] say two tables from the same source [00:18:32] into the other base, and you wanna make [00:18:35] sure that they stay linked together [00:18:37] and you can know for sure that they're [00:18:40] not [00:18:41] that you have no duplicate names [00:18:43] and everything's gonna line up properly. [00:18:44] You can just change the field type [00:18:47] to a linked record [00:18:48] and link it to that table [00:18:49] and the changes will flow through [00:18:51] and [00:18:52] you don't have to use an automation [00:18:54] to keep that linked record field in sync. [00:18:57] which is really, really nice [00:19:00] because yeah, by default, [00:19:02] when you, when you create [00:19:04] a sync table, [00:19:05] all of the fields in the destination are [00:19:07] they're long text now, right? [00:19:09] I think they're all like long text. [00:19:11] I don't think they [00:19:12] used to all be long text. [00:19:13] I think somewhere they change that, but [00:19:16] you can still go into the destination [00:19:19] base and then change the fields [00:19:22] to be specific. [00:19:24] And so [00:19:27] yeah, so if you just change the field, [00:19:28] so you just do it once and then after [00:19:30] that, every time it syncs over [00:19:32] as long as the name match it will, [00:19:34] it will link it. And if the name doesn't [00:19:36] match it will actually, [00:19:37] I think it'll create a new record [00:19:39] in the link table, [00:19:40] a new, you know, so you might have some [00:19:43] orphaned records in the link [00:19:45] table if your names don't match. [00:19:47] Right. [00:19:48] I typically like to use the, [00:19:50] the record ID to make sure that things [00:19:53] sync up just because [00:19:55] you [00:19:55] don't [00:19:56] and then this doesn't [00:19:58] require an automation. [00:20:00] But I have noticed like, say you sync out [00:20:02] a table to a different base [00:20:05] and you're doing stuff in that other [00:20:07] base and you wanna [00:20:08] sync that back into your [00:20:09] source base as a second table. [00:20:12] You can use the record ID [00:20:13] to link it back up [00:20:15] to the original record as well in [00:20:16] the same method. [00:20:18] That's really confusing to say I like [00:20:19] I can demo [00:20:20] it. [00:20:22] But yeah, this is a really, [00:20:23] really great tool [00:20:24] that I've been using more and more [00:20:25] often. [00:20:26] Yeah. Yeah, [00:20:28] because yeah, [00:20:29] the other work around now this is [00:20:31] now, does it work [00:20:33] if let's say you're syncing two tables [00:20:36] over that are linked, [00:20:37] it will also work if, [00:20:39] if you do that, [00:20:40] if both tables on the destination are, [00:20:42] are synced tables. [00:20:44] Exactly. That's, yeah, that's what [00:20:46] I'm talking about [00:20:47] as long as you don't have [00:20:49] like duplicate record names [00:20:50] because then you can't [00:20:51] be, you can't be sure [00:20:52] that it's gonna pick the right. [00:20:54] Yeah. [00:20:55] Yeah. [00:20:56] Yeah. So you must have [00:20:57] unique primary keys. [00:20:59] Yeah. [00:20:59] Yep. And then so it works both ways. [00:21:02] Yeah. So even if both tables are synced [00:21:04] or if your destination [00:21:06] just wants to have an independent table, [00:21:09] that it works as well in that [00:21:12] case. So [00:21:13] this saves, yeah, usually like [00:21:14] I've done it where you [00:21:16] just set up an automation [00:21:17] to like copy it and, [00:21:19] and to to create the link. [00:21:22] But this, this saves that automation. [00:21:24] What I have noticed, [00:21:26] which is kind of interesting is [00:21:28] if you do use this method [00:21:30] and then you know how [00:21:31] normally when you right [00:21:32] click on a linked record field, [00:21:34] it gives you the add look up field option. [00:21:36] In [00:21:37] this case, when you, when you change [00:21:40] the field type to a linked record [00:21:42] type, [00:21:43] it does not give you [00:21:45] that option. When you right [00:21:46] click, it doesn't show [00:21:47] you the add look up fields. [00:21:49] But you can [00:21:50] still, if you go create a new field, [00:21:52] make it a type of look up. [00:21:53] You can still choose that as [00:21:55] your [00:21:56] linked fields. [00:21:58] Yeah. [00:22:00] Yeah. OK. Well, if this was confusing, [00:22:02] we'll have Kamille do a segment on it and, [00:22:05] and showcase this in a future episode. [00:22:11] All right. Moving on. Let's go to [00:22:13] the popular TableForums. If you haven't [00:22:16] joined table forums, [00:22:17] definitely check it out. [00:22:18] It's, it's growing and, [00:22:19] and lots of interaction happening there. [00:22:23] Looks like we just lost Alli. [00:22:25] Hopefully she comes back [00:22:27] this time. It's not my, [00:22:29] it's not my computer internet. [00:22:31] So it looks like Alli's having [00:22:33] internet issues. [00:22:35] There she is [00:22:38] somehow my browser just like [00:22:39] hit the back button. I don't. [00:22:43] No worries, no worries, you're back. [00:22:46] All right. So yeah, so just kind [00:22:48] of giving a shout out to [00:22:49] TableForums and [00:22:50] Scott and Kuovonne [00:22:51] and everybody that's, [00:22:53] that's active over there. [00:22:55] Appreciate it. [00:22:55] Lots of, lots of cool conversations. So [00:22:59] I was gonna showcase a couple [00:23:00] show and tells from there, [00:23:02] this is a really good tutorial [00:23:04] from Kuovonne [00:23:05] on how to convert a script [00:23:07] from scripting extension [00:23:09] to an automation script. [00:23:10] There are differences, [00:23:12] there are things you can do [00:23:14] in one and not in the [00:23:15] other. [00:23:16] I know I get this quite a bit. [00:23:18] I need to and I've got [00:23:20] a script out there that [00:23:21] people are always asking [00:23:22] how do I run this in an automation. [00:23:25] And [00:23:26] so I'm gonna, I'm gonna send [00:23:28] people to, to this article [00:23:29] to understand how to [00:23:30] move it over. [00:23:32] But so yeah, shout out to Kuovonne [00:23:33] for this good tutorial on, [00:23:35] on what what you have to do to [00:23:38] and what the differences are [00:23:39] between the two environments [00:23:41] and how to move from, [00:23:42] from one to the other. [00:23:47] Very useful if you're scripting. [00:23:50] Yeah, this was a good [00:23:53] conversation on interfaces. [00:23:58] So just kind of a question from, [00:24:01] from a, from a consultant Rupert asking [00:24:05] about, you know, working with [00:24:06] interfaces or some good conversation here [00:24:11] about [00:24:13] kind of the pros and cons like [00:24:15] everybody's asking for it. [00:24:16] But there, I think like [00:24:17] what you were saying, [00:24:18] like there's all these like [00:24:19] little things where you're like, [00:24:20] ah it's frustrating. [00:24:22] So there. So if you find yourself [00:24:25] similarly, [00:24:25] like struggling with interfaces, [00:24:27] this is a good thread. [00:24:30] I think there's some good [00:24:33] commentary in here. [00:24:37] Absolutely. [00:24:42] Yeah. I think it's just, you know, [00:24:45] overall, I think the general consensus is, [00:24:47] is [00:24:50] is [00:24:52] there's a lot there but just kind [00:24:55] of like that last 10 20% [00:24:57] that just still is [00:24:58] frustrating with them. [00:25:01] Yeah, [00:25:02] I saw, there was a sentence [00:25:04] I just saw up on, [00:25:05] I think maybe it was Bill's Post [00:25:07] that said they tolerate [00:25:09] weak features, which [00:25:11] I have to agree with. [00:25:13] Yeah. [00:25:14] Yeah. [00:25:14] Yeah. [00:25:16] So good. Good back and forth Kuovonne [00:25:18] if you ever see a conversation [00:25:20] between Bill and Kuovonne [00:25:21] that's worth reading. [00:25:22] It's, it's, [00:25:24] I enjoy their back and forth. [00:25:26] I think they, [00:25:27] they like to [00:25:29] poke at each other a little bit [00:25:34] and [00:25:35] yeah. So, [00:25:36] yeah. Good conversation on, [00:25:38] on interfaces and, and how maybe you can [00:25:41] help them or use them more effectively. [00:25:45] All right, the last segment there, [00:25:47] I've got four, just kind of shout outs and [00:25:49] like I mentioned at the beginning [00:25:51] of the show, we're gonna do a deep dive [00:25:53] later this season in the chat GP T but [00:25:56] it just this last month, [00:25:57] it just start, [00:25:58] it's starting to show up everywhere. [00:26:01] So Greg built a really cool [00:26:05] chrome extension [00:26:07] and I think it's now it's [00:26:10] now in the chrome store [00:26:12] and I believe it's free. [00:26:15] So it's kind of cool. [00:26:16] So it's an extension. [00:26:17] So it can actually like insert stuff [00:26:19] into the browser. [00:26:21] So it actually puts a, [00:26:22] a button in the Formula Builder [00:26:25] and it allows you to [00:26:27] get help with your formula. [00:26:29] So you can ask inside the formula box [00:26:32] and then it'll give you a, [00:26:34] a sample [00:26:36] formula using chat GP T [00:26:38] and there's a video about it. [00:26:40] So that's pretty cool. [00:26:43] There's another, there's an extension [00:26:47] in the marketplace now [00:26:49] that that basically you can take [00:26:53] you know, a prompt. [00:26:55] So you have a field here [00:26:56] and [00:26:58] you can put your prompt there [00:26:59] and then click the button [00:27:00] and then it puts the [00:27:01] output in the, [00:27:03] in the text there. [00:27:06] So that's kind of cool. [00:27:10] It is called, [00:27:13] oh this one is actually a script. [00:27:17] I thought that [00:27:20] yeah, OK. This one's a script, [00:27:22] there's also in the marketplace, [00:27:23] there's a dedicated extension [00:27:25] that I think does very similar to this. [00:27:28] So you could do it either way. [00:27:30] So I don't know if it's [00:27:31] from the same developer. [00:27:34] I'll have to find that out, [00:27:35] but this one's actually a script [00:27:36] and he provides the [00:27:37] script there. So you just copy that [00:27:39] and then you do have to provide your own [00:27:41] API key from, from open [00:27:44] A I and so then you can [00:27:48] get going, but it looks like it [00:27:50] uses the, the configuration. [00:27:51] So [00:27:53] you'll, you, you just have to copy [00:27:55] this in and then it'll ask you for, [00:27:56] it'll ask you for your key. [00:27:59] So that's cool. [00:28:01] Then, now this one was also cool. [00:28:05] This is a from John [00:28:07] Ken. He has a youtube [00:28:09] video basically how you [00:28:11] can build chat GP T assistant [00:28:14] in Airtable. So kind of similar to, [00:28:16] to that script but takes it up a notch. [00:28:19] I think he uses make to, [00:28:21] to make the API call. [00:28:25] I'm not sure about that. [00:28:27] I, I started to watch the video [00:28:28] but I think it uses, [00:28:30] I think the API call, [00:28:31] maybe it's directly, maybe it is using a, [00:28:33] a script to, to make the call. But [00:28:36] a [00:28:37] very detailed tutorial [00:28:39] if you want to incorporate chat GP T [00:28:42] into your Airtable [00:28:43] and create a copilot [00:28:45] in there. [00:28:47] And this was actually [00:28:49] the same one that, that [00:28:51] G G BT. So [00:28:54] yeah, nothing new there. [00:28:55] So, yeah, there's also [00:28:58] if you check out, [00:28:59] I do need to give a [00:29:00] shout out to Bill French. [00:29:01] He's been writing a lot about A I and, [00:29:04] and chat [00:29:05] GP T and, [00:29:06] and how he's got it set up and, [00:29:08] and a pretty event stuff. [00:29:10] So if you go to I, [00:29:11] I, I believe in, in TableForums, [00:29:14] he's got, yeah, there we go. [00:29:16] There's this one, [00:29:18] I think there's others as well. So, [00:29:20] so if you want to learn [00:29:22] more about a I, [00:29:23] you can check out Bill French's [00:29:26] stuff and, [00:29:27] he's, he's talking a lot about [00:29:30] it. [00:29:30] There are others. [00:29:33] I don't know, I'm still in the playing [00:29:34] with the mode. I haven't like, [00:29:36] fully integrated it into my workflow. [00:29:38] Other, other people on our team on the [00:29:40] consulting side, [00:29:41] are using it much more [00:29:43] consistently as part of our, [00:29:45] our workflow. So, [00:29:46] I need to, I need to [00:29:48] make it more a daily routine. [00:29:52] I don't know how much you're using it. [00:29:54] You still in play mode or is it? [00:29:56] Still in play mode. I, I don't really use [00:30:00] it much for like my day to day work [00:30:02] using Airtable, [00:30:03] but I saw somebody the other day [00:30:06] had a, had a good use case for it [00:30:08] where they actually fed [00:30:09] it a formula and asked [00:30:10] it to describe it [00:30:12] and then were able to use that [00:30:13] as their field description, [00:30:15] which I thought was [00:30:15] really cool. [00:30:18] But other than that, I mean, [00:30:19] you gotta be really careful [00:30:21] because Chat G BT does [00:30:22] just make stuff up when it doesn't, [00:30:24] when it feels like it. So, [00:30:26] yeah, [00:30:27] yeah, it is tricky. [00:30:29] Yeah, so yeah, [00:30:30] you gotta be careful with it. [00:30:32] So, all right, I think that's [00:30:35] around the a wrap up of, [00:30:37] Round the Bases and [00:30:38] what's going on there [00:30:40] if we missed anything. [00:30:41] It's very likely we missed a major [00:30:43] feature release. It all kind of blends [00:30:45] together. So feel free [00:30:46] to hit us up, let us know. [00:30:49] and, we'll keep you up to date [00:30:51] going forward. It's easier when we're on a [00:30:53] weekly basis. There's, there's, [00:30:55] there's, [00:30:57] easier to keep our eyes on it. [00:30:59] Ok. [00:31:00] Shout out to On2Air. [00:31:01] Our primary sponsor. [00:31:03] It's an all in one tool kit to run [00:31:05] your business on Airtable. [00:31:07] If your business depends on Airtable, [00:31:09] then you definitely need to check out [00:31:10] On2Air [00:31:11] and the suite of apps that we have. [00:31:14] I'm going to [00:31:16] give a quick update on our forms. [00:31:20] We're getting close to, [00:31:23] we are still in a private beta, [00:31:24] although we have many people using it in [00:31:26] production [00:31:27] and getting really good success. [00:31:30] For today, I wanted to highlight [00:31:32] and Scott, I know I was watching, [00:31:34] this is, this is thanks to Scott, [00:31:37] we just made a change [00:31:38] and I don't even know if Scott knows this. [00:31:40] I, I I forgot to update him that, [00:31:42] that this change went live. [00:31:43] But [00:31:45] we now [00:31:48] I [00:31:48] want to get feedback. [00:31:50] So this is kind of a feedback session [00:31:52] on how people would [00:31:53] expect a form solution to work. [00:31:57] So when, when dealing with [00:31:59] linked records, [00:32:00] one of the challenges that we faced [00:32:02] and we just changed [00:32:04] the behavior over the weekend [00:32:05] is how to deal with [00:32:08] creating new LINKED records, [00:32:10] updating existing records [00:32:12] and when that link takes [00:32:13] place. [00:32:14] So the behavior of how On2Air [00:32:16] works is [00:32:18] you can, you can use the same, [00:32:22] You can use the same form [00:32:24] to either create a new record [00:32:26] or edit an existing [00:32:27] record [00:32:28] and this makes it easy to [00:32:32] that's not good. [00:32:37] All right, [00:32:38] found a bug. [00:32:39] It's always good. [00:32:41] And so, [00:32:43] so we changed the behavior of [00:32:46] it used to be when you create, [00:32:48] if you're, [00:32:49] if you're creating a linked record, [00:32:51] so like a sub a child record, [00:32:53] you would create that record [00:32:56] and it actually would save in Airtable, [00:32:59] but it wouldn't be linked to the parent [00:33:02] until you save the parent. [00:33:04] So that linking didn't happen until, [00:33:07] until you save the, the, [00:33:08] the top level form [00:33:11] here. [00:33:11] And so based on feedback, [00:33:13] especially from Scott, [00:33:15] heard him loud and clear, [00:33:18] we changed that and, [00:33:20] and other people also [00:33:21] expressed this. So now [00:33:22] when you create a new record, [00:33:24] a new child record, [00:33:26] it will automatically link to [00:33:27] the parent record. [00:33:28] If the, if you're editing [00:33:30] an existing record, [00:33:33] if you're creating a new record, [00:33:35] then there's nothing [00:33:36] to link to until that, [00:33:37] that parent record is created. And so [00:33:40] it's kind of confusing. [00:33:41] We're, we're working on [00:33:43] documentation to, [00:33:43] to explain this better. But [00:33:45] I want to get people's feedback [00:33:47] because there's other [00:33:48] scenarios where so if [00:33:49] you're [00:33:50] because the difference between [00:33:52] a form solution like ours [00:33:53] and creating a new [00:33:54] record in Airtable is, [00:33:56] you know, an Airtable, [00:33:58] you always create that parent first. [00:33:59] So that parent always exists. [00:34:01] Whereas if you're outside of Airtable, [00:34:03] that parent doesn't exist [00:34:06] until you hit save. [00:34:08] And so the behavior is a little [00:34:09] bit different than, [00:34:11] than how it works inside of [00:34:12] Airtable. We want to get this right. [00:34:14] We're deciding if we make it [00:34:16] configurable or just kind of [00:34:18] set in stone what the behavior is [00:34:20] and, and educate the clients. [00:34:22] Because there's other differences [00:34:25] if you're, [00:34:26] if you're [00:34:28] removing so example, [00:34:30] you have a list of child records [00:34:32] and you want to remove one of them [00:34:35] that doesn't get unlinked [00:34:37] until you hit, save on the parent. [00:34:40] So there's different scenarios [00:34:42] of when, when the linking happens or gets [00:34:45] removed or when it doesn't [00:34:47] happen depending on, [00:34:49] you know, what state you're in. [00:34:51] And so I want to get people's feedback, [00:34:52] what would your expectations be [00:34:55] with with when that link takes place? [00:34:57] So as of now, [00:34:59] it will, when you create a new [00:35:01] child record, if the parent record exists. [00:35:04] So if you're editing an [00:35:06] existing parent record, [00:35:07] that link will happen once [00:35:09] you create the record. [00:35:11] Because the other thing is we, [00:35:13] we debated early on [00:35:14] is when do you actually [00:35:15] create the child record? [00:35:17] Do you wait till you [00:35:18] save the parent record? [00:35:20] We decided that, that [00:35:21] that actually gets created once you hit, [00:35:24] save on the child. [00:35:26] So it's kind of confusing [00:35:28] because you will have [00:35:29] updated data in Airtable of [00:35:30] the child record, but the parent [00:35:33] doesn't get updated until you hit, [00:35:34] save on the parent. [00:35:38] So we're getting feedback from Scott. [00:35:42] Save changes automatically [00:35:44] affect the parents as, [00:35:45] as un linking child or [00:35:46] creating or editing. All right. [00:35:48] Good feedback, Scott. [00:35:49] We'll take it into consideration. [00:35:52] Yeah. [00:35:53] Yeah. So, yeah, let me know. [00:35:55] I don't know any thoughts. [00:35:57] That's, it's a great [00:35:59] philosophical question. right? [00:36:02] I guess is [00:36:03] everybody's gonna have different opinions. [00:36:06] No doubt. I will say that like, [00:36:09] I guess [00:36:09] it would be really nice if like [00:36:12] in, I guess in my opinion, [00:36:14] it would be nice if like [00:36:15] nothing happened until you [00:36:16] hit save on the parent. [00:36:18] But I could imagine that that [00:36:19] would be a logistical nightmare [00:36:21] for you to code on [00:36:21] the back end. [00:36:24] But the, the thing that like I've found [00:36:26] confusing when using form solutions like [00:36:27] this, when you create the child [00:36:29] and your child record has a formula, [00:36:31] for example, for the primary key [00:36:33] that's trying to read that parent name. [00:36:36] Then when you create it, [00:36:37] it's just got like a blank [00:36:39] and then a dash and then [00:36:40] whatever. So it just looks a little funny. [00:36:44] So yeah, there's a lot of little [00:36:46] details to keep in mind there. [00:36:47] Yeah. [00:36:48] Yeah. Yeah. All those things. [00:36:50] Yeah, especially [00:36:51] or like your formula doesn't [00:36:52] update until, you know, [00:36:54] because it has to go back to Airtable. [00:36:56] So we solved that by creating [00:36:59] our own formula field. And [00:37:01] this was actually something else [00:37:03] that just went live this weekend. [00:37:04] Now, a child table or a child record [00:37:07] can actually reference a record from the [00:37:10] parent. [00:37:11] And so now you can create [00:37:13] custom formulas within the client [00:37:16] within the form that reference [00:37:19] the parent. So and it will update live. [00:37:21] And so that is a cool feature [00:37:23] that that's been requested quite a bit, [00:37:25] but it was challenging to pull off. [00:37:27] But we got that working now, [00:37:30] I hear you. [00:37:31] So that yeah, there's, [00:37:32] there's lots of little things it's like, [00:37:34] oh OK. I could see it working [00:37:37] different ways for [00:37:38] different use cases. And [00:37:40] that's one of the challenges [00:37:41] with Airtable being [00:37:43] just a flexible platform as it [00:37:44] is they, [00:37:45] you know, everybody has a different [00:37:47] opinion on how it should be implemented. [00:37:49] Absolutely. [00:37:50] So that we, we, we have [00:37:52] that similar struggle on our end. [00:37:55] All right, there's our shout out to [00:37:58] On2Air, check it out at on2air.com [00:38:01] okay. [00:38:02] Alli is gonna walk us through [00:38:04] and how to use formulas [00:38:06] with your single select [00:38:07] fields. [00:38:09] Here you go. [00:38:10] All right, [00:38:11] excellent. So I just threw [00:38:13] together a small little [00:38:15] use case for this demo, [00:38:17] but there are a million ways [00:38:19] that you could use this [00:38:20] to your advantage. [00:38:22] So [00:38:23] here I've got [00:38:25] in a variation of the sales [00:38:27] C R M template that Airtable has. [00:38:31] I've got this closed date field. [00:38:33] And then I've calculated [00:38:35] how many weeks that each [00:38:37] of these opportunities has [00:38:38] been aging. [00:38:40] So this one's five weeks old, [00:38:42] nine weeks old, [00:38:43] 24 weeks old and so on and so [00:38:45] forth. [00:38:47] Then I've calculated here in a [00:38:49] formula with a bunch of nested ifs [00:38:52] what [00:38:53] I want my like aging status to be. [00:38:58] So [00:38:58] this could really be anything you want. [00:39:00] I'm sure that everybody's got their own [00:39:02] little twist on this in, [00:39:04] in a bunch of different bases. [00:39:07] Like sometimes you have [00:39:09] a formula driven status that [00:39:11] displays certain values based on certain [00:39:14] parameters that that record holds. [00:39:18] So in this case, we've just got, [00:39:20] you know, if it's new, [00:39:21] if it's less than five [00:39:22] weeks old, I've designated [00:39:23] that as a new opportunity. [00:39:25] 15, less than 15 weeks old, [00:39:28] it's getting old, [00:39:29] less than 25 weeks old, getting older, [00:39:32] then turns into Danger. [00:39:34] And then if it's over 35 weeks old, [00:39:37] it just says too old. [00:39:38] So that could be tweaked [00:39:40] or changed in any number of ways. [00:39:44] Now I'm gonna show an example of a chart [00:39:47] based on that aging status field. [00:39:51] And so, [00:39:52] and then this is one of the [00:39:54] use cases as to why I like to [00:39:56] take that formula field and turn it [00:39:58] into a single select in a way [00:40:00] because these colors don't really [00:40:02] mean anything to me, right? [00:40:03] Airtable's [00:40:06] default color scheme [00:40:08] isn't super helpful in designating like [00:40:12] I would like the red to be [00:40:13] when it's too old, [00:40:15] but instead it's assigned [00:40:16] that blue randomly, [00:40:19] all sorts of different reasons [00:40:21] why I'd want this to be. [00:40:22] I, I want more control [00:40:23] over the color in this chart. [00:40:25] And if I go and pick any one of these, [00:40:27] they're just, none of them are gonna [00:40:29] line up exactly with where [00:40:31] I would want them to be. [00:40:33] So, the way that I like to get around that [00:40:36] is [00:40:38] I create a single select field [00:40:41] and I'm just gonna call it aging status. [00:40:44] I like to put a little gear [00:40:45] in front of my, [00:40:48] a lot of different like [00:40:49] formulas in Airtable if [00:40:52] like I know that this formula field [00:40:54] can stay hidden and it's also integral, [00:40:56] integral to a process [00:40:58] because this gear likes to, [00:41:01] it's kind of a [00:41:02] scary thing for people to look at [00:41:04] and be like, oh there's a gear there that [00:41:06] looks like it's important. [00:41:08] I'm not gonna touch that. So [00:41:09] it's a nice little way [00:41:11] to get around that. [00:41:12] So I'm just gonna copy [00:41:15] and paste [00:41:16] into this field. [00:41:19] Now, I can [00:41:21] take these [00:41:23] and you know, assign [00:41:25] my colors to them as I want [00:41:30] could say new, [00:41:31] I want new to be at the top. [00:41:35] And then I also, [00:41:37] if the opportunity has been [00:41:39] closed, [00:41:42] then it says closed one or closed lost. [00:41:46] So now these colors are really [00:41:48] what I want displayed on my chart. [00:41:51] But [00:41:52] this is not gonna be updated [00:41:54] automatically when this changes, [00:41:56] right? Like if I move this so that [00:42:01] it was [00:42:02] new, [00:42:03] this is now new, [00:42:05] but this is still says getting old. [00:42:08] So to get around that, [00:42:10] I'm gonna create one formula field here [00:42:14] and I put a little lightning [00:42:16] bolt when I know that [00:42:17] this field is gonna be [00:42:19] triggering an automation. [00:42:22] So I'll say update aging status [00:42:25] and I'm gonna write a formula [00:42:27] very simple. [00:42:28] It's just gonna say if I have an [00:42:29] aging status [00:42:31] and that aging status [00:42:34] does not equal [00:42:37] by aging status, single select, [00:42:40] then I want to [00:42:42] update [00:42:44] the aging status. [00:42:47] And this should be the only [00:42:49] one that has this value in it. [00:42:51] If I go here, only one is filled. [00:42:55] So now I can set up an automation [00:43:00] to update that aging status field. [00:43:03] And I'm gonna go with when [00:43:05] record matches conditions, [00:43:07] you could, I suppose ignore that, [00:43:10] not do the formula [00:43:12] and just use when record updated. [00:43:14] But I don't trust that trigger [00:43:17] at all. [00:43:18] I 99.9% of the time and going [00:43:21] with when record matches conditions. [00:43:23] And I try to have a formula [00:43:25] that's gonna drive that. So [00:43:27] I know [00:43:27] I have more control over [00:43:29] when that automation [00:43:30] actually is triggering. [00:43:32] So basically this is just saying [00:43:34] when update aging status is not empty, [00:43:37] I only have this one [00:43:39] that [00:43:39] meets those conditions right now. [00:43:42] And then I'm gonna update [00:43:44] on the opportunities table, [00:43:46] that same record that [00:43:47] triggered the automation [00:43:50] and I'm gonna update my [00:43:52] aging status single select [00:43:56] with the value from the formula. [00:44:03] So if I just run that real quick, [00:44:06] you can see it crossed out, [00:44:08] getting old and it replaced it with new [00:44:10] and then also that update [00:44:12] aging status formula field went away, [00:44:14] returned empty. [00:44:18] So now [00:44:19] in my chart, if I flip how this is grouped [00:44:24] instead of my formula field, [00:44:26] I can use my single select [00:44:28] and it's much prettier with [00:44:30] the colors exactly how I want them. [00:44:33] I could then [00:44:34] go change those colors if I wanted. [00:44:36] Like let's say I want too old to be [00:44:39] black or gray [00:44:43] that also updates my [00:44:45] dark colors as well. [00:44:47] So [00:44:48] I've found that, that [00:44:50] I just like doing that to get more [00:44:52] control over how my interfaces look. [00:44:54] You can also use this like [00:44:56] if you wanted to make a like a kanban [00:44:59] or kanban, [00:44:59] not sure how everyone [00:45:01] pronounces that word. [00:45:02] If you wanted to make [00:45:04] a [00:45:04] kanban view over this formula field, [00:45:07] you obviously can only do it [00:45:09] with a single select. [00:45:10] So this would allow you to [00:45:11] use this as your single [00:45:13] select field instead. [00:45:16] One last thing I will point out [00:45:18] is I like to whenever I do this, [00:45:20] I usually set the field permissions [00:45:23] to say that nobody [00:45:25] except automations can update this field. [00:45:29] Because [00:45:30] otherwise [00:45:33] I'll show you what happens. [00:45:35] I, I turned that animation on. Right? [00:45:36] Yeah. [00:45:38] Otherwise if somebody [00:45:39] comes here and flips this, [00:45:41] it's just gonna change back. [00:45:44] And [00:45:45] that's a confusing user experience. [00:45:48] So I like to make sure that [00:45:52] nobody can [00:45:53] update that record. So that way it's just [00:45:56] stays that way. [00:46:00] Yeah. [00:46:02] Very cool. [00:46:04] Yeah, that's another, [00:46:06] even the way that you set up that, [00:46:08] that automation or that formula there to [00:46:11] detect it. [00:46:12] If you set it up the other way. [00:46:14] Whereas just listening, [00:46:15] like on the close date [00:46:16] for when the close date [00:46:17] was updated, [00:46:18] then it wouldn't have triggered if the, [00:46:20] if you manually change the [00:46:22] drop down to, to reset it back. [00:46:24] So that's another benefit of setting [00:46:27] it up the way you did. But yeah, [00:46:28] putting that permission on there. That, [00:46:30] that's nice. [00:46:32] Definitely. Yeah, I've found that that's, [00:46:34] it's helpful because it just [00:46:36] locks it down even further. [00:46:37] How does, how does it behave in [00:46:39] kanban [00:46:40] if you have that permission on there? [00:46:42] Can you still do a kanban [00:46:43] but you just can't drag it between? [00:46:46] Yeah, I believe so. Let me here. [00:46:47] Let me just present one more time and [00:46:51] well, it's [00:46:59] so now if I use kanban [00:47:02] do you have the [00:47:04] permission on? [00:47:05] Yeah. [00:47:06] Yeah, I do. Good. [00:47:08] So, yeah, now I just can't. [00:47:14] Yeah, [00:47:14] but you still get the look [00:47:16] and feel that you [00:47:17] the kanban wants. [00:47:19] That's kind of cool. Just to lock it in. [00:47:23] Nice. Very cool. That is a great trick. [00:47:26] Yeah, get the coloring and get it the [00:47:28] way you want [00:47:30] nicely done. [00:47:31] All right, let's move on. [00:47:34] So this one, I wasn't quite sure [00:47:36] we don't have a segment. [00:47:37] Actually, before I do that quick, [00:47:39] shout out from Alex. Very cool. [00:47:41] I've been using formula to update [00:47:42] the dropdown field, but I was using [00:47:44] the when record change automation. [00:47:46] I've seen it not work [00:47:47] only a handful a couple [00:47:48] times. [00:47:49] Yeah. [00:47:50] It, [00:47:51] I've, [00:47:52] I feel like it runs when I don't [00:47:54] expect it to [00:47:54] and it doesn't when I do expect it [00:47:56] to sometimes which [00:47:58] not a fan of. [00:47:59] Yeah. [00:48:00] Yeah. [00:48:01] All right. So understanding API [00:48:04] tokens and keys. So a month, [00:48:06] maybe two months ago, [00:48:08] Airtable came out with some new ways to, [00:48:11] to deal with third party integrations. [00:48:14] The old way that has been [00:48:16] there for since the get go is [00:48:18] every account had one single API key [00:48:22] and or every user, I should say [00:48:24] every user had one single API key [00:48:26] and it had read and write access [00:48:29] and that was the only way you [00:48:31] could integrate. [00:48:32] And so there was no granular [00:48:33] permissions around who could access what [00:48:36] you pretty much gave access [00:48:38] to everything with that one API key. [00:48:41] So they finally came out with [00:48:44] more granular ways. [00:48:46] And I'm gonna walk through [00:48:47] just kind of the some of the differences. [00:48:51] So this API key, [00:48:52] this is the old way this used to be a [00:48:54] there's still if you go to your account. [00:48:57] There was a section here [00:48:59] that showed this. If you click on it, [00:49:00] it'll show the actual key. [00:49:04] And they have now a big, [00:49:06] big notice here that this [00:49:08] will be ending at the end [00:49:09] of January 2024. So [00:49:11] if you've integrated anything [00:49:14] with Airtable, [00:49:15] you've likely come to this, [00:49:17] copied your API key, [00:49:18] inserted it into the third party tool [00:49:21] that you need to [00:49:22] once the tool has been upgraded [00:49:25] and supports different [00:49:27] methods, you'll need to [00:49:29] upgrade that by the end of [00:49:31] basically this year. [00:49:34] My understanding, I know, [00:49:36] I think Scott mentioned [00:49:37] that make requires you to [00:49:39] create new connections using [00:49:41] the the new approaches. And so you have to [00:49:44] basically go through every [00:49:46] automation that you have set up [00:49:48] and update them. I don't know [00:49:49] if you've gone through that process. [00:49:52] Not yet. [00:49:53] Zapier [00:49:54] doesn't even let you use the tokens yet. [00:49:57] Oh really? Or O'Auth [00:49:58] they haven't implemented O'Auth? [00:50:00] Not that I've seen it [00:50:02] only accepts an API key. [00:50:04] Yeah. [00:50:04] OK. [00:50:05] So yeah, so some haven't yet [00:50:07] implemented it yet. [00:50:08] So it's kind of confusing [00:50:09] because you've probably gotten [00:50:11] emails from Airtable [00:50:12] saying you need to upgrade [00:50:13] and you go and, and you can't [00:50:15] because the third party tool [00:50:17] has doesn't support [00:50:17] the new methods yet. So [00:50:19] it's all very confusing. [00:50:22] But basically, so now moving away [00:50:25] from the old API keys, we have, [00:50:28] you know, a year or less [00:50:29] than a year now to, to migrate. [00:50:31] There are [00:50:33] three new approaches. [00:50:35] Two of them are the ones they talk about. [00:50:38] There's a third one that, [00:50:39] that I'll talk about, but it, [00:50:41] it's only for enterprise accounts. [00:50:44] So the new approaches are [00:50:46] personal access tokens and O'Auth. [00:50:51] So let's start with O'Auth [00:50:52] so O'Auth [00:50:53] requires the third party [00:50:56] tool to implement it. So [00:50:57] if they haven't implemented O'Auth [00:50:59] then it means nothing to you yet. [00:51:03] So at On2Air [00:51:04] we just a couple of weeks ago, [00:51:06] we released our O'Auth [00:51:07] integration. [00:51:08] So now we're fully [00:51:10] supporting the new approaches [00:51:12] and we did it the smart way [00:51:14] we made it. You don't have [00:51:16] to go through and reconfigure everything. [00:51:18] You just go to your connection [00:51:20] and there's now a way to upgrade [00:51:22] that connection to use O'Auth [00:51:24] and then anything that was [00:51:25] already using that [00:51:26] connection now uses the [00:51:27] the O'Auth [00:51:28] so it's just [00:51:29] one place that you need to update [00:51:31] and then if you have lots of [00:51:33] backups or forms configured, [00:51:35] you don't have to go to each one to, [00:51:36] to update them. So [00:51:38] hopefully that is helpful. But [00:51:41] so O'Auth [00:51:42] the third party basically sets up a, [00:51:45] a gateway, you've likely seen this with [00:51:48] Google or Twitter or anything [00:51:50] that it comes up with a pop up [00:51:52] that says, do you want to, [00:51:53] do you give permission [00:51:54] to this third party tool? [00:51:58] To get access to it [00:52:00] and you give them permission. [00:52:02] Now, the O'Auth [00:52:03] with [00:52:05] let me see if I can. [00:52:07] Yeah, the O'Auth [00:52:08] with [00:52:10] with Airtable [00:52:12] is even a little bit more granular [00:52:15] because it actually asks you which base [00:52:18] you want to give access to [00:52:20] or which workspace. [00:52:22] And so you can actually [00:52:24] just give access to certain bases [00:52:27] or you can also give access [00:52:29] to all workspaces [00:52:30] and all bases. So, so it can be [00:52:33] as granular as open as you want. [00:52:35] You can also define if you want to [00:52:39] just give read access or write access or [00:52:42] access to the meta information. [00:52:44] So that, that actually I take that back, [00:52:48] the developer determines what you, [00:52:51] what they need [00:52:52] access to and then you, [00:52:54] you grant them access to that. [00:52:56] So you don't decide [00:52:57] what tiers you do decide [00:52:59] what bases you give access to but, [00:53:02] but not the read or [00:53:03] write, or whatever the developer [00:53:05] that implements O'Auth [00:53:06] determines that [00:53:07] and you have to then agree to that or not. [00:53:11] If you want to add access to that [00:53:13] third party tool. [00:53:15] So that's O'Auth [00:53:16] that's done more by the developer [00:53:18] and then they present it to you. [00:53:20] The one that's more in your control [00:53:23] are these personal access tokens. [00:53:25] And so what these allow you to do is [00:53:28] so if I go here and create a new one, [00:53:31] and I'm actually gonna use this [00:53:33] for the next segment. [00:53:35] And so we are going to [00:53:38] create a task robin. [00:53:40] So a personal access token, [00:53:42] if you're they only want you to [00:53:45] use these for internal workflows. [00:53:49] If you're writing scripts and want to [00:53:52] use access to your own API [00:53:55] or to your own bases, [00:53:57] that's where personal [00:53:59] access tokens come in. [00:54:00] They don't want third party tools [00:54:03] to rely on these, they want those to use [00:54:06] O'Auth. [00:54:07] The main difference is, is these tokens [00:54:10] don't have a refresh mechanism [00:54:13] to them, meaning [00:54:14] they don't require the developer [00:54:16] to constantly be checking to see if, [00:54:18] if the user still wants to give access, [00:54:21] the user can come in here and, [00:54:24] and revoke these tokens and delete them, [00:54:26] which means they will no longer work. But [00:54:29] in O'Auth [00:54:30] there's another layer of kind of [00:54:32] security to just make sure that that it's [00:54:34] always up to up to date [00:54:36] within a time frame which is also [00:54:38] a pain in the neck to deal with as a [00:54:39] developer, but there is benefits to it. [00:54:44] So anyways, you create an access token, [00:54:46] you define the scope. [00:54:47] So the different scopes are [00:54:48] what you're giving permission to. [00:54:50] So [00:54:51] they can see all the data, [00:54:53] edit the data [00:54:54] do interact with the comments. [00:54:57] And then the base schema [00:54:58] means they can read like all your table, [00:55:00] field names and field types [00:55:02] and field configuration [00:55:04] and then writing means they can [00:55:06] actually like create new fields [00:55:09] or new tables [00:55:09] using this access. [00:55:11] And then there's also [00:55:13] web hooks to, to interact with [00:55:16] the web hooks that are now available. [00:55:18] And then this one's more for [00:55:20] developers of implementing [00:55:22] extensions which at one point [00:55:24] used to be called blocks. [00:55:26] Then there were apps [00:55:27] now they're extensions, [00:55:28] but it looks like the API [00:55:30] is still using the original name [00:55:32] of blocks. [00:55:34] So you define that. [00:55:36] So for this one, you gotta give, [00:55:38] I'm gonna give read and [00:55:39] write access. I think I need to give [00:55:41] schema read and write as well. [00:55:45] And that's it. And then, [00:55:47] and then now you can define the base. [00:55:50] I'm gonna just give access to one base [00:55:54] to make it simple [00:55:55] and then I'm gonna create a token. [00:55:58] I'm going to hide this. [00:56:00] So I don't share my token [00:56:03] K. I copied it and then I'm done. [00:56:06] Bring it back. [00:56:08] Yeah. [00:56:10] All right. And so now I created this [00:56:13] new token, [00:56:13] it will actually have popped up. [00:56:15] I pulled it over to another screen. [00:56:18] And actually it looks [00:56:20] like it shows partial, [00:56:21] but this is not the full one. [00:56:22] So if you try this, this won't work. [00:56:26] But yeah, so now I have a token copied [00:56:29] and and so I can use it. [00:56:31] So those are, those are the two [00:56:33] that you would interact with. [00:56:35] If you're, you know, if you're, [00:56:37] if you are integrated with a, [00:56:39] with another tool [00:56:40] and they don't yet have O'Auth [00:56:42] then I would say don't [00:56:44] use an access token. [00:56:46] Some, an access token wouldn't work. [00:56:49] Some, it might work. [00:56:50] It depends on how they, [00:56:51] they implemented the, [00:56:53] the tokens originally. [00:56:55] but, [00:56:56] but they're going to have to [00:56:58] implement O'Auth [00:56:58] by the end of the year, [00:57:00] like Zapier. I probably, [00:57:01] you know, if you, if you update it [00:57:03] with access tokens, you're gonna have to [00:57:05] update it again once they implement [00:57:07] O'Auth. So [00:57:09] that's fine if you want to do it twice [00:57:11] or if you wanna wait till they have [00:57:13] O'Auth [00:57:13] implemented, you could do that. [00:57:15] There is one other type of token [00:57:18] that's only for enterprise level and it's [00:57:20] called a service token [00:57:22] and it kind of works very similar [00:57:24] to these personal access tokens. [00:57:26] The difference is a personal access token [00:57:29] by its name is tied to a person. [00:57:32] So this is tied to [00:57:33] the user that created the token. So [00:57:36] anything that this token does [00:57:38] to like update a record, [00:57:40] it will if you look at like the last [00:57:43] modified by, it'll be tied to the user [00:57:45] that created that token. [00:57:47] A service token that's only [00:57:50] available at enterprise does not, [00:57:52] is not associated with any user. [00:57:54] And so it can kind of be this, [00:57:57] you know, universal token that is [00:58:00] updating it similar to [00:58:02] when like automation's [00:58:03] update records. It shows that it [00:58:05] was created by an automation. [00:58:08] It will show I believe that it [00:58:10] was created by a service [00:58:12] key or service token [00:58:15] and maybe give the name of it. [00:58:17] I can't remember. I, [00:58:19] I, I've used it once [00:58:20] with an enterprise client. [00:58:21] I don't know if you know that, [00:58:24] how it shows up. [00:58:25] I haven't played with it yet, [00:58:27] so I'm not sure. Yeah, I think it, [00:58:28] I think you name it [00:58:30] just like you name these [00:58:31] tokens and it'll say it was, [00:58:33] it was updated by that, [00:58:35] that service token. [00:58:36] So, [00:58:36] so it's not tied to any individual user [00:58:39] which, which is beneficial. [00:58:41] And if you're at a company where [00:58:43] people are coming and going, [00:58:45] you don't want, you know, [00:58:47] when you have to remove that person. [00:58:49] If you have automations [00:58:50] using that token, their person [00:58:52] little token, [00:58:53] they'll break once they get removed. [00:58:56] And so a service token lives you know, [00:58:58] forever beyond any individual user. So, [00:59:02] so [00:59:02] there's, there's definitely benefits [00:59:04] to, to using service tokens. [00:59:06] If you're at the enterprise level, [00:59:09] that's a big benefit to it. [00:59:12] So that is understanding the API keys [00:59:16] and [00:59:18] we'll move on here. [00:59:19] Got just a few minutes [00:59:21] and just a quick shout out to join [00:59:23] the BuiltOnAir community. [00:59:25] Our goal is to get to 1000 [00:59:27] youtube subscribers [00:59:29] by the end of the year. [00:59:31] We're in the 700 range. [00:59:33] So please subscribe to our youtube channel [00:59:36] and join our community [00:59:38] if you're not already in there [00:59:40] builtonair.com/join [00:59:42] This year I think we do have some, [00:59:44] some big, big plans coming for, [00:59:46] for BuiltOnAir. So [00:59:47] we'll be announcing some, [00:59:49] some updates in the future. [00:59:51] Finally An [00:59:52] App a Day [00:59:53] Task Robin. [00:59:55] So no association with Task Robin [00:59:57] use at your own risk. [01:00:00] I I have only seen this posted [01:00:02] the the developers posted in the in the [01:00:06] forums, but I have not spoken [01:00:09] or talked to this developer so [01:00:11] use at your own risk. [01:00:13] But I wanted it is a cool functionality. [01:00:15] So I thought it was worth showcasing [01:00:18] how it works. [01:00:20] And [01:00:22] so basically you go [01:00:23] to the marketplace, by the way, [01:00:25] when I went to install this, [01:00:27] I noticed there are a lot [01:00:29] of new extensions [01:00:31] in the last, you know, six weeks. [01:00:33] So Airtable is getting more [01:00:36] active at approving extensions. [01:00:38] So that's good to see. [01:00:41] Hopefully that continues and they, they [01:00:44] implement extensions. [01:00:46] Airtable, you need extensions [01:00:49] inside of interfaces, please. [01:00:51] Absolutely. [01:00:53] Yeah. Yeah, [01:00:54] that will be that, [01:00:56] that will be when extensions really [01:00:58] become [01:00:59] popular. [01:01:01] I want pivot tables. [01:01:03] Yeah. Yep. [01:01:05] So, so what Task Robin does is [01:01:08] it sets up an email address [01:01:11] that on Task Robin. [01:01:12] So it does integrate. [01:01:14] So it does go through them. [01:01:15] They kind of act as a as a proxy, [01:01:18] but basically you can send any email [01:01:21] to the address that, that you [01:01:24] configure here at task Robbin dot I O [01:01:27] and it will actually like save that [01:01:30] email into your table that gets created [01:01:34] here. And so I haven't actually [01:01:36] walked through all of this. [01:01:37] So we're gonna do [01:01:37] this live. This will be an unboxing. [01:01:40] So I'm gonna use, [01:01:42] I'll use my [email protected] [01:01:46] And then let's use BuiltOnAir. [01:01:48] So I'm gonna, [01:01:49] so it's going to create a [01:01:51] BuiltOnAir at Task Robin dot I O [01:01:53] and let me [01:01:55] move this, I'm gonna enter [01:01:57] the API key that I just created [01:01:59] so [01:02:01] bad news. [01:02:03] So they don't support the access token. [01:02:06] So I pasted it in my API key, [01:02:09] my access token and it tells me [01:02:11] it's in the wrong format. [01:02:13] So they still use the [01:02:14] old API key format. [01:02:17] So [01:02:18] let me [01:02:22] let me grab that real quick. [01:02:24] Actually, I'm logged in with the user [01:02:26] that I'm not comfortable giving. [01:02:28] So we're just gonna walk through it. [01:02:31] How it works. But basically, [01:02:37] so I'm gonna bring it back in. [01:02:40] So basically how this works [01:02:43] is you set it all up and then [01:02:45] you can send anything you [01:02:47] could set up email rules in your [01:02:51] oops. [01:02:52] No, we can't see your screen. [01:02:54] Yeah, I gotta [01:02:55] add it back into my. [01:02:57] There we go. [01:03:00] So once you set it up as long [01:03:02] as you're emailing it from here, [01:03:04] you could set up like auto forward [01:03:06] rules and then just forward it into this [01:03:08] email address, then this application [01:03:11] will automatically, [01:03:12] save it. So this is really cool for [01:03:15] automating, you know, [01:03:17] just any kind of email, [01:03:19] ingestion into Airtable. [01:03:21] You can do this with Zapier [01:03:23] and make as well. [01:03:24] They, they have that functionality, [01:03:26] maybe even more advanced where, [01:03:28] like I know Zapier [01:03:29] has a email parser that can parse it out [01:03:33] and then you could put specific fields [01:03:36] based off of your email. [01:03:38] I use this on the consulting side for, [01:03:41] for leads. I think you probably do as [01:03:44] well. [01:03:44] And I part I extract out, [01:03:46] I do it through a script. [01:03:48] So I actually have like [01:03:50] rejex [01:03:50] and [01:03:51] extract out from from the body [01:03:54] of the email and then update fields. [01:03:56] And you could do that with [01:03:58] this as well. The benefit [01:03:59] like this, this is actually kind of [01:04:01] good because it gets the email into [01:04:03] Airtable and then once it's [01:04:05] in Airtable, then you can [01:04:06] write a script to extract from there. [01:04:10] which is actually what I do as well. [01:04:12] But I use Zapier for, [01:04:14] for getting it into Airtable, [01:04:16] right? [01:04:17] So, but it's cool, nice, nice app. [01:04:19] This functionality this would be [01:04:21] there is I I thought Airtable [01:04:24] announced a feature. [01:04:26] it was like air email syncing [01:04:30] and I was hoping it was this functionality [01:04:33] and maybe someday they will. [01:04:35] It's not quite this, [01:04:37] it's more of sending in like a [01:04:38] CS V attachment [01:04:40] and then gets synced. [01:04:42] This is what I was hoping for. But [01:04:45] yeah, so this, this is a cool cool app. [01:04:48] Check it out task Robin dot I O [01:04:51] and I believe they support other [01:04:53] platforms as well besides Airtable [01:04:56] and is this free? [01:04:58] I think they have a free tier for [01:05:01] just a few emails and then it's, [01:05:03] it's paid for [01:05:05] any kind of serious usage. [01:05:08] Yeah. [01:05:08] Yeah. [01:05:09] So, [01:05:10] but yeah, check out [01:05:12] check out the the extensions [01:05:14] and maybe we'll explore [01:05:16] some of these others. [01:05:17] If there's one you want us to explore, [01:05:19] always open to [01:05:21] digging into these. [01:05:23] So [01:05:26] that concludes today's show. [01:05:28] Thank you all. [01:05:29] Excited to be with you for another [01:05:31] season. We'll be back. [01:05:32] We have a guest joining us next week, [01:05:34] so [01:05:34] be sure to catch us next time. [01:05:36] We'll see you then. [01:05:38] Ok. Thank you. [01:05:40] Bye [01:05:41] bye.