IUX slot filter configuration example for Adobe Analytics
Filter configuration example for Adobe Analytics.
Refer to the instructions on the How to configure Adobe Analytics data in an IUX slot with filters page first. Some configuration in your Adobe Launch interface is required to enable Adobe Analytics in Magnolia IUX slots. |
extensionViews:
- name: analytics1
icon: icon-analytics-app
view:
name: analytics
$type: analyticsView
chartDefinitions:
- name: adobePageViews
label: "Total Adobe Page Views"
class: info.magnolia.analytics.amcharts.data.AmChartDefinition
dataSupplier: adobePageViewsDataSupplier
chartType: !include:/analytics-ui/chartTypes/line-and-area/line-different-colors-ups-downs.yaml
series:
- name: series
dataFields:
- name: categoryX
jsonPath: "$.rows[*].value"
- name: valueY
jsonPath: "$.rows[*].data[0]"
xAxes: !override
- name: xaxe
renderer:
labels:
truncate: true
maxWidth: 90 #maxWidth can be change due to your config, exp: 120 instead of 90
- name: adobeMetricFilter
label: "Adobe Page Views With Metric Filters"
class: info.magnolia.analytics.amcharts.data.AmChartDefinition
dataSupplier: adobeMetricFilterDataSupplier
chartType: !include:/analytics-ui/chartTypes/line-and-area/line-different-colors-ups-downs.yaml
series:
- name: series
dataFields:
- name: categoryX
jsonPath: "$.rows[*].value"
- name: valueY
jsonPath: "$.rows[*].data[0]"
xAxes: !override
- name: xaxe
renderer:
labels:
truncate: true
maxWidth: 90
dataSuppliers:
adobePageViewsDataSupplier:
class: info.magnolia.analytics.adobe.datasource.AdobeDataSupplier
credentials:
parameters:
serviceUrl: https://analytics.adobe.io/api/xxxxxxxxxxxx/reports
clientId: <your-client-id>
clientSecret: <your-client_secret>
companyId: <your-company-id>
orgId: xxxxxxx@AdobeOrg
scope: <your-scopes>
technicalAccountId: xxxxxx@techacct.adobe.com
imsHost: https://ims-na1.adobelogin.com
imsExchange: https://ims-na1.adobelogin.com/ims/token/v3
parameters:
rsid: xxxxxxxx
gFilterType: dateRange
metricId: metrics/pageviews
dimension: variables/evar3 #This is just an example, variables need to be configured to map with pageName or pageUrl
filteringSubSetExpression: (1)
clause: CONTAINS '%s' #selected node path
adobeMetricFilterDataSupplier:
class: info.magnolia.analytics.adobe.datasource.AdobeDataSupplier
credentials:
parameters:
serviceUrl: https://analytics.adobe.io/api/xxxxxxxxxxxx/reports
clientId: <your-client-id>
clientSecret: <your-client_secret>
companyId: <your-company-id>
orgId: xxxxxxx@AdobeOrg
scope: <your-scopes>
technicalAccountId: xxxxxx@techacct.adobe.com
imsHost: https://ims-na1.adobelogin.com
imsExchange: https://ims-na1.adobelogin.com/ims/token/v3
parameters:
rsid: xxxxxxxx
gFilterType: dateRange
metricId: metrics/pageviews
dimension: variables/daterangeday
metricFiltersExpression: (2)
- id: 0
type: breakdown
dimension: variables/evar1 (3)
itemValue: "%s" #selected node path
- id: 1
type: dateRange
filterFields:
- name: startDate
$type: dateField
- name: endDate
$type: dateField
1 | A search clause is used to filter dimensions. |
2 | Options for breakdown reports. |
3 | This is just an example.
You must configure variables to map to pageName or pageUrl` . |
Search parameter options for report filtering
The Adobe search parameters documentation indicates that
Adobe Analytics provides the following search
parameter options:
-
itemId
- A single ID to include in the report. -
itemIds
- A list of itemIds to include in the report. -
excludeItemIds
- A list of itemIds to exclude in the report. -
clause
- A search clause to use when filtering dimensions. -
includeSearchTotal
- Includes a special element calledsearchTotals
in the response that contains the total of the filtered items. The default isfalse
.
For example:
filteringSubSetExpression:
clause: CONTAINS '%s'
filteringSubSetExpression:
itemIds: 1200002,1200003
includeSearchTotal: true
Breakdown reports
The Adobe Analytics breakdown reports documentation indicates that breakdowns in the API are useful when you want to see the cross-product of values from two different dimensions.
When requesting a breakdown report, use the metricsFilters
and dimension
parameters to request the additional dimension.
Breakdown reports include the following options:
-
id
-
type
-
dimension
-
itemValue
-
itemId
-
segmentId
-
dateRange
For example:
metricFiltersExpression:
- id: 0
type: breakdown
dimension: variables/evar1
itemValue: "%s" #selected node path
- id: 1
type: dateRange