Microsoft Flow & Microsoft Graph – Automated processing of information intelligently – CFS3009

ABOUT THE MICROSOFT FLOW WITH MICROSOFT GRAPH API. HOW MANY OF YOU HAVE USED MICROSOFT FLOW? AND HOW MANY OF YOU HAVE BEEN USING MICROSOFT GRAPH API? A LOT. AND HOW MANY USED THEM TOGETHER? ONE, TWO, OKAY. SO MICROSOFT FLOW INDIVIDUALLY AND WE LOOK AT IT MICROSOFT GRAPH INDIVIDUALLY, WE’RE GOING TO COMBINE THEIR CAPABILITY AND SEE WHAT WE CAN DO IN THE NEXT 60 MINUTES. AND I HOPE EVERYBODY WAS HERE IN THE MICROSOFT GRAPH SESSION AND THEY KNOW THE BASICS OF MICROSOFT GRAPH, AND ASSUMING EVERYBODY IS A DEVELOPER, I WILL GO AHEAD AND TALK ABOUT WHAT WE CAN DO. MY NAME IS A SHEIK, ASHISH, A MICROSOFT, MVP. I WILL BE TALKING ABOUT WHAT MICROSOFT FLOW IS IN VERY BASIC TERMS, TWO MINUTES, AND THEN MICROSOFT GRAPH, TWO MINUTES AGAIN. I WILL FOCUS MORE ON THE WHY, HOW, AND WHERE PART. WE WILL SEE WHY SHALL WE INTEGRATE BOTH OF THESE CAPABILITIES? ONE IS A NO CODE OR A LESS CODE WHILE THE OTHER IS AN API, WHICH IS A FULLY DEVELOPER — HOW WE SHALL USE THAT, HOW WE INTEGRATE THAT, AND THE MOST IMPORTANT THING, WHERE CAN I APPLY THAT CAPABILITY TOGETHER IN BUSINESS CASES OR BUSINESS SCENARIOS SO THAT I CAN HELP BUSINESS TO RUN FASTER, BETTER. AND I’M GOING TO KEEP JUMPING INTO DEMOS HERE AND THERE, BUT THERE IS A BIG DEMO IN THE END WHICH I WILL TALK ABOUT, WHAT’S THE BEST OPTION IS, AND IF YOU HAVE ANY QUESTIONS, FEEL FREE TO ASK IN BETWEEN OR KEEP IT IN THE END, AS YOU LIKE. LET’S TALK ABOUT MICROSOFT FLOW VERY QUICKLY MOVE FLOW IS BASICALLY WAS STARTED FOR NONDEVELOPERS, IT WAS PRIMARILY AROUND THE PERSONAL PRODUCTIVITY AS TO HOW YOU USE IT, HOW YOU AUTOMATE YOUR THINGS, AND THEN IT HAS GONE INTO THE BUSINESS PROCESSES. AND THE IDEA IS TO START YOUR COLLABORATION BETWEEN YOUR PEERS AND LOOK UPON NOTIFICATIONS AS YOU CAN USE THE FLOW. YOU CAN LOOK UPON YOUR DEVELOPMENT AREA AS TO HOW YOUR BUILD YOUR BUSINESS APPLICATIONS WITH POWERAPPS AND FLOW, AND THEN YOU CAN INTEGRATE APPLICATIONS AND SYSTEMS USING FLOW BECAUSE IT HAS — IF I REMEMBER CORRECTLY, THERE ARE 225 CONNECTORS AVAILABLE, SO YOU CAN INTEGRATE A LOT OF SYSTEMS WITHOUT WRITING CODE. AND NOT THE LEAST, THE PERSONAL PRODUCTIVITY. YOU CAN AUTOMATE A LOT OF PERSONAL PRODUCTIVITY THINGS RIGHT NOW, WHAT I USE GENERALLY FOR MYSELF IS TUTOR, SO I READ A LOT OF — USING THE FLOW AND PUSH IT TO THE TITLE TO THE TUTOR, SO I CAN SEE WHAT’S HAPPENING. THE LIST IS NOT ENDING HERE AND I BELIEVE IT WILL NOT END HERE. WE HAVE APPROXIMATELY 225 CONNECTORS, AND YOU CAN INTEGRATE THEM STRAIGHTAWAY. THERE ARE VARIOUS LICENSING MODELS IN THE CONNECTORS AS TO HOW YOU CAN USE THE BASIC, PREMIUM ONE, PREMIUM TWO, SO YOU HAVE TO LOOK AT THE LICENSE MODEL YOU HAVE BEFORE YOU USE THE CONNECTOR, AND VERY SIMPLY STRUCTURE, HOW YOU CREATE FLOW IS ABOUT YOU START THE FLOW ON A TRIGGER, AND THEN YOU ADD ACTIONS, YOU CAN ADD CONDITIONS, YOU CAN DEFINE LOGICAL CONDITIONING AND GRANTING AS WELL. MICROSOFT GRAPH IN SUMMARY — THEY’RE SAYING GRAPH — IT’S JUST TERMINOLOGY ON THE MICROSOFT GRAPH SIDE, THE IDEA IS TO BUILD A TAILORED CUSTOMER EXPERIENCE USING THE API, WHICH CUSTOMER WILL LOVE, SO WE’RE GOING TO FOCUS AS TO HOW WE’RE BUILDING THOSE SCALED SOLUTION USING GRAPH API. THERE ARE A LOT OF SCENARIOS IN THE GRAPH API WHERE YOU CAN USE THEM, SO IT COVERS WINDOWS, OFFICE 365, YOU CAN GO AHEAD AND LOOK UPON THE REST API IN WEB HOOKS, THEN YOU CAN CONSUME THE WAY YOU WANT, SO THERE ARE A LOT OF OPTIONS TO CONSUME THINGS. YOU CAN USE IT DEVICES, AUTOMATED APPLICATIONS, WORK FLOWS, THEN YOU CAN LOOK UPON A LOT OF CANVASS WHERE YOU CAN EXTEND THEM, THINGS LIKE WINDOWS TIMELINE AND PORTALS, AND MICROSOFT GRAPH PROVIDES DATA CONNECT, THERE IS A SESSION ON THE DATA CONNECT ABOUT CONNECTING THE GRAPH IN A SQL AND ANALYZING IT, DOING A LOT OF ANALYTICS, SO THAT’S WHERE THE ANALYTICS SIDE OF THE GRAPH COMES UP. AND YOUR DATA CAN ALSO GO INTO THE CLOUD THE OTHER FOCUS IS ON MICROSOFT GRAPH API, AND IN THIS, I’M NOT GOING TO TALK A LOT ON THESE APPLICATIONS NOW, AS THE GRAPH SITS ACROSS THE STRUCTURE, THESE ARE THE — WHAT

YOU CAN USE FROM GRAPH, WHETHER IT’S YOUR API, YOUR PROGRAM OR IN THE MICROSOFT FLOW WHICH WE’RE GOING TO SEE. SORRY IF I’M MOVING VERY FAST. YOU WILL GET THE SLIDES AFTERWARDS SO YOU CAN TAKE THEM STRAIGHTAWAY IF I CATEGORIZE THE MICROSOFT FLOW — MICROSOFT GRAPH API AS TO HOW YOU CAN USE IT, THERE ARE FOUR CATEGORIES ONE IS A WEB DEVICE, WEAPON APPS DIVE APPLICATIONS, ANOTHER BOX, TEAMS, THE FOCUS AREA FOR US IS THE BACKGROUND PROCESSES, THE BUSINESS PROCESSES AS TO HOW YOU AUTOMATE THINGS, AND THE LAST ONE IS ANALYTICS, WHICH IS THE NEW THING IN THE GRAPH WE’RE GOING TO FOCUS ON THE AUTOMATIC PROCESSES AS TO HOW WE CREATE BUSINESS SOLUTIONS USING GRAPH API. I’M GOING TO TALK ABOUT VERY — TWO SCENARIOS I’M TALKING ABOUT MICROSOFT TEAMS GOVERNANCE MODEL AND A USER ONBOARDING A MANAGEMENT SYSTEM. I HOPE EVERYBODY IS USING MICROSOFT TEAMS AS WELL, AND HAS ANYBODY NOT USED MICROSOFT TEENS MICROSOFT TEAMS SO FAR? ONE OR TWO. PUT IF YOU LOOK UPON THE MICROSOFT TEAMS CHALLENGE, AS TO WHO CAN CREATE TEAM, WHO CAN MANAGE TEAM, AND HOW YOU DEFINE THE PROCESS, AND THERE ARE A LOT OF ISV SOLUTIONS BUT AS A DEVELOPER, HOW YOU CAN HELP YOUR ORGANIZATION IF YOU HAVE NOT PURCHASED THOSE TOOLS. AND WE’RE GOING TO USE MOSTLY THE APP ONLY TOKEN SO THAT WE ARE PROCESSING THE INFORMATION IN THE AUTOMATED MANNER. WE DON’T REQUIRE USER CONSENT WE’RE GOING TO SEE AS TO HOW WE CREATE THE OBJECTS LIKE NEW USER, NEW TEAMS, AND THE CHANNELS. NOW, LET ME TALK ABOUT HOW IT BRINGS TOGETHER. SO, WE’RE GOING TO LOOK UPON THE EXTENSIBILITY OF THE MICROSOFT FLOW USING CONNECTORS OR USING THE — AND WE’RE GOING TO CALL THE GRAPH API. MICROSOFT GRAPH API HAS THE INFORMATION INTELLIGENCE AND THE INSIGHTS FROM MICROSOFT 365 WORD SO WE CAN ACCESS ANY INFORMATION IN THE MICROSOFT FLOW. IF I SAY HOW YOU START BUILDING THESE TWO CATEGORIES TOGETHER IS — YOU REMEMBER THESE PHOTO STAMPS, I REMEMBER THEM IN MY CLASS, THEY TELL YOU, ONE, TWO, THREE, FOUR, DANCE CLASS, VERY SIMPLY, YOU CAN MAP THEM BACK. FIRST WE’RE GOING TO CREATE AZURE APP, THEN PERMISSIONS FOR THE GRAPH API AND LOOK UPON THE REST END-POINTS WHICH WE NEED. THERE ARE TONS OF REST END-POINTS IN THE GRAPH APIs, DO YOU NEED POST, WHAT’S THE END-POINT, WHAT’S THE PARAMETERS REQUIRED THEN WE’RE GOING TO START EXTENDING FLOW TO CONSUME THAT INFORMATION SO BEFORE I JUMP INTO THE — LET ME GO AND DO THE STEP 1 AND 2 HERE SO I WILL SWITCH BACK TO THE DEMO MACHINE . SO, THIS IS THE AZURE AD. LET ME ZOOM AGAIN HERE. AND ALL YOU HAVE TO DO IS GO TO THE NEW APPLICATION REGISTRATION PROCESS HERE, WHICH IS SIMPLE AND VERY SIMPLIFIED NOW. IT’S NOT THAT COMPLEX AS IT USED TO BE. SO I’M GOING TO DO — LIVE DEMO APP REG. THE NEXT THREE POINTS HERE IS WHERE YOU WOULD LIKE TO ENABLE THIS APPLICATION AVAILABLE SO I SUGGEST YOU COOPERATE WITHIN THE DOMAIN, OR IS IT ANY [INDISCERNIBLE] YOU CAN CHOOSE WHETHER YOU WOULD LIKE TO PUSH THIS CONNECTOR OR FLOW OUTSIDE IN THE TEMPLATED SPACE OR YOU’D LIKE TO KEEP IT INTERNALLY AS A BUSINESS PROCESS. I WILL LEAVE LEAVE THE DIRECTORY HERE OR I CAN DEFINE LOCAL HOST BECAUSE IT’S GOING TO BE AN AUTOMATED PROCESS RUNNING IN MICROSOFT FLOW SO IT WILL NOT REQUIRE A DIRECTORY BACK, BUT IF YOU ARE DOING WEB APPLICATION OR REGISTRATION, YOU WILL NEED THAT SO MY APPLICATION IS REGISTERED NOW, IF I USE THIS APPLICATION I D. IN ANY PLACE, IT WILL KNOW THAT THERE IS SOMETHING REGISTERED IN THE AZURE AD AND IT’S TRUSTED, BUT HOW IT WILL AUTHENTICATE TO START USING IT, I WILL NEED THE API PERMISSIONS SO BY DEFAULT, AS SOON AS YOU REGISTER ANY APPLICATION, IT WILL KNOW WHO IS GOING TO ACCESS IT, SO YOU CAN MAKE THE USER READ PERMISSION. AS YOU KNOW, THERE ARE TWO TYPES OF PERMISSIONS IN MICROSOFT GRAPH ONE IS DELEGATE, WHERE A USER CAN GIVE A CONSENT OR ADMIN CAN GIVE A CONSENT ON THE BEHALF OF AN ORGANIZATION, AND THIS IS THE ADMIN CONSENT, WHICH

IS WHERE YOU DEFINE MORE AUTOMATED PROCESSES WHERE YOU DON’T NEED ANY USER INTERACTION IN THAT PROCESS I’M GOING TO GO AND GIVE MICROSOFT GRAPH AND I’M GOING TO HAVE GIVE MORE ADMIN PERMISSIONS BECAUSE I’M GOING TO RUN IN FLOW SO I WILL NOT NEED ANY USER INFORMATION OR CONSENT I WILL DO AN ADMIN CONSENT. I CAN DEFINE THE PER MISSIONS SO AS I AM TALKING ABOUT USER, I WILL NEED USER READ/WRITE, AND IF I’M TALKING ABOUT THE TEAMS OR GROUPS, I WILL NEED GROUPS READ/WRITE. ONCE TIM DONE WITH THAT, I WILL — I WILL DO A PERMISSION. WHEN THE PERMISSIONS ARE ADDED, YOU WILL SEE THERE’S A CONSENT ERROR OR WARNING SORT OF A THING, WHICH SAYS THAT IF YOU ARE USING ADMIN CONSENT FOR THIS APPLICATION, YOU SHOULD GO AND GIVE A CONSENT TO THIS APPLICATION SO THE END USERS CAN USE IT. IF YOU DON’T GIVE ADMIN CONSENT IN HERE, ANY USER WHO IS TRYING TO USE THIS APPLICATION WILL NOT BE ABLE TO ACCESS IT, IT WILL SAY ACCESS DENIED IN THE APPLICATION BECAUSE ADMIN HAS NOT CONSENTED THIS APPLICATION IN THE ORGANIZATION. HOW YOU DO THAT, YOU DON’T HAVE TO GET THE URLs ANYMORE. YOU HAVE A GRANT ADMIN CONSENT SO YOU STRAIGHTAWAY DO A YES AND IT WILL TAKE TICK ALL THE BOXES. PREVIOUSLY YOU HAD TO GUESS THE URL, CREATE THE APPLICATION I. D. AND THEN HIT IT UP AND THEN GIVE YES OR NO ON THAT. NOW, IF YOU SEE ALL THE BOXES ARE TICKED HERE, I CAN START LIBERATING THIS APPLICATION IN MY FLOW. BEFORE THAT, I WILL NEED A SECRET AS WELL BECAUSE I NEED A USER NAME PASSWORD SCENARIO, SO I CAN CREATE A SECRET, ONE YEAR, AND I WILL SAY MS BUILD 2019 SECRET, SO IT WILL BE READY TILL THE NEXT PERIOD, HOPEFULLY, WILL BE VALID AND I CAN COPY THE SECRET HERE, WHICH IS HERE, AND THEN START USING IT. LET ME ZOOM IT OUT SO THAT I CAN COPY IT EASILY. I’LL PUT IT ON A NOTEPAD. AND I’M GOING TO JUST TAKE THE APPLICATION I. D. AS WELL COOL. SO IT’S VERY SIMPLE. SO I LOOK UPON THE AZURE AD, YOU ADD THE GRAPH FORMATIONS. YOU ARE PRETTY MUCH — MY APPLICATION IS REGISTERED, TRUSTED IN AZURE AD. I HAVE TO START LOOKING AT THE FLOW AS TO HOW I CAN START WORKING ON IT. I’M GOING TO QUICKLY SWITCH BACK TO THE PRESENTATION THIS IS WHERE I WILL KEEP JUMPING ABOUT. THE FIRST OPTION IS, IT’S NOT A VERY GOOD OPTION, IT’S OKAY, SO AS YOU KNOW, WHENEVER YOU START USING THE MICROSOFT GRAPH, THE FIRST THING YOU NEED ACCESS TOKEN FROM THE AZURE AD SO YOU CAN CALL THE GRAPH API. NOW, I’M GOING TO KEEP THE SAME WAY IN THE MICROSOFT FLOW I WILL CREATE AN HTTP REQUEST FOR LOG-IN, I WILL GET AN ACCESS TOKEN IN THE JSON PACK, I WILL TAKE THAT ACCESS TOKEN AND CALL THE GRAPH API. NOW, THIS SOUNDS OKAY, BUT THIS IS WHERE YOU HAVE TO DO A LOT OF — PASS THE TOKEN, CALL AGAIN THE OTHER OPTION IS, IN THE SAME HTTP OPTION YOU HAVE AUTHENTICATION DIRECTLY WITH AZURE AD. IN THAT CASE YOU DON’T HAVE TO GET THE ACCESS TOKEN, IT WILL GENERATE AUTOMATICALLY AND IT WILL PASS IN THE CORRECT CELL. IF YOU ALREADY AUTHENTICATE AGAINST THE GRAPH API. IT’S STILL NOT THE BEST OPTION. LET ME SHOW YOU BOTH THE OPTIONS AND HOW THEY LOOK LIKE, AND YOU WILL SEE WHEN WE LOOK AT THE BEST OPTION, WHY IT’S THE BEST OPTION. SO LET ME SHOW YOU QUICKLY ON BOTH THE OPTIONS NOW, WE HAVE THAT. I’M GOING TO JUMP HERE INTO MY FLOW. THIS IS NOT A VERY COMPLEX FLOW, I WILL JUST DECOMPOSE THE FLOW HOW I HAVE DONE. SO THE FIRST THING IS HOW YOU LIKE TO TRIGGER THE FLOW. RIGHT NOW I WILL KEEP IT MANUAL BECAUSE I WOULD LIKE TO JUST READ THIS STUFF THE SECOND THING IS ABOUT SETTING THE CLIENT I. D. CLIENT I. D., CLIENT SECRET, YOU WILL NEED BECAUSE YOU’RE GOING TO RUN THIS APPLICATION IN AN APP ONLY MODE. THE NEXT IS THE TENANT DIFFERENT BECAUSE AS WE KNOW, EVERY TENANT HAS ITS OWN I. D., WHICH IS UNIQUE TO IT AND YOU HAVE TO KNOW WHERE YOU ARE FIRING THE QUERY AGAINST, BECAUSE IN A SCENARIO, TENANT I. D. IS NOT REQUIRED. YOU GO AGAINST WITH A COMMON TENANT I. D. IN THE URL. SO I HAVE SET ALL THE VALUES, TENANT, CLIENT I D., CLIENT SECRET, AND TENANT I D. SO ALL OF THEM ARE THERE. THE NEXT IS TO GET THE AUTHENTICATION TOKEN. SO IF YOU LOOK UPON THIS

YEAR, I’M TRYING TO LOG INTO THE — LET ME ZOOM AGAIN, THAT MAKES IT MORE EASY. SO IF YOU LOOK UPON HERE, I’M FIRST TRYING TO CALL THE MICROSOFT ONLINE AZURE CALL, REPLY, AND I’M PASSING ALL THE AUTHENTICATION PIECES WHICH I NEED. AND WHAT WILL HAPPEN, AT THE END OF THE RESOURCE, IT WILL GIVE ME AN ACCESS TOKEN WHICH I CAN USE TO CALL THE GRAPH API. NOW, WHEN I DO THIS, I WILL GET A JSON BACK AND I HAVE TO DO THE PARSING OF THE JSON, AND YOU HAVE TO — IT’S TRICKY IN THE FLOW, THIS IS — I WILL NOT GO DEEPER INTO THIS. HOW YOU CREATE THIS JSON SCHEMA, YOU HAVE TO FIND OUT SOMETIMES THERE ARE NULL VALUES, SOMETIMES NOT, SO YOU — ONCE YOU GET THE ACCESS TOKEN, YOU’RE GOING TO AGAIN GO AND DO THE HTTP CALL. THIS TIME IF YOU SEE MY URL IS GRAPH. MICROSOFT COM RATHER THAN THE LOG-IN. SO I GO TO THE ACCESS TOKEN, AS THE PROCESS GOES ON, AND I WILL PASS THAT IN THE AUTHENTICATION, HERE. SO I WILL PASS IT AND THEN I CAN GET THIS WORKING. IF YOU LOOK UPON HERE, WE HAVE — HOW MANY STEPS? IF I ZOOM IT OUT. ONE, TWO, THREE, FOUR, FIVE, SIX, SEVEN. SEVEN STEPS. BUT IF I GO TO THE — A LITTLE BETTER OPTION, I STILL HAVE FIVE STEPS I REDUCED TWO STEPS HERE BY USING THE MICROSOFT CALL AND PARSING THE JSON. I HAD THE SAME CLIENT I. D., CLIENT SECRET AND TENANT I. D. AND THEN IF YOU LOOK UPON HERE, I’M CALLING DIRECTLY TO THE GRAPH URL, BUT I’M NOT PASSING ANY ACCESS TOKEN WHAT’S THE MAGIC IN THE ADVANCED OPTION, THE AUTHENTICATION HERE IT SAYS AZURE AD. SO YOU CAN STRAIGHTAWAY DO THE AUTHENTICATION WITH THE AZURE AD AND YOU HAVE THE AUTHORITY URL HERE AND IT WILL GET THE ACCESS TOKEN AND THEN USE THAT TO CALL THE GRAPH API. SO YOU REDUCED SOME STEPS. NOW, THERE ARE SIMPLE THINGS HERE. IF YOU WANT, WE CAN RUN THIS PROGRAM, BUT NOT REALLY A BACK DOOR OPTION SO WE WILL SEE HOW WE DO THE BACK DOOR OPTION. NOW, COMING TO THE BEST OPTION, IF YOU SEE HERE, WE HAVE TRIED SETTING OF THE CLIENT I. D., SECRET, EVERY TIME, AND THEN CALLING THE GRAPH API. WE ARE REPEATING THINGS. WE SHOULD CREATE SOME REUSABLE CONTENT. THE NEXT OPTION WE HAVE IS ABOUT THE CONNECTORS. HAS ANYBODY USED MICROSOFT FLOW CONNECTORS IN THE PAST? OKAY. A FEW OF THEM. WHAT MICROSOFT FLOW CONNECTORS ALLOW US TO CREATE ANY CUSTOM CONNECTOR WHICH CAN CALL ANY API, EITHER MY API OR MICROSOFT GRAPH API, AND I CAN REUSE THAT CLIENT I. D. AND CLIENT SECRET IN THE CONNECTION SO IT’S LIKE THE BUILT-IN CONNECTOR, AND I HAVE TO JUST PASS THE DIFFERENT PARAMETERS TO THE CALL. BEFORE I JUMP AND SHOW MORE, I WILL GO AND TALK ABOUT A FEW SCENARIOS WHICH WE WERE TALKING ABOUT, THE USER PROFILE MANAGEMENT AND THE TEAMS GOVERNANCE. LET ME JUMP BACK AND GO THROUGH THE GAMUT AS TO HOW WE CAN USE THESE GRAPH API WITH THE MICROSOFT FLOW TO MANAGE THE USERS AND THE TEAMS. SO I’VE KEPT IT VERY SIMPLE. WHENEVER YOU NEED THE BUSINESS PROCESSES, YOU NEED SHAREPOINT, THIS IS VERY QUICK BUT IF YOU DON’T LIKE SHAREPOINT, THAT’S OKAY. WE UNDERSTAND THAT. AS A DEVELOPER, YOU CAN ALSO INVOLVE THE SAME THING USING LOGIC APPS AND MICROSOFT FLOW IS ALSO LIKE AN HT TO P END-POINT SO YOU CAN CALL MICROSOFT FLOW FROM YOUR APPLICATION AS AN END CALL YOU CAN ALWAYS EXTEND THE THINGS YOU CAN CALL THE SAME FLOW USING THE AZURE FUNCTIONS. SO THERE ARE A LOT OF OPTIONS AS TO HOW YOU BUILD YOUR BUSINESS APPLICATION AND HOW YOU WOULD LIKE TO REUSE THEM. HERE I HAVE A NEW USER REQUEST, AND WHENEVER I CREATE A REQUEST, IT GOES THROUGH THE MICROSOFT FLOW AND MICROSOFT FLOW CREATES THE USER. NOW, LET’S LOOK AT THE MICROSOFT FLOW BEFORE I KICK OFF THE PROCESS. THIS IS THE ONE, YEAH, SORRY. THIS IS THE ONE. SO WHENEVER THERE’S A NEW ITEM CREATED IN SHAREPOINT, I WILL JUST GO AND GET THE USER, USER PRINCIPLE NAME, WHICH IS REQUIRED FOR THE LOG-IN AND FOR THE — IT’S A UNIQUE I. D. FOR THE USER IN THE OFFICE 365 WORLD. WHAT I’VE DONE IS CREATED A UPN WITH MY DOMAIN NAME AND THEN

I DO A GRAPH — SORRY. I DO A GRAPHICAL TO POST AND CREATE THIS USER. SO AS YOU SEE HERE, I HAVE DEFINED SOME OF THOSE PARAMETERS FROM THE SHAREPOINT LIST, AND THEN WHENEVER I DO A CALL, IT GOES AND CREATES THE NEW USER IN THE SYSTEM. SO LET ME SEE IF I CAN RUN THIS SYSTEM HERE. THIS IS THE SYSTEM RUN’S HISTORY, SO IT HAS BEEN RUNNING SUCCESSFULLY I WILL JUST SAVE IT UP HERE. IT SHOULD TRIGGER THE FLOW HERE, IN THE BACKEND, AND IT SHOULD GO AND CREATE THE USERS. IT’S DONE SUCCESSFULLY IF I GO TO MY USERS LIST IN THE AZURE AD, IF I REFRESH THIS LIST HERE, — YES, I GOT THE DEMO USER NOW, A LOT OF TIME WHAT HAPPENS WHEN THE USER IS ONBOARDING THE ORGANIZATION, YOU GET ONLY A FEW INFORMATION PIECES ABOUT THE USER, FIRST NAME, LAST NAME, DISPLAY NAME A LOT OF TIMES YOU MIGHT MISS PHONE NUMBER AND THE DETAILS WHILE CREATING THE USER. WHAT HAPPENS IN THAT CASE, WHEN YOU MISS THOSE ATTRIBUTES, PHONE NUMBERS, THEY ARE CRITICAL FOR A LOT OF BUSINESS APPLICATION SCENARIOS AND FOR GETTING THE MOST OUT OF THE OFFICE 365 WORLD. WHAT I’M GOING TO DO, I’M GOING TO TAKE THIS USER INTO A DIFFERENT LIST WHERE I HAVE THAT INFORMATION AS TO WHO IS ONBOARDING AND THEN I WILL ASK THE USER TO GO AND UPDATE THIS SHAREPOINT LIST BECAUSE THE USER CANNOT UPDATE THE AD AND I DON’T WANT EVERY USER GOING AND CHANGING THINGS IN AD. WHAT I’M GOING TO DO IS PULL THE DATA IN THIS LIST. WHAT I HAVE DONE SAYS, I , THIS IS THE READ THING. I HAVE A SCHEDULE. AS YOU KNOW, YOU CAN SET IT UP TO RUN DAILY BASIS OR WEEKLY BASIS, AND I GO THROUGH THE PROCESS, AND THEN I GET ALL THE USERS HERE. NOW, THERE IS A DIFFERENCE BETWEEN THE — IF YOU SEE, I AM USING READER END-POINT BECAUSE IT HAS A LOT OF END-POINT INFORMATION, AND I JUST GO TO THE USER CREATION, IF IT IS NOT AVAILABLE IN THE SYSTEM I’M JUST GOING TO RUN THIS UP HERE NOW. SO IT WILL GO AND READ ALL THE USERS IN THE AD AND SEE IF THERE IS A USER AVAILABLE, THEN IT WILL GO AND UPDATE THE USER IN THE LIST IF NOT, IT WILL GO AND ADD THE USER IN THE LIST. SO IF YOU SEE HERE, I’M JUST USING THE GET MICROSOFT CALL TO THE USERS AND IT HAS BEEN SUCCESSFUL. I CAN READ ALL THE DATA COMING FROM THE USERS. SO IF I GO BACK TO THE LIST, THE USER DETAILS ARE HERE FOR THE DEMO. IF I UPDATE THE DETAILS HERE, SO LET’S SAY I WILL UPDATE THE AND I WILL UPDATE THE CD, AND UPDATE THE MOBILE NUMBER, PLUS ONE, 400, I’M JUST KEEPING DUMMY VALUES, THEY ARE NOT REAL AND AS SOON AS I DO THAT, MY NEXT FUNCTION, WHICH IS HERE, TO READ AND UPDATE THE INFORMATION, IT WILL GO AND UPDATE THE USER DETAILS SO LET’S SEE IF IT HAS BEEN SUCCESSFUL ON THIS INSTANCE. IT HAS DONE AN UPDATE. LET ME REFRESH THIS PAGE WHERE WE HAVE THE BUILD DEMO USER STILL FETCHING. LET ME SEE IF IT HAS RESYNCKED THE RUN. IT SHOULD UPDATE THE INFORMATION BACK. INTERESTING IT’S TAKING TIME TO UPDATE. WHEN YOU CREATE MICROSOFT FLOW WITH A SHAREPOINT LIST, IT HAS A DEPENDENCY AND A PROCESS, BUT IT GOES BACK AND UPDATES THE INFORMATION. I CAN SHOW YOU SOME OF THE PREVIOUS UPDATES SO IT GOES BACK AND UPDATES THE INFORMATION WHENEVER YOU PASS IT ON. SO THIS IS VERY EASY TO BUILD IN AN APPLICATION IN SHAREPOINT

AND USE THE MICROSOFT FLOW WITH THE GRAPH API. MICROSOFT GRAPH API HAS ALL THE END-POINTS. LET ME SEE THE TEAMS THING. TEAMS IS GETTING VERY POPULAR, AND VERY TRICKY SCENARIO IS HOW YOU — MICROSOFT GRAPH IS THE ONLY WAY TO PROVISION TEAMS, EVEN IF YOU USE POWERSHELL, WHICH IS THE DEALS POWER SHELL, IT USES GRAPH API BEHIND THE SCENE. IN TEAMS, YOU HAVE OPTIONS AVAILABLE, LIKE YOU CAN CREATE TEAMS FROM TEMPLATES, THERE ARE STANDARD TEAM TEMPLATES FOR DIFFERENT INDUSTRIES, AND THEN YOU HAVE YOUR CUSTOM TEMPLATES FOR THE ORGANIZATION. NOW, IT’S VERY TRICKY TO WRITE A PROGRAM AND SUPPORT ALL THESE STRUCTURING OPTIONS. WHAT I HAVE DONE IS, I HAVE CREATED A SIMPLE LIST WHICH HAS A STANDARD TEMPLATE IN IT AND IF I GO AND REQUEST A NEW TEMPLATE TEAMS USING A STANDARD TEMPLATE, YOU CAN HAVE A TEAM USING THE [INDISCERNIBLE] EDUCATION. SO THERE ARE MORE OPTIONS. YOU CAN WORK ON THAT. I WILL JUST KEEP THE STANDARD TEAM. AND WHEN I REQUEST THAT OPTION, THERE’S A FLOW RUNNING UP HERE. THERE’S SO MANY FLOWS SORRY ABOUT THAT. SO WHAT I HAVE DONE HERE, I HAVE USED THE BACK DOOR OPTION TO INITIALIZE THE CLIENT I. D., CLIENT SECRET, AND THEN USING THE SWITCH, I’M CREATING THE TEAMS AND WHAT I’M DOING HERE, IF YOU LOOK UPON IN THE POST CALL, THERE IS A NEW END-POINT IN THE MICROSOFT GRAPH API WHICH CREATES THE B. /TEAMS AND THIS IS IS THE BODY OF THE CALL IF YOU LOOK UPON THIS, STANDARD TEAM, IT’S A TEMPLATE WHICH JUST CREATES A TEAM AND A GENERAL CHANNEL IN IT AND NOTHING ELSE. SO YOU CAN USE IT AS APPROACH TO DO THIS. IF I LOOK UPON — I SHOULD HAVE THIS HERE, SO THIS IS DONE. THIS IS JUST A VERY BASIC STRUCTURE OF THE TEAMS THE NEXT IS ABOUT GETTING MORE COMPLEXITY NOW, IF I WOULD LIKE TO CUSTOMIZE THIS TEMPLATE, I HAVE TO WRITE JSON OR I HAVE TO WRITE SOME SEQUENTIAL STEPS, SO LET’S TRY CREATING AN ORGANIZATION TEMPLATE USING JSON IF I PULL IT UP HERE, NOW, THIS IS — I WILL ZOOM AGAIN. THIS IS A TEMPLATED STRUCTURE, HOW THE MICROSOFT TEAMS CAN BE DEFINED IN MICROSOFT IN GRAPH, SO THERE’S A TEMPLATE BINDING, SO I’M INHERITING THE STANDARD TEMPLATE AND CREATING IT WITH MY NAME AND DETAILS. THE IMPORTANT THING TO KNOW HERE IS, THE OWNER OF THE DATA BY NAME. IF YOU ARE USING AN APPLICATION WHICH IS DOING THE TEAMS CREATION BUT IS A DELEGATED PERMISSION, YOU DON’T NEED THAT OWNER BY NAME OVER THERE BECAUSE BY DEFAULT IT WILL TAKE THE USER WHO IS CREATING THE TEAM AS AN OWNER, BUT IF YOU ARE RUNNING AN APPLICATION PERMISSIONS, YOU NEED TO PASS THAT OWNER DATA BINDING SO IT CAN SELECT THIS USER AS OWNER OF A TEAMS WHICH IS GETTING CREATED. YOU CAN DYNAMICALLY GET THE USER DETAILS OR YOU CAN PASS A VERY SPECIFIC ADMIN I. D AND IT WILL DO THAT. THIS IS VERY STRUCTURED, A SIMPLE THING. THE OTHER THING IS VERY COMPLEX HERE IF YOU SEE HERE, I HAVE THE FIRST SECTION IS PRETTY MUCH THE SAME, SO I’M USING A STANDARD TEAM TEMPLATE, HAVING AN OWNER OVER THERE, BUT WHAT I HAVE HERE IS THE CHANNELS I HAVE TRAINING CHANNEL, AND THEN IN THE TRAINING CHANNEL, IF YOU SEE, I HAVE TABS AS WELL. SO IF YOU SEE, THERE’S TABS STRUCTURE LET ME ZOOM OUT A LITTLE BIT SO THAT WE CAN SEE. SO TABS ARE CURRENTLY POINTING TO THE WEBSITE. SO YOU CAN HAVE THESE TABS AS AN APPLICATION ALSO. NOW, IN THE NEXT ONE, IF YOU LOOK UPON HERE, FURTHER DOWN, YOU HAVE ALL THE SETTINGS INFORMATION HERE ITSELF. SO OTHER CHANNELS, THEN YOUR MEMBER SETTINGS, SO HOW YOU WOULD LIKE TO CREATE IT, PRIVATE, PUBLIC, YOU WOULD LIKE THEM TO COME JOIN THE TEAMS, ANY GUEST USERS CAN BE CREATED, THE SETTINGS IS MORE AROUND THE MODERATION AND USERS, AND THE OTHER MESSAGING AND INSTALL APPS. SO IF YOU LOOK UPON HERE, I AM USING THE MICROSOFT TEAMS VSDS IN THE APP, SO YOU CAN INSTALL CUSTOM APPS AS WELL USING THE JSON. I CAN CREATE MORTEM PLATS LIKE THIS AND I CAN PUT THEM UP IN THE SHAREPOINT LIBRARY, SO THIS IS LIKE A JSON FILE UPLOADED IN THE LIBRARY. AND THEN I CAN GO AND CREATE A SHAREPOINT LIST AGAIN AND I WILL JUST REQUEST

HERE, AND THEN I CAN LIST THEM AS A TEMPLATE SO I WILL JUST USE THE PRONG TEAM BECAUSE IT HAS VSDS AND ISSUES AND EVERYTHING SO THAT I CAN WORK WITH MY COLLEAGUES, AND I WILL SET THIS AS AN OWNER ADMIN AND I WILL DO A SAVE. AS SOON AS I DO THAT, IF I GO TO MY FLOW, YEAH, AGAIN, SETTING OF THE VARIABLES FOR THE TENANT I. D. , CLIENT DIFFERENT, CLIENT PASSWORD, WHAT I HAVE DONE IS, BECAUSE WE NEED A JSON WELCOME FROM THE SHAREPOINT LIBRARY BASED ON THE TEMPLATE, I HAVE JUST CREATED A VARIABLE TO READ THE JSON STRUCTURE NOW, BASED ON THE TEMPLATE WHICH I HAVE SELECTED IN THE DROPDOWN, I WILL GO EITHER IN THIS — THE YES CONDITION OR NO CONDITION, OR YOU CAN HAVE THE SWITCH CONDITION IF YOU HAVE MORE THAN ONE TEMPLATE I WILL GO AND GET THE JSON FILE, SO IT’S GOING TO READ THE JSON FILE, WHICH IS JSON, AND THEN I WILL UPDATE THE JSON VARIABLE IN THE HTTP CALL, IF YOU LOOK UPON HERE, I HAVE PASSED THAT JSON FILE IN AS A BODY. SO NOW WHEN I RUN THAT PROCESS, IT WILL GO AND CREATE THE SAME TEAM STRUCTURE DIRECTLY INTO MY TEAMS I HOPE — IF YOU SEE HERE, I GOT THE STANDARD ENGINEERING, AND AS I SAID, THERE’S AN APP AND THERE IS A VSDS APP INSTALLED ALREADY IN IT, AND THERE ARE OTHER CHANNELS AS WELL. SO THIS DEFINES HOW YOU CAN CREATE YOUR TEAMS. NOW, AS YOU SEE HERE, THERE’S A JSON DEFINE, BUT SOMETIMES YOU NEED MAYBE MORE GRAND LAYERITY, MAYBE MORE STRUCTURED PROCESS HOW YOU CREATE THINGS, AND WHAT YOU CAN DO IS, YOU CAN USE THE CONNECTOR WITH THE FLOW, AND YOU CAN USE THE BATCH PROCESS. HAS ANYBODY SEEN OR USED THE BATCH PROCESS IN THE MICROSOFT GRAPH API? OKAY SO THERE IS A BATCH PROCESS IN THE MICROSOFT GRAPH API WHICH — WHERE YOU CAN CALL 20 END-POINTS AT ONE TIME, AND WHAT HAPPENS, YOU DON’T CALL THEM ONE BY ONE, THEY NOT GUILTY THEY GO IN SEQUENCE. YOU CAN DEFINE DEPENDENCIES. YOU CAN DEFINE THE DEPENDENCY. AND ALSO YOU CAN DEFINE A SEQUENCE AS WELL AS A ONE, TWO, THREE, FOUR. LET ME SHOW YOU HOW THAT HAPPENS WITH THE MICROSOFT FLOW AND THE GRAPH API. AGAIN, THE VERY FIRST THING IS THAT YOU GO INSIDE OF THE APP AND THEN YOU GO AND GET THE INFORMATION FOR USING THE GRAPH API. NOW, LET ME BRING THAT UP HERE, AND I WILL DO IT STEP BY STEP. NOW, I’M GOING TO DO MS, LOAD CONNECTOR, AND I’M JUST GOING TO KEEP — I WILL NEED THE WEB HERE BECAUSE THIS IS A CONNECTOR WHICH WILL BE AUTHENTICATING AGAINST THE GRAPH API. I WILL NOT KNOW THE URL HERE BECAUSE IT WILL COME FROM MY AZURE AD, SO I WILL KEEP IT BLANK BUT I HAVE TO UPDATE THIS URL. I WILL JUST GO TO THIS APP. THEN I’M GOING TO JUMP INTO THE SECRETS I’M GOING TO CREATE A NEW CLIENT SECRET. THEN I WILL COPY THIS. I HAVE THE PROCESS DONE SO I WILL JUST KEEP IT GOING. THEN THE NEXT PIECE IS ABOUT THE AUTHENTICATION, WELL UPDATE THAT WHEN WE KNOW THE URL. I’M GOING TO ADD THE PER MISSIONS HERE. SINCE I WILL LIKE THE USER TO RUN THIS, I WILL GO AND USE THE DELEGATE PERMISSION, BUT IN THAT CASE, I WILL GO AND USE ADMIN TO CONSENT ON BEHALF OF THE ORGANIZATION I WILL GO AND DO A DELEGATING, AND I’M DO A GROUP BECAUSE I’M GOING TO CREATE THE TEAMS AGAIN AND THE GROUPS AGAIN. I DON’T NEED ANYTHING ELSE. I WILL ADD THE PERMISSION I WILL DO IT ON — NOT HERE, SORRY, I WILL DO THE DELEGATE. NOW, I NEED TO COPY THE SECRET. SORRY ABOUT THAT. I NEED THE SECRET SO I WILL CREATE IT AGAIN. JUST DELETE THE SECRET HERE. AND I WILL JUST GO AND COPY THE APPLICATION I. D. AS WELL HERE. NOW, APPLICATION ILLUSTRATION IS DONE. WHAT I NEED IS THE CONNECTOR NOW. I WILL JUMP INTO THE MICROSOFT

FLOW AND THEN, IF YOU LOOK UPON HERE, YOU CAN START FROM BLANK, IF YOU REALLY DON’T KNOW, BUT TO START FOR THE BATCH PROCESS, IT’S VERY SIMPLE. I HAVE AN API FILE ALREADY WITH ME WHICH I’M GOING TO SHOW YOU AS TO WHAT IT LOOKS LIKE AND WHEN I IMPORT IT, WHAT THE STRUCTURE LOOKS LIKE. SO IF I JUMP UP HERE, THIS IS THE SWAGGER FILE WHICH THE CONNECTOR GENERATES AFTER YOU CREATE AND SAVE IT. WHAT I HAVE DONE, I CREATED AND SAVED IT AS A LOCAL COPY SO I CAN REUSE IT. IF YOU LOOK HERE, IT HAS A TITLE OF THE CONNECTOR, THE VERSION AND WHERE IT’S TRYING TO CONNECT. AND THERE IS A SLASH SO YOU HAVE TO GIVE THE SLASH FOR SURE. AND THEN YOU DEFINE WHAT’S THE PROCESS INFORMATION, AND THEN WHAT’S THE LOG-IN INFORMATION NOW, THE REST OF THE AUTHENTICATION PIECE WE WILL DEFINE AS WE CREATE THE CONNECTOR. I’M GOING TO GO AND IMPORT THIS FILE. AND I’M GOING TO GO AND GIVE A NAME. AND THEN I’M GOING TO GO IMPORT THIS FILE FROM MY BUILD DEMOS. BATCH CONNECTOR NOW, IT READS VERY QUICKLY THAT INFORMATION AND CREATES IT. IT’S NOT THAT COMPLEX. THE FIRST THING IS THE HTTP IS ON THE GRAPH. MICROSOFT COM AND YOU HAVE TO GIVE THAT TRAILING SLASH IN THE END. IF YOU DON’T GIVE THAT, IT WILL NOT WORK. AND THEN THE NEXT PIECE IS THE SECURITY IF YOU SEE HERE, IT’S USING A TOKEN AGAINST YOUR AD, SO I WILL NOW GIVE MY CLIENT I. D. AND CLIENT SECRET WHICH I CREATED, SO I’M IF THE CALL MY COMPLAINT I. D. CLIENTI. D. , AND THEN CLIENT SECRET INTO THE CLIENT SECRET AND THEN MY LOG-IN IS THE LOG-IN. WINDOWS. NET AND THE TENANT IS COMMENT, AND I CAN USE THIS CONNECTOR FROM ANY OTHER ACTIVE DIRECTORY AS WELL AS OTHER FLOW. SO I CAN EXPORT THIS CONNECTOR, GIVE IT TO ANYONE, THEY CAN JUST GO AND QUICKLY UPDATE THIS INFORMATION AND START USING. IF I GIVE MY TENANT I. D. VERY SPECIFICALLY HERE, I CANNOT REUSE, I HAVE TO REPLACE THAT TENANT I. D. EVERY TIME. FOR US, THE RESOURCE URL. RESOURCE URL WE’RE GOING TO HIT THE GRAPH. AND THEN I WILL KEEP THE SCOPE AS BLANK AND SINCE I DON’T KNOW WHERE THIS WILL GO AND CREATE THE CONNECTOR IN MY AZURE AD BECAUSE EVERY AZURE AD URL IS DIFFERENT BASED ON THE AZURE DATA CENTER, I WILL KEEP IT AS IT IS AND I WILL CLICK ON CREATE CONNECTOR. COME ON, COME ON. I HAVE A DIFFERENT WI-FI SO IT SHOULD BE FAST. GREAT. SO WE GOT THE CONNECTOR HERE. AND NOW IF YOU SEE THIS, REDIRECT URL, IT WILL ALWAYS BE DIFFERENT IN YOUR DOMAIN. SO RIGHT NOW BECAUSE I AM IN THE AUSTRALIA DATA CENTER, IT IS THROUGH APIM. IF YOU ARE IN THE NORTH AMERICA, IT WILL SHOW NA. BUT YOU HAVE TO MAKE SURE THIS URL IS CORRECT FOR YOU, AND AFTER CREATING THE CONNECTOR, YOU COPY THIS URL, AND GO BACK TO YOUR APP AND NOW IF YOU LOOK UPON THE AUTHENTICATION, YOU HAD TO REDIRECT URL BLANK HERE AND NOW I WILL UPDATE THIS URL, BECAUSE WHEN I AUTHENTICATE WITH THE CONNECTOR IN THE FLOW, IT WILL GO BACK AND AUTHENTICATE ME FROM THIS URL TO THE FLOW BACK. I WILL JUST SAVE IT DOWN HERE. NOW IT’S UPDATED. IF I GO BACK TO THE CONNECTOR AND DO A TEST, I HAVE TO ADD THE CONNECTION, BASICALLY I AM CONSENTING AS AN ADMIN HERE. AND WHEN I DO THAT, YOU WILL SEE THERE’S A CHECK BOX HERE BECAUSE IT’S A DELEGATE PERMISSION SO I CAN COULD BE SENT ON BEHALF OF MY ORGANIZATION. SO THE END USERS WILL NOT GET THIS LOG-IN. I WILL DO ACCEPT. AND IF IT IS SUCCESSFUL, YOU WILL GET A DATE AND TIME. AND THEN YOU HAVE TO JUST UPDATE THE CONNECTOR BACK HERE. UPDATED, OKAY. MY CONNECTOR IS READY. I HAVE DEFINED MY CLIENT I. D., SECRET, WITH ALL THE PERMISSIONS AND GOT APP I. D. THE NEXT THING IS ABOUT USING I. IF YOU LOOK UPON IN THE DEFINITION HERE, I DON’T HAVE ANY END-POINT DEFINED IN THIS, LIKE SLASH ME OR SLASH TEAMS OR ANYTHING. WHAT I HAVE HERE IS THE PATCH OPERATION. SO IF YOU LOOK UPON HERE, THERE’S B — WHAT IT DOES IS GOING AND CREATING MULTIPLE

REST END-POINTS IN ONE GOAL, AND YOU CAN CALL MULTIPLE POINTS TOGETHER AND GET THE DATA BACK. I WILL SHOW YOU AN EXAMPLE IN THE GRAPH EXPLORER AS TO HOW IT WORKS. SO IF I GO TO THE GRAPH EXPLORER, AND THEN I WILL JUST PULL OUT THE SAMPLE FIRST AND THEN I WILL SHOW YOU WHAT IT LOOKS LIKE. IF YOU GO HERE, THERE’S A BATCHING OPTION. IF YOU SEE HERE, THE APP PERFORMED PARALLEL GETS, DID THE COMBINE OF THE INPUT, SO YOU CAN DO THE MIX AND MATCH AS YOU WOULD LIKE TO DO. RIGHT NOW I’M GOING TO DO A GET URL. IF YOU SEE HERE, IN THE REQUEST, IT HAS GET ME, THE MESSAGES DETAIL, AND THEN THE EVENTS DETAIL. SO IF I HAVE TO DO THIS IN THE APPLICATION GENERALLY, I HAVE TO CALL THREE TIMES. SO RATHER THAN CALLING THREE TIMES GRAPH API, I WILL CALL THEM STRAIGHT IN ONE TIME AND GET THE DATA BACK. THE ONLY THING IS, I HAVE TO PASS THAT JSON BACK BUT IT SAVES A LOT OF TIME IN THE TRAVEL I’M GOING TO HIT THIS UP. IT GIVES YOU ALL THE DATA BACK IN THIS RESPONSE NOW, THIS IS VERY IMPORTANT. WE CAN USE ALSO TO DO A GET AND POST COMBINATION. IF YOU LACK THE FIRST ONE IS A POST, THE SECOND ONE IS A GET. SO YOU CAN DO THAT AS WELL NOW, WHAT WE WILL DO, WE WILL CREATE A GROUP AND THEN USE THAT GROUP TO CREATE A TEAM AND THEN WE WILL CREATE CHANNELS IN THERE USING THE BATCH. NOW, IF YOU SEE THE JSON HAS THE STRUCTURE, SO IT CAN TAKE IT STRAIGHTAWAY, BUT IF YOU WOULD LIKE TO CREATE NOR GRANULAR STUFF — MORE GRANULAR STUFF OR OTHER SCENARIOS LIKE CREATE THE GROUP AND THEN CREATE THE TEAMS AND THEN CREATE SHAREPOINT SITE, YOU CAN DO EVERYTHING IN THE BATCHING. ONCE THE GROUP IS READY. NOW, LET ME SHOW YOU THE XML. SO WHAT I’M GOING TO DO IS, I’M GOING TO DO A GROUP CALL, AND THEN I’M GOING TO PASS THE VALUES IN IT, WHERE I HAVE THE REPLACE, AND IT WILL GO AND CREATE THE GROUP. NOW, AFTER THIS GROUP IS CREATED, I’M GOING TO GO AND CREATE THE TEAM. NOW, I NEED THE GROUP I. D., WHICH IS CREATED, TO CREATE A TEAM AGAINST IT, SO I WILL PASS THE GROUP I. D. IN THE PLACE OF REPLACE AND THEN IT WILL GO NOW, AFTER THAT, I NEED CHANNELS IF I NEED CHANNELS, LIKE THIS ONE HERE, YEAH, CHANNELS, CHANNELS NEEDS THE TEAM I. D. OR IT HAS TO BE CREATED HERE I CAN HAVE MORE THAN ONE CHANNEL, MORE THAN ONE TEAM, AND THEN I CAN PASS ALL THE VALUES HERE. SO AS YOU SEE HERE, THERE ARE STEPS. NOW, IF YOU SEE HERE, THERE’S AN ON CONDITION WHAT DEFINES — THERE HE THREE WAYS YOU CAN DEFINE THIS BATCHING. ONE IS PARALLEL. THERE IS NO DEPENDENCY AND ALL THEY COME STRAIGHT IN. THERE IS A ONE, TWO, THREE, FOUR DEPENDENCY CONTINUOUSLY SO THERE WILL BE FIRST CALL, SECOND CALL, THEN THIRD CALL, AND GRAPH WILL HANDLE THAT. YOU DON’T HAVE TO DO ANYTHING IN YOUR PROGRAM. THE THIRD IS THE SAME DEPENDENCY SO IF YOU LACK UPON HERE, I HAVE A GROUP DEPENDENCY FOR MY TEAMS, AND THEN I HAVE A TEAMS DEPENDENCY FOR MY CHANNELS, SO THERE IS A SEQUENCE I WILL TO THAT. NOW, IN THE CHANNELS HERE, IF YOU LOOK UPON, IT DEPENDS ON ONE, AND THE FIRST CHANNEL DOES NOT DEPEND ON ANYTHING. I JUST DEFINED THAT SEQUENCE OF DEPENDENCY TO BE EXECUTED. NOW, LET ME START AND WORK ON IT. NOW, JUST THIS ONE HERE, THIS ONE HERE, YES, SO NOW MY CONNECTOR I. D., NOW I WILL GO TO MAY FLOWS AND I WILL GO AND CORRECT — MY FLOWS AND I WILL GO AND CREATE FROM BLANK. I’M GOING TO CREATE, MANUAL CREATION. AND SINCE I NEED A TEAM NAME OR A GROUP NAME AGAINST WHICH I WILL CREATE, I WILL JUST CREATE A TEXT BOX SO THAT I CAN PASS. NOW, THE NEXT ONE IS ABOUT CREATING THE GROUP. NOW, IF I LOOK UPON HERE, THE CONNECTOR NAME IS THE MS BATCH CONNECTOR. NOW, AS SOON AS YOU TYPE IT, IT APPEARS LIKE A BUILT-IN CONNECTOR, LIKE THE OTHER CONNECTORS. AND WHEN YOU LOOK UPON IT, IT HAS A BATCH, AND THEN YOU PASS THE BODY. NOW, YOU DON’T HAVE TO PASS THE HTTP GRAPH AND CLIENT DIFFERENT OR ANYTHING BECAUSE IT WILL GO AND USE THOSE THINGS FROM THE CONNECTOR ITSELF, SO IT SAVES A LOT OF TIME IN DOING THAT EXTENDED PROCESS. AND IF YOU LOOK UPON HERE, IN THIS, IT IS USING THE URL FROM THE GRAPH. IT DOES NOT REQUIRE THE FULL URL FROM THE GRAPH. SO I’M GOING TO JUST KEEP

THIS AND PULL IT UP HERE. AND THEN REPLACE. I’M JUST GOING TO PICK UP THE USER, GROUP NAME, OKAY. DESCRIPTION DISPLAY NAME. AND NICKNAME. WHAT IT WILL DO, I WILL ZOOM IT IN HERE, SORRY — HERE. WHAT IT WILL DO, IT WILL TAKE A NAME OF THE GROUP FROM MYSELF AS A MANUAL PROCESS, YOU CAN PASS THIS GROUP NAME FROM A PROCESS OF SHAREPOINT OR FROM YOUR PROGRAM, AND YOU CAN INVOKE THE SAME WORKFLOW AS WELL. YOU CAN DO THE SAME THING FROM A LOGIC APPS AS WELL, YOU CAN CALL THE SAME THING FROM AZURE FUNCTIONS. SO IT’S ABOUT CREATING THIS AS A ONE-TIME GOAL AND THEN YOU CAN CALL FROM YOUR APPLICATION. IT WILL GO AND CREATE THE GROUP. LET ME JUST CALL IT UP HERE. CREATE GROUP. SO IT’S EASY TO REMEMBER WHAT WE’RE DOING HERE THE NEXT IS ABOUT CREATING THE TEAMS NOW, I WILL GO AND SINCE GROUP TAKES A LOT OF TIME TO CREATE, THEN THE TEAM TO CREATE ON THE GROUP DOES NOT TAKE MUCH TIME, SO I HAVE TO ADD A DELAY HERE. AND I’M GOING TO JUST KEEP IT FOR A MINUTE. EBB NEXT THEN I’M NEXT I CREATE, AND I’M GOING TO TAKE THE TEAMS AND I’M JUST GOING TO GO AND PASTE IT UP. THESE JSONs CAN ALSO BE STORED IN THE SHAREPOINT FILE AND YOU CAN READ THESE JSONs AS A SHAREPOINT FILE AND CREATE THAT. AS TO HOW YOU DEFINE THE DYNAMIC NATURE. NOW, HERE, WHAT I NEED IS A GROUP I D. A GROUP I. D. IS GETTING FROM THIS CREATE GROUP PROCESS. WHAT I HAVE TO DO IS, I HAVE TO READ THE OUTPUT OF THE CREATE GROUP PROCESS AND GET THE I. D. WHAT I HAVE HERE IS THE QUICK OPTION, WHICH I KNOW I WILL NEED THAT THIS TIME. IF YOU LACK UPON LOOK UPON THIS, IT SAYS BODY OF — THE GROUP WILL BE CREATED FROM THE RESPONSES, SINCE WE ARE CREATING ONLY ONE GROUP, WE WILL TAKE THE ZERO, THE FIRST OPTION, WE WILL READ THE BODY AND THEN THE I. D. I’M JUST GOING TO COPY THIS, AND THEN IF YOU LOOK UPON HERE, THE EXPRESSIONS, HAS TAGGED. BODY OF. AND IF I LOOK UPON — SORRY I SHOULD BE ABLE TO PULL IT UP FROM HERE. NO, SORRY. IT’S A BIT TRICKY SOMETIMES WHERE IS THE REPLACE THING I HAVE TO KEEP THE CURSOR THERE, AND THEN GO TO THE EXPIRATION, BODY OF. WHAT WE HAVE IS CREATE GROUP AND THEN I’M JUST GOING TO COPY THE REST AND REMOVE THIS THING SO WHAT IT WILL DO, IT WILL GO AND READ OUT, AND IT SHOULD BE HERE IT WILL GO AND CREATE THE TEAM FOR ME. ONCE THE TEAM IS CREATED, I NEED TO CREATE THE CHANNELS, SO I’M GOING TO AGAIN GO AND CREATE THAT UP HERE. NO, NOT THIS ONE, SORRY. BATCH AND THEN I’M GOING TO JUMP BACK TO READ MY CHANNELS, WHICH IS THE FIFTH NUMBER, AND I’M GOING TO PASS. AND, AGAIN, I’M GOING TO DO THE REPLACE HERE WITH THE TEAMS I. D. BECAUSE I NEED TO CREATE THESE CHANNELS ON THE TEAMS. AND THERE IS A BIG THING HERE. TEXTY THING. SO I’M JUST GOING TO DO THE BODY OF. SO THIS IS THE BATCH. SORRY I WILL JUST TAKE THIS FROM HERE SO IT’S VERY QUICK. RESPONSES. AND I’M GOING TO JUST INSERT. NOW, I

CAN INSERT THE SAME THING IN ALL THE PLACES WHEREVER WE HAVE THE REPLACE AND THEN I WILL GO AND SAVE IT UP. WHENEVER I WILL RUN THIS UP NOW, IT WILL GO AND CREATE MY TEAMS AND THE GROUPS. I WILL QUICKLY SHOW YOU THE RUNNING THING HERE WHICH I HAVE. SORRY. BATCH. SO, THIS IS MY BATCH OPERATIONS RIGHT HERE, SO I HAVE TO PLACE ALL THE THREE PLACES. IF I RUN THIS UP HERE, IT’S GOING TO ASK ME THE GROUP NAME I WANT, SO LIVE DEMO, AND I’M GOING TO RUN THIS PROCESS AND LET’S SEE WHAT HAPPENS HERE. IT WILL GO THROUGH THE PROCESS. I WILL JUST OPEN UP THE TEAMS HERE AND SEE WHAT HAPPENS THERE. I WILL CLOSE IT MICROSOFT GRAPH HAS ALL THE OPERATIONS ASYNCHRONOUS AS SO WHENEVER YOU CALL IT DOESN’T COMPLETE THE OPERATION. THERE’S A DELAY OF ONE MINUTE. YOU CAN HAVE A DEPENDENCY TO INVOKE OTHER WORKFLOW SO IN THE MICROSOFT FLOW YOU CAN CALL A DIFFERENT WORKFLOW WHICH CAN DO THE JOB SO YOU CAN CREATE A TEAM AND CHANNEL FLOW, AND THEN YOU CAN INVOKE THAT FLOW FROM THIS GROUP FLOW. SO YOU WILL KNOW ONCE THIS FLOW IS COMPLETED, THE NEXT ONE WILL GO. THAT WILL BE EASY TO DO THE PROCESSING AS WELL. AND THAT HELPS TO DEFINE DIAGNOSTICS. 46 51. HOPEFULLY IT WILL COMPLETE ALMOST DONE. AND IT WILL GO AND CREATE THE TEAM. VERY QUICK. YOU SEE? SO AS SOON AS THE GROUP IS CREATED, CREATING THE TEAMS AND CHANNEL DOES NOT TAKE TIME, AND WHEN I LOOK UPON THAT, I GOT MY TEAM STRUCTURE OVER HERE ALREADY, SO IT HAS THE MARKETING CULTURE, THE CONTRACT, AND THE REGIONAL CLIENT CONTRACT. AS YOU SEE HERE, IN THE PROCESS OF THE CONNECTORS, I DON’T HAVE TO PASS THE CLIENT I. D. SECRET AND THINGS AGAIN AND AGAIN, I CAN REUSE THAT CONNECTOR IN ONE FLOW OR MORE THAN ONE FLOW AND IT SAVES ME TIME. AND THAT’S WHERE I DEFINE THIS AS A BEST OPTION TO USE THE CONNECTORS WITH THE BADGE OPTION LET ME JUMP BACK TO THE DEMO, TO THE SLIDES. THAT WAS THE DEMO. WE WILL JUST RECAP HERE. WE HAVE TO CREATE THE AZURE AD APP, THE GRAPH PERMISSIONS, WHETHER ADMIN OR DELEGATE, CREATE THE CONNECTORS AND FIND OUT THE RESTING POINTS WE NEED AND JUST EXTEND FLOW TO USE THAT CONNECTOR AND WRITE TO THE APPLICATION LOGIC NOW, WHAT NEXT YOU CAN DO IS FROM HERE, THERE’S A MICROSOFT FLOW TUTORIAL, PRETTY MUCH THE SAME WHAT I WAS DOING, MORE IN DETAIL, AND YOU CAN LOOK UPON THAT. THERE ARE A FEW MORE SESSIONS ON THE TEAMS AND THE GRAPH AND THE SECURITY SIDE, AND YOU WILL SEE THE FLOW AND GRAPH SECURITY ALSO BEING USED TOGETHER, SO IT’S NOT JUST ABOUT THE BUSINESS PROCESS; THE FLOW HAS THE DIRECT END-POINTS FOR THE SECURITY AS WELL, WHICH ARE IN THE GRAPH. SO YOU CAN AUTOMATE YOUR SECURITY MONITORING, ALSO USING THE FLOW. THEY WILL HAVE SOME DEMOS READY, I AM PRETTY SURE THE NEXT, LET’S TALK ABOUT IF YOU HAVE ANY OTHER QUESTIONS, AND I HAVE JUST MATERIAL FOR YOU FOR YOUR PATIENCE AND LISTENING TO ME. PLEASE COMPLETE YOUR EVALUATIONS, WE NEED YOUR FEEDBACK, IF YOU HAVE ANYTHING, FEEL FREE TO SHARE WITH ME. THANK