Skip to main content

How to Enable the TouchOffice PowerBI Integration

Written by Jonathan Hutchings

The PowerBI Connection requires the TOW+ service

TouchOffice Web Settings:

  • Log in to TouchOffice Web with a user that's enabled to view & edit information on the API Authorisation page.

  • Click on the [ + New ] button.

  • Select "Power BI" from the "Application" dropdown.

  • Enter a friendly name into "Device Name".

  • Click "Create".

  • Find and copy the newly created access token in the data table, this will be entered into PowerBI when authorising your connection.

Power BI Settings:

  • Run the PowerBI desktop application and login if not already.

  • Click "Get data".

    • Navigate to the "Other" category.

    • Select "Web".

    • Select "Advanced" radio button.

    • In the URL parts, enter the full endpoint ( see endpoints below ) to get data from, including any query parameters.

    • Set these two Following HTTP request header parameters ( The word 'Bearer' should be included with the Authorization Access token from TOW):

      • "Authorization" - "Bearer YOUR TOW API ACCESS TOKEN GOES HERE"

        • ( Example : Bearer 5115e9d81c53412b4ea22f0a644068f368845a367b22b208919b90c04acf1e33717bc7fdeffd2cfbefa7b2092c798fef600e98ea1c9efd0df409xxxxxxxxxxxx )

      • "Case" - "snake"

  • Click "OK" and this should attempt to get the data relevant to the requested endpoint.

  • Format/modify this data using PowerBI's M queries as required.

  • Create your dashboards/visualisations based off of the supplied data.

Sales & Fixed Totaliser Endpoints:

PLU Sales:

with params listed like ?days=7&exp=[plu[[group][dept]]]AND

Fixed Totalisers:

with params like ?days= AND ?site=

HTTP Method: GET

Parameters

Key

Type

Values

Required/Optional

days

integer

Number of days between 0 - 7

Example: ?days=6

date

string

Date in ISO8601 format

Example: ?date=2024-12-02

start_date

string

Date in ISO8601 format

Example: ?start_date=2024-12-02&end_date=2024-12-05

end_date

string

Date in ISO8601 format

Example: ?start_date=2024-12-02&end_date=2024-12-05

interval

string

  • none

  • quarter-hour

  • hour

  • day

  • week

  • month

  • quarter

  • year

Defaults to "none" if not supplied.

Optional

site

integer

Site ID
Defaults to 0 (all sites) if not supplied.

Optional

sites

string/array

CSV string of sites or Defaults to empty if not supplied.

Optional

exp

string

Defaults to empty if not supplied.

Optional

Notes:

At least one of the following query parameters are required:

  • days

  • date

  • start_date & end_date

Scheduled data refreshes are limited to 8 a day via pro, 48 via premium.

Did this answer your question?