Skip to main content
Workspaces serves stored file bytes without sanitizing or rewriting them. It does not scan active content for malware. HTML, SVG, and JavaScript can still run scripts.

Which files are active

Workspaces treats these media types as active content, including when the value has a parameter such as a character set:
  • text/html
  • image/svg+xml
  • application/javascript

How the sandbox works

Workspaces sends active content with this policy:
The policy lets scripts run but puts the file in a separate, opaque origin. Without allow-same-origin, it cannot use same-origin access to read the Workspaces app’s cookies or page content. In-app HTML previews use the same sandbox. Hosted raw content uses a separate, cookieless origin. A Node self-hosted instance may serve raw files from the app origin, but it still sends the sandbox policy for active files. The sandbox isolates active files but does not remove harmful code. Active files can still make outside network requests or show false or harmful content.

Review active files safely

  • Open active files only when you trust their source or can inspect their code.
  • Do not enter credentials or private data into an active preview.
  • Treat a downloaded HTML, SVG, or JavaScript file as untrusted outside the Workspaces sandbox.
  • Use a static image or plain-text export when the recipient does not need active behavior.
  • Workspaces does not scan PDFs for malware.
On a self-hosted instance, verify that active files return the Content-Security-Policy header shown above. Learn how the viewer and downloads work in Publish and review Workspaces artifacts. Reviewed July 20, 2026. Maintained by the Plannotator documentation team.
Last modified on July 24, 2026