{"id":738,"date":"2023-12-25T22:07:50","date_gmt":"2023-12-25T22:07:50","guid":{"rendered":"https:\/\/cluelabs.com\/blog\/?p=738"},"modified":"2023-12-26T04:51:05","modified_gmt":"2023-12-26T04:51:05","slug":"authenticating-a-user-in-articulate-storyline-with-the-help-of-the-google-sheets-widget","status":"publish","type":"post","link":"https:\/\/cluelabs.com\/blog\/authenticating-a-user-in-articulate-storyline-with-the-help-of-the-google-sheets-widget\/","title":{"rendered":"Authenticating a User in Articulate Storyline with the Help of the Google Sheets Widget"},"content":{"rendered":"<p><strong>The problem: <\/strong>We have a list of user emails in Google Sheets. When a user starts a course, we want to be able to authenticate them using their email address. Once authenticated, the course should pull other information about this user from Google Sheets. Is this possible?<\/p>\n<p><strong>The response:<\/strong> If you&#8217;re comfortable with formulas, you should have no issues achieving this with the <a href=\"https:\/\/cluelabs.com\/google-sheets-elearning-widget\" data-type=\"URL\" data-id=\"https:\/\/cluelabs.com\/google-sheets-elearning-widget\">Google Sheets widget for Articulate Storyline<\/a>.<\/p>\n<p><strong>TL;DR:<\/strong> When it says in the widget instructions to create the stencilsheetstoken variable &#8211; this variable stores the row number of the user. So if you can use a formula to find the correct row number by email and then save that number into stencilsheetstoken then the user will get data from that row.<\/p>\n<p><strong>The workflow:<\/strong><\/p>\n<p>1. Initialize the Sheets widgets normally.<\/p>\n<p>2. Use SheetsSet to write a formula to search for the email.<\/p>\n<p>3. Use SheetsGet to read the calculated value of the formula with the result.<\/p>\n<p>4. Extract the row number from the result and save it into stencilsheetstoken.<\/p>\n<p>5. Use SheetsGet to read the user&#8217;s data from the spreadsheet as needed.<\/p>\n<\/p>\n<p><strong>&nbsp;Detailed instructions to read user&#8217;s data from Google Sheets after matching the user by email:<\/strong><\/p>\n<p>1. Locate the Google Sheets document you will be working with and connect it to the widget.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/storage.googleapis.com\/us-east1-clabs-blog-images\/0other\/sheets-authentication-by-email\/01.png\" alt=\"\"\/><\/figure>\n<\/p>\n<p>2. Download the Sheets Widget starter file for Articulate Storyline and set the widget ID variable as instructed.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/storage.googleapis.com\/us-east1-clabs-blog-images\/0other\/sheets-authentication-by-email\/02.png\" alt=\"\"\/><\/figure>\n<\/p>\n<p>3. Create a slide with a text entry box; create variables as needed.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/storage.googleapis.com\/us-east1-clabs-blog-images\/0other\/sheets-authentication-by-email\/03.png\" alt=\"\"\/><\/figure>\n<\/p>\n<p>4. Add a trigger to write a lookup formula to the sheet after the user enters the email address and then immediately save the calculated value of the formula to variable &#8216;stencilsheetstoken&#8217;:<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/storage.googleapis.com\/us-east1-clabs-blog-images\/0other\/sheets-authentication-by-email\/04.png\" alt=\"\"\/><\/figure>\n<\/p>\n<p>5. Add a trigger to read the user\u2019s first and last names and score from the document when variable stencilsheetstoken changes:<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/storage.googleapis.com\/us-east1-clabs-blog-images\/0other\/sheets-authentication-by-email\/05.png\" alt=\"\"\/><\/figure>\n<\/p>\n<p>6. Publish and test your project. Note that the API provided by Google is quite slow and it may take a few seconds for multiple calls to execute.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/storage.googleapis.com\/us-east1-clabs-blog-images\/0other\/sheets-authentication-by-email\/06.png\" alt=\"\"\/><\/figure>\n<\/p>\n<p><a href=\"https:\/\/storage.googleapis.com\/us-east1-clabs-blog-images\/0other\/sheets-authentication-by-email\/sheets_widget_v2_1.story\" data-type=\"URL\" data-id=\"https:\/\/storage.googleapis.com\/us-east1-clabs-blog-images\/0other\/sheets-authentication-by-email\/sheets_widget_v2_1.story\">Download this .story file<\/a>.<\/p>\n<p><strong>This article is available in multiple languages:<\/strong><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/authenticating-a-user-in-articulate-storyline-with-the-help-of-the-google-sheets-widget\/\">Authenticating a User in Articulate Storyline with the Help of the Google Sheets Widget<\/a><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/authentifizierung-eines-benutzers-in-articulate-storyline-mit-hilfe-des-google-sheets-widgets\/\">Authentifizierung Eines Benutzers in Articulate Storyline mit Hilfe des Google Sheets Widgets<\/a><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/authentification-dun-utilisateur-dans-articulate-storyline-a-laide-du-widget-google-sheets\/\">Authentification d&#8217;un Utilisateur dans Articulate Storyline \u00e0 l&#8217;aide du Widget Google Sheets<\/a><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/autenticando-a-un-usuario-en-articulate-storyline-con-la-ayuda-del-widget-de-google-sheets\/\">Autenticando a un Usuario en Articulate Storyline con la Ayuda del Widget de Google Sheets<\/a><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/autenticazione-di-un-utente-in-articulate-storyline-con-laiuto-del-widget-di-google-sheets\/\">Autenticazione di un Utente in Articulate Storyline con l&#8217;Aiuto del Widget di Google Sheets<\/a><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/autenticando-um-usuario-no-articulate-storyline-com-a-ajuda-do-widget-do-google-sheets\/\">Autenticando um Usu\u00e1rio no Articulate Storyline com a Ajuda do Widget do Google Sheets<\/a><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/een-gebruiker-authenticeren-in-articulate-storyline-met-de-hulp-van-de-google-sheets-widget\/\">Een Gebruiker Authenticeren in Articulate Storyline met de Hulp van de Google Sheets Widget<\/a><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/%d0%b0%d1%83%d1%82%d0%b5%d0%bd%d1%82%d0%b8%d1%84%d1%96%d0%ba%d0%b0%d1%86%d1%96%d1%8f-%d0%ba%d0%be%d1%80%d0%b8%d1%81%d1%82%d1%83%d0%b2%d0%b0%d1%87%d0%b0-%d0%b2-articulate-storyline-%d0%b7%d0%b0-%d0%b4\/\">\u0410\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0446\u0456\u044f \u041a\u043e\u0440\u0438\u0441\u0442\u0443\u0432\u0430\u0447\u0430 \u0432 Articulate Storyline \u0437\u0430 \u0414\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e \u0412\u0456\u0434\u0436\u0435\u0442\u0430 Google Sheets<\/a><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/uwierzytelnianie-uzytkownika-w-articulate-storyline-za-pomoca-widzetu-google-sheets\/\">Uwierzytelnianie U\u017cytkownika w Articulate Storyline za Pomoc\u0105 Wid\u017cetu Google Sheets<\/a><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/autentisering-av-en-anvandare-i-articulate-storyline-med-hjalp-av-google-sheets-widgeten\/\">Autentisering av en Anv\u00e4ndare i Articulate Storyline med Hj\u00e4lp av Google Sheets Widgeten<\/a><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/autentisering-av-en-bruker-i-articulate-storyline-med-hjelp-av-google-sheets-widgeten\/\">Autentisering av en Bruker i Articulate Storyline med Hjelp av Google Sheets-Widgeten<\/a><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/autentificering-af-en-bruger-i-articulate-storyline-med-hjaelp-fra-google-sheets-widgeten\/\">Autentificering af en Bruger i Articulate Storyline med Hj\u00e6lp fra Google Sheets Widgeten<\/a><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/%d0%b0%d1%83%d1%82%d0%b5%d0%bd%d1%82%d0%b8%d1%84%d0%b8%d0%ba%d0%b0%d1%86%d0%b8%d1%8f-%d0%bf%d0%be%d0%bb%d1%8c%d0%b7%d0%be%d0%b2%d0%b0%d1%82%d0%b5%d0%bb%d1%8f-%d0%b2-articulate-storyline-%d1%81-%d0%bf\/\">\u0410\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0432 Articulate Storyline \u0441 \u041f\u043e\u043c\u043e\u0449\u044c\u044e \u0412\u0438\u0434\u0436\u0435\u0442\u0430 Google Sheets<\/a><\/p>\n<p><a href=\"https:\/\/cluelabs.com\/blog\/google-sheets-widget-yardimiyla-articulate-storylineda-bir-kullanicinin-kimligini-dogrulama\/\">Google Sheets Widget Yard\u0131m\u0131yla Articulate Storyline&#8217;da Bir Kullan\u0131c\u0131n\u0131n Kimli\u011fini Do\u011frulama<\/a><\/p>\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The problem: We have a list of user emails in Google Sheets. When a user starts a course, we want to be able to authenticate them using their email address. Once authenticated, the course should pull other information about this user from Google Sheets. Is this possible? The response: If you&#8217;re comfortable with formulas, you [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[7],"tags":[24],"_links":{"self":[{"href":"https:\/\/cluelabs.com\/blog\/wp-json\/wp\/v2\/posts\/738"}],"collection":[{"href":"https:\/\/cluelabs.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cluelabs.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cluelabs.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cluelabs.com\/blog\/wp-json\/wp\/v2\/comments?post=738"}],"version-history":[{"count":0,"href":"https:\/\/cluelabs.com\/blog\/wp-json\/wp\/v2\/posts\/738\/revisions"}],"wp:attachment":[{"href":"https:\/\/cluelabs.com\/blog\/wp-json\/wp\/v2\/media?parent=738"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cluelabs.com\/blog\/wp-json\/wp\/v2\/categories?post=738"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cluelabs.com\/blog\/wp-json\/wp\/v2\/tags?post=738"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}