Piano Analytics Connector module


Incubator (services)





Compatible with Magnolia 6.2.

The Piano Analytics Connector module connect to Piano Analytics data supplier.

This module is at the INCUBATOR level.

Installing with Maven

Maven is the easiest way to install the module. Add the following to your bundle:



This sections shows you how to configure and use the module.

Connecting to a data supplier

You must have an appropriate account and credentials to connect to Piano Analytics. Data suppliers are defined under /piano-analytics/dataSuppliers/<dataSupplierRegistryFile.yaml>.

class: info.magnolia.analytics.piano.datasource.PianoDataSupplier
    serverUrl: "https://api.atinternet.io/v3/data/getData"
    accessKey: YOUR_ACCESS_KEY
    secretKey: YOUR_SECRET_KEY
    organisation: YOUR_ORGANIZATION
    siteId: YOUR_SITE_ID
  site: YOUR_SITE_ID
  dimension: src
  metric: m_unique_visitors
  max-results: 50
  page-num: 1
  sort: m_unique_visitors
###### get reporting data with relative periods ######
  periodType: R
  granularity: M #Month
  startOffset: -1
  endOffset: -1
###### get reporting data with absolute period (Day format): from start date to end date ######
#  periodType: D #day
#  periodStartDate: "YYYY-MM-DD"
#  periodEndDate: "YYYY-MM-DD"

Reporting Period

Granularity will accept these value: Y(ear), Q(uarter), M(onth), W(eek), D(ay), MN(minute)

Start Offset and End Offset are allow number only.

Metrics and Dimensions metadata

These metadata files are stored under: /piano-analytics/metadata/<metricsOrDimensionsFile.yaml>

The metadata file is named using the siteId and organisation name with hyphens. For each siteId, we will need 2 files, one for metrics and one for dimensions.

  • <siteId>-datamodel-metrics-<organisation>.csv: this file use comma delimiter

  • <siteId>-datamodel-dimensions-<organisation>.csv: this file use semicolon delimiter


You can add one or more data suppliers base on your needs via decoration.

Expected structure
your-light-module/ (1)
├── dataSuppliers/ (2)
│   └── pianoDataSupplier1.yaml (3)
│   └── pianoDataSupplier2.yaml (4)
1 From within your own light module.
2 The decoration registry.
3 This tells Magnolia to add pianoDataSupplier1 for use.
4 This tells Magnolia to add pianoDataSupplier2 for use.

Dashboard filters

When set, each filter is applied to all the charts in the dashboard simultaneously. We support filter Piano Analytics data by these filter parameters

For example, add this configuration into your dashboard file:

  - name: granularity
    $type: textField
    label: piano-analytics.granularity
  - name: startOffset
    $type: textField
    label: piano-analytics.startOffset
  - name: endOffset
    $type: textField
    label: piano-analytics.endOffset
  - name: startDate
    $type: dateField
    label: piano-analytics.startDate
  - name: endDate
    $type: dateField
    label: piano-analytics.endDate
  - name: pageNum
    $type: textField
    label: piano-analytics.pageNum
  - name: maxResults
    $type: textField
    label: piano-analytics.maxResults


Version Notes


Initial beta release of the module.





This widget lets you know where you are on the docs site.

You are currently perusing through the Piano Analytics Connector module docs.

Main doc sections

DX Core Headless PaaS Legacy Cloud Incubator modules