Jump to Content
Developers | Piwik PRO
HomeDocsWeb APIChangelog
Log InDevelopers | Piwik PRO
Docs
Log In
HomeDocsWeb APIChangelog

Browser JS API

  • Frameworks
    • Angular
    • Gatsby
    • Next.js
    • Nuxt
    • React
    • VUE
  • Getting started
  • Plain JavaScript
  • Methods
    • Basic events
      • trackEvent
      • trackGoal
      • trackPageView
      • trackSiteSearch
    • Content tracking
      • logAllContentBlocksOnPage
      • trackAllContentImpressions
      • trackContentImpression
      • trackContentImpressionsWithinNode
      • trackContentInteraction
      • trackContentInteractionNode
      • trackVisibleContentImpressions
    • Cookie management
      • deleteCookies
      • disableCookies
      • enableCookies
      • getConfigVisitorCookieTimeout
      • getCookieDomain
      • getCookiePath
      • getSessionCookieTimeout
      • hasCookies
      • setCookieDomain
      • setCookieNamePrefix
      • setCookiePath
      • setReferralCookieTimeout()
      • setReferralCookieTimeout
      • setSecureCookie
      • setSessionCookieTimeout
      • setVisitorCookieTimeout
      • setVisitorIdCookie
    • Cross-domain linking
      • customCrossDomainLinkDecorator
      • customCrossDomainLinkVisitorIdGetter
      • disableCrossDomainLinking
      • enableCrossDomainLinking
      • getCrossDomainLinkingUrlParameter
      • isCrossDomainLinkingEnabled
      • setCrossDomainLinkingTimeout
    • Custom dimensions
      • deleteCustomDimension
      • getCustomDimension
      • getCustomDimensionValue
      • setCustomDimension
      • setCustomDimensionValue
    • Custom variables
      • deleteCustomVariable
      • getCustomVariable
      • setCustomVariable
      • storeCustomVariablesInCookie
    • Download and outlink
      • addDownloadExtensions
      • disableLinkTracking
      • enableLinkTracking
      • getConfigDownloadExtensions
      • removeDownloadExtensions
      • setDownloadClasses
      • setDownloadExtensions
      • setIgnoreClasses
      • setLinkClasses
      • trackLink
    • Ecommerce
      • addEcommerceItem
      • clearEcommerceCart
      • ecommerceAddToCart
      • ecommerceCartUpdate
      • ecommerceOrder
      • ecommerceProductDetailView
      • ecommerceRemoveFromCart
      • getEcommerceItems
      • removeEcommerceItem
      • setEcommerceView
      • trackEcommerceCartUpdate
      • trackEcommerceOrder
    • Heartbeat
      • disableHeartBeatTimer
      • enableHeartBeatTimer
      • trackHeartBeat
    • Miscellaneous
      • addListener
      • appendToTrackingUrl
      • enableJSErrorTracking
      • getConfigIdPageView
      • getNumTrackedPageViews
      • getTrackingSource
      • killFrame()
      • getTrackingSourceProvider
      • killFrame
      • ping
      • redirectFile()
      • redirectFile
      • setCountPreRendered
      • setCustomRequestProcessing
      • setDoNotTrack()
      • setGenerationTimeMs()
      • setDoNotTrack
      • setGenerationTimeMs
      • setRequestContentType
      • setRequestMethod
      • setTrackingSource
      • setTrackingSourceProvider
      • trackError
    • Tracking client configuration
      • addTracker
      • disablePerformanceTracking
      • discardHashTag
      • getCurrentUrl
      • getDomains
      • getLinkTrackingTimer
      • getPiwikUrl()
      • getPiwikUrl
      • getSiteId
      • getTimingDataSamplingOnPageLoad
      • getTrackerUrl
      • setAPIUrl
      • setCustomUrl
      • setDocumentTitle
      • setDomains
      • setLinkTrackingTimer
      • setReferrerUrl
      • setSiteId
      • setSiteInspectorSetup
      • setTimingDataSamplingOnPageLoad
      • setTrackerUrl
    • User management
      • deanonymizeUser
      • getUserId
      • getVisitorId
      • getVisitorInfo
      • resetUserId
      • setIpTracking
      • setSessionIdStrictPrivacyMode
      • setUserId()
      • setUserId
      • setUserIsAnonymous

Consent Manager JS API

  • Getting started
  • Custom consent form
  • Plain JavaScript
  • Methods
    • getComplianceSettings
    • getComplianceTypes
    • getNewComplianceTypes
    • openConsentForm
    • sendDataRequest
    • setComplianceSettings
    • setInitialComplianceSettings
    • trackAgreeToAllClick
    • trackCloseButtonClick
    • trackMainFormView
    • trackPrivacyPolicyLinkView
    • trackRejectAllClick
    • trackReminderWidgetView
    • trackSaveChoicesClick

Android SDK

  • Getting started
  • Methods
    • audienceManagerGetProfileAttributes
    • audienceManagerSetProfileAttribute
    • checkAudienceMembership
    • ecommerceAddToCart
    • ecommerceCartUpdate
    • ecommerceOrder
    • ecommerceProductDetailView
    • ecommerceRemoveFromCart
    • getDeviceId
    • isAnonymizationOn
    • items.addItem
    • setAnonymizationState
    • setDeviceId
    • setDispatchInterval
    • setDryRunTarget
    • setIncludeDefaultCustomVars
    • setOfflineCacheAge
    • setOfflineCacheSize
    • setOptOut
    • setPrefixing
    • setSessionTimeout
    • setTrackDeviceId
    • setUserId
    • setUserMail
    • setVisitorId
    • startNewSession
    • track().campaign
    • track().dimension
    • track().download
    • track().event
    • track().exception
    • track().goal
    • track().impression
    • track().interaction
    • track().order
    • track().outlink
    • track().screen
    • track().screens
    • track().search
    • track().sendApplicationDownload
    • track().socialInteraction
    • track().variable
    • track().visitVariables

Flutter SDK

  • Getting started
  • Methods
    • checkAudienceMembership
    • dryRun
    • optOut
    • readUserProfileAttributes
    • setAnonymizationState
    • setDispatchInterval
    • setIncludeDefaultVariables
    • setSessionTimeout
    • setUserEmail
    • setUserId
    • setVisitorId
    • trackAppInstall
    • trackCampaign
    • trackContentImpression
    • trackContentInteraction
    • trackCustomDimension
    • trackCustomEvent
    • trackCustomVariable
    • trackDownload
    • trackEcommerceAddToCart
    • trackEcommerceCartUpdate
    • trackEcommerceOrder
    • trackEcommerceProductDetailView
    • trackEcommerceRemoveFromCart
    • trackEcommerceTransaction
    • trackException
    • trackGoal
    • trackOutlink
    • trackProfileAttribute
    • trackScreen
    • trackSearch
    • trackSocialInteraction

iOS SDK

  • Getting started
  • Methods
    • addItemWithSku
    • audienceManagerGetProfileAttributes
    • checkMembershipWithAudienceID
    • deviceID
    • dispatchInterval
    • dryRun
    • ecommerceAddToCart
    • ecommerceCartUpdate
    • ecommerceOrder
    • ecommerceProductDetailView
    • ecommerceRemoveFromCart
    • includeDefaultCustomVariable
    • isAnonymizationEnabled
    • maxAgeOfQueuedEvents
    • maxNumberOfQueuedEvents
    • optOut
    • sendApplicationDownload
    • sendCampaign
    • sendContentImpressionWithName
    • sendContentInteractionWithName
    • sendDownload
    • sendEventWithCategory
    • sendExceptionWithDescription
    • sendGoalWithID
    • sendOutlink
    • sendProfileAttributeWithName
    • sendSearchWithKeyword
    • sendSocialInteractionWithAction
    • sendTransaction
    • sendView
    • sendViews
    • sessionTimeout
    • setCustomDimensionForID
    • setCustomVariableForIndex
    • startNewSession
    • userEmail
    • userID
    • visitorID

React Native SDK

  • Getting started
  • Methods
    • checkAudienceMembership
    • dispatch
    • getDispatchInterval
    • getProfileAttributes
    • setAnonymizationState
    • setDispatchInterval
    • setDryRun
    • setIncludeDefaultVariables
    • setOptOut
    • setSessionTimeout
    • setUserEmail
    • setUserId
    • setVisitorId
    • trackCampaign
    • trackContentImpression
    • trackContentInteraction
    • trackCustomEvent
    • trackDownload
    • trackEcommerceAddToCart
    • trackEcommerceCartUpdate
    • trackEcommerceOrder
    • trackEcommerceProductDetailView
    • trackEcommerceRemoveFromCart
    • trackEcommerceTransaction
    • trackException
    • trackGoal
    • trackOutlink
    • trackProfileAttribute
    • trackScreen
    • trackSearch
    • trackSocialInteraction

Other integrations

  • Accelerated mobile pages (AMP) integration
  • Progressive web applications integration (PWA)
  • Web log analytics

Other

  • Content Security Policy (CSP)
  • Custom data layer name
  • Custom popup examples
  • Skip link tracking with the data-disable-delay attribute

Getting started

Suggest Edits

Our JavaScript library has methods that let you use Consent Manager. You can use these methods in JavaScript.

In short, our JavaScript library lets you:

  • Get compliance types
  • Get and set compliance settings
  • Send a data request
  • Open a consent form
  • Track consent stats

Next steps

  • Plain JavaScript
  • Custom Consent Form
  • Methods

Updated 3 months ago


  • Table of Contents
    • Next steps