Overview

The Analytics API allows you to get pre-aggregated content engagement data out of Aprimo. Knowledge of Aprimo’s data schemas is not requires to effectively use this API, as the API exposes an endpoint that makes querying for answers to business questions simpler. The query format involves passing a single parameter in an API call containing the query you wish to run. This guide provides information and example on how to get analytics information from Aprimo.

This Analytics API can be connected to by various reporting tools, including PowerBI.

Authentication

The Analytics API uses the same authentication as the rest of the Aprimo REST API. To learn how to get an access token, see our authentication guide. Once you have obtained your Bearer access token, include it in the Authorization header like the below image from POSTMAN. Note that you must use one of the OAuth 2.0 flows – “Aprimo Authorization” flows are not supported.

Image showing how to use the Authorization header in POSTMAN

Endpoints

Each Aprimo environment has their own endpoints.

GET https://[AprimoTenant].aprimo.com/analytics/?query={{query}}

Replace {{query}} with the query JSON. See examples below for sample JSON. Note that the JSON must all be on one line. A simple way to manage this in a tool like POSTMAN is to stringify the JSON as shown:

 

 

Paging & Sorting

The Analytics API supports paging included in the request body. To page use the limit and offset attributes.

Limit is a max of 10,000, and indicates the number of items that return.
Offset is an index, not a page (so if you pass offset=0, limit = 10, you’ll get back items 1-10; if you pass offset=2, limit = 10, you’ll get back items 3-12).

e.g. A request that returns results 11-12.

{
    "measures": ["Views.count"],
    "dimensions": ["Views.recordId"],
    "limit": 2,
    "offset": 10
}

You must also include an “order” attribute for sorting the response; otherwise the returned response may be different on subsequent calls, even if the paging offset is the same.

{
 "measures":["Views.count"],
 "dimensions":["Users.loginId","Groups.name","Views.collectionId","Collections.name","Views.spaceId","Spaces.name","Views.recordId","DateDimension.date","DateDimension.monthOrder"] ,
 "order": 
    "Views.count": "desc",
    "Users.loginId": "asc",
    "Groups.name": "asc"
  },
 "limit":13,
 "offset":0 
}

WARNING: This API is intended to return aggregate-level data, not line-level records. If your query is expected to return > 100k records, or you need to iterate through >100 pages, this API will likely be non-performant.

Available Data Domains

The following are all available as data domains in the analytics API. Diagrams below depict the available dimensions for each one of these data domains.

  • Downloads let you measure counts of downloads by record, user, rendition information, and more.
  • Views let you measure views of records in Aprimo’s Content Workspace and Brand Portals.
  • Impressions are individual requests to Public Links – this may be an image loading on a page or someone downloading the file.
    • Note that for video assets multiple impressions may be generated for playback due to the video loading in chunks.
  • ContentEngagement lets you measure multiple content engagements in a single query (i.e. views and downloads), but may not have all the dimensions available as the individual data domain for an engagement metric.
  • Plays let you measure counts of plays on video content.
  • ZeroViews which lets you measure the set of content that has no views.
  • ZeroDownloads which lets you measure the set of content that has had no downloads.

Measures, Dimensions, and Filters

 

The Analytics API has 3 main attributes to make use of when developing queries:

  • Measures
  • Dimensions
  • Filters

Facts are the queryable data domains in the Aprimo Analytics API, listed above.

Measures are pre-created aggregations of valuable metrics. Each fact has a “count” measure. e.g “Downloads.count”

Dimensions are attributes that allow you to group or filter a measure. For example, the measure “Downloads.count” could have dimensions such as “recordId” or “downloadDate”. The first screenshot below shows a query using only the “Downloads.recordId” dimension, while the second screenshot shows using both “Downloads.recordId” and “Downloads.downloadDate.” Using only “Downloads.recordId” returns the download count sorted by unique record ID, but including the “Downloads.downloadDate” also sorts by the date and time a download occurred.

Additionally, Dimensions don’t need to be attributes from the same member, the below screenshot shows including the “RecordMetadata.title” dimension. This

Filters are conditional expressions that use a dimension, a comparison, and a value. E.G.

"filters": [
{
   "member": "Users.lastName",
   "operator": "contains",
   "values": ["A"]
}]

Data Dimension - Downloads

Dimensions and Filter

Downloads:
  Measures:
    Downloads.count (count)
  Dimensions:
    Downloads.downloadDate (time)
    Downloads.dateDimensionId (number)
    Downloads.userId (number)
    Downloads.recordId (string)
    Downloads.versionId (string)
    Downloads.renditionId (string)
    Downloads.renditionType (string)
    Downloads.versionNumber (number)
    Downloads.cropHeight (number)
    Downloads.cropWidth (number)
    Downloads.cropType (string)
    Downloads.trimDuration (number)

Classifications:
  Dimensions:
    Classifications.name (string)
    Classifications.identifier (string)
    Classifications.rootClassificationId (string)
    Classifications.parentClassificationId (string)
    Classifications.sortIndex (number)
    Classifications.sortOrder (string)
    Classifications.createUser (string)
    Classifications.createDate (time)
    Classifications.lastModifiedUser (string)
    Classifications.lastModifiedDate (time)
    Classifications.contentType (string) DateDimension:
  Dimensions:
    DateDimension.date (time)
    DateDimension.year (number)
    DateDimension.quarterLabelId (number)
    DateDimension.monthLabelId (number)
    DateDimension.weekdayLabelId (number)
    DateDimension.monthLongNameLabelId (number)
    DateDimension.weekdayLongNameLabelId (number)
    DateDimension.yearStartDate (time)
    DateDimension.yearEndDate (time)
    DateDimension.quarterStartDate (time)
    DateDimension.quarterEndDate (time)
    DateDimension.monthStartDate (time)
    DateDimension.weekStartDateSun (time)
    DateDimension.weekStartDateMon (time)
    DateDimension.monthEndDate (time)
    DateDimension.monthOrder (number)
    DateDimension.weekdayOrder (number)
    DateDimension.julianDayNumber (number)
    DateDimension.fiscalYear (string)
    DateDimension.fiscalQuarter (string)
    DateDimension.fiscalMonthLabelId (number)
    DateDimension.fiscalYearStartDate (time)
    DateDimension.fiscalYearEndDate (time)
    DateDimension.fiscalQuarterStartDate (time)
    DateDimension.fiscalQuarterEndDate (time)
    DateDimension.fiscalMonthStartDate (time)
    DateDimension.fiscalMonthEndDate (time)
    DateDimension.fiscalMonthOrder (number)
FiscalMonth:
  Dimensions:
    FiscalMonth.label (string)
Groups:
  Dimensions:
    Groups.active (number)
    Groups.name (string)
    Groups.loginId (string)
Month:
  Dimensions:
    Month.label (string)
MonthLongName:
  Dimensions:
    MonthLongName.label (string)
Quarter:
  Dimensions:
    Quarter.label (string)
RecordMetadata:
  Dimensions:
    RecordMetadata.aprimoContentUsage (string)
    RecordMetadata.keywords (string)
    RecordMetadata.smartTags (string)
    RecordMetadata.title (string)
Records:
  Dimensions:
    Records.fileCount (number)
    Records.createUser (string)
    Records.createDate (time)
    Records.lastModifiedUser (string)
    Records.lastModifiedDate (time)
    Records.contentType (string)
    Records.parentRecordId (string)
Users:
  Dimensions:
    Users.active (number)
    Users.firstName (string)
    Users.lastName (string)
    Users.middleName (string)
    Users.emailAddress (string)
    Users.loginId (string)
    Users.company (string)
    Users.department (string)
    Users.employeeNumber (string)
    Users.costCenter (string)
    Users.departmentCode (string)
    Users.altUserId (string)
Weekday:
  Dimensions:
    Weekday.label (string)
WeekdayLongName:
  Dimensions:
    WeekdayLongName.label (string)

Data Dimension - Views

Dimensions and Filters

Views:
  Measures:
    Views.count (count)
  Dimensions:
    Views.viewDate (time)
    Views.dateDimensionId (number)
    Views.userId (number)
    Views.recordId (string)
    Views.spaceId (string)
    Views.collectionId (string)
    Views.hasNoContext (boolean)
    Views.hasSpaceContext (boolean)
    Views.hasCollectionContext (boolean)

 

Classifications:
  Dimensions:
    Classifications.name (string)
    Classifications.identifier (string)
    Classifications.rootClassificationId (string)
    Classifications.parentClassificationId (string)
    Classifications.sortIndex (number)
    Classifications.sortOrder (string)
    Classifications.createUser (string)
    Classifications.createDate (time)
    Classifications.lastModifiedUser (string)
    Classifications.lastModifiedDate (time)
    Classifications.contentType (string)
Collections:
  Dimensions:
    Collections.name (string)
    Collections.createUser (string)
    Collections.createDate (time)
    Collections.lastModifiedUser (string)
    Collections.lastModifiedDate (time)
    Collections.viewType (string)
    Collections.scope (string)
    Collections.isPublic (string)
    Collections.description (string)
    Collections.searchExpression (string)
    Collections.numberOfAssets (number) 
DateDimension:
  Dimensions:
    DateDimension.date (time)
    DateDimension.year (number)
    DateDimension.quarterLabelId (number)
    DateDimension.monthLabelId (number)
    DateDimension.weekdayLabelId (number)
    DateDimension.monthLongNameLabelId (number) 
    DateDimension.weekdayLongNameLabelId (number)
    DateDimension.yearStartDate (time) 
    DateDimension.yearEndDate (time) 
    DateDimension.quarterStartDate (time) 
    DateDimension.quarterEndDate (time) 
    DateDimension.monthStartDate (time) 
    DateDimension.weekStartDateSun (time) 
    DateDimension.weekStartDateMon (time) 
    DateDimension.monthEndDate (time) 
    DateDimension.monthOrder (number) 
    DateDimension.weekdayOrder (number) 
    DateDimension.julianDayNumber (number) 
    DateDimension.fiscalYear (string) 
    DateDimension.fiscalQuarter (string) 
    DateDimension.fiscalMonthLabelId (number) 
    DateDimension.fiscalYearStartDate (time) 
    DateDimension.fiscalYearEndDate (time) 
    DateDimension.fiscalQuarterStartDate (time) 
    DateDimension.fiscalQuarterEndDate (time) 
    DateDimension.fiscalMonthStartDate (time) 
    DateDimension.fiscalMonthEndDate (time) 
    DateDimension.fiscalMonthOrder (number) 
FiscalMonth:
  Dimensions:
    FiscalMonth.label (string)
Groups:
  Dimensions: 
    Groups.active (number) 
    Groups.name (string) 
    Groups.loginId (string)
Month:
  Dimensions:
    Month.label (string) 
MonthLongName:
  Dimensions:
    MonthLongName.label (string) 
Quarter:
  Dimensions:
    Quarter.label (string) 
RecordMetadata:
  Dimensions:
    RecordMetadata.aprimoContentUsage (string)
    RecordMetadata.keywords (string) 
    RecordMetadata.smartTags (string) 
    RecordMetadata.title (string)
Records:
  Dimensions:
    Records.fileCount (number) 
    Records.createUser (string) 
    Records.createDate (time) 
    Records.lastModifiedUser (string) 
    Records.lastModifiedDate (time) 
    Records.contentType (string) 
    Records.parentRecordId (string)
Spaces:
  Dimensions:
    Spaces.name (string) 
Users:
  Dimensions:
    Users.active (number) 
    Users.firstName (string) 
    Users.lastName (string) 
    Users.middleName (string) 
    Users.emailAddress (string) 
    Users.loginId (string) 
    Users.company (string) 
    Users.department (string) 
    Users.employeeNumber (string) 
    Users.costCenter (string) 
    Users.departmentCode (string) 
    Users.altUserId (string)
Weekday:
  Dimensions:
    Weekday.label (string) 
WeekdayLongName:
  Dimensions:
    WeekdayLongName.label (string)

Data Dimension - Impressions

Dimensions and Filters

Impressions:
  Measures:
    Impressions.count (count)
  Dimensions:
    Impressions.id (number)
    Impressions.hitDateTime (time)
    Impressions.recordId (string)
ImpressionValues:
  Dimensions:
    ImpressionValues.hitId (number)
    ImpressionValues.trackingTypeId (number)
    ImpressionValues.trackingTypeValueId (number)
    Impressions.fileVersionId (string)
    Impressions.fileName (string)
    Impressions.responseSize (number)
ImpressionTrackingTypes:
  Dimensions:
    ImpressionTrackingTypes.id (number)
    ImpressionTrackingTypes.queryStringKey (string)
ImpressionTrackingTypeValues:
  Dimensions:
    ImpressionTrackingTypeValues.id (number)
    ImpressionTrackingTypeValues.value (string)
Records:
  Dimensions:
    Records.fileCount (number)
    Records.createUser (string)
    Records.createDate (time)
    Records.lastModifiedUser (string)
    Records.lastModifiedDate (time)
    Records.contentType (string)
    Records.parentRecordId (string)

Data Dimension - Content Engagements

Dimensions and Filters

ContentEngagement:
  Measures:
    ContentEngagement.downloadsCount (count)
    ContentEngagement.impressionsCount (count)
    ContentEngagement.viewsCount (count)
  Dimensions:
    ContentEngagement.date (time)
    ContentEngagement.userId (number)
    ContentEngagement.recordId (string)

 

Classifications:
  Dimensions:
    Classifications.name (string)
    Classifications.identifier (string)
    Classifications.rootClassificationId (string)
    Classifications.parentClassificationId (string)
    Classifications.sortIndex (number)
    Classifications.sortOrder (string)
    Classifications.createUser (string)
    Classifications.createDate (time)
    Classifications.lastModifiedUser (string)
    Classifications.lastModifiedDate (time)
    Classifications.contentType (string)
DateDimension:
  Dimensions:
    DateDimension.date (time)
    DateDimension.year (number)
    DateDimension.quarterLabelId (number)
    DateDimension.monthLabelId (number)
    DateDimension.weekdayLabelId (number)
    DateDimension.monthLongNameLabelId (number)
    DateDimension.weekdayLongNameLabelId (number)
    DateDimension.yearStartDate (time)
    DateDimension.yearEndDate (time)
    DateDimension.quarterStartDate (time)
    DateDimension.quarterEndDate (time)
    DateDimension.monthStartDate (time)
    DateDimension.weekStartDateSun (time)
    DateDimension.weekStartDateMon (time)
    DateDimension.monthEndDate (time)
    DateDimension.monthOrder (number)
    DateDimension.weekdayOrder (number)
    DateDimension.julianDayNumber (number)
    DateDimension.fiscalYear (string)
    DateDimension.fiscalQuarter (string)
    DateDimension.fiscalMonthLabelId (number)
    DateDimension.fiscalYearStartDate (time)
    DateDimension.fiscalYearEndDate (time)
    DateDimension.fiscalQuarterStartDate (time)
    DateDimension.fiscalQuarterEndDate (time)
    DateDimension.fiscalMonthStartDate (time)
    DateDimension.fiscalMonthEndDate (time)
    DateDimension.fiscalMonthOrder (number)
FiscalMonth:
  Dimensions:
    FiscalMonth.label (string)
Groups:
  Dimensions:
    Groups.active (number)
    Groups.name (string)
    Groups.loginId (string)
Month:
  Dimensions:
    Month.label (string)
MonthLongName:
  Dimensions:
    MonthLongName.label (string)
Quarter:
  Dimensions:
    Quarter.label (string)
RecordMetadata:
  Dimensions:
    RecordMetadata.aprimoContentUsage (string)
    RecordMetadata.keywords (string)
    RecordMetadata.smartTags (string)
    RecordMetadata.title (string)
Records:
  Dimensions:
    Records.fileCount (number)
    Records.createUser (string)
    Records.createDate (time)
    Records.lastModifiedUser (string)
    Records.lastModifiedDate (time)
    Records.contentType (string)
    Records.parentRecordId (string)
Users:
  Dimensions:
    Users.active (number)
    Users.firstName (string)
    Users.lastName (string)
    Users.middleName (string)
    Users.emailAddress (string)
    Users.loginId (string)
    Users.company (string)
    Users.department (string)
    Users.employeeNumber (string)
    Users.costCenter (string)
    Users.departmentCode (string)
    Users.altUserId (string)
Weekday:
  Dimensions:
    Weekday.label (string)
WeekdayLongName:
  Dimensions:
    WeekdayLongName.label (string)

Data Dimension - Plays

Dimensions and Filters

Plays:
  Measures:
    PreviewPlaybacks.count (count)
  Dimensions:
    PreviewPlaybacks.previewPlaybackDate (time)
    PreviewPlaybacks.dateDimensionId (number)
    PreviewPlaybacks.userId (number)
    PreviewPlaybacks.recordId (string)
    PreviewPlaybacks.spaceId (string)
    PreviewPlaybacks.collectionId (string)
    PreviewPlaybacks.hasNoContext (boolean)
    PreviewPlaybacks.hasSpaceContext (boolean)
    PreviewPlaybacks.hasCollectionContext (boolean)
Classifications:
  Dimensions:
    Classifications.name (string)
    Classifications.identifier (string)
    Classifications.rootClassificationId (string)
    Classifications.parentClassificationId (string)
    Classifications.sortIndex (number)
    Classifications.sortOrder (string)
    Classifications.createUser (string)
    Classifications.createDate (time)
    Classifications.lastModifiedUser (string)
    Classifications.lastModifiedDate (time)
    Classifications.contentType (string)
Collections:
  Dimensions:
    Collections.name (string)
    Collections.createUser (string)
    Collections.createDate (time)
    Collections.lastModifiedUser (string)
    Collections.lastModifiedDate (time)
    Collections.viewType (string)
    Collections.scope (string)
    Collections.isPublic (string)
    Collections.description (string)
    Collections.searchExpression (string)
    Collections.numberOfAssets (number) 
DateDimension:
  Dimensions:
    DateDimension.date (time)
    DateDimension.year (number)
    DateDimension.quarterLabelId (number)
    DateDimension.monthLabelId (number)
    DateDimension.weekdayLabelId (number)
    DateDimension.monthLongNameLabelId (number) 
    DateDimension.weekdayLongNameLabelId (number)
    DateDimension.yearStartDate (time) 
    DateDimension.yearEndDate (time) 
    DateDimension.quarterStartDate (time) 
    DateDimension.quarterEndDate (time) 
    DateDimension.monthStartDate (time) 
    DateDimension.weekStartDateSun (time) 
    DateDimension.weekStartDateMon (time) 
    DateDimension.monthEndDate (time) 
    DateDimension.monthOrder (number) 
    DateDimension.weekdayOrder (number) 
    DateDimension.julianDayNumber (number) 
    DateDimension.fiscalYear (string) 
    DateDimension.fiscalQuarter (string) 
    DateDimension.fiscalMonthLabelId (number) 
    DateDimension.fiscalYearStartDate (time) 
    DateDimension.fiscalYearEndDate (time) 
    DateDimension.fiscalQuarterStartDate (time) 
    DateDimension.fiscalQuarterEndDate (time) 
    DateDimension.fiscalMonthStartDate (time) 
    DateDimension.fiscalMonthEndDate (time) 
    DateDimension.fiscalMonthOrder (number) 
FiscalMonth:
  Dimensions:
    FiscalMonth.label (string)
Groups:
  Dimensions: 
    Groups.active (number) 
    Groups.name (string) 
    Groups.loginId (string)
Month:
  Dimensions:
    Month.label (string) 
MonthLongName:
  Dimensions:
    MonthLongName.label (string) 
Quarter:
  Dimensions:
    Quarter.label (string) 
RecordMetadata:
  Dimensions:
    RecordMetadata.aprimoContentUsage (string)
    RecordMetadata.keywords (string) 
    RecordMetadata.smartTags (string) 
    RecordMetadata.title (string)
Records:
  Dimensions:
    Records.fileCount (number) 
    Records.createUser (string) 
    Records.createDate (time) 
    Records.lastModifiedUser (string) 
    Records.lastModifiedDate (time) 
    Records.contentType (string) 
    Records.parentRecordId (string)
Spaces:
  Dimensions:
    Spaces.name (string) 
Users:
  Dimensions:
    Users.active (number) 
    Users.firstName (string) 
    Users.lastName (string) 
    Users.middleName (string) 
    Users.emailAddress (string) 
    Users.loginId (string) 
    Users.company (string) 
    Users.department (string) 
    Users.employeeNumber (string) 
    Users.costCenter (string) 
    Users.departmentCode (string) 
    Users.altUserId (string)
Weekday:
  Dimensions:
    Weekday.label (string) 
WeekdayLongName:
  Dimensions:
    WeekdayLongName.label (string)

Data Dimension - Zero Plays

Dimensions and Filters

ZeroPreviewPlaybackRecords:
  Measures:
    ZeroPreviewPlaybackRecords.count (count)
  Dimensions:
    ZeroPreviewPlaybackRecords.fileCount (number)
    ZeroPreviewPlaybackRecords.createUser (string)
    ZeroPreviewPlaybackRecords.createDate (time)
    ZeroPreviewPlaybackRecords.lastModifiedUser (string)
    ZeroPreviewPlaybackRecords.lastModifiedDate (time)
    ZeroPreviewPlaybackRecords.contentType (string)
    ZeroPreviewPlaybackRecords.parentRecordId (string)
Classifications:
  Dimensions:
    Classifications.name (string)
    Classifications.identifier (string)
    Classifications.rootClassificationId (string)
    Classifications.parentClassificationId (string)
    Classifications.sortIndex (number)
    Classifications.sortOrder (string)
    Classifications.createUser (string)
    Classifications.createDate (time)
    Classifications.lastModifiedUser (string)
    Classifications.lastModifiedDate (time)
    Classifications.contentType (string)
RecordMetadata:
  Dimensions:
    RecordMetadata.aprimoContentUsage (string)
    RecordMetadata.keywords (string)
    RecordMetadata.smartTags (string)
    RecordMetadata.title (string)

Data Dimension - Zero Downloads

Dimensions and Filters

ZeroDownloadRecords:
  Measures:
    ZeroDownloadRecords.count (count)
  Dimensions:
    ZeroDownloadRecords.fileCount (number)
    ZeroDownloadRecords.createUser (string)
    ZeroDownloadRecords.createDate (time)
    ZeroDownloadRecords.lastModifiedUser (string)
    ZeroDownloadRecords.lastModifiedDate (time)
    ZeroDownloadRecords.contentType (string)
    ZeroDownloadRecords.parentRecordId (string)
Classifications:
  Dimensions:
    Classifications.name (string)
    Classifications.identifier (string)
    Classifications.rootClassificationId (string)
    Classifications.parentClassificationId (string)
    Classifications.sortIndex (number)
    Classifications.sortOrder (string)
    Classifications.createUser (string)
    Classifications.createDate (time)
    Classifications.lastModifiedUser (string)
    Classifications.lastModifiedDate (time)
    Classifications.contentType (string)
RecordMetadata:
  Dimensions:
    RecordMetadata.aprimoContentUsage (string)
    RecordMetadata.keywords (string)
    RecordMetadata.smartTags (string)
    RecordMetadata.title (string)

Data Dimension - Zero Views

Dimensions and Filters

ZeroViewRecords:
  Measures:
    ZeroViewRecords.count (count)
  Dimensions:
    ZeroViewRecords.fileCount (number)
    ZeroViewRecords.createUser (string)
    ZeroViewRecords.createDate (time)
    ZeroViewRecords.lastModifiedUser (string)
    ZeroViewRecords.lastModifiedDate (time)
    ZeroViewRecords.contentType (string)
    ZeroViewRecords.parentRecordId (string)
Classifications:
  Dimensions:
    Classifications.name (string)
    Classifications.identifier (string)
    Classifications.rootClassificationId (string)
    Classifications.parentClassificationId (string)
    Classifications.sortIndex (number)
    Classifications.sortOrder (string)
    Classifications.createUser (string)
    Classifications.createDate (time)
    Classifications.lastModifiedUser (string)
    Classifications.lastModifiedDate (time)
    Classifications.contentType (string)
RecordMetadata:
  Dimensions:
    RecordMetadata.aprimoContentUsage (string)
    RecordMetadata.keywords (string)
    RecordMetadata.smartTags (string)
    RecordMetadata.title (string)

POSTMAN Collection

This POSTMAN collection contains samples of all of the example requests that are outlines in the following sections.

Analytics API Examples.postman_collection

Examples - Downloads

 

Downloads

  • Overall Downloads
{
   "measure":["Downloads.count"]
}
  • Total Number of Downloads with Date Range
{
   "measure":["Downloads.count"],
   "filters":[{
      "member": "Downloads.downloadDate",
      "operator": "inDateRange",
      "values": ["YYYY-MM-DD","YYYY-MM-DD"]}
]}

 

  • Total Number of Downloads by Date Dimension
{
   "measures": ["Downloads.count"],
   "filters": [{
      "member": "Quarter.label",
      "operator": "equals",
      "values": ["Q2"]
   },
   {
      "member": "DateDimension.year",
      "operator": "equals",
      "values": ["2022"]
   }]
}

 

Downloads by Asset

  • Total Number of Downloads by Asset (All Assets)
{
   "measures": ["Downloads.count"],
   "dimensions": ["Downloads.recordId"]
}
  • Total Number of Downloads by Asset (All Assets) within Date Range
{
   "measures": ["Downloads.count"],
   "dimensions": ["Downloads.recordId"],
   "filters": [{
      "member": "Downloads.downloadDate",
      "operator": "inDateRange",
      "values": ["2022-05-01","2022-05-06"]
   }]
}
  • Total Number of Downloads by Asset (Specific Asset)
{
   "measures": ["Downloads.count"],
   "dimensions": ["Downloads.recordId"],
   "filters": [{
      "member": "Downloads.recordId",
      "operator": "equals",
      "values": ["86EE478A-1930-4F74-B87C-AE760108473A"]
   }]
}
  • Total Number of Downloads by Asset Title (Specific Asset)
{
   "measures": ["Downloads.count"],
   "dimensions": ["RecordMetadata.title","Downloads.recordId"],
   "filters": [{
      "member": "RecordMetadata.title",
      "operator": "equals",
      "values": ["Airplane"]
   }]
}

Downloads By User

  • Total Number of Downloads by User (All Users)
{
   "measures": ["Downloads.count"],
   "dimensions": ["Users.lastName", "Users.firstName", "Users.loginId"]
}
  • Total Number of Downloads by User (Specific User, by Name)
{
   "measures": ["Downloads.count"],
   "dimensions": ["Users.lastName", "Users.firstName", "Users.loginId"],
   "filters": [{
      "member": "Users.lastName",
      "operator": "equals",
      "values": ["Reeves"]
   },
   {
      "member": "Users.firstName",
      "operator": "contains",
      "values": ["A"]
   }]
}

Downloads By Group

  • Total Number of Downloads by Group (All Groups, may double count because a user may belong to more than one group)
{
    "measures": ["Downloads.count"],
    "dimensions": ["Groups.name", "Groups.loginId"]
}  
  • Total Number of Downloads by Group (Specific Group, by Login ID)
{
    "measures": ["Downloads.count"],
    "dimensions": ["Groups.name", "Groups.loginId"],
    "filters": [{
        "member": "Groups.loginId",
        "operator": "equals",
        "values": ["GROUP105"]
    }]
} 

Downloads By Direct Classification

  • Total Number of Downloads by Direct Classification (All Classifications, may double count because an asset may be associated to multiple classifications)
{
    "measures": ["Downloads.count"],
    "dimensions": ["Classifications.name"]
}  
  • Total Number of Downloads by Direct Classification (Specific Classification, by Parent ID)
{
    "measures": ["Downloads.count"],
    "dimensions": ["Classifications.classificationId","Classifications.name","Classifications.parentClassificationId"],
    "filters": [{
        "member": "Classifications.parentClassificationId",
        "operator": "equals",
        "values": ["A4FFE32F-C640-45B7-86A8-AE7500DF6EBA"]
    }]
} 

Downloads with Crops

  • Total Number of Downloads with Crops
{
    "measures": ["Downloads.count"],
    "filters": [{
        "member": "Downloads.renditionType",
        "operator": "equals",
        "values": ["Crop"]
    }]
}  OR {
    "measures": ["Downloads.count"],
    "filters": [{
        "member": "Downloads.cropType",
        "operator": "set"
    }]
}
  • Total Number of Downloads with Trims
{
    "measures": ["Downloads.count"],
    "filters": [{
        "member": "Downloads.renditionType",
        "operator": "equals",
        "values": ["Trim"]
    }]
}    OR {
    "measures": ["Downloads.count"],
    "filters": [{
        "member": "Downloads.trimDuration",
        "operator": "set"
    }]
}

Downloads by Rendition Type

  • Total Number of Downloads by Rendition Type
{
    "measures": ["Downloads.count"],
    "dimensions": ["Downloads.renditionType"]
}

Assets with Zero Downloads

  • Show assets that have not been downloaded
{
    "measures": ["ZeroDownloadRecords.count"],
    "dimensions": ["ZeroDownloadRecords.recordId"]
}

Examples - Views

Overall Views

  • Total Number of Views
{
    "measures": ["Views.count"]
} 
  • Total Number of Views within Date Range
{
    "measures": ["Views.count"],
    "filters": [{
        "member": "Views.viewDate",
        "operator": "inDateRange",
        "values": ["2022-05-10","2022-05-11"]
    }]
}
  • Total Number of Views by Date Dimension
{
    "measures": ["Views.count"],
    "filters": [{
        "member": "Month.label",
        "operator": "equals",
        "values": ["May"]
    }]
} 
  • Total Number of Views broken down by those that came in by space, collection or no context
{
    "measures": ["Views.count"],
    "dimensions": ["Views.hasNoContext", "Views.hasSpaceContext", "Views.hasCollectionContext"]
}

View by Asset

  • Total Number of Views by Asset (All Assets)
{
    "measures": ["Views.count"],
    "dimensions": ["Views.recordId"]
}  
  • Total Number of Views (All Assets) after a specific date
{
    "measures": ["Views.count"],
    "dimensions": ["Views.recordId"],
    "filters": [{
        "member": "Views.viewDate",
        "operator": "gt",
        "values": ["2022-05-14"]
    }]
}  
  • Total Number of Views by Asset (Specific Asset)
{
    "measures": ["Views.count"],
    "dimensions": ["Views.recordId"],
    "filters": [{
        "member": "Views.recordId",
        "operator": "equals",
        "values": ["A6A65062-16AB-4E52-B15A-AE6D00AE2801"]
    }]
}

View by User

  • Total Number of Views by User (All Users), broken out by Space and Collection names
{
    "measures": ["Views.count"],
    "dimensions": ["Users.lastName", "Users.firstName", "Users.loginId", "Spaces.name", "Collections.name"]
} 
  • Total Number of Views by User (Specific User, by partial Last Name)
{
    "measures": ["Views.count"],
    "dimensions": ["Users.lastName", "Users.firstName", "Users.loginId"],
    "filters": [
    {
        "member": "Users.lastName",
        "operator": "contains",
        "values": ["A"]
    }]
} 

View by Space

  • Total Number of View by Space (All Spaces)
{    
    "measures": ["Views.count"],
    "dimensions": ["Spaces.name", "Spaces.spaceId"],
    "order": {
        "Spaces.name": "asc",
        "Views.count": "desc"
    }  
  • Total Number of View by Space (Specific Space, by Name)
{
    "measures": ["Views.count"],
    "dimensions": ["Spaces.name", "Spaces.spaceId"],
    "filters": [{
        "member": "Spaces.name",
        "operator": "equals",
        "values": ["Space 1", "Space 3"]
    }]
}

Views by Collection

  • Total Number of View by Collection (All Collections)
{
    "measures": ["Views.count"],
    "dimensions": ["Collections.name", "Collections.collectionId"]
} 
  • Total Number of View by Collection (with number of assets >= 1)
{
    "measures": ["Views.count"],
    "dimensions": ["Collections.name", "Collections.collectionId"],
    "filters": [{
        "member": "Collections.numberOfAssets",
        "operator": "gte",
        "values": ["1"]
    }]
} 

Views by Direct Classification

  • Total Number of Views by Direct Classification (All Classifications)
{
    "measures": ["Views.count"],
    "dimensions": ["Classifications.name", "Classifications.identifier"]
} 
  • Total Number of Views by Direct Classification – Top-Level Only (no parent Classification)
{
    "measures": ["Views.count"],
    "dimensions": ["Classifications.name", "Classifications.identifier"],
    "filters": [{
        "member": "Classifications.parentClassificationId",
        "operator": "notSet"
    }]
}

Views with Multiple Filter Criteria

  • Total Number of Views by Asset that occurred via “Space 1” or “Space 2” by users jsmith or tjones in Q2 2022.
{
    "measures": ["Views.count"],
    "dimensions": ["Views.recordId"],
    "filters": [{
        "member": "Spaces.name",
        "operator": "equals",
        "values": ["Space 1", "Space 2"]
    },
    {
        "member": "Users.loginId",
        "operator": "equals",
        "values": ["jsmith", "tjones"]
    },
    {
        "member": "Quarter.label",
        "operator": "equals",
        "values": ["Q2"]
    },
    {
        "member": "DateDimension.year",
        "operator": "equals",
        "values": ["2022"]
    }]
} 

Zero Views

  • Show assets that have not been viewed
{
    "measures": ["ZeroViewRecords.count"],
    "dimensions": ["ZeroViewRecords.recordId"]
}

Example - Impressions

  • Total Impressions
    • Get the total number of impressions in the database
      {
         "measures": ["Impressions.count"]
      }     
      
  • Sum of the response size (traffic)
    • Total Impressions count and the sum of the response size (traffic) aggregated by asset ID and file name
      {
         "measures": ["Impressions.count", "Impressions.totalResponseSize"],
         "dimensions": ["Impressions.recordId", "Impressions.fileName"]
      }     
      
  • Number of Impressions containing each Tracking Parameter
    • Shows the count of impressions that contain each of the four tracking parameters
      {
         "measures": ["Impressions.count"],
         "dimensions": ["Impressions.recordId", "ImpressionTrackingTypes.queryStringKey"]
      }
      
  • Total impressions per record
    • Shows the number of impressions each record has
      {
         "measures": ["Impressions.count"],
         "dimensions": ["Impressions.recordId"]
      }
      
  • Total impressions per source value
    • Shows the number of impressions grouped by source value (can be substituted for other parameters)
       {
         "measures": ["Impressions.count"],
         "dimensions": [
                         "ImpressionTypeValues.value"
                     ],
         "filters": [{
             "member": "ImpressionTrackingTypes.id",
             "operator": "equals",
             "values": ["1"]
         }]
      }     
      
  • Total Impressions per Asset Attributes
    • Shows the File version Id, File Name and Response Size (these can be filtered upon)
      {
         "measures": ["Impressions.count"],
         "dimensions": ["Impressions.fileVersionId", "Impressions.fileName", "Impressions.responseSize"],
         "filters": [{
             "member": "Impressions.fileName",
             "operator": "equals",
             "values": ["dhc7_3v.jpg"]
         }]
      }       
      
  • Daily Impressions
    • {
                 "measures": ["Impressions.count", "Impressions.totalResponseSize"],
                  "timeDimensions": [
                  {
                      "dimension": "Impressions.hitDateTime",
                      "granularity": "day"
                  }]
          }  
      

 

  • Total Daily Impressions
    • Returns number of daily impressions for the given date range
       {
         "measures": ["Impressions.count"],
         "timeDimensions": [{
           "dimension": "Impressions.hitDateTime",
           "dateRange": ["2022-09-23", "2022-09-24"],
           "granularity": "day"
         }]
      }
      
  • Total Monthly Impressions
    • Returns number of Monthly impressions for the given date range
       {
         "measures": ["Impressions.count"],
         "timeDimensions": [{
           "dimension": "Impressions.hitDateTime",
           "dateRange": ["2022-01-01", "2022-12-31"],
           "granularity": "month"
         }]
      }

Examples - Content Engagement (Combined Views and Downloads)

Overall Views and Downloads

  • Show total view and download counts per asset
{
    "measures": ["ContentEngagement.downloadsCount","ContentEngagement.viewsCount","ContentEngagement.previewPlaybacksCount"],
    "dimensions": ["ContentEngagement.recordId"]
}
  • Show total view and download counts per asset with asset title
{
    "measures": ["ContentEngagement.downloadsCount","ContentEngagement.viewsCount","ContentEngagement.previewPlaybacksCount"],
    "dimensions": ["ContentEngagement.recordId","RecordMetadata.title"]
} 

Examples - Plays

Overall Plays

  • Total Number of Plays
{
 "measures": ["PreviewPlaybacks.count"]
}
  • Total Number of Plays within Date Range
{
    "measures": ["PreviewPlaybacks.count"],
    "filters": [{
        "member": "PreviewPlaybacks.previewPlaybackDate",
        "operator": "inDateRange",
        "values": ["2022-05-10","2022-05-11"]
    }]
}
  • Total Number of Plays By Date Dimension
{
    "measures": ["PreviewPlaybacks.count"],
    "filters": [{
        "member": "Month.label",
        "operator": "equals",
        "values": ["May"]
    }]
}
  • Total Number of Plays broken down by those that came in by space, collection or no context
{
    "measures": ["PreviewPlaybacks.count"],
    "dimensions": ["PreviewPlaybacks.hasNoContext", "PreviewPlaybacks.hasSpaceContext", "PreviewPlaybacks.hasCollectionContext"]
}

Plays by Asset

  • Total Number of Plays by Asset (All Assets)
{
    "measures": ["PreviewPlaybacks.count"],
    "dimensions": ["PreviewPlaybacks.recordId"]
}  
  • Total Number of Plays (All Assets) after a specific date
{
    "measures": ["PreviewPlaybacks.count"],
    "dimensions": ["PreviewPlaybacks.recordId"],
    "filters": [{
        "member": "PreviewPlaybacks.previewPlaybackDate",
        "operator": "gt",
        "values": ["2022-05-14"]
    }]
}  
  • Total Number of Plays by Asset (Specific Asset)
{
    "measures": ["PreviewPlaybacks.count"],
    "dimensions": ["PreviewPlaybacks.recordId"],
    "filters": [{
        "member": "PreviewPlaybacks.recordId",
        "operator": "equals",
        "values": ["A6A65062-16AB-4E52-B15A-AE6D00AE2801"]
    }]
} 

Plays by User

  • Total Number of Plays by User (All Users), broken out by Space and Collection names
{
    "measures": ["PreviewPlaybacks.count"],
    "dimensions": ["Users.lastName", "Users.firstName", "Users.loginId", "Spaces.name", "Collections.name"]
} 
  • Total Number of Plays by User (Specific User, by partial Last Name)
{
    "measures": ["PreviewPlaybacks.count"],
    "dimensions": ["Users.lastName", "Users.firstName", "Users.loginId"],
    "filters": [
    {
        "member": "Users.lastName",
        "operator": "contains",
        "values": ["A"]
    }]
} 

Plays by Space

  • Total Number of View by Space (All Spaces)
{    
    "measures": ["PreviewPlaybacks.count"],
    "dimensions": ["Spaces.name", "Spaces.spaceId"],
    "order": {
        "Spaces.name": "asc",
        "PreviewPlaybacks.count": "desc"
    }  
} 
  • Total Number of View by Space (Specific Space, by Name)
{
    "measures": ["PreviewPlaybacks.count"],
    "dimensions": ["Spaces.name", "Spaces.spaceId"],
    "filters": [{
        "member": "Spaces.name",
        "operator": "equals",
        "values": ["Space 1", "Space 3"]
    }]
}

Plays by Collection

  • Total Number of View by Collection (All Collections)
{
    "measures": ["PreviewPlaybacks.count"],
    "dimensions": ["Collections.name", "Collections.collectionId"]
} 
  • Total Number of View by Collection (with number of assets >= 1)
{
    "measures": ["PreviewPlaybacks.count"],
    "dimensions": ["Collections.name", "Collections.collectionId"],
    "filters": [{
        "member": "Collections.numberOfAssets",
        "operator": "gte",
        "values": ["1"]
    }]
} 

Plays by Direct Classification

  • Total Number of Plays by Direct Classification (All Classifications)
{
    "measures": ["PreviewPlaybacks.count"],
    "dimensions": ["Classifications.name", "Classifications.identifier"]
} 
  • Total Number of Plays by Direct Classification – Top-Level Only (no parent Classification)
{
    "measures": ["PreviewPlaybacks.count"],
    "dimensions": ["Classifications.name", "Classifications.identifier"],
    "filters": [{
        "member": "Classifications.parentClassificationId",
        "operator": "notSet"
    }]
}

Plays with Multiple Filter Criteria

  • Total Number of Plays by Asset that occurred via “Space 1” or “Space 2” by users jsmith or tjones in Q2 2022.
{
    "measures": ["PreviewPlaybacks.count"],
    "dimensions": ["PreviewPlaybacks.recordId"],
    "filters": [{
        "member": "Spaces.name",
        "operator": "equals",
        "values": ["Space 1", "Space 2"]
    },
    {
        "member": "Users.loginId",
        "operator": "equals",
        "values": ["jsmith", "tjones"]
    },
    {
        "member": "Quarter.label",
        "operator": "equals",
        "values": ["Q2"]
    },
    {
        "member": "DateDimension.year",
        "operator": "equals",
        "values": ["2022"]
    }]
} 

Zero Plays

  • Show assets that have not been viewed
{
    "measures": ["ZeroPreviewPlaybackRecords.count"],
    "dimensions": ["ZeroPreviewPlaybackRecords.recordId"]
}

 

Field Definitions

Classifications:

Dimensions:

  • Classifications.name (string)
  • Classifications.identifier (string)
  • Classifications.rootClassificationId (string)
  • Classifications.parentClassificationId (string)
  • Classifications.sortIndex (number)
  • Classifications.sortOrder (string)
  • Classifications.createUser (string)
  • Classifications.createDate (time)
  • Classifications.lastModifiedUser (string)
  • Classifications.lastModifiedDate (time)
  • Classifications.contentType (string)

Collections:

Dimensions:

  • Collections.name (string)
  • Collections.createUser (string)
  • Collections.createDate (time)
  • Collections.lastModifiedUser (string)
  • Collections.lastModifiedDate (time)
  • Collections.viewType (string)
  • Collections.scope (string)
  • Collections.isPublic (string)
  • Collections.description (string)
  • Collections.searchExpression (string)
  • Collections.numberOfAssets (number)

ContentEngagement:

Measures:

  • ContentEngagement.downloadsCount (count)
  • ContentEngagement.impressionsCount (count)
  • ContentEngagement.viewsCount (count)
  • ContentEngagement.previewPlaybacksCount (count)

Dimensions:

  • ContentEngagement.date (time)
  • ContentEngagement.userId (number)
  • ContentEngagement.recordId (string)

DateDimension:

Dimensions:

  • DateDimension.date (time)
  • DateDimension.year (number)
  • DateDimension.quarterLabelId (number)
  • DateDimension.monthLabelId (number)
  • DateDimension.weekdayLabelId (number)
  • DateDimension.monthLongNameLabelId (number)
  • DateDimension.weekdayLongNameLabelId (number)
  • DateDimension.yearStartDate (time)
  • DateDimension.yearEndDate (time)
  • DateDimension.quarterStartDate (time)
  • DateDimension.quarterEndDate (time)
  • DateDimension.monthStartDate (time)
  • DateDimension.weekStartDateSun (time)
  • DateDimension.weekStartDateMon (time)
  • DateDimension.monthEndDate (time)
  • DateDimension.monthOrder (number)
  • DateDimension.weekdayOrder (number)
  • DateDimension.julianDayNumber (number)
  • DateDimension.fiscalYear (string)
  • DateDimension.fiscalQuarter (string)
  • DateDimension.fiscalMonthLabelId (number)
  • DateDimension.fiscalYearStartDate (time)
  • DateDimension.fiscalYearEndDate (time)
  • DateDimension.fiscalQuarterStartDate (time)
  • DateDimension.fiscalQuarterEndDate (time)
  • DateDimension.fiscalMonthStartDate (time)
  • DateDimension.fiscalMonthEndDate (time)
  • DateDimension.fiscalMonthOrder (number)

Downloads:

Measures:

  • Downloads.count (count)

Dimensions:

  • Downloads.downloadDate (time)
  • Downloads.dateDimensionId (number)
  • Downloads.userId (number)
  • Downloads.recordId (string)
  • Downloads.versionId (string)
  • Downloads.renditionId (string)
  • Downloads.renditionType (string)
  • Downloads.versionNumber (number)
  • Downloads.cropHeight (number)
  • Downloads.cropWidth (number)
  • Downloads.cropType (string)
  • Downloads.trimDuration (number)

FiscalMonth:

Dimensions:

  • FiscalMonth.label (string)

Groups:

Dimensions:

  • Groups.active (number)
  • Groups.name (string)
  • Groups.loginId (string)

Impressions:

Measures:

  • Impressions.count (count)
  • Impressions.totalResponseSize (sum)

Dimensions:

  • Impressions.id (number)
  • Impressions.hitDateTime (time)
  • Impressions.recordId (string)

ImpressionValues:

Dimensions:

  • ImpressionValues.hitId (number)
  • ImpressionValues.trackingTypeId (number)
  • ImpressionValues.trackingTypeValueId (number)
  • Impressions.fileVersionId (string)
  • Impressions.fileName (string)
  • Impressions.responseSize (number)

ImpressionTrackingTypes:

Dimensions:

  • ImpressionTrackingTypes.id (number)
  • ImpressionTrackingTypes.queryStringKey (string)

ImpressionTrackingTypeValues:

Dimensions:

  • ImpressionTrackingTypeValues.id (number)
  • ImpressionTrackingTypeValues.value (string)

Month:

Dimensions:

  • Month.label (string)

MonthLongName:

Dimensions:

  • MonthLongName.label (string)

Plays:

Measures:

  • PreviewPlaybacks.count (count)

Dimensions:

  • PreviewPlaybacks.previewPlaybackDate (time)
  • PreviewPlaybacks.dateDimensionId (number)
  • PreviewPlaybacks.userId (number)
  • PreviewPlaybacks.recordId (string)
  • PreviewPlaybacks.spaceId (string)
  • PreviewPlaybacks.collectionId (string)
  • PreviewPlaybacks.hasNoContext (boolean)
  • PreviewPlaybacks.hasSpaceContext (boolean)
  • PreviewPlaybacks.hasCollectionContext (boolean)

Quarter:

Dimensions:

  • Quarter.label (string)

RecordMetadata:

Dimensions:

  • RecordMetadata.aprimoContentUsage (string)
  • RecordMetadata.keywords (string)
  • RecordMetadata.smartTags (string)
  • RecordMetadata.title (string)

Records:

Dimensions:

  • Records.fileCount (number)
  • Records.createUser (string)
  • Records.createDate (time)
  • Records.lastModifiedUser (string)
  • Records.lastModifiedDate (time)
  • Records.contentType (string)
  • Records.parentRecordId (string)

Spaces:

Dimensions:

  • Spaces.name (string)

Users:

Dimensions:

  • Users.active (number)
  • Users.firstName (string)
  • Users.lastName (string)
  • Users.middleName (string)
  • Users.emailAddress (string)
  • Users.loginId (string)
  • Users.company (string)
  • Users.department (string)
  • Users.employeeNumber (string)
  • Users.costCenter (string)
  • Users.departmentCode (string)
  • Users.altUserId (string)

Views:

Measures:

  • Views.count (count)

Dimensions:

  • Views.viewDate (time)
  • Views.dateDimensionId (number)
  • Views.userId (number)
  • Views.recordId (string)
  • Views.spaceId (string)
  • Views.collectionId (string)
  • Views.hasNoContext (boolean)
  • Views.hasSpaceContext (boolean)
  • Views.hasCollectionContext (boolean)

Weekday:

Dimensions:

  • Weekday.label (string)

WeekdayLongName:

Dimensions:

  • WeekdayLongName.label (string)

ZeroDownloadRecords:

Measures:

  • ZeroDownloadRecords.count (count)

Dimensions:

  • ZeroDownloadRecords.fileCount (number)
  • ZeroDownloadRecords.createUser (string)
  • ZeroDownloadRecords.createDate (time)
  • ZeroDownloadRecords.lastModifiedUser (string)
  • ZeroDownloadRecords.lastModifiedDate (time)
  • ZeroDownloadRecords.contentType (string)
  • ZeroDownloadRecords.parentRecordId (string)

ZeroViewRecords:

Measures:

  • ZeroViewRecords.count (count)
  • ZeroPreviewPlaybackRecords.count (count)

Dimensions:

  • ZeroViewRecords.fileCount (number)
  • ZeroViewRecords.createUser (string)
  • ZeroViewRecords.createDate (time)
  • ZeroViewRecords.lastModifiedUser (string)
  • ZeroViewRecords.lastModifiedDate (time)
  • ZeroViewRecords.contentType (string)
  • ZeroViewRecords.parentRecordId (string)