Added

Document details now include approval execution info, folder UUID, and document version.

GET /public/v1/documents/{id}/details

  • added the optional property 'approval_execution' to the response with the '200' status
  • added the optional property 'folder_uuid' to the response with the '200' status
  • added the optional property 'version' to the response with the '200' status

Changed

Send-reminder email customization now supports longer subject lines (up to 300 characters instead of 78) in both the request and the response.

POST /public/v1/documents/{document_id}/send-reminder

  • the 'result/items/email_customization/subject' response property's maxLength was increased from '78' to '300' for the response status '200'
  • the 'reminders/items/email_customization/subject' request property's maxLength was increased from '78' to '300'

Document details: the text field merge field can now be null.

GET /public/v1/documents/{id}/details

  • the response property 'fields/items/anyOf[subschema #10: Text]/allOf[subschema #2]/merge_field' became nullable for the status '200'
  • the 'fields/items/anyOf[subschema #10: Text]/allOf[#/components/schemas/BaseField]/assigned_to/anyOf[subschema #1: Recipient]/allOf[subschema #2]/phone' response's property pattern '^+[1-9]\d4\d14$' was removed for the status '200'
  • the 'fields/items/anyOf[subschema #1: Checkbox]/allOf[#/components/schemas/BaseField]/assigned_to/anyOf[subschema #1: Recipient]/allOf[subschema #2]/phone' response's property pattern '^+[1-9]\d4\d14$' was removed for the status '200'
  • the 'fields/items/anyOf[subschema #2: Collect File]/allOf[#/components/schemas/BaseField]/assigned_to/anyOf[subschema #1: Recipient]/allOf[subschema #2]/phone' response's property pattern '^+[1-9]\d4\d14$' was removed for the status '200'
  • the 'fields/items/anyOf[subschema #3: Date]/allOf[#/components/schemas/BaseField]/assigned_to/anyOf[subschema #1: Recipient]/allOf[subschema #2]/phone' response's property pattern '^+[1-9]\d4\d14$' was removed for the status '200'
  • the 'fields/items/anyOf[subschema #4: Dropdown]/allOf[#/components/schemas/BaseField]/assigned_to/anyOf[subschema #1: Recipient]/allOf[subschema #2]/phone' response's property pattern '^+[1-9]\d4\d14$' was removed for the status '200'
  • the 'fields/items/anyOf[subschema #5: Initials]/allOf[#/components/schemas/BaseField]/assigned_to/anyOf[subschema #1: Recipient]/allOf[subschema #2]/phone' response's property pattern '^+[1-9]\d4\d14$' was removed for the status '200'
  • the 'fields/items/anyOf[subschema #6: Payment Details]/allOf[#/components/schemas/BaseField]/assigned_to/anyOf[subschema #1: Recipient]/allOf[subschema #2]/phone' response's property pattern '^+[1-9]\d4\d14$' was removed for the status '200'
  • the 'fields/items/anyOf[subschema #7: Radio Buttons]/allOf[#/components/schemas/BaseField]/assigned_to/anyOf[subschema #1: Recipient]/allOf[subschema #2]/phone' response's property pattern '^+[1-9]\d4\d14$' was removed for the status '200'
  • the 'fields/items/anyOf[subschema #8: Signature]/allOf[#/components/schemas/BaseField]/assigned_to/anyOf[subschema #1: Recipient]/allOf[subschema #2]/phone' response's property pattern '^+[1-9]\d4\d14$' was removed for the status '200'
  • the 'fields/items/anyOf[subschema #9: Stamp]/allOf[#/components/schemas/BaseField]/assigned_to/anyOf[subschema #1: Recipient]/allOf[subschema #2]/phone' response's property pattern '^+[1-9]\d4\d14$' was removed for the status '200'

Full Changelog: https://github.com/PandaDoc/pandadoc-openapi-specification/compare/v7.16.1...v7.16.2

Changed

Simplified currency specification for quote updates. The currency property is now a top-level optional request property, replacing the previously nested sections/items/currency property. This streamlines how you update currency for specific quotes.

PUT /public/v1/documents/{document_id}/quotes/{quote_id}

  • ⚠️ removed the request property 'sections/items/currency'
  • added the new optional request property 'currency'

Added

Added currency specification for quote, allowing you to set the currency within quote when updating a document quote.

PUT /public/v1/documents/{document_id}/quotes/{quote_id}

  • added the new optional request property 'sections/currency'

POST /public/v1/content-library-items

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/content-library-items/{id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/content-library-items/{id}/details

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/content-library-items?upload

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/documents

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/documents

  • ⚠️ removed 'subschema #1, subschema #2' from the request body 'oneOf' list
  • added 'subschema #1, subschema #2' to the request body 'oneOf' list
  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/documents/linked-objects

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

PATCH /public/v1/documents/ownership

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/documents/{document_id}/auto-reminders

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

PATCH /public/v1/documents/{document_id}/auto-reminders

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/documents/{document_id}/auto-reminders/status

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/documents/{document_id}/esign-disclosure

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

PUT /public/v1/documents/{document_id}/quotes/{quote_id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/documents/{document_id}/sections

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/documents/{document_id}/sections/uploads/{upload_id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

DELETE /public/v1/documents/{document_id}/sections/{section_id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/documents/{document_id}/sections/{section_id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/documents/{document_id}/send-reminder

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/documents/{id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

PATCH /public/v1/documents/{id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/documents/{id}/append-content-library-item

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/documents/{id}/details

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/documents/{id}/download

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/documents/{id}/download-protected

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/documents/{id}/editing-sessions

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/documents/{id}/linked-objects

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/documents/{id}/linked-objects

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

DELETE /public/v1/documents/{id}/linked-objects/{linked_object_id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/documents/{id}/move-to-folder/{folder_id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

PATCH /public/v1/documents/{id}/ownership

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/documents/{id}/recipients

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

PATCH /public/v1/documents/{id}/recipients/recipient/{recipient_id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

DELETE /public/v1/documents/{id}/recipients/{recipient_id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/documents/{id}/recipients/{recipient_id}/reassign

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/documents/{id}/send

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/documents/{id}/session

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

PATCH /public/v1/documents/{id}/status

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

PATCH /public/v1/documents/{id}/status?upload

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/forms

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/members/{id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/members/{member_id}/token

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/sms-opt-outs

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

DELETE /public/v1/templates/{id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/templates/{id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

PATCH /public/v1/templates/{id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/templates/{id}/details

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/templates/{id}/editing-sessions

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/users

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/webhook-subscriptions

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

DELETE /public/v1/webhook-subscriptions/{id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/webhook-subscriptions/{id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

PATCH /public/v1/webhook-subscriptions/{id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

PATCH /public/v1/webhook-subscriptions/{id}/shared-key

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v1/workspaces

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/workspaces

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/workspaces/{workspace_id}/api-keys

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/workspaces/{workspace_id}/deactivate

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

POST /public/v1/workspaces/{workspace_id}/members

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

DELETE /public/v1/workspaces/{workspace_id}/members/{member_id}

  • added the optional property 'info_message' to the response with the '403' status
  • added the optional property 'links' to the response with the '403' status

GET /public/v2/documents/{document_id}/settings

  • added the required property 'expires_in' to the response with the '200' status

PATCH /public/v2/documents/{document_id}/settings

  • added the new optional request property 'expires_in'
  • added the required property 'expires_in' to the response with the '200' status

GET /public/v2/templates/{template_id}/settings

  • ⚠️ removed the required property 'qualified_electronic_signature' from the response with the '200' status

PATCH /public/v2/templates/{template_id}/settings

  • ⚠️ removed the required property 'qualified_electronic_signature' from the response with the '200' status
  • ⚠️ removed the request property 'qualified_electronic_signature'

Added

Document settings now support the expires_in field (in days). You can retrieve the current expiration when getting document settings and set or update it when updating document settings, giving you programmatic control over when documents expire.

GET /public/v2/documents/{document_id}/settings

  • added the required property 'expires_in' to the response with the '200' status

PATCH /public/v2/documents/{document_id}/settings

  • added the new optional request property 'expires_in'
  • added the required property 'expires_in' to the response with the '200' status

Added

Document settings now support qualified electronic signature (QES). You can retrieve the current QES setting when getting document settings and enable or update it when updating document settings, giving you programmatic control over whether documents require a qualified electronic signature.

GET /public/v2/documents/{document_id}/settings

  • added the required property 'qualified_electronic_signature' to the response with the '200' status

PATCH /public/v2/documents/{document_id}/settings

  • added the new optional request property 'qualified_electronic_signature'
  • added the required property 'qualified_electronic_signature' to the response with the '200' status

Fees are now supported by Pricing Tables via API!

You can now set Fee in Create and Update Document endpoints (read more). It is also now present in Document, Templates, and CLI Details endpoints.


GET /public/v1/content-library-items/{id}/details

  • added the optional property 'pricing/tables/items/summary/fee' to the response with the '200' status

GET /public/v1/documents/{id}/details

  • added the optional property 'pricing/tables/items/summary/fee' to the response with the '200' status

GET /public/v1/templates/{id}/details

  • added the optional property 'pricing/tables/items/summary/fee' to the response with the '200' status

It is now possible to get and set language for Documents and Templates via API. Check out API references:


GET /public/v2/documents/{document_id}/settings

  • endpoint added

PATCH /public/v2/documents/{document_id}/settings

  • endpoint added

GET /public/v2/templates/{template_id}/settings

  • endpoint added

PATCH /public/v2/templates/{template_id}/settings

  • endpoint added

We’ve introduced new endpoint to send email and SMS reminders for documents via the API. This new endpoint allows you to send reminders to all or to some document recipients so that you could manage document follow-ups more flexible and conveniently. Check the Send Manual Reminder in our PandaDoc Public API reference for details.

GET /public/v1/documents/{document_id}/send-reminder

  • endpoint added. Attempts to send manual reminders to one or more recipients of a specified document.