diff --git a/apps/documentation/pages/developers/local-development/quickstart.mdx b/apps/documentation/pages/developers/local-development/quickstart.mdx
index fdf1590f2..563505024 100644
--- a/apps/documentation/pages/developers/local-development/quickstart.mdx
+++ b/apps/documentation/pages/developers/local-development/quickstart.mdx
@@ -61,6 +61,6 @@ You can access the following services:
- Main application - http://localhost:3000
- Incoming Mail Access - http://localhost:9000
- Database Connection Details:
-- Port: 54320
-- Connection: Use your favourite database client to connect to the database.
+ - Port: 54320
+ - Connection: Use your favorite database client to connect to the database.
- S3 Storage Dashboard - http://localhost:9001
diff --git a/apps/documentation/pages/developers/public-api/rate-limits.mdx b/apps/documentation/pages/developers/public-api/rate-limits.mdx
index 1941258cd..82ee1b046 100644
--- a/apps/documentation/pages/developers/public-api/rate-limits.mdx
+++ b/apps/documentation/pages/developers/public-api/rate-limits.mdx
@@ -1,3 +1,8 @@
+---
+title: Rate Limits
+description: Learn about the rate limits for the Documenso Public API.
+---
+
import { Callout } from 'nextra/components';
# Rate Limits
diff --git a/apps/documentation/pages/developers/self-hosting/telemetry.mdx b/apps/documentation/pages/developers/self-hosting/telemetry.mdx
index 9d8b64437..3a0b83eac 100644
--- a/apps/documentation/pages/developers/self-hosting/telemetry.mdx
+++ b/apps/documentation/pages/developers/self-hosting/telemetry.mdx
@@ -1,3 +1,8 @@
+---
+title: Telemetry
+description: Learn about the telemetry data that Documenso collects from self-hosted instances.
+---
+
# Telemetry
Documenso collects anonymous telemetry data from self-hosted instances to help us understand how the software is being used and make improvements to the product. This telemetry is enabled by default, but you can easily disable it if you prefer.
diff --git a/apps/documentation/pages/developers/webhooks.mdx b/apps/documentation/pages/developers/webhooks.mdx
index 8fac71210..a9684a9cc 100644
--- a/apps/documentation/pages/developers/webhooks.mdx
+++ b/apps/documentation/pages/developers/webhooks.mdx
@@ -5,7 +5,7 @@ description: Learn how to use webhooks to receive real-time notifications about
# Webhooks
-Webhooks are HTTP callbacks triggered by specific events. When the user subscribes to a specific event, and that event occurs, the webhook makes an HTTP request to the URL provided by the user. The request can be a simple notification or carry a payload with more information about the event.
+Webhooks are HTTP callbacks triggered by specific events. When you subscribe to a specific event and that event occurs, the webhook makes an HTTP request to the URL you provide. The request can be a simple notification or carry a payload with more information about the event.
Some of the common use cases for webhooks include:
@@ -25,13 +25,13 @@ Documenso supports Webhooks and allows you to subscribe to the following events:
## Create a webhook subscription
-You can create a webhook subscription from the user settings page. Click on your avatar in the top right corner of the dashboard and select "**[User settings](https://app.documenso.com/settings)**" from the dropdown menu.
+You can create a webhook subscription from the team settings page. Click your avatar in the top right corner of the dashboard and select "Team settings" from the dropdown menu.
-
+
-Then, navigate to the "**[Webhooks](https://app.documenso.com/settings/webhooks)**" tab, where you can see a list of your existing webhooks and create new ones.
+Then, navigate to the "Webhooks" tab, which takes you to the webhooks main page.
-
+
Clicking on the "**Create Webhook**" button opens a modal to create a new webhook subscription.
@@ -41,7 +41,7 @@ To create a new webhook subscription, you need to provide the following informat
- Select the event(s) you want to subscribe to: `document.created`, `document.sent`, `document.opened`, `document.signed`, `document.completed`, `document.rejected`, `document.cancelled`.
- Optionally, you can provide a secret key that will be used to sign the payload. This key will be included in the `X-Documenso-Secret` header of the request.
-
+
After you have filled in the required information, click on the "**Create Webhook**" button to save your subscription.
@@ -49,7 +49,22 @@ The screenshot below illustrates a newly created webhook subscription.

-You can edit or delete your webhook subscriptions by clicking the "**Edit**" or "**Delete**" buttons next to the webhook.
+You can edit, view the logs, or delete your webhook subscriptions by clicking the three dots (...) under the "Action" column. You can also access the webhook logs by clicking on the webhook subscription directly.
+
+
+
+You can go even further and check the execution details of each call by clicking on a specific webhook call.
+
+
+
+This page shows the details of the webhook call such as:
+
+- status
+- event
+- date when the webhook was sent
+- response code
+- request body
+- response body and headers
## Webhook fields
@@ -619,18 +634,26 @@ Example payload for the `document.rejected` event:
}
```
-## Webhook Events Testing
+## Webhook events testing
-You can trigger test webhook events to test the webhook functionality. To trigger a test webhook, navigate to the [Webhooks page](/developers/webhooks) and click on the "Test Webhook" button.
+You can trigger test webhook events to test the webhook functionality. To do so, navigate to the webhook subscription details page and click the "Test" button.
-
+
This opens a dialog where you can select the event type to test.
-
+
-Choose the appropriate event and click "Send Test Webhook." You’ll shortly receive a test payload from Documenso with sample data.
+Choose the event you want to test and click "Send". You’ll then receive a test payload from Documenso with sample data.
+
+## Webhook events resending
+
+To resend a webhook call, you need to navigate to the webhook call page and click the "Resend" button.
+
+
+
+This will send the webhook event to the webhook URL again.
## Availability
-Webhooks are available to individual users and teams.
+Webhooks are available to teams only.
diff --git a/apps/documentation/pages/users/compliance/signature-levels.mdx b/apps/documentation/pages/users/compliance/signature-levels.mdx
index 62c6350b6..9b6933ed9 100644
--- a/apps/documentation/pages/users/compliance/signature-levels.mdx
+++ b/apps/documentation/pages/users/compliance/signature-levels.mdx
@@ -1,3 +1,8 @@
+---
+title: Signature Levels
+description: Learn about the different signature levels for Documenso.
+---
+
import { Callout } from 'nextra/components';
# Signature Levels
@@ -26,20 +31,20 @@ ensures the legal validity and enforceability of electronic signatures and recor
### Main Requirements
-- [x] Intent to Sign: "Parties must demonstrate their intent to sign [..]"
-- [x] Consent: "The ESIGN Act requires that all parties involved in a transaction consent to the use of electronic signatures and records [..]"
-- [x] Consumer Disclosures: Before obtaining their consent, financial institutions must provide the consumer a clear and conspicuous statement informing the consumer [..]
-- [x] Record Retention: Electronic Records must be maintained for later access by signers.
-- [x] Security: The ESIGN Act does not mandate specific security measures, but it does require that parties take reasonable steps to ensure the security and integrity of electronic signatures and records. This may include implementing encryption, access controls, and authentication measures.
+- [x] **Intent to Sign**: "Parties must demonstrate their intent to sign [..]"
+- [x] **Consent**: "The ESIGN Act requires that all parties involved in a transaction consent to the use of electronic signatures and records [..]"
+- [x] **Consumer Disclosures**: Before obtaining their consent, financial institutions must provide the consumer a clear and conspicuous statement informing the consumer [..]
+- [x] **Record Retention**: Electronic Records must be maintained for later access by signers.
+- [x] **Security**: The ESIGN Act does not mandate specific security measures, but it does require that parties take reasonable steps to ensure the security and integrity of electronic signatures and records. This may include implementing encryption, access controls, and authentication measures.
## UETA (Uniform Electronic Transactions Act)
Status: Compliant
-The Uniform Electronic Transactions Act is a law that provides a legal framework for the use of electronic
-signatures and records in electronic transactions, ensuring they have the same validity and enforceability
-as paper documents and handwritten signatures.
+The Uniform Electronic Transactions Act is a law that provides a legal framework for the use of
+electronic signatures and records in electronic transactions, ensuring they have the same validity
+and enforceability as paper documents and handwritten signatures.
### Main Requirements
@@ -50,9 +55,9 @@ _See [ESIGN](/users/compliance/signature-levels#-esign-electronic-signatures-in-
Status: Compliant for Level 1 - SES (Simple Electronic Signatures)
-eIDAS (Electronic Identification, Authentication and Trust Services) is an EU regulation that standardizes
-electronic identification and trust services for secure and seamless electronic transactions across European
-member states.
+eIDAS (Electronic Identification, Authentication and Trust Services) is an EU regulation that
+standardizes electronic identification and trust services for secure and seamless electronic
+transactions across European member states.
### Level 1 - SES (Simple Electronic Signatures)
@@ -69,8 +74,8 @@ eIDAS SES (Simple Electronic Signature) is a basic electronic signature with min
Status: [Planned](https://github.com/documenso/backlog/issues/9) via third party until [Let's
Sign](https://github.com/documenso/backlog/issues/21) is realized.
-eIDAS AES (Advanced Electronic Signature) provides a higher level of security with unique identification
-of the signer and data integrity.
+eIDAS AES (Advanced Electronic Signature) provides a higher level of security with unique
+identification of the signer and data integrity.
### Main Requirements
@@ -85,8 +90,8 @@ of the signer and data integrity.
Status: [Planned](https://github.com/documenso/backlog/issues/32) via third party until [Let's
Sign](https://github.com/documenso/backlog/issues/21) is realized.
-eIDAS QES (Qualified Electronic Signature) is the highest security level, legally equivalent to a handwritten
-signature within the EU.
+eIDAS QES (Qualified Electronic Signature) is the highest security level, legally equivalent to a
+handwritten signature within the EU.
### Main Requirements
diff --git a/apps/documentation/pages/users/compliance/standards-and-regulations.mdx b/apps/documentation/pages/users/compliance/standards-and-regulations.mdx
index 4d5193944..aacad6275 100644
--- a/apps/documentation/pages/users/compliance/standards-and-regulations.mdx
+++ b/apps/documentation/pages/users/compliance/standards-and-regulations.mdx
@@ -1,3 +1,8 @@
+---
+title: Standards and Regulations
+description: Learn about the different standards and regulations for Documenso.
+---
+
import { Callout } from 'nextra/components';
## 21 CFR Part 11
diff --git a/apps/documentation/pages/users/email-domains.mdx b/apps/documentation/pages/users/email-domains.mdx
index d28b467e3..4a84141dc 100644
--- a/apps/documentation/pages/users/email-domains.mdx
+++ b/apps/documentation/pages/users/email-domains.mdx
@@ -1,3 +1,8 @@
+---
+title: Email Domains
+description: Learn how to create and manage email domains in Documenso.
+---
+
import { Callout, Steps } from 'nextra/components';
# Email Domains
diff --git a/apps/documentation/pages/users/fair-use.mdx b/apps/documentation/pages/users/fair-use.mdx
index 2b2eb605a..2fb4198dd 100644
--- a/apps/documentation/pages/users/fair-use.mdx
+++ b/apps/documentation/pages/users/fair-use.mdx
@@ -7,28 +7,28 @@ import { Callout } from 'nextra/components';
# Fair Use Policy
-### Why
+We offer our plans without any limits on volume because we want our users and customers to make the most of their accounts. Estimating volume is incredibly hard, especially for shorter intervals like a quarter. We are not interested in selling volume packages our customers end up not using.
-We offer our plans without any limits on volume because we want our users and customers to make the most of their accounts. Estimating volume is incredibly hard, especially for shorter intervals like a quarter. We are not interested in selling volume packages our customers end up not using. This is why the individual plan and the team plan do not include a limit on signing or API volume. If you are a customer of these [plans](https://documen.so/pricing), we ask you to abide by this fair use policy:
+This is why the individual plan and the team plan do not include a limit on signing or API volume. If you are a customer of these [plans](https://documen.so/pricing), we ask you to abide by this fair use policy:
### Spirit of the Plan
-> Use the limitless accounts as much as you like (they are meant to offer a lot) while respecting the spirit and intended scope of the account.
+Use the limitless accounts as much as you like (they are meant to offer a lot) while respecting the spirit and intended scope of the account.
What happens if I violate this policy? We will ask you to upgrade to a fitting plan or custom
- pricing. We won’t block your account without reaching out. [Message
- us](mailto:support@documenso.com) for questions. It's probably fine, though.
+ pricing. We won’t block your account without reaching out. You can [message
+ us](mailto:support@documenso.com) for questions.
### DO
-- Sign as many documents with the individual plan for your single business or organization you are part of
-- Use the API and Zapier to automate all your signing to sign as much as possible
-- Experiment with the plans and integrations, testing what you want to build: When in doubt, do it. Especially if you are just starting.
+- Sign as many documents as you need with the individual plan for your single business or organization you are part of
+- Use the API and automation tools to automate all your signing workflows
+- Experiment with the plans and integrations, testing what you want to build
### DON'T
- Use the individual account's API to power a platform
- Run a huge company, signing thousands of documents per day on a two-user team plan using the API
-- Let this policy make you overthink. If you are a paying customer, we want you to win, and it's probably fine
+- Let this policy make you overthink. If you are a paying customer, we want you to win
diff --git a/apps/documentation/pages/users/get-started/account-creation.mdx b/apps/documentation/pages/users/get-started/account-creation.mdx
index bea55e060..305486e6a 100644
--- a/apps/documentation/pages/users/get-started/account-creation.mdx
+++ b/apps/documentation/pages/users/get-started/account-creation.mdx
@@ -10,7 +10,12 @@ import { Callout, Steps } from 'nextra/components';
### Pick a Plan
-The first step to start using Documenso is to pick a plan and create an account. At the moment of writing this guide, we have 3 plans available: Free, Individual, Teams and Platform.
+The first step to start using Documenso is to pick a plan and create an account. At the moment of writing this guide, we have 4 plans available:
+
+- Free
+- Individual
+- Teams
+- Platform
Explore each plan's features and choose the one that best suits your needs. The [pricing page](https://documen.so/pricing) has more information about the plans.
@@ -24,7 +29,7 @@ To create a free account, navigate to the [registration page](https://documen.so
### Optional: Claim a Premium Username
-You can claim a premium username by upgrading to a paid plan. After upgrading to a paid plan, you can update your [public profile](https://app.documenso.com/settings/public-profile).
+You can claim a premium username by upgrading to a paid plan. After upgrading to a paid plan, you can update your [public profile](/users/profile).
### Optional: Create a Team
diff --git a/apps/documentation/pages/users/licenses/community-edition.mdx b/apps/documentation/pages/users/licenses/community-edition.mdx
index 88dde8fa7..f259fc2e5 100644
--- a/apps/documentation/pages/users/licenses/community-edition.mdx
+++ b/apps/documentation/pages/users/licenses/community-edition.mdx
@@ -1,3 +1,8 @@
+---
+title: Community Edition
+description: Learn about the Community Edition of Documenso.
+---
+
import { Callout } from 'nextra/components';
# Community Edition
@@ -32,10 +37,10 @@ Documenso and the Community Edition are licensed under [AGPL3](https://github.co
### Conditions
-ℹ️ License and copyright notice
-ℹ️ State changes
-ℹ️ Disclose source
-ℹ️ Network use is distribution
+- License and copyright notice
+- State changes
+- Disclose source
+- Network use is distribution
It's important to remember that you must keep the AGPL3 license for your modified or non-modified
diff --git a/apps/documentation/pages/users/licenses/enterprise-edition.mdx b/apps/documentation/pages/users/licenses/enterprise-edition.mdx
index 8dab8b9e8..b1f6a77b2 100644
--- a/apps/documentation/pages/users/licenses/enterprise-edition.mdx
+++ b/apps/documentation/pages/users/licenses/enterprise-edition.mdx
@@ -1,3 +1,8 @@
+---
+title: Enterprise Edition
+description: Learn about the Enterprise Edition of Documenso.
+---
+
import { Callout } from 'nextra/components';
# Enterprise Edition
diff --git a/apps/documentation/pages/users/licenses/index.mdx b/apps/documentation/pages/users/licenses/index.mdx
index cf5614c96..968274f5d 100644
--- a/apps/documentation/pages/users/licenses/index.mdx
+++ b/apps/documentation/pages/users/licenses/index.mdx
@@ -1,3 +1,8 @@
+---
+title: Licenses
+description: Learn about the different licenses for self-hosting Documenso.
+---
+
# Self-Hosting Licenses
Documenso comes in two versions for self-hosting:
diff --git a/apps/documentation/pages/users/profile.mdx b/apps/documentation/pages/users/profile.mdx
index 780c226c8..227432a0b 100644
--- a/apps/documentation/pages/users/profile.mdx
+++ b/apps/documentation/pages/users/profile.mdx
@@ -15,7 +15,7 @@ Documenso allows you to create a public profile to share your templates for anyo
### Navigate to Your Profile Settings
-Click on your profile picture in the top right corner and select "Settings" or "Team Settings". Then, navigate to the "Public Profile" tab to configure your profile.
+Click on your profile picture in the top right corner and select "Team Settings". Then, navigate to the "Public Profile" tab to configure your profile.

diff --git a/apps/documentation/pages/users/support.mdx b/apps/documentation/pages/users/support.mdx
index 7eb00636f..a5c39427c 100644
--- a/apps/documentation/pages/users/support.mdx
+++ b/apps/documentation/pages/users/support.mdx
@@ -9,30 +9,30 @@ description: Learn what types of support we offer.
If you are a developer or free user, you can reach out to the community or raise an issue:
-### [Create Github Issues](https://github.com/documenso/documenso/issues)
+**[Create Github Issues](https://github.com/documenso/documenso/issues)**
The community and the core team address GitHub issues. Be sure to check if a similar issue already exists. Please note that while we want to address everything immediately, we must prioritize.
-### [Join our Discord](https://documen.so/discord)
+**[Join our Discord](https://documen.so/discord)**
You can ask for help in the [community help channel](https://discord.com/channels/1132216843537485854/1133419426524430376).
## Paid Account Support
-### Email: support@documenso.com
+**Email: support@documenso.com**
If you are paying customers facing issues, email our customer support, especially in urgent cases.
-### Private Discord channel
+**Private Discord channel**
If you prefer Discord, we can invite you to a private channel. Message support to make this happen.
## Enterprise Support
-### Email: support@documenso.com
+**Email: support@documenso.com**
If you are paying customers facing issues, email our customer support, especially in urgent cases.
-### Slack
+**Slack**
If your team is on Slack, we can create a private workspace to support you more closely.
diff --git a/apps/documentation/pages/users/templates.mdx b/apps/documentation/pages/users/templates.mdx
index 6f03a5d41..1269ebd33 100644
--- a/apps/documentation/pages/users/templates.mdx
+++ b/apps/documentation/pages/users/templates.mdx
@@ -1,3 +1,8 @@
+---
+title: Templates
+description: Learn how to create and use templates in Documenso.
+---
+
import { Callout, Steps } from 'nextra/components';
# Document Templates
diff --git a/apps/documentation/public/webhook-images/create-webhook-dialog.webp b/apps/documentation/public/webhook-images/create-webhook-dialog.webp
new file mode 100644
index 000000000..25fd1cac8
Binary files /dev/null and b/apps/documentation/public/webhook-images/create-webhook-dialog.webp differ
diff --git a/apps/documentation/public/webhook-images/dashboard-user-dropdown-menu.webp b/apps/documentation/public/webhook-images/dashboard-user-dropdown-menu.webp
deleted file mode 100644
index 71838b2d7..000000000
Binary files a/apps/documentation/public/webhook-images/dashboard-user-dropdown-menu.webp and /dev/null differ
diff --git a/apps/documentation/public/webhook-images/documenso-main-page.webp b/apps/documentation/public/webhook-images/documenso-main-page.webp
new file mode 100644
index 000000000..b9f67a5af
Binary files /dev/null and b/apps/documentation/public/webhook-images/documenso-main-page.webp differ
diff --git a/apps/documentation/public/webhook-images/test-webhook-dialog.webp b/apps/documentation/public/webhook-images/test-webhook-dialog.webp
deleted file mode 100644
index 59cdbfead..000000000
Binary files a/apps/documentation/public/webhook-images/test-webhook-dialog.webp and /dev/null differ
diff --git a/apps/documentation/public/webhook-images/test-webhooks-page.webp b/apps/documentation/public/webhook-images/test-webhooks-page.webp
deleted file mode 100644
index b5b833ced..000000000
Binary files a/apps/documentation/public/webhook-images/test-webhooks-page.webp and /dev/null differ
diff --git a/apps/documentation/public/webhook-images/webhook-detail-page.webp b/apps/documentation/public/webhook-images/webhook-detail-page.webp
new file mode 100644
index 000000000..ba9e0bf9e
Binary files /dev/null and b/apps/documentation/public/webhook-images/webhook-detail-page.webp differ
diff --git a/apps/documentation/public/webhook-images/webhook-run-page.webp b/apps/documentation/public/webhook-images/webhook-run-page.webp
new file mode 100644
index 000000000..0a103a1fb
Binary files /dev/null and b/apps/documentation/public/webhook-images/webhook-run-page.webp differ
diff --git a/apps/documentation/public/webhook-images/webhook-test-trigger.webp b/apps/documentation/public/webhook-images/webhook-test-trigger.webp
new file mode 100644
index 000000000..c5c93f94d
Binary files /dev/null and b/apps/documentation/public/webhook-images/webhook-test-trigger.webp differ
diff --git a/apps/documentation/public/webhook-images/webhooks-main-page.webp b/apps/documentation/public/webhook-images/webhooks-main-page.webp
new file mode 100644
index 000000000..ac8ea2e88
Binary files /dev/null and b/apps/documentation/public/webhook-images/webhooks-main-page.webp differ
diff --git a/apps/documentation/public/webhook-images/webhooks-page-create-webhook-modal.webp b/apps/documentation/public/webhook-images/webhooks-page-create-webhook-modal.webp
deleted file mode 100644
index ed0ef44df..000000000
Binary files a/apps/documentation/public/webhook-images/webhooks-page-create-webhook-modal.webp and /dev/null differ
diff --git a/apps/documentation/public/webhook-images/webhooks-page.webp b/apps/documentation/public/webhook-images/webhooks-page.webp
index fd3d8998e..9df677425 100644
Binary files a/apps/documentation/public/webhook-images/webhooks-page.webp and b/apps/documentation/public/webhook-images/webhooks-page.webp differ
diff --git a/apps/documentation/public/webhook-images/webhooks-settings-page.webp b/apps/documentation/public/webhook-images/webhooks-settings-page.webp
deleted file mode 100644
index 2def663d9..000000000
Binary files a/apps/documentation/public/webhook-images/webhooks-settings-page.webp and /dev/null differ