zaraz_zaraz-config-base

Zaraz configuration

APIs.ioEngineeringPlatform

Properties

Name Type Description
consent object Consent management configuration.
dataLayer boolean Data layer compatibility mode enabled.
debugKey string The key for Zaraz debug mode.
historyChange boolean Single Page Application support enabled.
settings object General Zaraz settings.
triggers object Triggers set up under Zaraz configuration, where key is the trigger alpha-numeric ID and value is the trigger configuration.
variables object Variables set up under Zaraz configuration, where key is the variable alpha-numeric ID and value is the variable configuration. Values of variables of type secret are not included.
zarazVersion integer Zaraz internal version of the config.
View JSON Schema on GitHub

JSON Schema

apis-io-engineering-platform-zaraz-zaraz-config-base-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/zaraz_zaraz-config-base",
  "title": "zaraz_zaraz-config-base",
  "description": "Zaraz configuration",
  "example": {
    "consent": {
      "cookieName": "zaraz-consent",
      "customIntroDisclaimerDismissed": true,
      "enabled": false
    },
    "dataLayer": true,
    "debugKey": "my-debug-key",
    "settings": {
      "autoInjectScript": true,
      "ecommerce": true,
      "initPath": "/i"
    },
    "tools": {
      "aJvt": {
        "actions": {
          "hrnc": {
            "actionType": "pageview",
            "blockingTriggers": [],
            "data": {
              "__zaraz_setting_name": "Page view",
              "ev": "PageView"
            },
            "firingTriggers": [
              "Pageview"
            ]
          }
        },
        "component": "facebook-pixel",
        "defaultFields": {
          "testKey": "TEST123456"
        },
        "enabled": true,
        "name": "Facebook Pixel",
        "permissions": [
          "access_client_kv"
        ],
        "settings": {
          "accessToken": "ABcdEFg",
          "ecommerce": true,
          "property": "12345"
        },
        "type": "component"
      }
    },
    "triggers": {
      "ktBn": {
        "Pageview": {
          "clientRules": [],
          "description": "All page loads",
          "excludeRules": [],
          "loadRules": [
            {
              "match": "{{ client.__zarazTrack }}",
              "op": "EQUALS",
              "value": "Pageview"
            }
          ],
          "name": "Pageview",
          "system": "pageload"
        }
      }
    },
    "variables": {
      "Autd": {
        "name": "ip",
        "type": "string",
        "value": "{{ system.device.ip }}"
      }
    },
    "zarazVersion": 43
  },
  "properties": {
    "consent": {
      "description": "Consent management configuration.",
      "properties": {
        "buttonTextTranslations": {
          "properties": {
            "accept_all": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "Object where keys are language codes",
              "type": "object"
            },
            "confirm_my_choices": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "Object where keys are language codes",
              "type": "object"
            },
            "reject_all": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "Object where keys are language codes",
              "type": "object"
            }
          },
          "required": [
            "accept_all",
            "reject_all",
            "confirm_my_choices"
          ],
          "type": "object"
        },
        "companyEmail": {
          "type": "string"
        },
        "companyName": {
          "type": "string"
        },
        "companyStreetAddress": {
          "type": "string"
        },
        "consentModalIntroHTML": {
          "type": "string"
        },
        "consentModalIntroHTMLWithTranslations": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Object where keys are language codes",
          "type": "object"
        },
        "cookieName": {
          "type": "string"
        },
        "customCSS": {
          "type": "string"
        },
        "customIntroDisclaimerDismissed": {
          "type": "boolean"
        },
        "defaultLanguage": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        },
        "hideModal": {
          "type": "boolean"
        },
        "purposes": {
          "additionalProperties": {
            "properties": {
              "description": {
                "type": "string"
              },
              "name": {
                "type": "string"
              }
            },
            "required": [
              "name",
              "description"
            ],
            "type": "object"
          },
          "description": "Object where keys are purpose alpha-numeric IDs",
          "type": "object"
        },
        "purposesWithTranslations": {
          "additionalProperties": {
            "properties": {
              "description": {
                "additionalProperties": {
                  "type": "string"
                },
                "description": "Object where keys are language codes",
                "type": "object"
              },
              "name": {
                "additionalProperties": {
                  "type": "string"
                },
                "description": "Object where keys are language codes",
                "type": "object"
              },
              "order": {
                "type": "integer"
              }
            },
            "required": [
              "name",
              "description",
              "order"
            ],
            "type": "object"
          },
          "description": "Object where keys are purpose alpha-numeric IDs",
          "type": "object"
        },
        "tcfCompliant": {
          "type": "boolean"
        }
      },
      "required": [
        "enabled"
      ],
      "type": "object"
    },
    "dataLayer": {
      "description": "Data layer compatibility mode enabled.",
      "type": "boolean"
    },
    "debugKey": {
      "description": "The key for Zaraz debug mode.",
      "type": "string"
    },
    "historyChange": {
      "description": "Single Page Application support enabled.",
      "type": "boolean"
    },
    "settings": {
      "description": "General Zaraz settings.",
      "properties": {
        "autoInjectScript": {
          "description": "Automatic injection of Zaraz scripts enabled.",
          "type": "boolean"
        },
        "contextEnricher": {
          "description": "Details of the worker that receives and edits Zaraz Context object.",
          "properties": {
            "escapedWorkerName": {
              "type": "string"
            },
            "workerTag": {
              "type": "string"
            }
          },
          "required": [
            "escapedWorkerName",
            "workerTag"
          ],
          "type": "object"
        },
        "cookieDomain": {
          "description": "The domain Zaraz will use for writing and reading its cookies.",
          "type": "string"
        },
        "ecommerce": {
          "description": "Ecommerce API enabled.",
          "type": "boolean"
        },
        "eventsApiPath": {
          "description": "Custom endpoint for server-side track events.",
          "type": "string"
        },
        "hideExternalReferer": {
          "description": "Hiding external referrer URL enabled.",
          "type": "boolean"
        },
        "hideIPAddress": {
          "description": "Trimming IP address enabled.",
          "type": "boolean"
        },
        "hideQueryParams": {
          "description": "Removing URL query params enabled.",
          "type": "boolean"
        },
        "hideUserAgent": {
          "description": "Removing sensitive data from User Aagent string enabled.",
          "type": "boolean"
        },
        "initPath": {
          "description": "Custom endpoint for Zaraz init script.",
          "type": "string"
        },
        "injectIframes": {
          "description": "Injection of Zaraz scripts into iframes enabled.",
          "type": "boolean"
        },
        "mcRootPath": {
          "description": "Custom path for Managed Components server functionalities.",
          "type": "string"
        },
        "scriptPath": {
          "description": "Custom endpoint for Zaraz main script.",
          "type": "string"
        },
        "trackPath": {
          "description": "Custom endpoint for Zaraz tracking requests.",
          "type": "string"
        }
      },
      "required": [
        "autoInjectScript"
      ],
      "type": "object"
    },
    "triggers": {
      "additionalProperties": {
        "properties": {
          "description": {
            "description": "Trigger description.",
            "type": "string"
          },
          "excludeRules": {
            "description": "Rules defining when the trigger is not fired.",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/zaraz_load-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_click-listener-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_timer-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_form-submission-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_variable-match-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_scroll-depth-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_element-visibility-rule"
                }
              ]
            },
            "type": "array"
          },
          "loadRules": {
            "description": "Rules defining when the trigger is fired.",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/zaraz_load-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_click-listener-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_timer-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_form-submission-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_variable-match-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_scroll-depth-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_element-visibility-rule"
                }
              ]
            },
            "type": "array"
          },
          "name": {
            "description": "Trigger name.",
            "type": "string"
          },
          "system": {
            "enum": [
              "pageload"
            ],
            "type": "string"
          }
        },
        "required": [
          "name",
          "loadRules",
          "excludeRules"
        ],
        "type": "object"
      },
      "description": "Triggers set up under Zaraz configuration, where key is the trigger alpha-numeric ID and value is the trigger configuration.",
      "type": "object"
    },
    "variables": {
      "additionalProperties": {
        "anyOf": [
          {
            "properties": {
              "name": {
                "type": "string"
              },
              "type": {
                "enum": [
                  "string",
                  "secret"
                ],
                "type": "string"
              },
              "value": {
                "type": "string"
              }
            },
            "required": [
              "name",
              "type",
              "value"
            ],
            "type": "object"
          },
          {
            "properties": {
              "name": {
                "type": "string"
              },
              "type": {
                "enum": [
                  "worker"
                ],
                "type": "string"
              },
              "value": {
                "properties": {
                  "escapedWorkerName": {
                    "type": "string"
                  },
                  "workerTag": {
                    "type": "string"
                  }
                },
                "required": [
                  "escapedWorkerName",
                  "workerTag"
                ],
                "type": "object"
              }
            },
            "required": [
              "name",
              "type",
              "value"
            ],
            "type": "object"
          }
        ]
      },
      "description": "Variables set up under Zaraz configuration, where key is the variable alpha-numeric ID and value is the variable configuration. Values of variables of type secret are not included.",
      "type": "object"
    },
    "zarazVersion": {
      "description": "Zaraz internal version of the config.",
      "type": "integer"
    }
  },
  "required": [
    "tools",
    "triggers",
    "variables",
    "settings",
    "dataLayer",
    "debugKey",
    "zarazVersion"
  ],
  "type": "object"
}