{"title":"CTA Impression","description":"Measures when a call-to-action is visible in a users viewport for a given period of time.","_alerts":[{"variant":"warning","message":"**Be careful with Google Tag Manager element visibility triggers on pages with many call-to-action elements.** Visibility triggers can be resource intensive to a browser if it needs to monitor many elements on a given page. \n\nIf you decide to measure call-to-action impressions, make sure to send contextual data through properties like `section_name` or `ui_location` to help you understand what instances of a call-to-action triggered the impression."}],"type":"object","allOf":[{"properties":{"event":{"title":"Event Name","const":"cta_impression"}},"required":["event"]},{"title":"CTA Properties","description":"These properties apply to all `cta_*` events.","type":"object","definitions":{"cta_keyword":{"title":"CTA Keyword","description":"Used to combine common or similar calls-to-action together for analysis. For example, if you have many 'Demo' buttons with slight variations in text like 'Book a Demo', 'Schedule a Demo', 'Get a Demo' etc... you could use the common keyword 'demo' to group all of these together for analysis.","type":"string","example":"button"}},"required":[]},{"title":"Component Properties","description":"Component properties that apply to all component related interactions. As such, these properites are meant to be generic and provide context to where user interactions are occuring on a page.","type":"object","definitions":{"component":{"type":"string","title":"Component","description":"The name of the component that the event occurred directly on. This is usually something interactive, not a presentation element.","example":"button:arrow"},"component_parent":{"type":"string","title":"Component Parent","description":"The name of the parent component that the event occurred within. This could be a container, form, card, or any other named\/defined parent component of a page.","example":"card"}},"required":[]},{"title":"Section\/UI Properites","description":"These properties can be applied to any event to provide more contextual information about \"where\" an interaction occured within a given page.","$schema":"http:\/\/json-schema.org\/draft-07\/schema#","type":"object","definitions":{"section_name":{"type":"string","title":"Section Name","description":"More specific than `ui_location`, this property can be used to describe the name of a section or container that the event occurred within.","example":"recent posts"},"ui_location":{"type":"string","title":"UI Location","description":"The name of the section or container that the event occurred within. This could be a sidebar, header, footer, or any other named\/defined section of a page.","example":"sidebar"}},"required":[]},{"title":"Link Properties","description":"These properties apply to many `*_click` events.","type":"object","definitions":{"link_url":{"type":"string","title":"Link URL","description":"The `href` attribute of the link that was clicked. The value should be a fully qualified URL.","example":"https:\/\/www.level.agency\/contact\/#form"},"link_domain":{"type":"string","title":"Link Domain","description":"The hostname of the link that was clicked. This can be useful for grouping links by domain.","example":"www.level.agency"},"link_path":{"type":"string","title":"Link Path","description":"The path of the link that was clicked. This can be useful for grouping links by path.","example":"\/contact\/"},"link_fragment":{"type":"string","title":"Link Fragment","description":"The fragment identifier of the link that was clicked. This can be useful for analyzing clicks on anchor links that point to a specific section of a page.","example":"form"},"link_text":{"type":"string","title":"Link Text","description":"The text (innerText) of the link that was clicked. It's recommended to lowercase this value for easier analysis.","example":"Contact Us"},"outbound":{"type":"boolean","title":"Outbound Link","description":"A boolean value indicating if the link is an outbound link (i.e. it goes to a different domain).","example":false}},"required":["link_url","link_domain","link_path","link_fragment","link_text"]}]}