Ephraim Duncan
b8df02750b
fix: convert DOCX template uploads to PDF ( #2807 )
2026-05-14 11:59:27 +10:00
David Nguyen
8671f269e8
fix: lint project ( #2693 )
2026-05-08 16:04:22 +10:00
Catalin Pit
d38d703fd3
fix: error message (update title) ( #2691 )
2026-04-22 15:42:07 +10:00
Lucas Smith
2346de83a6
fix: replace z.string().email() with RFC 5322 compliant zEmail() ( #2656 )
2026-03-26 16:31:21 +11:00
Lucas Smith
814f6e62de
fix: replace z.string().email() with RFC 5322 compliant ZEmail/zEmail ( #2655 )
2026-03-26 13:31:26 +11:00
David Nguyen
0b605d61c6
feat: add envelope pdf replacement ( #2602 )
2026-03-18 22:53:28 +11:00
Ephraim Duncan
36bbd97514
feat: add organisation template type ( #2611 )
2026-03-17 01:29:34 +11:00
Catalin Pit
c4754553c9
feat: implement template search functionality ( #2376 )
...
- Added function to handle template searches based on user input
- Introduced in the TRPC router to facilitate authenticated template
searches
- Updated to include template search results alongside document search
results
- Enhanced query handling by enabling searches only when the input is
valid
- Created corresponding Zod schemas for request and response validation
in
2026-03-09 10:44:51 +11:00
Lucas Smith
006b1d0a57
feat: per-recipient envelope expiration ( #2519 )
2026-02-20 11:36:20 +11:00
Lucas Smith
c976e747e3
fix: dont flatten forms for templates ( #2386 )
...
Templates shouldn't have their form flattened until they're
converted to a document.
2026-01-14 12:06:28 +11:00
Catalin Pit
90fdba8000
feat: get many endpoints ( #2226 )
...
Co-authored-by: Lucas Smith <me@lucasjamessmith.me >
2025-12-24 11:02:02 +11:00
David Nguyen
b51f562224
feat: add empty emails for envelopes ( #2267 )
2025-12-06 13:38:10 +11:00
Catalin Pit
0dfa953f54
feat: add external ID to use template ( #2264 )
2025-12-02 18:53:42 +11:00
Lucas Smith
91642ddf0b
fix: add missing properties for template/use ( #2234 )
...
Adds the `override` and `attachments` properties to the
`api/v2/templates/use` endpoint that were previously missing.
2025-11-25 11:44:47 +11:00
Lucas Smith
68a3608aee
fix: handle bracket notation arrays ( #2178 )
...
Co-authored-by: David Nguyen <davidngu28@gmail.com >
2025-11-12 16:38:06 +11:00
David Nguyen
d05bfa9fed
feat: add envelopes api ( #2105 )
2025-11-07 14:17:52 +11:00
David Nguyen
d2a009d52e
fix: allow direct template recipient dictation ( #2108 )
2025-11-01 12:44:34 +11:00
Lucas Smith
2eebc0e439
feat: add attachments ( #2091 )
2025-10-23 23:07:10 +11:00
David Nguyen
7f09ba72f4
feat: add envelopes ( #2025 )
...
This PR is handles the changes required to support envelopes. The new
envelope editor/signing page will be hidden during release.
The core changes here is to migrate the documents and templates model to
a centralized envelopes model.
Even though Documents and Templates are removed, from the user
perspective they will still exist as we remap envelopes to documents and
templates.
2025-10-14 21:56:36 +11:00
Lucas Smith
3c646d9475
feat: remove email requirement for recipients ( #2040 )
2025-09-23 17:13:52 +10:00
Ephraim Duncan
93a3809f6a
fix: add maxLength limits to document input fields ( #1988 )
2025-09-09 17:52:03 +10:00
Catalin Pit
67501b45cf
feat: create document in a specific folder ( #1965 )
2025-08-23 00:12:17 +10:00
Ephraim Duncan
9b01a2318f
feat: download document via api v2 ( #1918 )
...
adds document download functionality to the API v2, returning
pre-signed S3 URLs that provide secure, time-limited access to document
files similar to what happens in the API v1 download document endpoint.
2025-08-05 12:29:21 +10:00
David Nguyen
c48486472a
fix: add missing email reply validation ( #1934 )
...
## Description
General fixes to the email domain features
Changes made:
- Add "email" validation for "Reply-To email" fields
- Fix issue where you can't remove the "Reply-To" email after it's set
- Fix issue where setting the "Sender email" back to Documenso would
still send using the org/team pref
2025-08-02 00:40:41 +10:00
David Nguyen
3409aae411
feat: add email domains ( #1895 )
...
Implemented Email Domains which allows Platform/Enterprise customers to
send emails to recipients using their custom emails.
2025-07-24 16:05:00 +10:00
Catalin Pit
7a5a9eefe8
feat: upload template via API ( #1842 )
...
Allow users to upload templates via both v1 and v2 APIs. Similar to
uploading documents.
2025-07-23 14:41:12 +10:00
David Nguyen
7487399123
feat: add more api logs ( #1870 )
...
Adds more detailed API logging using Pino
2025-06-30 19:46:32 +10:00
David Nguyen
e6dc237ad2
feat: add organisations ( #1820 )
2025-06-10 11:49:52 +10:00
Lucas Smith
55c8632620
feat: password reauthentication for documents and recipients ( #1827 )
...
Adds password reauthentication to our existing reauth providers,
additionally swaps from an exclusive provider to an inclusive type where
multiple methods can be selected to offer a this or that experience.
2025-06-07 00:27:19 +10:00
Catalin Pit
17370749b4
feat: add folders ( #1711 )
2025-05-02 02:46:59 +10:00
David Nguyen
193325717d
fix: rework fields ( #1697 )
...
Rework:
- Field styling to improve visibility
- Field insertions, better alignment, centering and overflows
## Changes
General changes:
- Set default text alignment to left if no meta found
- Reduce borders and rings around fields to allow smaller fields
- Removed lots of redundant duplicated code surrounding field rendering
- Make fields more consistent across viewing, editing and signing
- Add more transparency to fields to allow users to see under fields
- No more optional/required/etc colors when signing, required fields
will be highlighted as orange when form is "validating"
Highlighted internal changes:
- Utilize native PDF fields to insert text, instead of drawing text
- Change font auto scaling to only apply to when the height overflows
AND no custom font is set
⚠️ Multiline changes:
Multi line is enabled for a field under these conditions
1. Field content exceeds field width
2. Field includes a new line
3. Field type is TEXT
## [BEFORE] Field UI Signing

## [AFTER] Field UI Signing

## [BEFORE] Signing a checkbox


## [AFTER] Signing a checkbox


## [BEFORE] What a 2nd recipient sees once someone else signed a
document

## [AFTER] What a 2nd recipient sees once someone else signed a document

## **[BEFORE]** Inserting fields

## **[AFTER]** Inserting fields

## Overflows, multilines and field alignments testing
Debugging borders:
- Red border = The original field placement without any modifications
- Blue border = The available space to overflow
### Single line overflows and field alignments
This is left aligned fields, overflow will always go to the end of the
page and will not wrap

This is center aligned fields, the max width is the closest edge to the
page * 2

This is right aligned text, the width will extend all the way to the
left hand side of the page

### Multiline line overflows and field alignments
These are text fields that can be overflowed

Another example of left aligned text overflows with more text

2025-04-23 21:40:42 +10:00
David Nguyen
063fd32f18
feat: add signature configurations ( #1710 )
...
Add ability to enable or disable allowed signature types:
- Drawn
- Typed
- Uploaded
**Tabbed style signature dialog**

**Document settings**

**Team preferences**

- Add multiselect to select allowed signatures in document and templates
settings tab
- Add multiselect to select allowed signatures in teams preferences
- Removed "Enable typed signatures" from document/template edit page
- Refactored signature pad to use tabs instead of an all in one
signature pad
Added E2E tests to check settings are applied correctly for documents
and templates
2025-03-24 17:13:11 +11:00
Lucas Smith
f1525991dc
feat: dictate next signer ( #1719 )
...
Adds next recipient dictation functionality to document signing flow,
allowing assistants and signers to update the next recipient's
information during the signing process.
## Related Issue
N/A
## Changes Made
- Added form handling for next recipient dictation in signing dialogs
- Implemented UI for updating next recipient information
- Added e2e tests covering dictation scenarios:
- Regular signing with dictation enabled
- Assistant role with dictation
- Parallel signing flow
- Disabled dictation state
## Testing Performed
- Added comprehensive e2e tests covering:
- Sequential signing with dictation
- Assistant role dictation
- Parallel signing without dictation
- Form validation and state management
- Tested on Chrome and Firefox
- Verified recipient state updates in database
2025-03-21 13:27:04 +11:00
Catalin Pit
91ae818213
fix: missing prefillfields property from the api v2 documentation ( #1700 )
2025-03-12 22:54:58 +11:00
Catalin Pit
422770a8c7
feat: allow fields prefill when generating a document from a template ( #1615 )
...
This change allows API users to pre-fill fields with values by
passing the data in the request body. Example body for V2 API endpoint
`/api/v2-beta/template/use`:
```json
{
"templateId": 1,
"recipients": [
{
"id": 1,
"email": "signer1@mail.com ",
"name": "Signer 1"
},
{
"id": 2,
"email": "signer2@mail.com ",
"name": "Signer 2"
}
],
"prefillValues": [
{
"id": 14,
"fieldMeta": {
"type": "text",
"label": "my label",
"placeholder": "text placeholder test",
"text": "auto-sign value",
"characterLimit": 25,
"textAlign": "right",
"fontSize": 94,
"required": true
}
},
{
"id": 15,
"fieldMeta": {
"type": "radio",
"label": "radio label",
"placeholder": "new radio placeholder",
"required": false,
"readOnly": true,
"values": [
{
"id": 2,
"checked": true,
"value": "radio val 1"
},
{
"id": 3,
"checked": false,
"value": "radio val 2"
}
]
}
},
{
"id": 16,
"fieldMeta": {
"type": "dropdown",
"label": "dropdown label",
"placeholder": "DD placeholder",
"required": false,
"readOnly": false,
"values": [
{
"value": "option 1"
},
{
"value": "option 2"
},
{
"value": "option 3"
}
],
"defaultValue": "option 2"
}
}
],
"distributeDocument": false,
"customDocumentDataId": ""
}
```
2025-03-06 19:45:33 +11:00
Lucas Smith
c9e8a32471
feat: bulk send templates via csv ( #1578 )
...
Implements a bulk send feature allowing users to upload a CSV file to
create multiple documents from a template. Includes CSV template
generation, background processing, and email notifications.
2025-02-13 18:44:29 +11:00
David Nguyen
383b5f78f0
feat: migrate nextjs to rr7
2025-02-13 14:10:38 +11:00
David Nguyen
74bb230247
fix: add empty success responses ( #1600 )
2025-01-20 19:47:39 +11:00
David Nguyen
0d3864548c
fix: bump trpc and openapi packages ( #1591 )
2025-01-19 22:07:02 +11:00
David Nguyen
9e03747e43
feat: add create document beta endpoint ( #1584 )
2025-01-16 13:36:00 +11:00
David Nguyen
901be70f97
feat: add consistent response schemas ( #1582 )
2025-01-14 00:43:35 +11:00
David Nguyen
ebbe922982
feat: add template and field endpoints ( #1572 )
2025-01-11 15:33:20 +11:00
Catalin Pit
6fc5e565d0
fix: add document visibility to template ( #1566 )
...
Adds the visibility property to templates
2025-01-09 10:14:24 +11:00
Lucas Smith
4fab98c633
feat: allow switching document when using templates ( #1571 )
...
Adds the ability to upload a custom document when using a template.
This is useful when you have a given fixed template with placeholder
values that you want to decorate with Documenso fields but will then
create a final specialised document when sending it out to a given
recipient.
2025-01-07 16:13:35 +11:00
David Nguyen
74382e21e7
feat: add get recipient route ( #1553 )
2024-12-26 17:25:14 +11:00
David Nguyen
b4a7f1887d
feat: add trpc openapi ( #1535 )
2024-12-14 01:23:35 +09:00
David Nguyen
5df1a6602e
fix: refactor search routes ( #1529 )
...
Refactor find endpoints to be consistent in terms of input and output.
2024-12-11 19:39:50 +09:00
David Nguyen
fae9c0ca24
fix: refactor routers ( #1523 )
2024-12-10 16:11:20 +09:00
David Nguyen
98d85b086d
feat: add initial api logging ( #1494 )
...
Improve API logging and error handling between client and server side.
2024-11-28 16:05:37 +07:00
Catalin Pit
ab654a63d8
chore: enable typed signature by default ( #1436 )
...
Enable typed signature by default and also add the option to set a typed
signature in the profile page.
2024-11-26 21:03:44 +11:00