To prevent the malicious use of our API, we're introducing a restriction for the Free Trial users: when using a Sandbox key, you can only send documents if the sender and recipient email addresses are from the same organisation (email domain).

Ever wanted to add or remove a recipient, edit a recipient's personal details, or reassign fields to another signer after sending a document? It's all possible now through our API. Explore the Manage Document Recipients to get even more eSigning flexibility.

We have added 4 new endpoints that allow you to manage recipients in any document status, not just Draft, like the Update Document endpoint does.

  • Add CC Recipient – use this endpoint to add a CC recipient to a document. You can add now a CC recipient even when the document is completed.
  • Remove Recipient – use this endpoint to remove a recipient from a document. Once a CC recipient is removed, their access will be revoked.
  • Edit Recipient – use this endpoint to edit a recipient's personal details. This is useful when you want to fix typos or update a recipient's name, email, or other information.
  • Change Signer – use this endpoint to reassign fields from one signer to another one. This is useful when a recipient is designated to perform the signing on behalf of their business changes or you need to replace a signer with another one due to other reasons.

You can now assign field tags to radio buttons when creating a document from file. Note that you must you use the field tags in the file, not the request body, and be mindful of the limitations.

We're thrilled to announce that PandaDoc API starting to support Update Document.

Here are what exactly you can update in the already existing document (draft status only):

  • Recipients - update already existing recipient (email, first name, last name) using recipient ID from Document Details or add new recipients in CC
  • Tags - add new tags
  • Tokens (variables) - update already existing tokens or add new tokens
  • Fields - update field values
  • Metadata - update already existing metadata or add new metadata
  • Pricing table - replace pricing table items with new ones and update the pricing table configuration
{
     "recipients": [
          {
               "id": "MiySpPNiyhhmFXnDDrrawC",
               "email": "[email protected]",
               "first_name": "New",
               "last_name": "Recipient"
          }
     ],
     "tokens": [
          {
               "name": "Favorite.Pet",
               "value": "New Panda"
          }
     ],
     "fields": {
          "Favorite.Color": {
               "value": "PandaDoc red"
          },
          "Delivery": {
               "value": "Pick Up"
          },
          "Like": {
               "value": false
          },
          "Date": {
               "value": "2022-08-24T00:00:00.000Z"
          }
     },
     "metadata": {
          "my_favorite_pet": "New Panda"
     },
     "tags": [
          "created_via_api",
          "test_document"
     ],
     "pricing_tables": [
          {
               "name": "Pricing Table 1",
               "data_merge": true,
               "options": {
                    "Tax": {
                         "is_global": true,
                         "type": "absolute",
                         "name": "Tax",
                         "value": 11
                    }
               },
               "sections": [
                    {
                         "title": "Sample Section",
                         "default": true,
                         "rows": [
                              {
                                   "options": {
                                        "optional": true,
                                        "optional_selected": true,
                                        "qty_editable": true
                                   },
                                   "data": {
                                        "Name": "New Toy Panda",
                                        "Description": "New Fluffy!",
                                        "Price": 11,
                                        "QTY": 4,
                                        "Tax": {
                                             "value": 21,
                                             "type": "percent"
                                        }
                                   },
                                   "custom_fields": {
                                        "Fluffiness": "4 / 5"
                                   }
                              }
                         ]
                    }
               ]
          }
     ]
}

204 - Result

We've improved our Send a Document request by adding the possibility to set a sender. You can set a sender with an email address or membership_id.

{
  "sender":{
    "membership_id":"QMDSzwabfFzTgjW6KijHyu"
  },
  "message": "Hello! This document was sent from the PandaDoc API.",
  "subject": "Please check this test API document from PandaDoc",
  "silent": false
}
{
  "sender":{
    "email":"[email protected]"
  },
  "message": "Hello! This document was sent from the PandaDoc API.",
  "subject": "Please check this test API document from PandaDoc",
  "silent": false
}

We've improved our Link to CRM and from now on it's called Link Service. The main difference is the possibility to link your documents to any provider/entity type.

Please be informed that we've added shared links for each recipient to Send Document, Document Details, and On Document Status Change responses.

Now you don't need to send documents via email ("silent": true) to provide all functionality of the recipient's view.

"recipients": [
        {
            "id": 118590764,
            "first_name": "Josh",
            "last_name": "Ron",
            "email": "[email protected]",
            "recipient_type": "signer",
            "signing_order": null,
            "shared_link": "https://app.pandadoc.com/document/f7ea21ae675b1712db7b942da65de3b828a4a43c"
        }
    ]