Astro SDK
Track your data via the Astro SDK for Vemetric.
The Astro SDK is the preferred way to integrate Vemetric into your Astro application.
Below you can see how to initialize and configure the SDK, as well as all the available functions.
Installation
Install the npm package
In your project directory, run:
Include the Vemetric Component
Import and include the VemetricScript component in your Astro application (in a place that is rendered on every page, ideally in the <head> tag):
Replace
YOUR_PROJECT_TOKENwith the unique token for your project (found in the project settings).
Verify installation
Once added, Vemetric will automatically start tracking page views on your site (each page load will be recorded). You can verify this by checking your Vemetric dashboard for incoming pageview events a few seconds after loading a page.
Data from
localhostwon’t be tracked.
Keep in mind that one project can be used to track data from multiple websites, which can be useful when you for example want to track users across your landing page and web application. We’ve also created a guide on how to track data across subdomains.
Optional: Track custom events and identify logged-in users
You can track custom events from anywhere in your frontend by importing the vemetric object:
See the documentation below for a detailed explanation of the available parameters.
Also learn more about User Identification to track authenticated users and see their full journey.
Configuration
You can pass additional props to the VemetricScript component to configure Vemetric.
Look at the different options below for more details.
Example:
Replace
YOUR_PROJECT_TOKENwith the unique token for your project (found in the project settings).
scriptUrl
Here you can specify a different URL for the Vemetric script.
Necessary if you want to use a proxy for tracking your data via your own domain.
host
Here you can specify a different host for the Vemetric API.
Necessary if you want to use a proxy for tracking your data via your own domain.
trackPageViews
Whether to track page views automatically.
Listens to any kind of changes of the URL (hash, pathname, search, etc.) and records a page view event. If disabled, you need to track page views manually.
trackOutboundLinks
trackDataAttributes
Whether to listen to data-vmtrc attributes on elements for sending custom
events.
maskPaths
An array of paths to mask from the URL. Helpful if you mask sensitive information in the URL (e.g. user IDs) or
group page views by a specific path (e.g. /project/*).
Methods
The Astro SDK exports a vemetric object that enables you to track custom events or identify users.
You can import it like this and use it anywhere in your application:
Below you can see all the available methods.
trackEvent
The main method to track any kind of event.
The first argument is the event name. The second argument is optional and can be an object with the following properties (also both optional):
eventData: An object containing the meta data of the event so you can later filter by-
userData: An object to update the user data. Only relevant for identified users.set: An object containing the user data to set, overriding existing values.-
setOnce: An object containing the user data to set once, only if the keys do not exist yet. unset: An array of keys to remove from the user data.
Checkout the tracking custom events section to learn more.
identify
With this function you can identify a user. All following events will be associated with this user. Checkout the docs about User identification to learn more about how it works.
The function takes the following parameters:
identifier(Required): The unique identifier for the user. We recommend to use the user's primary id in your database.displayName(Optional): will be used to display the users' name in VemetricallowCookies(Optional): Whether to use cookies to ensure smoother tracking.-
data(Optional): An object to update the user data.set: An object containing the user data to set, overriding existing values.-
setOnce: An object containing the user data to set once, only if the keys do not exist yet. unset: An array of keys to remove from the user data.
getUserIdentifier
Returns the identifier of the currently identified user. Returns null if no user is identified.
updateUser
Updates the data of the currently identified user.
The first parameter is an object with the following properties:
set(Optional): An object containing the user data to set, overriding existing values.-
setOnce(Optional): An object containing the user data to set once, only if the keys do not exist yet. unset(Optional): An array of keys to remove from the user data.
resetUser
Should be called when the user logs out. From then on, all events will be tracked as anonymous. Checkout the docs about User identification to learn more about how it works.
enableTrackPageViews
A function to enable automatic page view tracking after initialization. Only needed if trackPageViews was disabled.
enableTrackOutboundLinks
A function to enable outbound link tracking after initialization. Only needed if trackOutboundLinks was disabled.
enableTrackDataAttributes
A function to enable data attribute tracking after initialization. Only needed if trackDataAttributes was disabled.
Learn more about tracking custom events via data
attributes.
trackPageView
A function to manually track a page view from the current URL. Only needed if trackPageViews was disabled.
trackPageLeave
A function to manually track a page leave. Only needed if trackPageViews was disabled.
Resources
View the NPM package of the Astro SDK.
View the source code of the Astro SDK on GitHub.
Track your data via the React SDK for Vemetric.
Track your data via the Node.js SDK for Vemetric.