Self-hosting Transcend Consent

Transcend Consent's multiple JavaScript modules and synchronization endpoint can be self-hosted on your own infrastructure to help comply with internal security requirements.

We recommend using a reverse proxy with a simple caching setup to host your Consent Manager on your own infrastructure. This will ensure that you can continue to update your Consent Manager through the Transcend dashboard.

See this nginx config for an example of setting up a reverse proxy in nginx.

After you have set up your self-hosted modules, you can use the following HTML snippet to load Consent Manager modules using your own infrastructure:

<script
src="/path/to/airgap.js"
data-ui="/path/to/ui.js"
data-xdi="/path/to/xdi.js"
></script>

Hosting your own first-party XDI sync endpoint is an easy two-step process:

  1. Host a publicly-accessible static page on your site with this HTML, replacing the value of data-first-party with a space-separated list of domains that you wish to sync between.
<!DOCTYPE html>
<script
src="https://cdn.transcend.io/cm/{your-bundle-id}/xdi.js"
data-first-party="your-site.example your-other-site.example"
data-xdi-commands="ConsentManager:Sync"
></script>
  1. Update your Consent Manager script tag as such. Take note to enter the URL to the page you created in step 1 in the data-sync-endpoint attribute.
<script
src="https://cdn.transcend.io/cm/{your-bundle-id}/airgap.js"
data-sync-endpoint="https://your-site.example/sync-consent-manager"
></script>

Our consent manager uses Transcend XDI to facilitate consent & quarantine sync. This interface works by embedding iframes to known sync endpoints in order to construct secure offline tunnels for transferring sync data.

  • Your Consent Manager's allowed domains list must include your Privacy Center domain. This is already true if your Privacy Center is on a subdomain of your primary domain (e.g. privacy.your-site.example)
  • Your sync endpoint's embedder policy must allow embedding by your Privacy Center.
  • Sync clients must connect from secure HTTPS origins.

We do not allow self-hosting our telemetry endpoint at this time.