Scheduled Reports: Emails/Webhooks/Slack/Teams: Emails, Webhooks Slack, & Teams

Introduction

Knowi's report scheduling features allow you to schedule dashboard exports as a PDF and/or CSV attachment and sent to you directly via Email, Webhook, Slack, or Microsoft Teams. Say you have a frequently used dashboard that tracks daily KPI metrics. You can schedule an email report to have it delivered as a PDF and/or CSV directly to you and your team's inbox daily.

Sections


Navigating to Scheduled Reports

There are two ways to navigate to the Reports screen from any dashboard:

From the Left Side Bar:

  1. Click on the Reports from the left sidebar
  2. Click on the New Report + button from the top-right corner
  3. This takes you to the Report Options window

From the Dashboard:

  1. Click the Share button from the top right corner
  2. Select the Schedule/Send a Report option from the dropdown list
  3. This takes you to the Report Options window


Setting up a Scheduled Report

These are the initial steps to setting up a scheduled report. This portion of the process applies to Email, Webhook, Slack Reports, and Teams Reports. Proceeding sections will outline specific steps to set up each of the three report types.

To create a Scheduled Report:

  1. Navigate to the Report Options Screen following the steps from the Navigating to Scheduled Reports section above
  2. Give your Report a name. The name you will enter will be displayed in the Reports screen.
  3. In the Dashboards dropdown, select the dashboard(s) you wish to send in the report
  4. Optionally include a CSV attachment by clicking on the Add CSV Attachment. This will show additional options
    • a. Give the attachment a Name it will be displayed as
    • b. In the Dataset dropdown, select a dataset you wish to attach as CSV
    • c. (Optional) In the Cloud9QL Query editor, enter additional C9QL to transform the data
  5. In the Report As dropdown, select the Knowi user the report will be executed by (available to Admin users only - allows the report to be run with lower privileges)
  6. (Optional) In the Filters section, enter any User Content Filters that you wish to enforce. This ensures only data applicable to the recipient(s) is contained in the report.
  7. In the Run every section, specify the schedule the report will be sent on. Reports can be scheduled to run every _Hour, Day, Month,_ or _Weekday (M-F)_ intervals.

Email Reports

Email Reports allow you to attach a PDF and/or CSV attachment of a dashboard(s) to an email. The email can be scheduled to be sent at a chosen interval to single or multiple recipients.

Follow the steps below to create an Email Report after completing the steps in the Setting up a Scheduled Report section.

To Create an Email Report:

  1. Under Report Actions, select Send Email
  2. Enter the Email Subject that will be displayed
  3. Enter the Email address of the recipient(s). Comma-separated for multiple recipients
  4. You can optionally add the following:
    • a. Add Email From: Enter the email address from which the email will be sent. This address will reflect as the sender of the email in the recipient?s inbox.
    • b. Add Reply To: Enter the email address to which any reply will be sent. Although optional, it is recommended to add an email address in this field.
    • c. Add CC: Enter the email address of recipients who?ll receive a copy of the email.
    • d. Add BCC: Enter the email address of the recipients that you want to hide from the primary recipient(s)
  5. Write custom HTML to customize the email template (Optional)

Below is an example of what a common setup looks like:

Below is an example of what the actual email received in a specified account looks like:


Webhook Reports

Webhook Reports allow you to attach a PDF and/or CSV attachment of a dashboard(s) and send it to the endpoint of your own application. The endpoint should be able to accept multipart form data as the results are sent separately as files of different content.

content-type of application/pdf for dashboard results;
content-type of text/csv for dataset results;

The following service provides you with free functional testing and validation facilities of the structure and content of the requests that'll be sent to your real endpoints.

https://requestbin.fullcontact.com/

Follow the steps below to create a Webhook Report after completing the steps in the Setting up a Scheduled Report section.

To Create a Webhook Report:

  1. Under Report Actions, select Webhook
  2. Click + Add Webhook to open the Add Webhook window
  3. Under URL to Invoke, enter the endpoint in your application to invoke that can accept a POST request with JSON (array of objects)
  4. Under Headers, enter any optional authentication related headers. One Header per line.
  5. Under the Authentication URL, enter the authentication endpoint to get a token, which can be passed into each subsequent query. Only required if the API requires it. This is an absolute URL.
  6. Under Auth Headers, enter any optional authentication-related headers. One Header per line.

Below is an example of what the common setup looks like: the requests that are actually sent to the specified url:

Below is an example of how the requests that are actually sent to the specified url:

Reference code sample here.

Slack Reports

Slack Reports allow you to attach a PDF and/or CSV attachment of a dashboard(s) to a list of public channels on your team?s Slack workspace including an alert message.

Follow the steps below to create a Slack Report after completing the steps in the Setting up a Scheduled Report section.

To Create a Slack Report:

  1. Under Report Actions, select Slack
  2. Click + Add Slack to open the Add Slack window
  3. Under Alert Name, give your alert a name that it will be displayed as
  4. Under Alert Message, enter a user-defined alert message that will post to Slack. Leaving blank will post a default message
  5. Under Alert Team, enter the Slack team you want to publish notifications to.
  6. In the Alert Channels dropdown, select the Slack channel(s), the alert notification and report will be published to

Below is an example of how the common setup looks like:

Below is an example of the results that are actually sent and published to the specified Slack channel(s)


Teams Reports

Similar to Slack reports, you can also send the reports and events into your Microsoft Teams channels or group chats for triggered conditions. Start creating the teams report by selecting the Teams under Report Actions and clicking on the +Add Teams button.


Unscheduled PDF Export of Dashboard

You don't have to create a schedule to export a dashboard. A user can export a dashboard at any time.

To export a dashboard to PDF:

Users can export the dashboard as a PDF file at any time by following the steps discussed below:

  1. Select the dashboard you wish to export
  2. Navigate to the top right corner menu and click the Share button
  3. Select Export as PDF from the dropdown list
  4. Configure the following (optional) as per your requirements:
    • a. Page Orientation: Set the page orientation to: Landscape or Portrait
    • b. Margin Size: Set the margin size to: Small, Medium, or Large
    • c. Layout: Change the Layout to: 'Fit to Width' or 'Fit to one page'. You can also change the layout to "Single Column only".
    • d. Headers & Footers: Add- Page numbers, Report title, Current date, and current time to headers and footers.
    • e. Data Grid Display: Customize how Data Grids with scroll are displayed.
  5. Click on the Save button to save the PDF Settings or Click on the Export PDF button to download the PDF file immediately. Generating the PDF could take some time before downloading.

If the user is a "view-only" user then it doesn't have a "Share" button on the top bar but has separate "Export as PDF" button at the top bar.

If the dashboard is shown as an embedded OEM dashboard (see Embedding/OEM), and it is configured to show a header bar and action buttons, then one of the buttons- "Export to PDF" will export the dashboard to a PDF file.