Blog
Home/

Fast-Track Your Extension Apps with Reference Implementations

Author Karissa Jacobsen
Karissa JacobsenProgrammer Writer
Summary4 min read

Our new reference implementations accelerate extension app development by providing comprehensive guidance and practical examples of requirements and best practices. Watch the videos, clone the GitHub repos, and get coding!

Extension apps are a powerful way to extend the Docusign platform with custom functionality. These apps enable developers to integrate external APIs directly into a Docusign workflow, making Docusign more adaptable to various business needs. Extension apps function by defining extension points and corresponding actions that activate at designated moments during the Docusign agreement process. When these actions are triggered, the extension app communicates with an external API, and the resulting response is seamlessly incorporated back into the Docusign workflow. 

To assist developers in getting started with building extension apps, we are excited to introduce our extension app reference implementations. These are downloadable GitHub projects that showcase the three main extension types currently supported by Docusign:

  • Data IO: This extension allows developers to incorporate data reading and writing operations into a custom Maestro workflow, enabling seamless integration of data exchanges during the signing process.

  • Data Verification: This is a set of extensions that enable real-time validation of critical fields, including bank account details, bank account ownership, business Federal Employer Identification Numbers (FEIN), email addresses, phone numbers, postal addresses, and Social Security Numbers.

  • File Archive: This extension provides the capability to archive documents and files to a cloud storage solution, ensuring that signed files are securely stored outside of Docusign.

These reference implementations accelerate extension app development by providing comprehensive guidance and practical examples of requirements and best practices. To build an extension app, you must create an extension app manifest file that outlines the app’s metadata, connections, extensions, and actions. Each reference implementation includes an example manifest that serves as a guide for developers, illustrating how to accurately define these components based on the schema established by Docusign (see sample code below). This example manifest will guide developers through configuring a sample OAuth connection and defining the required actions for each extension type. Additionally, each action is governed by a specific action contract that outlines the format for sending requests and the expected structure for receiving responses. Developers must ensure their extension apps handle data according to these contracts to ensure compatibility with the Docusign environment. The reference implementations demonstrate how to properly handle data by defining the correct request and response objects that align with the action contracts outlined in the documentation available on the Developer Center. 

Here’s the example app manifest from the File Archive reference implementation:

{
  "name": "File Archive App",
  "description": {
    "short": "App for example file archive",
    "long": "This app is designed to allow users to upload an envelope to the example drive after completing a checking account application"
  },
  "icon": {
    "data": "54ba2e...097bf1 <base64image>",
    "mediaType": "image/png"
  },
  "screenshots": [
    {
      "data": "72lv3e...011hj0 <base64image>",
      "mediaType": "image/png"
    }
  ],
  "publisher": {
    "name": "Example",
    "email": "example@example.com.",
    "phone": "555-555-5555",
    "website": "https://www.example.com"
  },
  "termsOfServiceUrl": "https://www.example.com/tos",
  "privacyUrl": "https://www.example.com/privacy-security",
  "supportUrl": "https://www.example.com/support",
  "connections": [
    {
      "name": "authentication",
      "description": "Secure connection to example API proxy",
      "type": "oauth2",
      "params": {
        "provider": "CUSTOM",
        "scopes": [],
        "clientId": "6f22ef90-xxxx-xxxx-xxxx-e4be02783d3c",
        "clientSecret": "6cb7023b-xxxx-xxxx-xxxx-d1c4a56d1001",
        "customConfig": {
          "tokenUrl": "https://example.app/api/oauth/token",
          "authorizationUrl": "https://example.app/api/oauth/code",
          "authorizationParams": {
            "access_type": "offline",
            "prompt": "consent"
          },
          "authorizationMethod": "header",
          "scopeSeparator": ",",
          "requiredScopes": []
        }
      }
    }
  ],
  "extensions": [
    {
      "name": "My Archive Extension",
      "description": "Archive an envelope",
      "template": "EAP.Version1.SpecifiedArchive. ",
      "actionReferences": [
        "My Archive Action"
      ]
    }
  ],
  "actions": [
    {
      "name": "My Archive Action",
      "description": "Archive to a proxy",
      "template": "Document.Version1.SpecifiedArchive",
      "connectionsReference": "authentication",
      "params": {
        "uri": "https://example.app/api/archive"
      }
    }
  ],
  "publicationRegions": [
    "US"
  ],
  "distribution": "PUBLIC"
}

To use an extension app reference implementation, start by cloning the project files from GitHub and follow the step-by-step instructions provided in the README file located in the root folder of each implementation. These instructions will guide you through configuring your development environment, running the app, setting up a public endpoint, and preparing the example manifest. The README also includes detailed instructions on how to upload an extension app manifest to the Docusign Developer Console to start testing the connection and extensions, as shown below. 

To further support developers, we offer instructional videos that walk through the process of setting up a reference implementation and demonstrate how to test an extension app in the Docusign Developer Console and within a Docusign workflow. Currently available are the videos for setting up and testing a File Archive extension app using the appropriate reference implementation. In the coming weeks, we will release additional videos covering the Data Verification and Data IO extension app reference implementations. 

You can check out our videos on YouTube:

Start building with our extension app reference implementations today, and unlock the potential to customize Docusign workflows to meet your unique business needs!

Jumpstart your extension app journey by:

Additional resources

Author Karissa Jacobsen
Karissa JacobsenProgrammer Writer

Karissa has been working for Docusign since 2020. As a Programmer Writer on the Developer Content team, she writes content and code to help developers learn how to use Docusign APIs.

More posts from this author

Related posts

  • Event Notifications using JSON SIM and HMAC
    Developers

    Event Notifications using JSON SIM and HMAC

    Author Jonathan Sammons
    Jonathan Sammons
  • Trending Topics: Latest from our forums (October 2024)
    Author Paige Rossi
    Paige Rossi
  • From the Trenches: Testing Docusign Connect with ngrok

    From the Trenches: Testing Docusign Connect with ngrok

    Author Ivan Dinkov
    Ivan Dinkov
Event Notifications using JSON SIM and HMAC

Event Notifications using JSON SIM and HMAC

Author Jonathan Sammons
Jonathan Sammons
Trending Topics: Latest from our forums (October 2024)
Author Paige Rossi
Paige Rossi
From the Trenches: Testing Docusign Connect with ngrok

From the Trenches: Testing Docusign Connect with ngrok

Author Ivan Dinkov
Ivan Dinkov

Discover what's new with Docusign IAM or start with eSignature for free

Explore Docusign IAMTry eSignature for Free
Person smiling while presenting