For AI agents: the docs index is at https://docs.developers.convert.com/v1.0-web/llms.txt. Append .md to any documentation page URL to get its markdown version.
The tracking script exposes a command queue via window._conv_q. You can push commands to this queue before or after the script loads — commands pushed before the script loads are processed once it initialises.
Important: Always use window._conv_q = window._conv_q || [] — never assign an empty array directly, as this overwrites any commands already in the queue.
Command Format
Commands can use the modern object format or the legacy array format:
The visitorId must use only 0-9, a-z, A-Z, ., - and _. As a regular expression, the rule is ^[0-9a-zA-Z._-]+$. Keep the ID to 64 characters or fewer. One longer ID can stop reports from using visitor-level revenue statistics for its whole variation. An ID over 256 characters may not be tracked at all.
The tracking script accepts any value, but the tracking server drops every event for an ID that breaks the rule. It still answers 200 OK, and experiences still render, so nothing reaches your reports or Live Logs without any visible error. An Auth0 user ID such as auth0|64f1c2… and an email address both break the rule. URL-encoding does not help, because % is not allowed either. Pass its SHA-256 hex digest instead, which is exactly 64 characters. Do not use a longer digest such as SHA-512.
Consent Management
Command
Description
Parameters
consentRequired
Block tracking until consent is given
{ runExperiences?: boolean } (default: true)
consentGiven
Signal that consent has been given — flushes queued events and re-runs the script
—
When runExperiences is false, both experiments and data collection are blocked until consent. When true (default), experiments display immediately but data collection waits.
Timing: Listeners must be registered before the script processes them — either before the script loads, or from Global JavaScript. Listeners added after the script initialises will miss events that already fired.