{ "$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" }