Skip to main content

Lookup Relations Tables

All actions of users and share recipients end up as events in the Events table. The table below details all of the available lookup tables and the fields we return when you call them.

Things to keep in mind

Aggregating Returned Data

It's important to distinguish between events when aggregating returned data. If you export details per asset page (pageBased=true), the events export will return:

  • an event for every viewed page of a document
  • an event for the whole document (the page field will display the value NULL).

Excluding Deleted Records

Reports in the Online Platform automatically filter out data for deleted users, assets, user groups, etc. In order for you to replicate this behavior, you must execute a filter based on the deletedAt field in the relevant tables.

Event Timestamps

Because Showpad tracks events that take place offline and sends the event data to the server when the device has an online connection, it's important to be aware that both the occurance of the event and the logging of the data is recorded.

An event has the following fields:

FieldDescription
startTimeThe actual start time of the event
endTimeThe actual start time of the event
loggedAt

The time the event was received in the Showpad backend.


Note: This can be significantly different from the startTime and endTime values in offline use cases.

It is therefore important to use the correct parameters when executing API calls:

  • startedAt and endedAt can be used to filter events based on their actual time of occurance.
  • loggedBefore and loggedAfter can be used to filter events based on the time they were received in the Showpad back-end.

See the Events reference for details about the available parameters.

Tables

Events

FieldDescription
eventIdIdentifier of an event. An event is an interaction of a user within the Showpad Web app, Windows Desktop app, or iOS/Android apps.
startTimeTimestamp of the start of an event.
endTimeTimestamp of the end of an event.
loggedAtTimestamp of the data logged to the server.

Note: This can differ significantly from startTime and endTime in offline use cases.
userIdIdentifier of a user.
channelIdIdentifier of a channel. A channel is the technical API name for an Experience (Classic, Advanced, or created from a Showpad App).
shareIdIdentifier of a share. A share can be an email or link share sent via the Showpad Web app, Windows Desktop app, iOS/Android apps, or a plugin.
deviceIdIdentifier of a user's device.
divisionIdDeprecated field. Do not use this for linking to the Divisions lookup table. The correct divisionId is found on the Assets lookup table.
assetIdIdentifier of an asset.
contactIdIdentifier of a contact.
typeType of event.
pagePage of the asset (for view events only).
  • NULL for all other cases or the "all pages" view event
  • Only filled when an export is executed with pageBased=true
  • Values are:
    • non-HTML5 assets - numeric
    • HTML5 assets- text/string
metadataSome experiences have some extra metadata on usage data.
sharedSpaceIdIdentifier of a Shared Space.
sharedSpaceParticipantIdIdentifier of a Shared Space participant.

Users

FieldDescription
userIdIdentifier of a user.
createdAtTimestamp when the user was created.
firstNameA user's first name.
lastNameA user's last name.
emailAddressA user's email address. This is also the user's login.
deletedAtTimestamp when the user is deleted. When used, any events after this date will be excluded from reporting.
isActiveIndicates the user has been assigned a license and is an active in Online Platform reporting.
isForgottenIndicates a user has been anonymized for GDPR reasons (e.g., deleted users are anonymized after a specified amount of time according to the configuration in the Online Platform).

For some geographical locations, the emailAddress, firstName and lastName of active users can be anonymized.
userRoleThe role of a user within Showpad:
  • Admin
  • Manager
  • Promoted Member
  • User
managerIdThe identifier of the Manager user.
externalIdThe user's identifier in an external system.

Usergroups

FieldDescription
userGroupIdIdentifier of a user group.
nameName of the user group.
deletedAtTimestamp when the user group is deleted. When used, any events after this date will be excluded from reporting.

User-usergroups

FieldDescription
userIdIdentifier of a user.
usergroupIdIdentifier of a user group.

Devices

FieldDescription
deviceIdIdentifier of a user's device.
appUsedOn a registered device record, we keep multiple fields to identify the device, such as:
  • operating system
  • device model or browser user agent
  • type of device (web, browser, tablet, trackingPixel)
  • app that was used
For example, if you use the Showpad for Chrome extension, Showpad would recognize a browser with a specific user agent. The app field tells us which app was being used, i.e. Showpad for Chrome. This field was introduced in mid-2016, so data before then is not available. When the data is not available, we use the type of device (tablet).

Possible values:
ValueDescription
webThe Showpad Web app is used in a browser.
androidThe Android app is used.
iosThe iOS app is used.
windowsThe legacy Windows app is used.
windows-wdaThe legacy Windows Desktop App is used.
windows-wda-2.0The current Windows Desktop App is used.
app scvThe Shared Content Viewer is used. This is what share recipients use for viewing assets.
outlookThe Showpad for Outlook plugin is used.
gmailThe Showpad for Chrome extension is used in Gmail.
tabletThis is a fallback value for device type (tablet, browser, phone). It's used when:
  • a device doesn't send app data
  • app data is unavailable (e.g., before creation of the app field).
dealroomThis is an alternative name for Shared Spaces. Used for external users.
Si-appThe Shares tab in the Showpad Web app is used.
Crm-appThe Showpad for Salesforce app is used.
lastActiveUserIdThe identifier of the last user logged in on a device. If the event is not related to a Showpad user, this field is NULL.
modelThe model of a device used (if available).
locationThe last recorded location of a device (if available).
typeThe type of device used. This mapping is based on the model and app. This facilitates ensuring reporting on the device is identical to the reporting in the Online Platform.

Possible values:
  • desktop
  • tablet
  • phone

Shares

FieldDescription
shareIdThe identifier of a share.
titleThe title of a share.
typeThe type of a share.

Possible values:
ValueDescription
emailAn email share via Showpad.
linkA link share via Showpad.
gmailA share via Gmail in the Showpad for Chrome extension.
outlookA share via Showpad for the Outlook plugin
salesforceIndicates if a share is logged to Salesforce or not.

Possible values:
  • TRUE
  • FALSE
themeThe name of the sharing theme used for a share (simple shares only).
recipientsList of share recipients. This is typically recipient email address. If no email address is available, we store the name (if available).

If data is anonymized, you will see hash values when:
  • the security settings require anonymization after X months.
  • a recipient doesn't give consent to store their data.
  • the share is a reshare. We don't display reshare email addresses for privacy reasons until consent is given.
  • the share is a link share. This does not facilitate to capture an address or name.
  • the share is done via the Marketo integration or the Showpad for Chrome extension. These are technically link shares for which email addresses may or may not be available. When data is available, it's provided.
sharedAtThe timestamp of the share record creation. This should be close to the timestamp of the share event itself.
revokedAtThe timestamp of when a share is revoked (not deleted).
creatorIdThe identifier of the user that created the share.

Sharedspaces

FieldDescription
shareSpaceIdThe identifier of a Shared Space.
titleThe title of a Shared Space.
ownerIdThe identifier of the owner of the shared space. This corresponds to the userID in the Users table.
sharedSpaceParticipantsIdAn array of all participants in a Shared Space. This corresponds to the sharedSpaceParticipantsId in the Sharedspaceparticipantstable.
descriptionA description of the Shared Space.
statusThe status of the Shared Space.

Possible values:
  • active
  • archived
  • deleted
creatorIdThe identifier of the Shared Space creator. This corresponds to the userID in the Users table.
createdAtThe timestamp of the Shared Space creation. This should be close to the timestamp of the event.
lastActivityAtThe timestamp of the last activity in the Shared Space.
deletedAtThe timestamp of when a Shared Space is deleted.

Sharedspaceparticipants

FieldDescription
sharedSpaceParticipantIdThe identifier of a participant in a Shared Space.
  • internal participant - The userID is used.
  • external participant - If available, the firstName, lastName, emailAddress, organisation, or jobTitle is used.
firstNameA participant's first name.
lastNameA participant's last name.
emailAddressA participant's email address. This is also their login.
organisationThe name of the participant's organization (company).
jobTitleThe participant's job title.
userIdThe identifier of an internal Shared Space user. This corresponds to the userID in the Users table.
accessGrantedAtThe timestamp of when the participant was granted access to the Shared Space.
accessRevokedAtThe timestamp of when the participant's access to a Shared Space was revoked.
lastActivityAtThe timestamp of the participant's last activity in the Shared Space.
deletedAtThe timestamp of when a participant was removed from a Shared Space.
sharedSpaceIdThe identifier of a Shared Space.
createdAtThe timestamp of the participant's creation in a Shared Space.

Sharedspace-items

FieldDescription
sharedSpaceItemIdIdentifier of an item in a Shared Space.
sharedSpaceIdIdentifier of a Shared Space.
userIdIdentifier of a user.
assetIdIdentifier of an asset.
pageWhen adding specific page(s) of an asset (rather than the entire asset), the page number (zero-based) of the specific page(s) is used.
createdAtTimestamp of an item's addition to the Shared Space.
updatedAtTimestamp of an item's last modification in the Shared Space.
deletedAtTimestamp of an item's deletion from the Shared Space.

Contacts

FieldDescription
contactIdIdentifier of a Share recipient.
nameThe name of the contact.
userIdIdentifier of the user that created the contact. Note, this can be different from the user that generates the Share.
deletedAtTimestamp of the contact's deletion. In the Online Platform, any events after this date will be excluding from reporting.

Divisions

FieldDescription
divisionIdIdentifier of a Dvision.
divisionNameThe name of the Division.
isGlobalIndicates if the Division is a Global Division.
isPersonalIndicates that the source of the assets is the user's My Files (a personal division).
ownerUserIdThe identifier of the user that owns a personal division (My Files). This corresponds to the userID in the Users table.
deletedAtTimestamp of the division's deletion. In the Online Platform, any events after this date will be excluding from reporting.

Division_usergroups

FieldDescription
divisionIdIdentifier of a Division.
usergroupIdIdentifier of a user group.

Channels (Experiences)

FieldDescription
channelIdIdentifier of an Experience.
nameThe name of an Experience.
statusDeprecated. Please do not use this field.
deletedAtTimestamp of the deletion of the Experience (channel). In the Online Platform, any events after this date are not captured.

Assets

FieldDescription
assetIdIdentifier of an asset.
originalAssetIdWhen assets are added to a collection, a new (duplicate) asset is created in the background. As long as the asset in the collection remains unaltered, this field points to the original assetId it was based upon.

This enables reports to group the asset analytics together, as the two assets are essentially the same.

Note: When the asset in the collection is changed, the edited asset no longer has an originalAssetId that links it to the original asset, because the two assets are now different.
divisionIdIdentifier of the Division an asset belongs to.
displayNameName of an asset (included the extension).
slugThe unique identifying part of the asset's URL.
statusStatus of an asset. During upload, an asset can have multiple statuses. In order to be used by a user, the status must active.

Possible values:
ValueDescription
activeThe file has finished processing and is available in the library.
inactiveAn issue with the file during processing and the user has canceled the upload in the processing tab.
failedThe file was unable to be processed.
processingThe file is being processed and optimized.
queuedThe file is waiting to be processed.
preparedThe asset's metadata is created and persisted, but the binary file has either not yet been uploaded or is waiting to be processed.

Tip: If a file is in the library but can't be used, it may have failed to process and does not have an active status.
sourceIndicates if an asset was uploaded by an admin or as a personal user upload.

Possible values:
  • user generated
  • marketing
descriptionDescription of the asset given in the Online Platform.
typeThe type of the asset.

Possible values:
3d-model - audio - document - page - personal-video-recording - photo - raw - scorm - video - url - webapp (HTML5)
isSensitiveIndicates if asset can be shared. Possible values:
  • TRUE
  • FALSE
isDownloadableIndicates if asset can be downloaded. Possible values:
  • TRUE
  • FALSE
isDivisionSharedIndicates if asset has global property so it can be shared across several divisions. Possible values:
  • TRUE
  • FALSE
isAnnotatableIndicates if an asset can be annotated by user. Possible values:
  • TRUE
  • FALSE
isShareableIndicates if an asset can be shared.
expiresAtExpiration date of the asset.
releasedAtReleased date set for the asset.
deletedAtTimestamp of the asset's deletion. In the Online Platform, all reporting will exclude events after this date.
uploadedAtTimestamp of the asset's upload.
archivedAtTimestamp of the asset's archival. In the Online Platform, the asset is in the Trash but not yet deleted.
createdAtTimestamp of the asset's creation.
updatedAtTimestamp of the asset's last update.
externalIdAssets uploaded via an integration often have a ID from the external system.
commentsCountThe number of an asset's comments.
likesCountThe number of an asset's likes.
optimizedFileSizeThe size of the asset file in bytes.
originalFileSizeThe size of the original asset file in bytes.

Asset-authors

FieldDescription
assetIdIdentifier of an asset.
authorIdIdentifier of an author. Authors are also users, so this corresponds to the userID in the Users table.

Asset-countries

FieldDescription
assetIdIdentifier of an asset.
countryCodeTwo-letter country code using the ISO 3166-1 alpha-2 standard.

Asset-languages

FieldDescription
assetIdIdentifier of an asset.
languageCodeTwo-letter language code using the ISO 639-1 standard.

Tags

FieldDescription
tagIdIdentifier of a tag.
nameThe tag.

Asset-tags

FieldDescription
assetIdIdentifier of an asset.
tagIdIdentifier of a tag.

Tagcategories

FieldDescription
tagCategoryIdIdentifier of a tag category.
nameName of the tag category.
pathPath to the tag category. Because a category can be a child to another category, the full parent path (based on tagCategoryId) is presented in "materialized path" format.

Example

path

Child is a child category of the Parent category, so Child has the tagCategoryId of Parent for path: /9c73f297c697c94e9afbfbe246230a16/.

A Grandchild category as a child of Child would have path /9c73f297c697c94e9afbfbe246230a16/0ed2cfaa83e798a60d0490dc9578204a
publishedAtTimestamp of the tag category's publication. If empty, the tag category is created for internal use, but is not available searching or browsing Experiences.

Tagcategory-tags

FieldDescription
tagCategoryIdIdentifier of a tag category.
tagIdIdentifier of a tag.

Collections

FieldDescription
collectionIdIdentifier of a personal collection.
userIdIdentifier of the user that owns the collection.
nameName of the collection.
createdAtTimestamp of the collection's creation.
updatedAtTimestamp of the collection's last update.
deletedAtTimestamp of the collection's deletion.

Collection-items

FieldDescription
collectionItemIdIdentifier of a collection item. All pages/assets in a collection are considered collection items.
collectionIdIdentifier of a personal collection.
assetIdIdentifier of an asset.
pageThe page of the asset added. If the complete asset is added, the page field will be empty (NULL). If the original asset is updated, it is still the absolute page number which will be part of the collection.
positionThe position in the collection of the asset.
createdAtTimestamp of the collection item's creation.
updatedAtTimestamp of the collection item's last update.
deletedAtTimestamp of the collection item's deletion.