Files
sesamy-cli/docs/reference/configuration.md
Kevin Franklin Kim be5cacd815 docs: add gh docs
2026-05-27 08:52:58 +02:00

3.8 KiB

Configuration reference

The full top-level schema of sesamy.yaml (version 1.1). For provider-specific blocks see the Providers section.

Top-level fields

Field Type Purpose
version string Schema version. Currently 1.1.
redactVisitorIp bool Globally redact visitor IPs in collected events.
enableGeoResolution bool Enable region-specific settings.
googleApi object Service account credentials and API quota.
googleTagManager object GTM account / container IDs and shared container variables.
googleTag object The site-wide Google Tag (gtag) and TypeScript generation.
googleAnalytics object GA4 provider config.
googleAds object Google Ads provider config.
conversionLinker object Conversion Linker provider config.
facebook object Facebook provider config.
pinterest object Pinterest provider config.
microsoftAds object Microsoft Ads provider config.
criteo object Criteo provider config.
emarsys object Emarsys provider config.
mixpanel object Mixpanel provider config.
umami object Umami provider config.
tracify object Tracify provider config.
hotjar object Hotjar provider config.
cookiebot object Cookiebot provider config.

googleApi

googleApi:
  credentials: '{...}'         # inline service account JSON (single line)
  credentialsFile: ./creds.json # OR path to the JSON file
  requestQuota: 15              # GTM API requests per minute

Use credentialsFile for local dev, credentials for CI. The CLI throttles itself to requestQuota r/m.

googleTagManager

googleTagManager:
  accountId: '6099238525'
  webContainer:
    tagId: GTM-XXXXXXXX
    containerId: '175355532'
    workspaceId: '23'            # optional
    workspace: 'Default'         # optional, by name
  serverContainer:
    tagId: GTM-YYYYYYYY
    containerId: '175348980'
    workspaceId: '10'
    workspace: 'Default'
  webContainerVariables:
    dataLayer: [link_url]
    lookupTables:
      link_url_conversion_label:
        input: '{{dlv.link_url}}'
        valueTable:
          123456: 'https://foomo.org/'
  serverContainerVariables:
    eventData: [link_url]
    lookupTables: { ... }
Field Purpose
accountId GTM account ID.
<container>.tagId The GTM- container tag identifier.
<container>.containerId Numeric container ID.
<container>.workspaceId / workspace Optional workspace selector. Defaults to the default workspace.
<container>Variables.dataLayer Container-level DataLayer variables (web) or event data (server).
<container>Variables.lookupTables Reusable GTM lookup tables.

googleTag

Documented in Google Tag provider.

Schema validation

Point your editor at the JSON schema:

# yaml-language-server: $schema=https://raw.githubusercontent.com/foomo/sesamy-cli/refs/heads/main/sesamy.schema.json
version: '1.1'

VS Code (YAML extension), JetBrains IDEs (built-in), and Neovim (yamlls) will autocomplete and validate inline.

Multiple files

sesamy provision web -c base.yaml -c env/prod.yaml

Files are merged in argument order. Later files override earlier ones. Run sesamy config -c ... to see the resolved result.