Creating New Instance Scan Spokes - Live Coding Happy Hour for 2021-06-03
[Music] so [Music] hello and welcome to live coding happy hour here on the servicenow developer youtube channel thank you for joining us ma you know i almost went right into my introduction that's not very polite on this show we do our guests first so let's start with our introductions uh brad we forgot to plan it we did not plan my name is brad tilton i'm a developer advocate with a developer program here at servicenow i have been developing on the platform for about 12 years and i am excited to be here on our first show back from our knowledge hiatus see what happens when we take a few weeks off we need to be retrained and mark why don't you introduce yourself um mark mark rudolph working for queen technology quintet queen technology is a servicenow partner based in the netherlands and i'm now a platform architect since this year and now about four and a half years in two serves now and before this i was working in orchestration very nice very nice and i don't want to get too far into this anybody who's just watching this for the first time or joining us and wondering what is going on here we are going to be doing some live non-scripted work on the servicenow platform so you can see how we do it what problems we run into how we can connect the dots we've invited mark in as a subject matter expert on today's topic i'll let him do the introduction on what we're going to be doing today because i forgot no i i know it has something to do with instant scan the man is really doing a great job at branding himself as the expert in a few of these functional areas so before we get too much further let's introduce our peers in the same order all right i think i think i had this on the last live good but this is maybe my favorite beer at the moment avery brewing tweak it is a stout with coffee aged and bourbon barrels of course excellent um i've got in my aussie stubby holder and uh cooper's payload um yeah have had it before this is also the the last one from the from the batch and i'm i'm i'm waiting on my new aussie base actually so uh yeah i was gonna say i'm pretty sure cooper's is an aussie beer yes yeah and what style was that is that is that a lager or is that a it's a it's a paleo okay yeah you did mention that i'm just a little slow today for whatever reason uh they're wondering if you're going to introduce all the beers in front of you no it's not that kind of a day if we were doing you know like oauth via script yeah then i would be you know hitting each one of these real fast but today i am going to be pulling out the dragon's milk uh i believe you had this on andrew's goodbye party on our not so happy hour last time so this is one of my top rated beers of all time i really really enjoy this it's been a long time since i've had one so we'll see what happens also let us know what you're drinking in the chat if you are drinking along with us and now over to mark to tell us what we are going to be doing today um yeah we're going to have a look again at the instant scan and actually trying to have a look if we can go a level a level deeper like we know we've got instant scan and maybe you've guys been building some some checks and performing some scans manually on instances but what if you want to automate instascan or yeah can you embed instant scanning your way of working so that's actually what i'm i want to to have a look at and um i've been looking um at scripting instant scan before on your own instance i've also written an article on that and that works fine but now also what if you want to perform an inter scan on another instance for example because you're working with agile development and you've got stories or sprints and sprint finishes and maybe instant scan should be triggered at that moment and obviously there are lots of different cases for every company but yeah just let's have a look if we can automate some things i did start with this a few weeks ago there was a create a toolbox episode and andrew barnes showed an apis page for ci cd and i noticed on that page it said healthscan so i thought hellscan what about instascan so i immediately jumped into the instance rest api explorer and i saw hey there are multiple apis available so i started playing with those and then well then basketball players came around so i didn't do anything in the may of month for for servicenow but now i've got time again so yeah let's pick up again i like it so you verified there are rest apis are there also scripting apis or what's our goal here are we making spokes or something or yeah it's like i i would like to show the rest apis first and then we're going to spokes indeed because yeah it's nice to have rest apis and that we can use them in business rules or scripting boots or whatever but yeah can we actually use them within flow design actions or yeah spokes i know there are three out of the box spokes available but actually not the spokes that i'm after i want to go a step further so yeah let's have a look if we can create those spokes today and hopefully tie them to a flow already and yeah see if we can get results and scans going on another instance so yeah that's that's the yeah the goal i guess i'm ready if you are okay um let let me start doing the screen share chuck you want to give us a real quick rundown on what instant scan is well mark is starting absolutely so instant scan is something that came out in quebec it's uh been a long time in development and growth i'll say it started way back in probably 2012 was something we used to run internally uh called uh configuration what was it called back then ace right when an ace well ace ace was one of the outgrowths of that okay this thing started as a bunch of scripts that you know some of the the senior technical consultants would go and run on a customer's instance to make sure they were observing best practices and avoiding bad practices that could cost them with upgrades and performance and usability and a number of these lenses that we could look through to to really get a good introspection of the work they had done because we had heard from customers that hey it's hard to upgrade well stop messing with the dom in your client scripts and you know that's easier said than done so the the vision since the beginning was we want to put this in the hands of our customers and there was always some pushback especially from partners who were saying well what if i did an implementation in 2010 that didn't observe the best practices and now customer runs this scan and says hey come back here and fix this and it took forever it really took forever it lived on high for a few years prior to now called healthscan and you could get support to trigger this and we still had the the customer outcomes or professional services as they used to be called the given the ability to go in run a report and walk you through the actual it was an additional service instead of just saying here's your report it was let's talk about what our remediation steps are for that well now you've got this in your hands and as mark has shown us it's not just for the configuration i believe when you were on creator toolbox we were looking at ways to inspect the data to make sure that you know all users have a manager for example so if you ever hit an approval it doesn't fall through because oh you don't have a manager it's automatically approved like no no no no no no so you can introspect your data integrity as well which i absolutely love i'm keeping that you know wheels are still turning on how we can uh i can employ that in various pet projects that we have around here so that's my 25 cent tour of instant scan awesome thanks yeah totally agree on it yeah let's share um do you see uh my servicenow instance now i see your performance homepage dashboard thing okay yeah you're gonna give us like one level of zoom maybe another one okay it could be the city of new york i'm not sure okay um so yeah the first thing i just wanted to show is what i uh already told about the dress apis that are available and well obviously you could go to the docs or the developer side but i'm just jumping into rest api exposure immediately um so here it is and if we change the namespace to [Music] the cicd one then you'll notice that there's an api for instance cat and that's really really really nice there are multiple apis here most of them you get up and running pretty quickly for example if you want to execute the full instance scan you don't have to add any parameters at all you can just run it and that's it so um we'll just hit send and it's already it's already been performed it almost feels a little wrong to have a post with no parameters no no i guess this is also the the most simple one um but yeah then we also got a point scan um that's if you for example want to do a scan on a business rule or a specific client script so specific objects and for that point scan you just need to give the table name and the ccd that's that's it also this one runs immediately we've got here the progress id that's maybe one you want to run latest because that one would give you an url and a url to the scan findings etc but then we come across these three and these are also the ones i'm actually after for um for flow designer and creating spokes because for these three there are no spokes [Music] well getting the combo scan yeah the highlighting is gone getting the combo scan up and running is pretty easy but the ones for the scoped apps and the update sets those need a bit more attention so i'll just show those so for example i've got here the one for the scoped apps so you would just provide a sweet sysid so let's have a look for a certain suite and i'll just take the best practices right i did notice that one was false i don't think i don't know if that's going to matter but oh uh just to be sure this one yeah because this is my uh kinda production environment so that's why i put the best practices on false and my thought is a bit like because we didn't mention that instant scan you can also learn it on your production instance it's not limited only to development right but in my mind like doing checks on for example business rules before business rules which contain current.update you're not going to scan that on your production instance you're typically doing that in your development instance but scanning if users have an active manager yeah it's not that useful to do that on a development instance it's more useful to do that on a production instance so there's also some yeah differences in in that yeah i i could see if you had um like you were scanning some reporting stuff like you know reporting can greatly affect performance so that's probably something at some point that people will want to scan and that's the thing you probably scan in prod as people are building reports there yeah yeah yeah for sure um let's paste this society in and if i'm here to see the response payloads yeah because if i so now you'll get an error and well then i do need to go to the to the docs page or the developer site so let's open the apis and it's pretty well described so we were looking for the scope oh scoped apps i don't know why it's plural but yeah that makes it sometimes confusing uh but anyway this has some really good documentation this has been updated in april i think it wasn't this documentation wasn't around when quebec came out but a month later this got updated and yeah this is really really good information um we are looking there it is this one yeah because this sweet sis id we've already got but we do need this part so oh so you can scan more than one scope at a time yeah yeah indeed yeah um so we need to have this in the request body so let's go back and we can just add it here there was one thing i noticed um you do need to add some curly braces it's not on the on the docs page but you do need to add them yeah right else it won't work and now we can just yeah use one scope ccid or multiple i think we can just do global as well and global the global society is just global i guess i believe i don't know what the story is behind that but anyway it it's probably along the same lines as the cis id for someone forgot to mute his phone apologies i didn't know if your your beers were playing music now the uh the the sys id for the default view on ciso sys ui view is actually default so now there's two that i know two societies that are not 32 character hex well okay global is the cis id for the global scope and negative one easter eggs don't make the society negative one that creates a new record [Laughter] um i just executed the rest call with the body that i added and yeah it already returned 200 of course now it runs on this instance so if i would go to the results it should have executed and yeah indeed we see this one great this is the most recent one is the response payload just the progress id um yeah uh let me check let me check what does it look good there's lots of goodness so there's progress yeah because you actually need this progress id so you can trigger the other api which is broken id yeah because we've got this one because it's happening asynchronously you don't know whether this is going to take two seconds yes indeed yeah because some uh it depends on the checks you've built but some checks might just take five or ten seconds but if you did a lot of script checks uh yeah that are script only checks or linter checks those can really take minutes so then it will take a lot longer but if you just got the the table checks then it will only be some seconds but yeah we get a we've got a code sid and you could add use that progress id with yeah with the get scan results and then you will also get um url for the scan findings and etc so yeah then you could even do more but yeah with this we can already trigger a scan so this is already good to know in this case we only did one scope but obviously you could just expand this another yeah cis id or something uh and then it's uploading and actually this is almost the same for the update sets it it's just i guess update sets this id's from the top of my mind okay but similar technique dorian had a question you would need to know the sys ids of the scope if you're scanning on another instance um yeah so you would you might want to do a table api to retrieve those from sysunder app or something the um the other option is most of the time let's say you're you're doing this from dev to scan prod for example your apps are going to have the same societies across those instances so whatever you find locally should work most of the time yeah i think for the scoped apps indeed in most cases the cis ids will be the same it will be a bit more difficult if you are going to scan the update sets because those are still in development yeah only on your development instance and then not yet on your production instance so you if you would want to scan update sets from your production instance yeah then somehow you would need to get your hands on the yeah this is id of the update sets i have seen customers building apps or adding tables or fields which which contain the updates at ccd so that could be a way of working but that will also really depend on yeah every company because the way of working is so yeah so different for every company yep yeah it does feel like if you're so if your use case is that you're using agile dev and broad and you want to trigger these based on that you're probably already tracking those update sets you know it's it's fairly straightforward to build into agile development the ability to create update sets in dev anyway yeah so i think for this use case you probably have that data yeah yeah i think that's fair yeah um so with this knowledge and and getting the the scoped apps um api up and running yeah let's just jump into flow designer and have a look if we can build some spokes um i already saw that there were there are three out of the box folks um which yeah look pretty okay uh so also with the with the outputs so i don't have to create the spokes completely from the bottom up i can use the out of the box once that also helps me a bit because i actually haven't built a spoke yet myself um but that's interesting also to see how much effort it will take we can help you there no guy doing an integration series that should be helpful [Laughter] it's not going as fast as he'd like so like these are the three out of the box spokes available and again for yeah the progress id to to get your scan results uh we've got a spoke to execute the full scan and spoke to do a scan on specific objects like a business rule client script whatever that's the point scan but we don't have out of the box spokes yeah to trigger a scan for certain scoped apps or update sets or even a combo record so yeah let's have a look what we can do there let's just take this one i think the base of these are already pretty nice like well we've got the inputs pretty clear the outputs are already here so um yeah this already looks pretty nice the only thing we would like to do different is yeah what's here in the in the rest [Music] step so yeah we'll just go and duplicate this one somebody is a lot more industrious than i am they're breaking out their outputs into individual fields i just usually return a complex object and say here i'm done you parse it um so let's just copy it and it would be the instance can execute let's do the update sets check the application list because ideally it wouldn't be bad to put this action in with the others is the continuous improvement blah blah blah in our list yeah yeah it is yeah because i think one of the things uh which makes the definition of a spoke is also that it's in a scoped app [Music] an object or an action which you can run separately from anything else i guess yeah basically a spoke is a scope and the nice thing is if you name the scope with the ending word being spoke it will recognize that when you do your action and list pull down inflow designer we'll leave off the word spoke but you've still got that description to go oh i know what this scope is it's a spoke this is really sounding like dr seuss at this point but uh that's that's kind of a nice nomenclature naming standard if you put spoke on the end of there it will strip in the menu but you still recognize it in your list of applications as a spoke okay um let's just copy this one so this can stay the same we don't need this one anymore i think i've zoomed in a bit i think you did [Laughter] the hazards of demos uh the instance url yeah and then we need uh request plus oh here's the plus sign we need the update update set don't do what i did on tuesday and spell it wrong i'm wondering is it update set or is it update set um let's have a check on the docs page well you don't have to name your you know you don't have to label your inputs the same as oh yeah so yeah i often look at that and say how can i make it a little more user friendly so i make it mandatory i guess that's already for this let's go to this one instance scan that's the same we do need to change this one because that's i believe what i just copied let me check update sets oh yeah update set and the sweet cis id oh we also need to provide the switches id okay that's also a good one so i need to add the what's the plus sign here a sweet sweet d society and okay that so we've got and then i hope we can do can we do this yeah i think so like this yes if the base url is correct you can just add that on yeah or maybe i should say first always a good idea always a good idea we can get no argument from any of us [Laughter] sweet don't see it popping up now [Music] i always agonize over the inputs because i'm trying to figure trying to try to imagine how people would use this what inputs they will be sending me should i ask for a record should i ask for a cis id should i ask for an array it's good to put some thought into these so now we've got the resource path but we still need you need the query parameter for the sweet society right yeah but we cut it we got that one already here i guess so oh you could oh yes that's a that's a path parameter we need um what was it this yeah we need this parameters there it is so that would be something like this um not sure if we also need to do but our will see yes you do because that's how i tested it just a few minutes ago with the rest api explorer so that's what makes building integrations with within flow designer so fast i think you need some quotes around that though um you got to close your data pill yes but then oh if they send you several of them that's not going to work um can we you may want to put that into the pre-processing script then to oh maybe just stringify or to you know to turn it into that right format and then send the data pill from your preprocessing script into the payload or can we also use the the functions on this to maybe what do we have we do have some string and array stuff um what do we have split it into an array oh that's a nice one yeah let's just separator comma yeah and what does it return let's just try this this is why we have live coding happy hour um to test oh we don't need to publish to test i guess yeah we just test um so now i actually want to trigger on an other instance what was that new york that we cheered like yeah i can test in action so let me check this one now i need um update set where's that i always have a notepad or a text editor of some sort with all these magic numbers with sitting around yeah might always end up in different like i'll have one in one note one in vs code one and forget where they are i used to love text edit but now they force me to upgrade but text edit you could kill you could shut down the whole application and bring it back and all of your unsaved work is still there like i had 50 scratch pads of cis ids and little test scripts i don't want to save my work i'm not that committed to this spread the sublimes still do that i used to i used to use sublime for that all right um i just grabbed some cis ids this is the other instance so let's run it now it's um hopefully you set up your credentials and connections yeah i've done that uh before the show uh just also the user so that would save us uh five to ten minutes so that's one of my upcoming videos i've got it scripted i haven't recorded it yet but the whole connection connection credentials and aliases and using them to set up oauth gotta get those done now what does it say method failed okay a 400. so what did we send it do we know it failed the request payload roll up a little bit we have a guess that the resource path was incorrect oh okay maybe um the resource path okay basically go back to the docs do we need uh sweet scan in the name oh the i think we do instant scan was the base url of all of them i think you're right sweet scan yeah after instant scan comes sweet scandal yeah extra points to dorian oh sure yeah that's good instascan sweet scan [Music] and then the nssid and then the update set or not i guess so yeah update sets okay so yeah okay um so let's save again you have to ask the right questions to get the right answers so otherwise the computer just goes what and uh update set and you can set defaults here yeah man i knew i knew andrew was going to chime in with it yeah you can set default so you don't have to do those every time okay on your inputs you wouldn't want to send it to uh production that way but that'll save you some testing time definitely i default to everything to production [Laughter] just kidding don't do that if yeah okay so what has it done now 200 100 hey that's a weird that's a good sign well okay let's just look at that instance let's look at the results and okay that's mine here it's now not the third of june anymore but the fourth so yeah it's it got executed and we've actually got one finding so that's good so yeah we've got the spoke already open winning so so the update set um the split we did and everything that worked i don't know send it three societies and find out yeah okay okay i do want to travel in the dice to make sure yeah so let's have a look for another update set and just grab this one copy this id paste so now we've got already oh these are the same oh that's not good this one yeah okay um i hope it runs else we should have sticked with the happy flow but we'll see ah 200. wow i'd like i'd like to see the the request oh yeah sure yeah details on there so there's the results yeah did it run both of them yeah that's a good one let me check yeah update set wow yeah this one yeah well done well done all right phil says take a drink i agree oh yeah don't forget man okay so this went pretty quickly and this is uh this was about the update sets this is also together with the scoped apps the two ones that are the most difficult ones because without the docs you won't get this up and running um but yeah if this one goes that quickly we could already duplicate this one and get the scoped apps one upon winning so but anyway um check what did you want to see from this the um the request just the details of the request in that step what's being returned or yeah scroll down where it says steps the step log and let's look into the step two so there's your base url as it was spit out and then the request body had update sets that's interesting it says com dot snc dot c object complex object that'd be a little hard to debug wouldn't it but that's an array i guess yeah that's a bit hard for us but it did execute the correct ones yeah yeah as long as it worked yeah it is a bit strange nice creative use of a data pill pump function so just to just a step back this use case is basically like hey um i have a story i've completed it um there's an update set in my dev environment that's and and it's all done i close it and then to cloud when i close my story i'm going to run an instant scan against that update set to make sure that it follows all the best practices before we deploy it anywhere yeah that that could be one of the use cases um it because this is yeah in particular uh an update set but if we are doing the the scoped apps scan then it could also be like hey you're closing your sprint and maybe you want to scan your whole instance at that moment so yeah that's also you have to you do have to think about your way of working and how you are going to embed it in your company um but yeah there are multiple things to yeah think of like you're mentioning uh a story which goes to ready for testing or to complete and then a flow shoot trigger which executes this or maybe you're even working with scrum tasks and you've got a scrum task automated code review and once that task is being created or gets into a certain state that the flow gets triggered so maybe that's also a good one that we just build a small flow now because we can actually use this yeah spoke i guess just publish it um yeah something i thought about for the uh just using the api it wouldn't work with the the spoke but you know if you had uh if you were working a scoped app and you made a git commit you could use like a github action to then trigger the instance scan based on that api right like against the scoped app yeah yeah well that would be interesting as well yeah let's just create a small flow now trigger update set scan uh yeah just this let's leave this as it is for now because what we want to do for example if oh go away um a story is being updated i guess i've got a story on the instance already like for example we have this story and this story well it's assigned to the service now devops team and it's a type development and if this moves to ready for testing then the flow should kick in yeah i like it typically we would embed the the actions into a sub flow and then trigger those from a flow because they're a little more repurposable in a sub flow and you may need to add extra steps oh yeah outflow to do branching and whatnot and yeah also allows you to call from like ui actions where you need to pass inputs yeah yeah and certainly also when you already got something for your ci cd or your whole pipeline then it would be easier to embed that subflow i guess so yeah we only don't have [Music] update set field or whatever here so i'll just paste the update that suicide within here for demo purposes yeah yeah i feel safe um because yeah like i mentioned that will differ for every company how you yeah go go with this so i recommend reference fields over string fields that you paste societies into there's a couple of places within the platform that servicenow developers have built out what were you thinking a society in a stream field what so for story and the assignment group should be just now devops i guess yeah [Music] and type quest type of here yeah is development and state changes let me check of changes too there you go okay yeah now the only thing might be that you have to think about the trigger because if you do once and the story would go back to work in progress and then again to uh ready for testing yeah the flow won't be triggered again but yeah that's more to think of uh for your way of working i guess um not that any of us have ever been stopped by that spent 30 minutes going why won't this run oops so is it this one yeah this is the one we just built so we'll just give the instance url oh and this i did the description field i believe yep so we should be able to drag it yeah then yeah the sweet sis id that's then the only one that you're putting hard coded here that's also something to think about in the future because yeah putting a hard-coded cis id there i'm not sure yeah i wonder if you would take uh like your sub flow would have maybe a reference to your test and then your flow would just pick that or to your scan and then the or the sweet and then your flow would just pick the right one that could work yeah because you're you could have a subflow that does this and uh right and it's just running any updates that scan and then your uh your flow could you could have multiple flows that run different types of scans on the update sets yeah pick your update set pick your tweet and i'll do the rest let's just see if this already works um yeah we don't have that much time today but i guess normally you would also add more steps to this like hey we get some feedback from the results so maybe we want to write something to the story or the scrum task or maybe we even want to add another action to get information about the scan findings um so that you could really enrich it um this would be a great place for a do until also because you want to check that status at least once until it's time to make sure that your progress is done so you can take advantage of the one that's already available out of the box yeah that's yeah that's also an interesting one to think about because uh it could be that some of the scans yeah will be running for five to ten seconds but some will also really be running for 10 minutes so you should be thinking about because yeah the do until you also do a timer or something in between like well you have to check it after a minute again or something right that's a good point i often forget that you just don't want this thing hammering the api every five seconds are you done are you done are you done are you done um but i've activated this small flow uh let's just reload this one let's see if this is running if we change the state to ready for testing let's see if it says it's in progress yeah obviously because it's running asynchronously asynchronously yeah i didn't change the trigger so ah still waiting come on okay there it is got me nervous there mark well i've got a check actually which checks if all proces all queues are being taken care taken care of so that's a nice one also because if one of the processors for flow design is not running one of the schedules then yeah you can wait a long time but it says 200 so that sounds good let's go to this instance complete yeah again well okay no no findings here unfortunately but uh yeah it did get run and also on the update set so is the finding count returned as part of the status when you check the progress um no um uh because this is asynchronously so you will only get the progress id right okay okay so you would have to check the progress api yeah to get does the progress return the finding count or what does it return we could have a look at that one um i thought we had the action already open somewhere or we could open the other we could open the action yeah we could just open the action indeed because i don't think don't you wish we had tools like this ten years ago oh man yeah this is really like oh i should look for actions it's really like instant scan and then also adding a next level like like these spokes i think this is this is so huge this is so valuable yeah yeah because instant scan should be really the core of everyone who's doing development who's configuring doing customizations and then if you embed this in your way of working yeah that's we don't need to test we can just look at what the well go ahead yeah because we can replace the output variables yeah url and this is also a really nice example i think about flow designer and spokes like how quickly you can actually build such an integration it's it's actually crazy yes because now i i just opened this action i just filled in these two mandatory fields and this should already provide yeah a working yeah 200 200 and what does it say so think about findings or was it in the payload somewhere the response ah okay there we are so what does it is status 2 what's the status 2 so oh it gives the result id so then you could go and query for that yeah okay so yeah this is the result and the result url yeah so you could do a lookup record on any of this stuff and get what you want nice okay then make decisions if you had findings okay because what does this then it's more more generic and more useful than i would have made it i our developers have much better design discussions that i have with myself i'll never do that oh i won't need this but if we yeah two more parameters we can make it really useful [Laughter] i guess we need this one then that'll take you right to the record and that that's just a breakout of what's on the line above yeah this is already the same so we really need to go to the to the result here but i guess you could then just use the normal table api that's already available yeah you could use the table api or you could do a lookup record and say give me the record on the result table where the sys id is oh yeah results.id lots of different ways you could deal with that and say if the findings is greater than zero blah blah blah yeah and you could you could send an email to the owner of the story and say hey here's your results it was more than zero so go take a look at them with a link right to the results yeah yeah something went wrong you review it yeah because obviously we now only triggered uh the scan and nothing is done uh in this story or in the sprint or no notifications indeed but right yeah so that would be the next step but now we already have got the first part actually working and that we can get trigger scans on other instances and with spokes we've created one spoke ourselves it's the yeah the most complex one so we could easily duplicate that for the scoped apps also yeah that's that's fun boy that gives you a lot of things to think about in terms of automating your devops yeah yeah in a short time so yeah that feels good i call that a win good good ending point um yeah can we show more or no yeah i think this is it for now were there any questions i didn't follow the the chat based on the rest api can this be triggered from jira yeah and my comment was like anything that can hit a rest api can trigger all these things because we have the api so yeah i think you could trigger this from whatever system you're managing your development through or like i mentioned with you know the github actions any you know development pipeline that you're using most of the time those can hit a rest api so yeah i think you could this is pretty uh versatile in in terms of how you can trigger it there's also good old-fashioned scripted rest apis too you can always write your own endpoint and have jira hit that or anybody hit that and then run whatever script you want maybe it's a triggers a flow or a sub flow yep or it's a uh you could uh you could create a flow that has a rest endpoint as the trigger what do we rest api trigger for flow and then use your flow to orchestrate all these things so flows on on rest apis on flows yeah ouch the beer is just shutting my brain down on that one you went too far over the top i had a venn diagram or something okay um i think we're yeah i think we're kind of at time here so yep kill the screen share mark okay let's get you to bed so stop the schemes screen share yeah very good thank you mark that was that was a lot of good insight like you said we wanted to go a little deeper into the instant skin stuff we got a taste of some rest we got some uh integration hub building custom actions spokes a lot a lot of ground covered but all well within at least my interest level i don't know what the viewers thought of this it looked like the audience was pretty pretty into it uh i forgot to mention earlier that we have moved this to thursdays for the summer time uh servicenow has graciously granted us friday afternoons off and when they made an announcement last week brad and i looked at each other and said what are we doing with the live coding happy hour so we have moved it to thursdays a little bit later time sorry all the people in emea uh you're just gonna have to sleep in tomorrow morning or something but appreciate you joining us live and if you're watching this afterwards certainly don't forget to like like subscribe and turn on the notifications like you normally do so let's go around and rate our beers fred what did you think yeah my avery tweak uh is probably my favorite beer at the moment so i'm gonna give it a 4.75 and uh and yeah i think on the timing i was gonna say that we moved it to this time and made it a little eight later just so upside down andrew it would be more convenient for him he's had a chance now on his friday instead of his saturday but but yeah that's i was gonna try to play that off but i guess he said earlier on live coding happy hour is actually on friday this week [Laughter] mark how was your coopers yeah my cooper's paleo um yeah it's a good one i think for being a bit later yeah it's a bit lower score but because we had success because we i think we achieved a lot in a short amount of time which again is uh really interesting to see with flow designer that that's possible in so little time so that's a success so i guess 4.75 oh very nice well i i have one of my favorites and i forgot to show this i haven't finished because this is 11 so i'm i'm nursing it uh i may be doing karaoke tonight who knows and uh dragon's milk from this is a bourbon barrel aged stout from new holland brewing company always a five in my book oh we did good we did good yeah some good beers thank you mark if there was a bonus factor i'd make it 5.25 but we don't want to break the scale and you know trigger some flow on untappd that bans us or something thank you everybody for joining us uh brad do we have any announcements i mean we've moved live code uh we will we are starting back up though we'll have regular live code and creator toolbox shows we're gonna go ui builder on creator toolbar toolbox on tuesday morning uh friday afternoon i think we're gonna have a special guest and do some service portal thursday and uh thursday afternoon wow yes thursday afternoon we're gonna take one of my projects and uh yes we have a special guest coming in next thursday afternoon for live code yeah so so we'll we should be hitting uh tues the tuesday morning and thursday afternoon cadence uh all summer so sandwiched right between our live streams we've got another episode of breakpoint coming out on wednesday so watch for that nice thank you very much everybody once again for joining us and we will see you again real soon if not sooner all right you
https://www.youtube.com/watch?v=DeZYbaaejfg