11-04-2021 12:00 AM - edited 05-13-2024 04:22 PM
The business use case is: Partnering with delivery apps, such as UberEats, DoorDash and others, makes up about 30% of Denny’s business since Covid-19 pandemic hit. In order to understand and improve the business outcomes of these partnerships, the Marketing team needs access to the data from delivery apps portals. In gaining access to the data in a timely manner, the Marketing team can analyze and identify areas for improvement, including:
The business challenge: The Marketing team needed a more automated process of getting all their app delivery data, so they can speed up their analysis and reporting. The Marketing team would previously log into each individual delivery app portal (UberEats, Doordash) with four different logins to download CSV files for all four of their restaurant brands. They’d download each CSV file, merge and clean the data before they can do the actual analysis and reporting. This process would take them 3-4 days to obtain.
Technical Challenge: Needed to eliminate the manual pull of data from each of these app delivery platforms and get all the app delivery data into a data warehouse (Microsoft Azure and SQL Database) so that the Marketing team can have the data readily available in Tableau Dashboards, so they can analyze and report on trends.
The Denny’s team spent ~5 days building out the integration. The bulk of the time spent was figuring out how to make the Oath2 accounts to create tokens and Webhooks work. Once they figured out how, the integration building was simple and quick.
They used Oath2 account to create tokens so that the Snaplogic pipeline can use the token to access the reports from the delivery providers (UberEats for e.g.). Once the REST API is called with the token, UberEats queues the requests and user a Webhook to send back the report when ready. The webhook is a triggered pipeline in Snaplogic that’s used as a REST API to be called.
Snaps used: JSON Parser to see what kind of file it is, Route Snap and Mapper to check which date gets mapped, and Azure Bulk Load to move the data to different tables within Azure.
2 Developers
The Marketing team can get fresh and up-to-date data every day and can also view all historical data from 2020, when they have partnered with these app delivery partners. The team can filter and create presentations using Tableau Dashboards build on top of this data.
The marketing team has eliminated the time needed to login, download, merge, and clean data that usually takes 3-4 days before they can start analyzing the data. Instead, they can access the data directly from Tableau.
There are two more use cases:
One of their distributors sends an email to the Procurement lead at Denny’s with a file (Excel file) that shows all of the out-of-stock inventory items (condiments, raw supplies) every morning. Previously, the Procurement lead would manually download the file, review the out-of-stock items, and share with distribution centers a subset list of out-of-stock items that would impact each distribution center
To eliminate the manual work each morning, an integration pipeline is created to automate the process. The major distributor would send the email to an email distribution list, then the pipeline would be triggered to look for the subject line using the Mail Reader Snap. Then the pipeline would read the attached Excel file, manipulate the data as needed, and then add the data to the SQL Server, and then the report would be created in Tableau so that the distribution centers can have access to their specific out-of-stock reports.
The Audit team would download reports from Workday for auditing purposes, which took time to create the reports each time. Instead, an integration pipeline is created so that whenever a person needs a specific report, they’d send an email with an email title asking for a specific report. This would trigger the pipeline to call Workday and send back the report requested to the person. Essentially, an Email Bot can be created/recreated for users to retrieve reports, eliminating the need to manually download from each platform.