Core Features
Applies unchanged to both Managed Cloud and Self-Hosting — the feature set is identical in both variants.
- Multi-Tenant / Multi-Domain Routing:
Automatically detects the requesting subdomain (
legal.yourdomain.com,legal.project-b.com) and serves the matching legal texts, colors, and company master data for that project. - Compliance Matrix with One-Click Toggle & Copy-URL:
The admin dashboard shows at a glance which mandatory texts exist in which languages (
DE,EN,ES,FR, etc.), are saved as drafts, or still incomplete. With instant toggles and 1-click copy buttons for every language URL. - Scheduled Publishing:
Changes to terms & conditions or privacy policies can be scheduled in advance for a target date
(e.g.
Aug 31, 00:00). The current version stays live until that date and is automatically replaced at the target time. - Full-Featured Webhooks with Queue, Retry & Delivery Logs:
Notifies connected web apps via
POSTwebhook on go-live (legal_text.updated) and advance notices (legal_text.scheduled, incl.preview_url) with complete fields (effective_date,url,api_url,status,was_scheduled). Delivery runs asynchronously via a queue with automatic retry (up to 5 attempts, increasing delay) — a slow recipient never blocks saving. A built-in log in the admin area shows HTTP status codes, server responses, and latencies. See Webhooks for the full specification. - Public Preview of Scheduled Changes:
At
/{lang}/{slug}/preview(and via the JSON API), a scheduled, not-yet-live version can be viewed before its target date — e.g. to inform users in advance about upcoming changes to your terms. - Automatic Rolling Backups (7 days): A cron endpoint backs up the database daily and automatically deletes older snapshots. The latest backups can be downloaded individually from settings.
- Full-Featured WYSIWYG & Code Editor: Visual formatting toolbar (H2, H3, bold, italic, lists, links) with a 1-click toggle to raw HTML source.
- Bidirectional DeepL Translation:
Translate any source text with protected placeholders (e.g.
DE → EN,EN → DE,ES → DE) directly in the side-by-side editor. - Automatic Version Sync (Hash Diff): When a source text changes, Paragrafy automatically flags every other language version as “outdated”. A built-in diff viewer visually highlights changes (green = added, red = removed).
- Audit & Deadline Tracking with SMTP Email: Warns about texts that haven’t been reviewed within the configured interval (e.g. 12 months), and can send review reports by email on request.
- Headless JSON API & In-App Embed Drawer:
Provides endpoints under
/api/:lang/:slugand ships a modal sheet script (/embed.js) for embedding directly into web apps. See JSON API and Embed Drawer. - GDPR Cookie Consent Banner:
Built-in, lightweight consent script (
/consent.js) with no external dependencies. - Notion/Stripe-Style Public Viewer:
Scroll-following table of contents (sticky TOC with scroll-spy), reading-time estimate, direct
anchor links (
#), and live text filtering across all target languages. - Backups & Exports: Download a backup of the complete database, or all published legal texts as text files (ZIP, sorted by language/slug), from settings.
- Unlimited Custom Legal Text Types: Beyond the mandatory pages, additional documents can be created across projects (e.g. B2B terms, sponsorship agreements, license terms) and optionally flagged as mandatory.
- Multi-User Management with Email Invitations: Invite as many people as you like by email; they set their own password via an activation link. Every invited person has full access to the entire admin panel — there are no roles or permissions to configure. A “forgot password” link allows self-service password resets.
- Change Log (Audit Trail) with CSV Export: A dedicated “Log” tab shows who changed what and when — project settings, legal text types, publications, and user management. Downloadable as a CSV file.
- Version History with Diff & Restore: Every publication of a legal text creates a new version. The editor shows the complete version history per language, including a diff view against the current state and a non-destructive “restore” function.
- Language Tabs in the Editor: Active languages appear as tabs; an optional comparison view shows the reference language side-by-side when needed.
- Dark Mode: Light/dark/auto toggle in settings, saved per browser — with no effect on other people or the public legal text pages.
- Login Protection: Failed login attempts are throttled per IP address (5 attempts / 15 minutes) to make brute-force attacks harder.