User Docs
PlatformProduct updates
  • Getting started
    • What is DSPM?
    • Use DSPM in your company
    • Choose how to run DSPM
  • Quick start
  • Deployment guide
    • Sizing
    • Installation
      • Understand installation requirements
        • K3S installation
        • Configuring a HA K3s cluster
        • Configuring Rancher and Fleet agent to run behind an HTTP proxy
        • Install Synergy/Focus/Enterprise using Helm without Rancher
        • Install Synergy/Focus/Enterprise using Rancher
        • Air Gap Installation
        • Uploads to Rancher
      • Upgrade K3s
        • K3s - Upgrade
      • Troubleshooting
        • K3s on RHEL/CentOS/Oracle Linux
        • Networking
        • Configuring Rancher and Fleet agent to run behind a HTTP proxy if cluster was previously registered
    • Estimate hardware capacity needs
  • Administration guide
    • Customer Support Portal
    • Pattern matching
    • Data Controls
    • Analytics
    • Detectors
    • Import custom TLS certificate
    • GQL Quick Guide
    • Critical & Sensitive Classification Attribute Modification
    • How to Check AI Mesh Version
    • Webhooks
    • AI Mesh Overview
    • Is Customer Data Saved by Getvisibility?
  • Enterprise setup
    • Authentication
      • Keycloak configuration
      • Single Sign-on (SSO)
        • Using Azure AD as Keycloak Identity Provider
      • Keycloak User Federation Configuration (LDAP/AD)
      • Enable 2FA
      • Role-Based Access Control (RBAC)
      • Keycloak User Federation using LDAP over SSL
  • Implementation
    • Configuring Taxonomies & Labels
  • Integrations
    • GQL
    • Template Language
    • Multi-Language Machine Learning
    • SIEM Integration
    • Google Drive Auto-labelling
  • Scan with Getvisibility
    • Configure detectors
    • Configure data sources
      • Scan Configuration Fields
      • AWS IAM
      • AWS S3
      • Azure AD
      • Azure Blob
      • Azure Files
      • OneDrive
      • SharePoint Online
      • SharePoint on-premise
      • Box
      • Confluence Cloud
      • LDAP
      • SMB
      • Google IAM
      • Google Drive
      • ChatGPT
      • iManage
      • Dropbox
    • Scanning
      • Data Source Permissions
      • Scan Scheduler
      • Types of Scan
      • Scan History
      • Scan Analytics
      • Supported Languages for ML Classifiers
      • Rescan Files
    • Streaming
      • What is DDR?
      • How to Configure DDR Rules
      • Import Data Controls
      • Monitoring New Files via DDR Streaming
      • DDR Supported Events
      • Lineage
      • Supported Data Sources
      • Azure Blob Streaming Configuration
      • Azure Files Streaming Configuration
      • Confluence Cloud Streaming Configuration
      • Sharepoint Online Streaming Configuration
      • SMB Streaming Configuration
      • OneDrive Streaming Configuration
      • Azure AD Streaming Configuration
      • AWS S3 Streaming Configuration
      • Google Drive Streaming Configuration
      • Google IAM Streaming Configuration
      • AWS IAM Streaming Configuration
      • Box Streaming Configuration
      • Dropbox Streaming Configuration
    • Enterprise Search columns meaning
    • Supported File Types
  • Glossary
  • FAQ
  • EDC - All Documents
    • Deployment - Onboarding
      • EDC-Server Installation Guide
      • EDC-Deployment Flow Guide
        • EDC-installerConfig.json and CLI config Details
      • Deploying the agent using ManageEngine
      • EDC-Mac Agent - Installation Guide
      • Windows Agent Precheck Script
    • Functionality - Guides
      • EDC - Admin Guide - v4
      • EDC -Guide for writing Visual Labels
      • EDC- Guide for Header Footer Options
      • EDC-Metadata Details
      • EDC Supported File Types
      • Agent V4 - Configuration Options for Expert Mode
      • File Lineage - Agent Activities
      • Endpoint Data Discovery
    • Troubleshooting Documents
      • Preventing Users From Disabling Agent
      • Generate Installation Logs
      • Troubleshooting Agent for Windows
      • Guide for missing suggestions
      • Reseller Keycloak Quick Installation Guide
      • Alternative authentication methods for agent
  • EDC - All Documents
Powered by GitBook
On this page

Was this helpful?

Export as PDF
  1. Integrations

Template Language

Template Language (GTL) allows using variables, functions and conditions in any report text input fields and compiles those expressions into resulting values.

Example

File Totals
{{ count('files') }} were discovered in the {{ connector.name }} cloud.
Of this number {{ count('files', 'fileType=doc OR fileType=txt') }}
were classified as they contain text, or are recognisable file types or data.

Example with actual data

File Totals 
1000 were discovered in the Confluence cloud. 
Of this number 800 were classified as they contain text, or are recognisable file types or data.

Syntax

Two possible syntaxes parsed by GTL:

  • Expressions

  • Conditions

Expressions

Any text placed between {{ and }} is considered an Expression. Expression is a mathematical or logical operation that returns a value. For example, this {{ 10 }} is an expression that returns the number 10. It is possible to use operators, {{ 10 + 5 }} will return 15. Logical operators are also supported, {{ 10 > 5 }} will return true. Here is a list of supported operators:

+ - * / % = != > < >= <=

Expression can also contain variables, that are defined in the current context. For example, {{ file.name }} will return the name of the file, if the file object is defined.

Expression Functions

But the most powerful feature of the expressions is the ability to call functions. These are predefined aggregation functions, that fetch data from the database and return the result. For example, {{ count('files') }} will return the number of files in the database.

Here is a list of supported functions:

  • count

  • sum

  • avg

  • max

  • min

  • median

Those functions support the following parameters:

  • Dataset name - the name of the dataset to fetch data from. Possible values are: files, trustees, connectors, agents, activities.

  • GQL - the GQL query to filter the data. For example, fileType=doc OR fileType=txt will return only files with the doc or txt file type.

  • Attribute - the attribute to aggregate. All functions, except count, require this parameter. For example: sum('files', 'fileType=doc OR fileType=txt', 'contentLength') will return the sum of the sizes of all files with the doc or txt file type.

Conditions

Conditions are useful when you want to display different text based on some condition. Example:

{{ if (count('files', 'sensitive=true') > 0) }}
  Sensitive files have been detected!
{{ else }}  
  You are safe!
{{ endif }}

else clause is optional and can be omitted:

{{ if (count('files', 'sensitive=true') > 0) }}
  Sensitive files have been detected!
{{ endif }}

The if statement is followed by a condition in parentheses. The condition must be any expression that returns a boolean value.

PreviousGQLNextMulti-Language Machine Learning

Last updated 9 months ago

Was this helpful?