{"id":7275,"date":"2022-01-31T07:00:00","date_gmt":"2022-01-31T15:00:00","guid":{"rendered":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/power-automate\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/"},"modified":"2025-06-11T07:51:03","modified_gmt":"2025-06-11T14:51:03","slug":"using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards","status":"publish","type":"post","link":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/power-automate\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/","title":{"rendered":"Using the Power Platform to Automate the Classification and Validation of US Vaccination Record Cards"},"content":{"rendered":"<p>Hello Automation Enthusiasts! My name is John Straumann and I am an Automation Specialist with the Mighty South region here at Microsoft.<\/p>\n<p>In this post we will learn how to easily and quickly build a solution to automate the validation and data extraction of COVID-19 vaccination cards. We will use vaccination cards from the US, but the same steps can be used for vaccination cards or documents from other countries. We are going to go step-by-step to build an image classification model, an information extraction model, and then use those models in a Power Automate automation.<\/p>\n<p>We will seek to demonstrate the tremendous value the Power Platform can provide for Microsoft Customers, in that every step we will see is part of the platform, and can be performed by a Citizen Developer, i.e., professional coding skills NOT required!<\/p>\n<p>The solution showcased in this article uses several components from the Microsoft Power Platform:<\/p>\n<p><b>Power Automate:<\/b> lets users create automated workflows between applications and services.<\/p>\n<p><b>AI Builder<\/b>: a Microsoft Power Platform capability that allows you to easily add intelligence to your automations and apps and predict outcomes to help improve business performance without writing code.<\/p>\n<p><b>LOBE:<\/b> Lobe helps you train machine learning image classification models with a free, easy to use tool. Just show it examples of what you want it to learn, and it automatically trains a custom machine learning image classification model that can be shipped in your app.<\/p>\n<p>In addition to common scenarios addressed by AI Builder such as Invoice and PDF processing, lately we are seeing requests from customers to help with the automated processing of COVID-19 vaccination cards. One such scenario we saw recently was a customer who had employees emailing COVID-19 vaccination cards, and the customer wanted the cards analyzed for completeness of information, and then have the card document stored to a central location on their intranet. Please note that such a scenario could have implications regarding the storage of Personal Health Information, so please be sure your organization understands and complies with all local, state, and federal laws regarding such information. In this example all of the personal information on the cards is simulated.<\/p>\n<p>The solution follows these process steps:<\/p>\n<ol>\n<li>A Power Automate automation flow scans Outlook for incoming emails with COVID cards attached. The automated flow retrieves the attachment from the email, and if the subject is \u201cCOVID Vaccination Card\u201d then uses an AI Builder model to determine if the attachment is a COVID-19 Vaccination card<\/li>\n<li>If yes, the information from the card is extracted using the AI Builder model. If no, the automation can either stop or report an error, in this example we will simply stop processing.<\/li>\n<li>The automation then uses an Image Classification model to detect whether the COVID-19 vaccination card has a QR code or not.<\/li>\n<li>If the card has a QR code, an AI Builder model scans the card and extracts the information of the card, validates it, and saves the card to OneDrive for Business. At this point the automated flow could connect to a service and validate the QR card, depending on what services are available in the area.<\/li>\n<li>The final step is an AI Builder model scans the card and extracts the information entered on the card, validates the saves the card to OneDrive for Business.<\/li>\n<\/ol>\n<p>So, let\u2019s look at how this example was built.<\/p>\n<p>\u00a0<\/p>\n<h2>Building an image classification model to classify vaccination cards with or without QR codes<\/h2>\n<p><b>Step 1:<\/b> Obtain some sample COVID Vaccination Card images.\u00a0You can download sample cards\u00a0<a href=\"https:\/\/go.microsoft.com\/fwlink\/?linkid=2185831\">here<\/a> . Be sure to get at least 5 cards with QR codes, and 5 cards without QR codes, and fill in the relevant information with demo data as shown:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone wp-image-7299 size-full\" height=\"827\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/covid3.png\" width=\"1096\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/covid3.webp 1096w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/covid3-300x226.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/covid3-1024x773.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/covid3-768x580.webp 768w\" sizes=\"auto, (max-width: 1096px) 100vw, 1096px\" \/><br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone wp-image-7278 size-full\" height=\"771\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/VaxCardQR4.png\" width=\"351\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/VaxCardQR4.webp 351w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/VaxCardQR4-137x300.webp 137w\" sizes=\"auto, (max-width: 351px) 100vw, 351px\" \/><br \/>\n<b>Step 2:<\/b> Build your LOBE prediction model. Go to <a href=\"https:\/\/www.lobe.ai\/\">https:\/\/www.lobe.ai\/<\/a> and download and install the Lobe desktop app. Once installation is done, run the Lobe application and select New Project.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone wp-image-7279 size-full\" height=\"584\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe1.png\" width=\"806\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe1.webp 806w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe1-300x217.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe1-768x556.webp 768w\" sizes=\"auto, (max-width: 806px) 100vw, 806px\" \/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 3:<\/b> Click Import and browse to the directory where the training images are stored on your local hard drive.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone wp-image-7280 size-full\" height=\"814\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe2.png\" width=\"1268\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe2.webp 1268w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe2-300x193.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe2-1024x657.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe2-768x493.webp 768w\" sizes=\"auto, (max-width: 1268px) 100vw, 1268px\" \/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 4<\/b>: Click \u201cImport Images from your Computer\u201d<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7281\" height=\"806\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe3.png\" width=\"1260\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe3.webp 1260w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe3-300x192.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe3-1024x655.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe3-768x491.webp 768w\" sizes=\"auto, (max-width: 1260px) 100vw, 1260px\" \/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 5:<\/b> Lobe classifies images according to Labels, in this example we are using 2 simple labels: QR and NOQR. Select the Images for the QR label and click Open.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7282\" height=\"711\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe4.png\" width=\"1183\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe4.webp 1183w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe4-300x180.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe4-1024x615.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe4-768x462.webp 768w\" sizes=\"auto, (max-width: 1183px) 100vw, 1183px\" \/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 6:<\/b> Label each Card with a QR Code image with the QR label<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7283\" height=\"807\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe5.png\" width=\"1264\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe5.webp 1264w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe5-300x192.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe5-1024x654.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe5-768x490.webp 768w\" sizes=\"auto, (max-width: 1264px) 100vw, 1264px\" \/><br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7284\" height=\"807\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe6.png\" width=\"1263\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe6.webp 1263w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe6-300x192.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe6-1024x654.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe6-768x491.webp 768w\" sizes=\"auto, (max-width: 1263px) 100vw, 1263px\" \/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 7:<\/b> Follow the same steps and import and label the NOQR images.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7285\" height=\"808\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe7.png\" width=\"1266\"\/> <img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7286\" height=\"810\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe8.png\" width=\"1265\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe8.webp 1265w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe8-300x192.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe8-1024x656.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe8-768x492.webp 768w\" sizes=\"auto, (max-width: 1265px) 100vw, 1265px\" \/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 8:<\/b> This screen shows what the LOBE app should look like when you\u2019re done. Next, we will export the model for use in Power Automate, click Use.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7287\" height=\"1141\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe9.png\" width=\"1262\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe9.webp 1262w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe9-300x271.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe9-1024x926.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe9-768x694.webp 768w\" sizes=\"auto, (max-width: 1262px) 100vw, 1262px\" \/><br \/>\n<b>Step 9:<\/b> Click Export<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7288\" height=\"1140\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe10.png\" width=\"1262\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe10.webp 1262w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe10-300x271.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe10-1024x925.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe10-768x694.webp 768w\" sizes=\"auto, (max-width: 1262px) 100vw, 1262px\" \/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 10:<\/b> Click Export your model to AI Builder<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7289\" height=\"1138\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe11.png\" width=\"1262\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe11.webp 1262w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe11-300x271.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe11-1024x923.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe11-768x693.webp 768w\" sizes=\"auto, (max-width: 1262px) 100vw, 1262px\" \/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 11:<\/b> You\u2019ll be asked to sign in<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7290\" height=\"1139\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe12.png\" width=\"1263\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe12.webp 1263w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe12-300x271.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe12-1024x923.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe12-768x693.webp 768w\" sizes=\"auto, (max-width: 1263px) 100vw, 1263px\" \/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 12:<\/b> Pick your account<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7291\" height=\"369\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe13.png\" width=\"439\"\/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 13:<\/b> Click Continue at this prompt<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7292\" height=\"341\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe14.png\" width=\"443\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe14.webp 443w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe14-300x231.webp 300w\" sizes=\"auto, (max-width: 443px) 100vw, 443px\" \/><\/p>\n<p>\u00a0<\/p>\n<p>\u00a0<\/p>\n<p><b>Step 14:<\/b> At this prompt, select the Check Box and Click Open<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7293\" height=\"163\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe15.png\" width=\"528\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe15.webp 528w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe15-300x93.webp 300w\" sizes=\"auto, (max-width: 528px) 100vw, 528px\" \/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 15:<\/b> Name your Model, pick your environment, and click Export.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7294\" height=\"1141\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe16.png\" width=\"1265\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe16.webp 1265w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe16-300x271.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe16-1024x924.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe16-768x693.webp 768w\" sizes=\"auto, (max-width: 1265px) 100vw, 1265px\" \/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 16:<\/b> Click \u201cOptimize and Export\u201d or just click \u201cExport\u201d, in production you should always optimize the model, however since this is a demo\/lab it&#8217;s not necessary.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7295\" height=\"352\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe17.png\" width=\"479\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe17.webp 479w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe17-300x220.webp 300w\" sizes=\"auto, (max-width: 479px) 100vw, 479px\" \/><br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7296\" height=\"359\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe18.png\" width=\"476\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe18.webp 476w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe18-300x226.webp 300w\" sizes=\"auto, (max-width: 476px) 100vw, 476px\" \/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 17:<\/b> Click Close<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7297\" height=\"338\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe19.png\" width=\"476\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe19.webp 476w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe19-300x213.webp 300w\" sizes=\"auto, (max-width: 476px) 100vw, 476px\" \/><\/p>\n<p>\u00a0<\/p>\n<p><b>Step 18:<\/b> Go to Power Automate on the Web: <a href=\"https:\/\/preview.flow.microsoft.com\/en-us\/\">Microsoft Power Automate | Microsoft Power Platform<\/a>, expand AI Builder (1.), and your Model should show up (2.). If you do not see your model, ensure you are in the same environment as the Model was published to (3.)<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7298\" height=\"1123\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Lobe20.png\" width=\"1225\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe20.webp 1225w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe20-300x275.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe20-1024x939.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Lobe20-768x704.webp 768w\" sizes=\"auto, (max-width: 1225px) 100vw, 1225px\" \/><\/p>\n<p>\u00a0<\/p>\n<p>Now the LOBE image classification model is ready to be used in an Automation. The next step is to build and train our COVID-19 vaccination card form processing model in AI Builder.<\/p>\n<p>\u00a0<\/p>\n<h2>Building a form processing model to extract the information from the vaccination cards<\/h2>\n<p>The first step in defining an AI Builder form processing model is to determine the fields you need. Looking at our image of a COVID-19 Vaccination card:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7299\" height=\"827\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/covid3.png\" width=\"1096\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/covid3.webp 1096w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/covid3-300x226.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/covid3-1024x773.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/covid3-768x580.webp 768w\" sizes=\"auto, (max-width: 1096px) 100vw, 1096px\" \/><\/p>\n<p>\u00a0<\/p>\n<p>We can define our needed fields list as:<\/p>\n<ol>\n<li>Header<\/li>\n<li>LastName<\/li>\n<li>FirstName<\/li>\n<li>DOB<\/li>\n<li>FirstDoseProduct<\/li>\n<li>FirstDoseLot<\/li>\n<li>FirstDoseDate<\/li>\n<li>SecondDoseProduct<\/li>\n<li>SecondDoseLot<\/li>\n<li>SecondDoseDate<\/li>\n<li>FirstDoseSite<\/li>\n<li>SecondDoseSite<\/li>\n<\/ol>\n<p>With our fields list defined, we can build our model in AI Builder. The steps are:<\/p>\n<ol>\n<li>Login to <a href=\"https:\/\/flow.microsoft.com\">Power Automate<\/a>, expand AI Builder in the left nav, select &#8220;Build&#8221;, and then select\u00a0 &#8220;Form Processing&#8221;<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7307\" height=\"890\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/1.png\" width=\"1445\"\/><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7352\" height=\"1041\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/4-1.png\" width=\"1295\"\/><\/li>\n<li>Type a descriptive name (1), then select Create (2)<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7353\" height=\"649\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/5-1.png\" width=\"877\"\/><\/li>\n<li>We need to set up an element for each of the fields we defined. So, for each field, select the Add drop-down, and select Field.<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7354\" height=\"1038\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/6-1.png\" width=\"1300\"\/><\/li>\n<li>Enter each name (1), then select Done (2) and repeat the steps until all the fields are defined<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7355\" height=\"340\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/7-1.png\" width=\"402\"\/><\/li>\n<li><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\">When you are done defining fields, the screen should look like this screen, select Next<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7356\" height=\"1045\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/8-1.png\" width=\"1301\"\/><\/span><\/span><\/span><\/li>\n<li>The next steps are where we see some of the magic of AI Builder in mapping the fields we defined to the documents. Because we have 2 distinct vaccination card layouts, we are going to create 2 Collections. Click \u201cNew Collection\u201d<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7357\" height=\"1047\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/9-1.png\" width=\"1300\"\/><\/li>\n<li>Select the \u201c+\u201d button to add documents to the collection<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7358\" height=\"1045\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/10-1.png\" width=\"1299\"\/><\/li>\n<li>Select \u201cAdd Documents\u201d<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7359\" height=\"1046\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/11-1.png\" width=\"1300\"\/><\/li>\n<li>Select \u201cUpload from Local Storage\u201d<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7360\" height=\"1046\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/12-1.png\" width=\"1301\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/12-1.webp 1301w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/12-1-300x241.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/12-1-1024x823.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/12-1-768x617.webp 768w\" sizes=\"auto, (max-width: 1301px) 100vw, 1301px\" \/><\/li>\n<li>Browse to the folder where your documents are, select each document to upload (1), then select Open (2)<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7361\" height=\"712\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/13-1.png\" width=\"1185\"\/><\/li>\n<li>Select \u201cUpload X Documents\u201d, where &#8220;X&#8221; will equal the number of documents you selected for upload, in this case, 6<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7362\" height=\"628\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/14-1.png\" width=\"785\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/14-1.webp 785w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/14-1-300x240.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/14-1-768x614.webp 768w\" sizes=\"auto, (max-width: 785px) 100vw, 785px\" \/><\/li>\n<li>When you see this dialog showing the upload is finished,\u00a0 select \u201cClose\u201d<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7363\" height=\"677\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/15-1.png\" width=\"784\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/15-1.webp 784w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/15-1-300x259.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/15-1-768x663.webp 768w\" sizes=\"auto, (max-width: 784px) 100vw, 784px\" \/><\/li>\n<li>Select the name field (1) and rename the first collection. Then select New Collection (2).<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7364\" height=\"1043\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/16-1.png\" width=\"1301\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/16-1.webp 1301w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/16-1-300x241.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/16-1-1024x821.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/16-1-768x616.webp 768w\" sizes=\"auto, (max-width: 1301px) 100vw, 1301px\" \/><\/li>\n<li>Name the 2nd collection, and then follow the same steps to upload the next set of documents.<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7365\" height=\"1044\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/17-1.png\" width=\"1301\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/17-1.webp 1301w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/17-1-300x241.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/17-1-1024x822.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/17-1-768x616.webp 768w\" sizes=\"auto, (max-width: 1301px) 100vw, 1301px\" \/><\/li>\n<li>When you\u2019re done, you\u2019ll see this screen. select Next.<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7366\" height=\"1043\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/18-1.png\" width=\"1298\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/18-1.webp 1298w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/18-1-300x241.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/18-1-1024x823.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/18-1-768x617.webp 768w\" sizes=\"auto, (max-width: 1298px) 100vw, 1298px\" \/><\/li>\n<li>These next steps are where the real magic of AI Builder occurs! For each field we defined, we need to highlight that field on the documents and then map the field. This will teach the AI model how to extract the data we want. Select the first Collection.<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7367\" height=\"1042\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/19-1.png\" width=\"1297\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/19-1.webp 1297w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/19-1-300x241.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/19-1-1024x823.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/19-1-768x617.webp 768w\" sizes=\"auto, (max-width: 1297px) 100vw, 1297px\" \/><\/li>\n<li>Each document that needs to be mapped is marked with a red circle. Select the first document, and then we need to select each data field and map it to its corresponding element. To do this, simply click on the data field on the document, and then select the field you need from the list that appears. For a field that is multiple words, such as the Header field which is something like \u201cCOVID-19 Vaccination Record Card\u201d, use the mouse to draw a box around the entire line and then the correct field from the list that appears. Sor for example, we want the header field as shown:<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7368\" height=\"1039\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/20-1.png\" width=\"1292\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/20-1.webp 1292w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/20-1-300x241.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/20-1-1024x823.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/20-1-768x618.webp 768w\" sizes=\"auto, (max-width: 1292px) 100vw, 1292px\" \/><\/li>\n<li>So, we use the mouse to draw a box around all the words in the header, then select \u201cHeader\u201d from the list that appears:<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7369\" height=\"370\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/20_1-1.png\" width=\"499\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/20_1-1.webp 499w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/20_1-1-300x222.webp 300w\" sizes=\"auto, (max-width: 499px) 100vw, 499px\" \/><\/li>\n<li>When done, you will see the selection box around the data turns green, and a green check mark appears next to the selected field.<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7370\" height=\"1042\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/21-1.png\" width=\"1299\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/21-1.webp 1299w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/21-1-300x241.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/21-1-1024x821.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/21-1-768x616.webp 768w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/li>\n<li>Next, we follow these steps for each field and for every sample document. Note that if a data element is not on the document, you select \u201cNot Available in Document\u201d from the menu to the right of the field. When you are finished with a document, the screen will look like the screen below, and then you select the next document in line to continue the process. When you select the next document, AI Builder will save your progress. Repeat the steps for all the documents you uploaded as part of the collection.<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7370\" height=\"1042\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/21-1.png\" width=\"1299\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/21-1.webp 1299w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/21-1-300x241.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/21-1-1024x821.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/21-1-768x616.webp 768w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7371\" height=\"1044\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/22-1.png\" width=\"1297\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/22-1.webp 1297w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/22-1-300x241.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/22-1-1024x824.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/22-1-768x618.webp 768w\" sizes=\"auto, (max-width: 1297px) 100vw, 1297px\" \/><\/li>\n<li>When you\u2019re done, the screen will look like this, select the back arrow next to the name of the first collection.<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7372\" height=\"1036\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/23-1.png\" width=\"1300\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/23-1.webp 1300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/23-1-300x239.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/23-1-1024x816.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/23-1-768x612.webp 768w\" sizes=\"auto, (max-width: 1300px) 100vw, 1300px\" \/><\/li>\n<li>And repeat the steps for the 2nd collection of documents<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7373\" height=\"1042\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/24-1.png\" width=\"1301\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/24-1.webp 1301w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/24-1-300x240.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/24-1-1024x820.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/24-1-768x615.webp 768w\" sizes=\"auto, (max-width: 1301px) 100vw, 1301px\" \/><\/li>\n<li><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\">When you\u2019re done with all the documents in both sets, select Next<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7374\" height=\"1044\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/25-1.png\" width=\"1300\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/25-1.webp 1300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/25-1-300x241.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/25-1-1024x822.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/25-1-768x617.webp 768w\" sizes=\"auto, (max-width: 1300px) 100vw, 1300px\" \/><\/span><\/span><\/span><\/li>\n<li><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\">On this screen select \u201cTrain\u201d<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7375\" height=\"1043\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/26-1.png\" width=\"1296\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/26-1.webp 1296w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/26-1-300x241.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/26-1-1024x824.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/26-1-768x618.webp 768w\" sizes=\"auto, (max-width: 1296px) 100vw, 1296px\" \/><\/span><\/span><\/span><\/li>\n<li>You will see this dialog while AI Builder trains your new model<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7376\" height=\"403\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/27-1.png\" width=\"511\"\/><\/li>\n<li><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\">OK, our model is done training so now we can see it in action! Before publishing your model for use, it\u2019s a best practice to run several tests on sample documents. Depending on the success rate of the tests, you can then decide to go back and continue to refine and improve your model by adding more documents and re-training, or you can publish the Model. Select \u201cQuick Test\u201d<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7379\" height=\"1040\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/30-1.png\" width=\"1295\"\/><\/span><\/span><\/span><\/li>\n<li>Drag-and-drop an image<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7380\" height=\"849\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/31.png\" width=\"768\"\/><\/li>\n<li>Success! Our model successfully recognized all the fields on our sample. Note if you mouse over each field AI Builder will tell you the confidence in the prediction of that field. If you\u2019re not happy with the results, you can continue to refine your model. For production, more tests would be a best practice, and it&#8217;s a good idea to test images of varying quality, picture angles, etc. For this example let&#8217;s test our other document type. Select \u201cStart Over\u201d<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7381\" height=\"843\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/32.png\" width=\"767\"\/><\/li>\n<li>Drag and drop a sample of the 2nd document type and see the results, then select Close.<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7382\" height=\"850\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/33.png\" width=\"767\"\/><\/li>\n<li><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\">Select \u201cPublish\u201d<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7383\" height=\"1044\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/34.png\" width=\"1298\"\/><\/span><\/span><\/span><\/li>\n<li><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\">You will see this screen:<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7384\" height=\"1033\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/35.png\" width=\"1294\"\/><\/span><\/span><\/span><\/span><\/p>\n<h2>Putting everything together in an automation flow<\/h2>\n<\/li>\n<li>When publishing is finished, select \u201cUse Model\u201d<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7385\" height=\"1042\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/36.png\" width=\"1298\"\/><\/li>\n<li>Select \u201cNew Flow in Power Automate\u201d<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7386\" height=\"1041\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/37.png\" width=\"1296\"\/><\/li>\n<li>And for some more Power Platform magic, we are presented with several template options to kick start our automation configuration! Select \u201cDocuments are received attached to emails sent to a Microsoft 365 Outlook Work account\u201d. So in this case the &#8220;trigger&#8221;, or the event that runs a Power Automate flow, is an email arriving.\u00a0 There are many kinds of triggers, such as a schedule, online documents being created or updated, etc.<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7387\" height=\"1040\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/38.png\" width=\"1297\"\/><\/li>\n<li>One of the most powerful advantages of the One-Microsoft Power Platform solution is the integration between the various components of the platform such as Office, Power Automate, etc. This platform provides tremendous potential for solutions and value for our Customers! On this screen we see that Power Automate has detected it needs 3 connectors for this template, and has confirmed the connections. If a needed connection did not exist, the platform would step you through setting up the required connection. In addition to out-of-the box connections on the Microsoft Power Platform, we have over 500 connectors to products available here: <a href=\"https:\/\/powerautomate.microsoft.com\/en-us\/connectors\/\">https:\/\/powerautomate.microsoft.com\/en-us\/connectors\/<\/a> For each connector select Sign In and thanks to the integration of the One Microsoft platform, the authorizations will occur automatically!<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7388\" height=\"1041\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/39.png\" width=\"1295\"\/><\/li>\n<li><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\">After authorizing the connections, select Continue<\/span><\/span><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7390\" height=\"267\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/41.png\" width=\"622\"\/><\/li>\n<li><span style=\"font-size: 1rem\"><span style=\"font-size: 1rem\">Ready for some more magic that shows the power of the platform? Power Automate actually builds almost all of the required steps for us to have a functioning automation, and we can choose to either use the configuration as is, or drag-and-drop more steps as needed to automate our process. Important note, be sure to save your Automation using the \u201cSave\u201d button before leaving the page in your browser.<\/span><\/span><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7391\" height=\"1042\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/41_1.png\" width=\"1297\"\/><br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7392\" height=\"1043\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/41_2.png\" width=\"1297\"\/><\/li>\n<\/ol>\n<p>The step \u201cExtract information from forms\u201d has been preconfigured to us the AI Builder model we created, \u201cCOVIDVaxCards\u201d and process the email attachment:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7393\" height=\"269\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/42.png\" width=\"605\"\/><\/p>\n<p>Now while this template process is actually quite useful and already runs, it does not meet our business requirements of determining if the attachment is actually a COVID card, and if so, determining if the card has a QR code using our Lobe prediction model, and then of storing the COVID card image on our secure Microsoft OneDrive for Business (<a href=\"https:\/\/newed.any0.dpdns.org\/en-us\/microsoft-365\/onedrive\/onedrive-for-business\">https:\/\/newed.any0.dpdns.org\/en-us\/microsoft-365\/onedrive\/onedrive-for-business<\/a>). To achieve our business outcome, we need to modify the automation flow, so let\u2019s do that.<\/p>\n<p>First let\u2019s change the Subject Filter on the email trigger so this automation only runs when an email with subject \u2018COVID Vaccination Card\u2019 is received.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"Update Subject Filter\" class=\"alignnone size-full wp-image-7474\" height=\"287\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Picture1.png\" width=\"344\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Picture1.webp 344w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Picture1-300x250.webp 300w\" sizes=\"auto, (max-width: 344px) 100vw, 344px\" \/><\/p>\n<p>Next, let\u2019s define 3 Variables, all of type String, to hold some values in this automation:<\/p>\n<p><strong>a<\/strong> A variable to set if a QR code is detected<br \/>\n<strong>b<\/strong> A variable for the filename to store the card<br \/>\n<strong>c<\/strong> A variable to create a message to the user<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7405\" height=\"606\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/8-2.png\" width=\"605\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/8-2.webp 605w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/8-2-300x300.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/8-2-150x150.webp 150w\" sizes=\"auto, (max-width: 605px) 100vw, 605px\" \/><\/p>\n<p>\u00a0<\/p>\n<p>Now, let\u2019s setup Condition after the \u2018Extract information from forms actions\u2019 that proceeds only if the attachment contains the COVID Vaccination Card header. \u00a0Just click \u201cAdd an Action\u201d, and select \u201cControl\u201d, then select \u201cCondition\u201d<br \/>\nTo set the condition, click in the input labeled \u201cChoose a Value\u201d, and Power Automate will give you a list of choices. We want to check if the header value extracted by AI Builder contains COVID, so select \u201cHeader\u201d.<\/p>\n<p>Change the condition in the middle box to \u201ccontains\u201d, and in the last \u201cChoose a value\u201d box, type COVID. So now the Flow will analyze the value of the Header output set by AI Builder, and if it contains the word \u201cCOVID\u201d, the flow will continue.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"Check header condition\" class=\"alignnone size-full wp-image-7475\" height=\"228\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Picture2.png\" width=\"624\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Picture2.webp 624w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Picture2-300x110.webp 300w\" sizes=\"auto, (max-width: 624px) 100vw, 624px\" \/><\/p>\n<p>Now we are going to use the image classification model we built with LOBE and AI Builder to detect if the card has a QR Code or not. Under the \u201cIf Yes\u201d path, click \u201cAdd an action\u201d.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"Add new action\" class=\"alignnone size-full wp-image-7476\" height=\"228\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/Picture3.png\" width=\"624\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Picture3.webp 624w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/Picture3-300x110.webp 300w\" sizes=\"auto, (max-width: 624px) 100vw, 624px\" \/><\/p>\n<p>Follow the same steps as before to select the AI Builder connector, but this time select \u201cPredict\u201d<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7459\" height=\"843\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/16-3.png\" width=\"642\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/16-3.webp 642w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/16-3-228x300.webp 228w\" sizes=\"auto, (max-width: 642px) 100vw, 642px\" \/> <img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7423\" height=\"820\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/17-2.png\" width=\"640\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/17-2.webp 640w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/17-2-234x300.webp 234w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/p>\n<p>Select the &#8220;Model&#8221; drop down, and select the model we built earlier, &#8220;COVIDQR Model&#8221;. Note this time we are using the Image Classification Model.<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7460\" height=\"468\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/18-3.png\" width=\"644\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/18-3.webp 644w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/18-3-300x218.webp 300w\" sizes=\"auto, (max-width: 644px) 100vw, 644px\" \/><\/p>\n<p>Click in the &#8220;Image&#8221; input, and select &#8220;Attachments Content&#8221;<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7461\" height=\"759\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/19-3.png\" width=\"1039\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/19-3.webp 1039w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/19-3-300x219.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/19-3-1024x748.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/19-3-768x561.webp 768w\" sizes=\"auto, (max-width: 1039px) 100vw, 1039px\" \/><\/p>\n<p>For this example we are not going to take any further action if a QR code is found because there is no online service to connect with to perform validation, except to set a message. So, we need to set the value of our QR Variable based on the result from our LOBE prediction model. Click the \u201cAdd an Action\u201d button, search Variable, and select \u201cSet Variable\u201d<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7428\" height=\"140\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/20_1-2.png\" width=\"603\"\/><\/p>\n<p>We saw earlier that inputs in Power Automate can be set to dynamic values and outputs from earlier steps. So, in this case we want to set our QR variable to the output from our LOBE model, so under the name drop-down, select the QR Variable we created earlier. Then click in the \u201cValue\u201d input, and from the Dynamics Content list, under \u201cPredict\u201d, select \u201cPrediction\u201d. We will use this value later to create a message<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7426\" height=\"695\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/19_1-1.png\" width=\"1035\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/19_1-1.webp 1035w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/19_1-1-300x201.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/19_1-1-1024x688.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/19_1-1-768x516.webp 768w\" sizes=\"auto, (max-width: 1035px) 100vw, 1035px\" \/><\/p>\n<p>The next step we will take is to save the file to our secure internal OneDrive for Business site. I created a folder on my OneDrive called \u201cCOVID Vax Cards\u201d. We must build a path to the file and save it in the Filename variable we created before. Click the \u201cAdd an Action\u201d button, search Variable, and select \u201cSet Variable\u201d<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7428\" height=\"140\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/20_1-2.png\" width=\"603\"\/><\/p>\n<p>Fo<span class=\"NormalTextRun BCX8 SCXW192615234\">r <\/span><span class=\"NormalTextRun BCX8 SCXW192615234\">our save filename we need to build a path consisting of the URL to our <\/span><span class=\"NormalTextRun BCX8 SCXW192615234\">OneDrive<\/span><span class=\"NormalTextRun BCX8 SCXW192615234\">, and a filename. To accomplish that, we now <\/span><span class=\"NormalTextRun BCX8 SCXW192615234\">introduce Power Automate expressions.\u00a0<\/span> <span class=\"NormalTextRun BCX8 SCXW192615234\">In Power Automate, expressions are a set of simple functions that enable you to return data. Put simpler, you use expressions to write a formula to get your data the way you want it. Expressions allow you to do things like convert a date to UTC, divide two numbers, create that perfect string by combining fields, and much more all by using various functions.<\/span> <span class=\"NormalTextRun BCX8 SCXW192615234\">Click the drop-down next <\/span><span class=\"NormalTextRun BCX8 SCXW192615234\">to the \u201cName\u201d <\/span><span class=\"NormalTextRun ContextualSpellingAndGrammarErrorV2 BCX8 SCXW192615234\">label, and<\/span><span class=\"NormalTextRun BCX8 SCXW192615234\"> select the \u201cFilename\u201d variable we created earlier. <\/span><span class=\"NormalTextRun BCX8 SCXW192615234\">Then, click in the <\/span><span class=\"NormalTextRun BCX8 SCXW192615234\">\u201cValue\u201d <\/span><span class=\"NormalTextRun BCX8 SCXW192615234\">input for the variable, and instead of <\/span><span class=\"NormalTextRun BCX8 SCXW192615234\">choosing <\/span><span class=\"NormalTextRun BCX8 SCXW192615234\">\u201dDynamic<\/span><span class=\"NormalTextRun BCX8 SCXW192615234\"><span class=\"NormalTextRun BCX8 SCXW192615234\"> Content\u201d as we did before, select \u201cExpression\u201d.\u00a0<\/span><\/span><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7429\" height=\"675\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/20_2-1.png\" width=\"1026\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/20_2-1.webp 1026w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/20_2-1-300x197.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/20_2-1-1024x674.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/20_2-1-768x505.webp 768w\" sizes=\"auto, (max-width: 1026px) 100vw, 1026px\" \/><\/p>\n<p>You will see headers for each expression type, and luckily the first one in the list is the one we need, the String \u201cconcat\u201d expression, which combines a number of strings into 1 string.<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7430\" height=\"743\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/21-2.png\" width=\"1031\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/21-2.webp 1031w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/21-2-300x216.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/21-2-1024x738.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/21-2-768x553.webp 768w\" sizes=\"auto, (max-width: 1031px) 100vw, 1031px\" \/><\/p>\n<p>Click it, and you will see the expression pasted into the input box. Now we can use dynamic content just like we did before.\u00a0 We need to build a filename of &lt;firstname&gt;&lt;lastname&gt;.png. Click the mouse inside the brackets of the expression as shown, then click the \u201cDynamic Content\u201d tab.<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7431\" height=\"725\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/22-2.png\" width=\"1024\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/22-2.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/22-2-300x212.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/22-2-768x544.webp 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p>Scroll down to find the AI Builder \u201cExtract information from forms\u201d value for Last name and click it. NOTE be sure to select \u201cLastName value\u201d, not just \u201cLastName\u201d.<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7432\" height=\"688\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/23-2.png\" width=\"1019\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/23-2.webp 1019w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/23-2-300x203.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/23-2-768x519.webp 768w\" sizes=\"auto, (max-width: 1019px) 100vw, 1019px\" \/><\/p>\n<p>Then, in the Fx input box, scroll all the way to the right, and put a comma after the first input, then find and click the \u201cFirstname value\u201d data item.<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7433\" height=\"690\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/24-2.png\" width=\"1028\"\/><\/p>\n<p>\u00a0<\/p>\n<p>The expression should look like this:<\/p>\n<p><em>concat(outputs(&#8216;Extract_information_from_forms&#8217;)?[&#8216;body\/responsev2\/predictionOutput\/labels\/LastName\/value&#8217;],outputs(&#8216;Extract_information_from_forms&#8217;)?[&#8216;body\/responsev2\/predictionOutput\/labels\/FirstName\/value&#8217;])<\/em><\/p>\n<p>Put another comma after the last ] bracket, and type \u2018.png\u2019, so now the expression is:<\/p>\n<p><em>concat(outputs(&#8216;Extract_information_from_forms&#8217;)?[&#8216;body\/responsev2\/predictionOutput\/labels\/LastName\/value&#8217;],outputs(&#8216;Extract_information_from_forms&#8217;)?[&#8216;body\/responsev2\/predictionOutput\/labels\/FirstName\/value&#8217;], \u2018.png\u2019)<\/em><\/p>\n<p>So, for example, if the name on the COVID-19 Card is John Doe, the file name will be JohnDoe.png.<\/p>\n<p>Click OK and the expression will be saved and the component will look like this:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7427\" height=\"142\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/20-2.png\" width=\"604\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/20-2.webp 604w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/20-2-300x71.webp 300w\" sizes=\"auto, (max-width: 604px) 100vw, 604px\" \/><\/p>\n<p>Next, click the \u201cAdd an action\u201d button, search OneDrive, and select \u201cOneDrive for Business\u201d, then click \u201cCreate File\u201d<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7435\" height=\"703\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/26-2.png\" width=\"609\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/26-2.webp 609w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/26-2-260x300.webp 260w\" sizes=\"auto, (max-width: 609px) 100vw, 609px\" \/><\/p>\n<p>If this is your first time connecting to OneDrive you\u2019ll be asked to sign in, and we see the power of the One Microsoft Platform and the integrated security. We can sign in with our account and we are connected!<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7437\" height=\"184\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/28-2.png\" width=\"605\"\/><\/p>\n<p>For the Create file inputs, set it up as shown. By now you should be familiar enough with this that you can do these inputs on your own! Note the Folder Path is the name of the OneDrive for Business folder I created, so use whatever folder name you created on your OneDrive.<br \/>\n<img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7438\" height=\"188\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/29-2.png\" width=\"612\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/29-2.webp 612w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/29-2-300x92.webp 300w\" sizes=\"auto, (max-width: 612px) 100vw, 612px\" \/><\/p>\n<p>Ok we are almost done! The last few steps are:<\/p>\n<ul>\n<li>See if the QR variable is equal to \u201cQR\u201d for a card with a QR code, or \u201cNoQR\u201d for a card without a QR Code.<\/li>\n<li>Create simple messages to be emailed to the User, saying something like \u201cThe COVID card for &lt;firstname&gt; &lt;lastname&gt; does (does not) have a QR Code<\/li>\n<li>Send the message to the User, along with the information from the card extracted by our AI Builder model.<\/li>\n<\/ul>\n<p>Here is a screen of what those last few steps should look like, as an exercise try to create these steps yourself!<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7439\" height=\"724\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/30-2.png\" width=\"1297\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/30-2.webp 1297w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/30-2-300x167.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/30-2-1024x572.webp 1024w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/30-2-768x429.webp 768w\" sizes=\"auto, (max-width: 1297px) 100vw, 1297px\" \/><\/p>\n<p>\u00a0<\/p>\n<p>So, let\u2019s see the Automation actually run! To do so, first click Save (1) \u2013 I hope you\u2019ve been saving all along! &#8211; , then after the save is complete, click Test (2).<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7463\" height=\"516\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/31-1.png\" width=\"973\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/31-1.webp 973w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/31-1-300x159.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/31-1-768x407.webp 768w\" sizes=\"auto, (max-width: 973px) 100vw, 973px\" \/><\/p>\n<p>When you click Test, you will see the screen shown below. Select the \u201cManually\u201d radio button, then click Test.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7464\" height=\"1009\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/32-1.png\" width=\"975\"\/><\/p>\n<p>When you see this screen with the Spinner, you can test the Automation by simply opening Outlook, creating a new email, attaching a COVID card and sending. Note: Be sure to set the Subject to \u201cCOVID Vaccination Card\u201d as this is the filter the Automation flow looks for and be sure to send the email to the Account the Automation is running under, in this case, Administrator.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7465\" height=\"652\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/33-1.png\" width=\"975\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/33-1.webp 975w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/33-1-300x201.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/33-1-768x514.webp 768w\" sizes=\"auto, (max-width: 975px) 100vw, 975px\" \/><\/p>\n<p>When the flow successfully runs, your screen will look like this:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7466\" height=\"475\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/34-1.png\" width=\"975\"\/><\/p>\n<p>And the automated flow sends an email with the information:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7467\" height=\"831\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/35-1.png\" width=\"975\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/35-1.webp 975w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/35-1-300x256.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/35-1-768x655.webp 768w\" sizes=\"auto, (max-width: 975px) 100vw, 975px\" \/><\/p>\n<p>And lastly, the COVID Vaccination Card for John Doe is stored to the secure OneDrive for Business.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"alignnone size-full wp-image-7468\" height=\"330\" src=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/36-1.png\" width=\"975\" srcset=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/36-1.webp 975w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/36-1-300x102.webp 300w, https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2022\/01\/36-1-768x260.webp 768w\" sizes=\"auto, (max-width: 975px) 100vw, 975px\" \/><\/p>\n<p>So, to sum up the value we have seen for our customers, there are several key points.<\/p>\n<ol>\n<li>Everything we saw is functionality included with the Power Platform and\/or Microsoft 365. One Microsoft!<\/li>\n<li>Every step could be performed by Citizen Developers and\/or a Fusion Team (I.e. Citizen Developers and Professional Developers)<\/li>\n<li>We saw how automations can remove administrative tasks such as processing incoming documents via emails from human workers, freeing our high-value humans to perform work that takes decision making and creative thought<\/li>\n<\/ol>\n<p>I hope you enjoyed this example and article and please share any feedback you have either in the comments below or in our <a href=\"https:\/\/powerusers.microsoft.com\/t5\/AI-Builder\/bd-p\/AIBuilder\">AI Builder forum<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this post we will learn how to easily and quickly build a solution to automate the validation and data extraction of COVID-19 vaccination cards using AI Builder and Power Automate.<\/p>\n","protected":false},"author":417,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ms_queue_id":[],"ep_exclude_from_search":false,"_classifai_error":"","_classifai_text_to_speech_error":"","_alt_title":"","ms-ems-related-posts":[],"footnotes":""},"audience":[3378],"content-type":[3423],"job-role":[],"product":[3474],"property":[],"topic":[3420],"coauthors":[2975],"class_list":["post-7275","post","type-post","status-publish","format-standard","hentry","audience-it-professional","content-type-tips-and-guides","product-power-automate","topic-ai-and-agents"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Using the Power Platform to Automate the Classification and Validation of US Vaccination Record Cards - Microsoft Power Platform Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Using the Power Platform to Automate the Classification and Validation of US Vaccination Record Cards - Microsoft Power Platform Blog\" \/>\n<meta property=\"og:description\" content=\"In this post we will learn how to easily and quickly build a solution to automate the validation and data extraction of COVID-19 vaccination cards using AI Builder and Power Automate.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/power-automate\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/\" \/>\n<meta property=\"og:site_name\" content=\"Microsoft Power Platform Blog\" \/>\n<meta property=\"article:published_time\" content=\"2022-01-31T15:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-11T14:51:03+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/covid3.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1096\" \/>\n\t<meta property=\"og:image:height\" content=\"827\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"John Straumann\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"John Straumann\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"17 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/\"},\"author\":[{\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/author\/john-straumann\/\",\"@type\":\"Person\",\"@name\":\"John Straumann\"}],\"headline\":\"Using the Power Platform to Automate the Classification and Validation of US Vaccination Record Cards\",\"datePublished\":\"2022-01-31T15:00:00+00:00\",\"dateModified\":\"2025-06-11T14:51:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/\"},\"wordCount\":3507,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/covid3.png\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/\",\"url\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/\",\"name\":\"Using the Power Platform to Automate the Classification and Validation of US Vaccination Record Cards - Microsoft Power Platform Blog\",\"isPartOf\":{\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/covid3.png\",\"datePublished\":\"2022-01-31T15:00:00+00:00\",\"dateModified\":\"2025-06-11T14:51:03+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#primaryimage\",\"url\":\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/covid3.png\",\"contentUrl\":\"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/covid3.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using the Power Platform to Automate the Classification and Validation of US Vaccination Record Cards\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#website\",\"url\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/\",\"name\":\"Microsoft Power Platform Blog\",\"description\":\"Innovate with Business Apps\",\"publisher\":{\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#organization\",\"name\":\"Microsoft Power Platform Blog\",\"url\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2020\/03\/Microsoft-Logo-e1685482038800.png\",\"contentUrl\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2020\/03\/Microsoft-Logo-e1685482038800.png\",\"width\":194,\"height\":145,\"caption\":\"Microsoft Power Platform Blog\"},\"image\":{\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#\/schema\/person\/b1588f4bffc52864a0809bb909a6cf3b\",\"name\":\"John Straumann\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/23879e4c40031e0a126c9f7f6a479e017862fb620370499178bef385623d400c?s=96&d=mm&r=g718ba9a428bbb4852c5efd90bde0cd08\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/23879e4c40031e0a126c9f7f6a479e017862fb620370499178bef385623d400c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/23879e4c40031e0a126c9f7f6a479e017862fb620370499178bef385623d400c?s=96&d=mm&r=g\",\"caption\":\"John Straumann\"},\"url\":\"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/author\/jstraumann\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Using the Power Platform to Automate the Classification and Validation of US Vaccination Record Cards - Microsoft Power Platform Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/","og_locale":"en_US","og_type":"article","og_title":"Using the Power Platform to Automate the Classification and Validation of US Vaccination Record Cards - Microsoft Power Platform Blog","og_description":"In this post we will learn how to easily and quickly build a solution to automate the validation and data extraction of COVID-19 vaccination cards using AI Builder and Power Automate.","og_url":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/power-automate\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/","og_site_name":"Microsoft Power Platform Blog","article_published_time":"2022-01-31T15:00:00+00:00","article_modified_time":"2025-06-11T14:51:03+00:00","og_image":[{"width":1096,"height":827,"url":"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/covid3.png","type":"image\/png"}],"author":"John Straumann","twitter_card":"summary_large_image","twitter_misc":{"Written by":"John Straumann","Est. reading time":"17 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#article","isPartOf":{"@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/"},"author":[{"@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/author\/john-straumann\/","@type":"Person","@name":"John Straumann"}],"headline":"Using the Power Platform to Automate the Classification and Validation of US Vaccination Record Cards","datePublished":"2022-01-31T15:00:00+00:00","dateModified":"2025-06-11T14:51:03+00:00","mainEntityOfPage":{"@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/"},"wordCount":3507,"commentCount":0,"publisher":{"@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#organization"},"image":{"@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#primaryimage"},"thumbnailUrl":"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/covid3.png","inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/","url":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/","name":"Using the Power Platform to Automate the Classification and Validation of US Vaccination Record Cards - Microsoft Power Platform Blog","isPartOf":{"@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#primaryimage"},"image":{"@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#primaryimage"},"thumbnailUrl":"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/covid3.png","datePublished":"2022-01-31T15:00:00+00:00","dateModified":"2025-06-11T14:51:03+00:00","breadcrumb":{"@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#primaryimage","url":"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/covid3.png","contentUrl":"https:\/\/powerautomateblogmedia.azureedge.net\/powerautomateblog\/2022\/01\/covid3.png"},{"@type":"BreadcrumbList","@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/2022\/01\/31\/using-the-power-platform-to-automate-the-classification-and-validation-of-us-vaccination-record-cards\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/"},{"@type":"ListItem","position":2,"name":"Using the Power Platform to Automate the Classification and Validation of US Vaccination Record Cards"}]},{"@type":"WebSite","@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#website","url":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/","name":"Microsoft Power Platform Blog","description":"Innovate with Business Apps","publisher":{"@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#organization","name":"Microsoft Power Platform Blog","url":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2020\/03\/Microsoft-Logo-e1685482038800.png","contentUrl":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-content\/uploads\/2020\/03\/Microsoft-Logo-e1685482038800.png","width":194,"height":145,"caption":"Microsoft Power Platform Blog"},"image":{"@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/#\/schema\/person\/b1588f4bffc52864a0809bb909a6cf3b","name":"John Straumann","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/23879e4c40031e0a126c9f7f6a479e017862fb620370499178bef385623d400c?s=96&d=mm&r=g718ba9a428bbb4852c5efd90bde0cd08","url":"https:\/\/secure.gravatar.com\/avatar\/23879e4c40031e0a126c9f7f6a479e017862fb620370499178bef385623d400c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/23879e4c40031e0a126c9f7f6a479e017862fb620370499178bef385623d400c?s=96&d=mm&r=g","caption":"John Straumann"},"url":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/author\/jstraumann\/"}]}},"bloginabox_animated_featured_image":null,"bloginabox_display_generated_audio":false,"distributor_meta":false,"distributor_terms":false,"distributor_media":false,"distributor_original_site_name":"Microsoft Power Platform Blog","distributor_original_site_url":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog","push-errors":false,"_links":{"self":[{"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/posts\/7275","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/users\/417"}],"replies":[{"embeddable":true,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/comments?post=7275"}],"version-history":[{"count":1,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/posts\/7275\/revisions"}],"predecessor-version":[{"id":130208,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/posts\/7275\/revisions\/130208"}],"wp:attachment":[{"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/media?parent=7275"}],"wp:term":[{"taxonomy":"audience","embeddable":true,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/audience?post=7275"},{"taxonomy":"content-type","embeddable":true,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/content-type?post=7275"},{"taxonomy":"job-role","embeddable":true,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/job-role?post=7275"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/product?post=7275"},{"taxonomy":"property","embeddable":true,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/property?post=7275"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/topic?post=7275"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/coauthors?post=7275"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}