Content Security Policy (CSP) support

The Web Widget supports websites which use a Content Security Policy (CSP) and follows Google's strict CSP guidelines. We recommend following Google's policy for the best support and easiest setup with the widget.

When following these guidelines, add the nonce attribute to the Web Widget snippet.

<!-- Start of Zendesk Widget script --><script  nonce="{random}"  id="ze-snippet"  src="https://static.zdassets.com/ekr/snippet.js?key=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"></script><!-- End of Zendesk Widget script -->

This {random} value must be a unique cryptographic number that is generated by the server each time the CSP is transmitted.

Note: This security policy works with the messenger version of the Zendesk Web Widget snippet. Ensure that your snippet aligns with the example above.

Custom setup (using other CSP directives)

We cannot guarantee that the Web Widget won't violate a custom CSP that does not follow Google's guidelines. However, if you add the following directives, it should prevent the widget causing violations:

default-src 'self'  https://static.zdassets.com  https://ekr.zdassets.com  https://ekr.zendesk.com  https://*.zendesk.com  https://api.smooch.io  https://media.smooch.io  https://zendesk-eu.my.sentry.io  https://*.twilio.com  wss://*.zendesk.com  wss://api.smooch.io  wss://voice-js.roaming.twilio.com;style-src 'unsafe-inline';img-src 'self'  https://static.zdassets.com  https://accounts.zendesk.com  https://*.zendesk.com  https://media.smooch.io  https://*.zdusercontent.com  blob:  data:;media-src 'self'  https://static.zdassets.com;

If you have custom directives specified such as script-src or connect-src, add the hosts specified in default-src above.