Four topics basically first one is uh what is an integrated custom application and how it can be used uh then we will talk about when it's better to create a custom application instead of using http request and a quick answer for me is here always then how can you develop custom application custom obstructure and how to create a trigger application to trigger another scenario so basically first i want uh i wanted to.
To talk about how to create i wanted to braid and leave that trigger motor application but um i created also for you like really step-by-step guide uh a text it's a it's an ocean document that i i will send or write after the meet or this webinar or maybe tomorrow so basically this is step by step guide how to create a custom application to trigger one scenario from another so that's why i have today two options for.
You and i would like you to answer uh a simple question uh after topic one and topic two i can either create this basically this uh application how to trigger one scenario from another or i can create a other simple application using air table uh using creating dynamic connections right so yeah until i'm talking about first and second topic please like put.
One or two in the message in the chat okay thank you so yeah let's go what is an integrated custom application right and i think the best way to to tell you what's in the comment custom app is just to show it to you right so for today i prepared like a really simple uh custom air table up of course i know that the uh intercom already has um an irritable application but i just decided to show it to you like so you.
Can better have better understanding how a custom app is developed right so and this is basically a custom application so a custom application is basically a like the same integral multiplications that you use like every day in your scenarios is just like built custom by you and until you publish it at least it's visible only to you it has the same model structure and everything right so and this application basically that i created has three models uh first one is.
Javascript model that just converts a csv array to a way so that i can bulk upload it to google set okay so and i can even show you how that works okay so if i just run this download the csv okay and it's a basic okay let me just do this.
Yeah it's downloading too long yeah sorry for that i'm not sure what's happening let's trigger it one more time okay well uh okay i'll just then explain to you basically so what it does uh it downloads a file and then basically it's just a simple csv file right so then it parses this vsp and.
Aggregates basically everything to one array uh then on this custom application basically just a simple javascript uh and then i do a custom a make an api call to google ship so instead of adding uh like to google sheets row one by one uh i just upload them to google sheets in bulk using just one operation so let's say if you have like 100 rows you already saved 100 operations right and i'm not sure if internet will like that's what i'm talking about but that's basically what this customer does.
Okay so then uh how integrate customer application can be used in another way okay so most of you i think uh uh are thinking that custom applications are mostly used to uh by some sas companies uh that they can create a custom application and other integromat users can use it but that's not only the only use case uh and i mostly use integra math for uh even just for cr.
Even just instead of using custom http model or a web model right because in this case i have much more flexibility uh sometimes i use just to create some simple javascript function or a more complex one right to optimize my scenario uh to structure my data in the right way so i can use that then in other actions in scenario and so on and so on uh sometimes i use customers to trigger another integroma scenario of course you can do it also using the like custom html requests and that books.
Posts Related:
But in this case yeah like your scenarios become like looks nicer and it's uh there is much - Make Automate
Less opportunities to create errors and of course like i was really open to just optimizing the scenario what i mean by that so i i'm like sometimes instead of you know all that iterator aggregator functions and so on i just create a custom map that transforms my data to the correct data so they can use it further uh when it's better to create a custom.Application instead of using a ship request and i think i already told that it's almost always uh sometimes you need to just reuse the same request in different scenarios and roads so let's say you have like you created a scenario and there are like much of custom hdp requests you have much roads or you can need to use the same http request in different scenarios and you always what you do you're just copying this that's moral uh and if you need to make changes uh let me let's say you.
Need to change the end point or the authorization or anything so you need to make changes then all of your http models if you have a custom app instead you need to do that change only once in your custom application uh sometimes you need to modify the response data structure for easier scenario building right so let's say you make an http request somewhere and you get back an array or of values and or something like that but you need to convert it to a collection first or you need to drop it into some uh.
Like into some other collection and so on but you can do that using http request of course you can do something if you add some some mod modificator after that model but you can do everything and in this case custom app also helps you because using custom apps you can not only make that http request but also doing really different interesting things with the output okay then sometimes you need just some cover jackson javascript as already told about that.
And one more interesting thing that a custom application gives you it gives you the ability to make multiple requests within one module so you can for example have a custom let's say you have an application where you need to log in first and then to make the request itself right that's really often use case so uh most cases what you do you add like two http requests the two http request models right and so on and so on but that always works correctly right so and in custom maps you can add you can.
Create a model which will do like one like two three five or even ten requests uh to to the to some end points and we'll will return back to you all the data from all that endpoints and of course it's better to use a custom app even if you want your scenario to look nicer and more optimized okay so yeah and the last one.
When you're so experienced building customers and it's easier for you to build one than to use the custom hp model okay uh i don't think that i don't use a custom http model at all i use it and really often but in most cases just to test some end point right so and and that integra mod works well with that endpoint but after i create i test it i mostly create a custom app already for it uh because it's really this if it's a simple http request it's a really five minute setup but uh for future i understand that if.
In any case i will need to do some customization i i will be able to do that in the custom app okay so and before uh basically before starting building that custom application i prepared some present presents for you uh says this is my first webinar so first of all i prepared like a big text document like about that uh how to create your own custom application to trigger one scenario from another and then i also prepared like 10 free.
Consultations for everyone and everybody who wants to get a free consultation about custom application or integrator or anything you want so and you can find that in that qr codes and i can send also the links to the chat but i think now we can start already the most interesting part that you're waiting for so let's build something uh let me just see the messages.
Okay i can see two two one i think that mostly choose the one
The one the first one no no no no no the second one mostly they choose the ball but i think the second one yeah so unfortunate like if you have time of course i'll be happy to show you both but basically for the first i prepare the big document right so and you all all of you will get the document and if you have any questions about that you can just connect and ask me so i think it's even it's better to show you the second one because you'll get the person anyway.So let's start building that so dynamic connections i think it's a really interesting uh question for really much of you as i can see much questions about that how to create dynamic connections to air table or to any other application and today we'll i will show you how to do that so i have a ready-made app here so i won't but i won't show it to you i will create a new one instead so creating a custom app you always.
Start by clicking this button in your my apps menu you add a name a label description and something okay so and i will just name it webinar too because i have webinar one custom up okay and let's call it well i will i don't want any description right now i'll just choose the color let it be black okay and of course you can add some logos here just here you can add some logos here.
Like your own logo locate your application or you can just name it step on or however you want but i will just make it black for now okay so now i click save uh let's search for that workshop let's see it's okay where is this yes here it is okay so i think i think i might start with this.
Base and to explain you basically what that json json is so basically uh integrated custom application uh is uh is really like like a bunch of json documents that you need just to structure in the right way and for each of that like basically tabs how to correctly structure your json c document uh of course you can find the the most uh answers in the documentation here okay so today i will tell you basically the basics how like what that what.
Everything means uh but in any case uh everything is in the documentation so and first of all we can see the base tab okay so this is the first section that you see when you create a new application in this tab you add everything that is reusable in all your models or web hooks right so what i mean reusable like for example the base if you're familiar like with apis and how to make api requests to some endpoints you all know that uh basically.
Each each application api of an application has some base url right and then there are some roads after so and here in the base you just add the base url of that application so you don't need to copy uh that all over all your models uh what else can go here of course the authorization right so because you need to when you create a request you need to authorize it uh like almost always and you can add that also that to the base so you don't need to copy that through all your models so.
For now i'll just go to i prepared a really simple table here table i'll call it contacts leads and i have really like three records here three simple records uh i open my payout table documentation api documentation if somebody doesn't know you can go under help and then api documentation and you will see basically the full layer table documentation and i can see my elite table here and i.
Can see that i can list record retrieve create update three and so on and so on and first thing i do is just try to find out the base url of that api and in this case it will be https.com v0 so i just go back to my application and replace this example with this one okay that's great so now i need also to add some authorization right and according to airtable api my authorizations would be like i need to add some headers with authorization viewer mirror and then my api key uh.
Don't worry that i show the api key to all of you because i created a fully new ir table account so even if somebody will get access nobody will see really interesting anything interesting there so i'll add that headers to my base also so i don't need them to to add that to each model uh and don't worry i will show to you also how to create dynamic connections okay soon [Music].
I need to add that to headers i'll open the headers object and let's copy this first okay so now i basically i added my uh everything i need to make an error to make a request uh one thing i change here is i change here the api key because i don't want just to know that constant api in most cases i want the users to have the ability to create like.
Dynamic con like connections right so using the connections drop down so for that in integrator is special directive and you can also as you can see uh add dynamic values here if you add just the same i call it json json tags as you do that in integra mod and to access the connection you add you start with the connection word and then add the name of your parameter okay uh when i create the connection i will explain to you in a bit more.
Details so for now i just added a dynamic connection here okay so after you create the base uh you need to create the connection basically so you need to give the ability for the user to create to add their api keys or any other way so i go to the connection tab we click click create new connection and name it api key as you can see there are much types of connections that you you can you can use.
And the interval prepared really much uh red ready made connections for you so it's really easy to to create even an os too but your table uses just a simple api key so i'll just choose that one and here we can see something really similar as in the base uh with one simple exception uh basically this in the connection uh this request is used by instagram to verify the connection right so when uh whenever someone adds the api.
Key and clicks add uh integrate makes a request to this url to verify it so in most cases it should be something really uh it should be an api endpoint that is the same for each user for example in some cases it can be like example who am i sometimes it's like users current user or account so basically anything uh like that can allow that allows integromat to verify that connection but unfortunately air tables does not.
Have anything like that because uh every connection has like to make a request you need at least the app id and the table name so like we are not able to do verification but that's basically fine if you are doing for yourself don't do it if you will publish it but for just for yourself you can just delete this and then i need also to specify some parameters so what are the parameters and you will see that parameters in all your models basically and also in the connection so basically the parameters tab you you're adding all the fields.
That you want the user to be able to fill in okay so in this case and this is an array as you can see an array of json objects that has the second the next keys it has a name it's a it's a required key it has a type and you can specify different types here it can be text dates so for example if you want to retrieve the user uh just to uh just to add dates or email anything uh is then it has a label this basically.
Is just you know just to show the user the field in a bit nicer way and either it's required or no okay i will show it to you like how it looks in [Music] in the real application with later for now i'll just leave this one simple parameter because i don't need anymore and i'll just be sure that my connection name so this parameter is the same as i used in the base okay yes it's the same so basically then when the user adds.
Then fills in that fields when it creates he creates a connection you're able to use that uh in your requests and to be able to use that you need to add this connection and then the parameter name in this case it's just api key okay that's fine um i don't have any that was here so i'll just go directly to back to models i think like most of you know what that box means it's basically just um also the ability to create grab hooks like and you specify here how the laptops are attached or detached from.
The application airtable does not have that box so we just won't create that right now and then the most includes part interesting part the models okay so and i will try depending on how much time we will have i will try to to create as much more rules as possible uh for now i'll just create a real single one simple one it will be an action so for example i want to get let's say i want to get a record by its id right.
And for that i created the connection the api key connection this will be a read module and i'll name it here table get your table record by id but that's not and the name should always start with small letter.
And does not have spaces okay uh i'll just add the same description for now okay i quickly created my first model and as you see like basically it's uh it has similar structure as the base it has url it has method it has us so it means query parameters body headers and response so basically in this case the url is uh the end point where the request will be.
Set the method is basically the method of the http request that you you're sending and of course like uh if you did like some hd requests you know that it can have post get or anything else uh so the qs are the query parameters that you need to to specify to send that request then the body some if you need some headers and the most interesting thing is the response.
Right so this response directive is responsible for that how you how integromat should output your response right so let's say you're making an http request um i can even show it to you here i prepared here also just as it's a simple http request that gets a list of leads and if i run it i can see here it's data under data then i can see a records array right so it's an area of records.
So um and i know that if i make a request to your table i will get an array of records okay and here i can specify basically how i want that to output for example i want to output it and drop it into some results result object in this case um i will not have only like data records in this case i will have data result and then records okay so let's start basically building this uh so i will.
I will take my api key app uh of course i added that as static text right now but of course you can also make it mappable for now let's just make it more simple i don't have anybody my method will be get i don't have any headers uh and of course you can also delete that but just to show you i will just leave it for now.
Okay great uh basically my first model is ready it's ready to test uh one thing i will just do i will just delete these parameters here and we'll get back to it a bit later so my model is ready to test and i can refresh it my scenario and try it out i'll enroll here i search for webinar and as you can see.
My application is already available here as any other application and i have the one single model that i create get error table record by id uh okay i think i need also that the id here like that uh so as you can see i don't have any connection right now and if i click add i'm able to see that one single field that i created previously in the connection so just to show you how it.
Works i will quickly create another field there i will go to my connection mappable param uh sorry not action but connection api key parameters and let's say i need not only the api key from the user but i need also some other fields.