Using Zapier to add KPI measurements to your Strategy Scorecard

Discover how integrating Zapier with StratNavApp.com can revolutionize your KPI tracking and reporting, making strategy execution seamless.

Introduction

Updating your Strategy Scorecard on a regular basis is vital to staying on top of your strategy execution, knowing whether it is producing the intended outcomes or not, and adjusting it as necessary.

But it can be a bit of an administrative burden.

And who wouldn't rather be adding value than doing admin?

StratNavApp.com's APIs provide an easy way to connect your source systems to your Strategy Scorecard without you needing to update it manually yourself.

And tools like Zapier make it even easier to achieve this.

In this post, we will look at how to use Zapier to add a new KPI measurement to your scorecard.

Of course, that is not the only thing you can automate using StratNavApp.com's API and/or Zapier, but it is a very common and useful example.

What is Zapier?

Zapier is a robust online automation tool that streamlines the integration of various web applications, enabling businesses to enhance productivity and operational efficiency without the need for complex coding knowledge. It operates by creating automated workflows, known as Zaps, which trigger actions across different apps based on specific events.

Setting up your Zap

What you will needZapier flow for adding a KPI

You will need:

  1. A Zapier account on the Starter Plan or higher (see below)

  2. A StratNavApp.com account on the Enterprise plan, and which includes at least one project with at least one KPI.

  3. The ClientID and Secret to access the API for your project.

    To create and/or find the ClientID and Secret to access the API for your project:
    1. Click on the Project Menu (the name of your project) toward the top (it's the second item) of the main menu.
    2. Follow the onscreen instructions.

  4. The ID of your project and the ID of the Performance Indicator (KPI) you want to update.

    To get to the ID of your project and the KPI you want to update:
    1. Open the edit screen for the Performance Indicator.
    2. Your browser's URL bar should show a URL which looks something like this (colours added for emphasis)

      https://www.stratnavapp.com/Projects/10a573de-4990-4cb6-9c2a-9db3936198d1/PerformanceIndicators/78e02267-e03b-4be1-b050-812c26237b13 

    3. The ID of your project is the portion shown in Green.
    4. The ID of your Performance Indicator (KPI) is the portion shown in Purple.

       NB: The IDs shown above are given as examples only. Your own IDs will be different for each project and each Performance Indicator.

Setting up your trigger and input data

There are lots of triggers you can use in Zapier, and lots of utilities you can use to process. The Zapier website provides extensive documentation.

For the purposes of this example, we will use the simple (and surprisingly common case) where the data for your KPI is sent to you by email.

In the Zap illustrated in the diagram to the right/above, the first 4 steps of the Zap show:

  1. The Zap is triggered when you receive an email with the subject "Here are this weeks numbers". (You can, of course, use more sophisticated filtering to identify the emails that are relevant.)
  2. The body of the email is converted from HTML to plain text (to make it easier to process).
  3. The KPI value is extracted from the converted body of the email.
  4. The Send Date is also extracted from the email. (Note that you must convert the date to yyyy-MM-dd format. Zapier has a number of utilities for formatting data, including dates.)

NB: These 4 steps are nothing to do with StratNavApp.com. You could use Zapier to create any number of triggers and extract the data you want in any number of ways.

Authenticate with StratNavApp.com

The next step (number 4 on the diagram) is to authenticate with StratNavApp.com. This involves sending your ClientID and Secret (refer to the instructions above) to StratNavApp.com, after which StratNavApp.com will authenticate you and return a token.

To do this, you will add a "Run Javascript in Code by Zapier" step to your Zap and paste the following into the "Code" field:

const options = {
   method: 'POST',
   url: 'https://stratnavapp.eu.auth0.com/oauth/token',
   headers: {'content-type': 'application/json'},
   body: JSON.stringify({
      client_id: 'YOUR_CLIENT_ID',
      client_secret: 'YOUR_SECRET',
      audience: 'https://api.stratnavapp.com',
      grant_type: 'client_credentials'
   })
};
fetch(options.url, {
   method: options.method,
   headers: options.headers,
   body: options.body
}) .then(response => response.json())
.then(data => {
   const accessToken = data.access_token;
   var output = {token: accessToken};
   callback(null, output);
})
.catch(callback);

NB: You must replace YOUR_CLIENT_ID and YOUR_SECRET with your ClientID and Secret from the earlier step.

Submit your Measurement

The next (and final) step is to submit your Measurement to the API. This is step 6 in the diagram.

To do this, you will:

  1. Add another "Run Javascript in Code by Zapier" step to your Zap.
  2. Complete the "Input Data" fields. You will need to add 3:
    1. "token" - the Token returned from step 5 (the authentication step)
    2. "date" - the date returned from step 4
    3. "amount" - the value returned from step 3.
      (Note: that "date" and "token" will come from whichever steps you've defined for your use case, which may be different to the example outlined above.)
  3. Paste the following into the "Code" field:
const projectID = 'YOUR_PROJECT_ID';
const performanceIndicatorID = 'YOUR_PERFORMANCE_INDICATOR_ID';
const accessToken = inputData.token;
const url = `https://api.stratnavapp.com/v1/Projects/${projectID}/PerformanceIndicators/${performanceIndicatorID}/ActualMeasurements`;
const data = {
   date: inputData.date,
   value: inputData.amount,
   commentary: "Added by Zapier"
};
fetch(url, {
   method: 'POST',
   headers: {
      'Content-Type': 'application/json',
      'Authorization': `Bearer ${accessToken}`
   },
   body: JSON.stringify(data)
}) .then(function(res) {
   return res.text();
}) .then(function(body) {
   var output = {result: body};
   callback(null, output);
})
.catch(callback);

NB: You must replace YOUR_PROJECT_ID and YOUR_PERFORMANCE_INDICATOR_ID with your Project ID and Performance Indicator ID from the earlier step.

You can also change the "Added by Zapier" commentary to something else (whatever you prefer) or just leave it blank ("").

Publish your Zap

That's it. All that remains is for you to click Publish to publish your Zap and it will automatically update the KPI on your Strategy Scorecard as instructed.

(Zapier does provide facilities to test your Zap before you publish it, and we recommend that you do so.)

Restrictions

Note that you will need:

  • An Enterprise license on StratNavApp.com in order to access the APIs. See Payment Plans.
  • A Starter plan (or higher) on Zapier in order to create multi-step Zaps and use Zapier data tools. See Pricing.

Everytime you share anything about StratNavApp with someone else, you help them to develop and execute better business strategies, and you help to support us and our ability to continue to make the platform even better for you. So it really is a win-win!


If any part of this text is not clear to you, please contact our support team for assistance.

Published: 2024-03-06  |  Updated: 2024-03-07

© StratNavApp.com 2024

Loading...