> You are reading the Docusign Developer Documentation. For clean Markdown of any page, append .md to the page URL.
>
> Documentation indexes by section:
> - APIs and SDKs: https://docusign.docs.buildwithfern.com/docs/llms.txt
> - Platform 101: https://docusign.docs.buildwithfern.com/platform/llms.txt
> - Extension Apps: https://docusign.docs.buildwithfern.com/extension-apps/llms.txt
> - Docusign CLI: https://docusign.docs.buildwithfern.com/docusign-cli/llms.txt
>
> Authentication (OAuth, JWT Grant, M2M): https://docusign.docs.buildwithfern.com/platform/auth
> Webhooks and Connect: https://docusign.docs.buildwithfern.com/platform/webhooks
>
> OpenAPI specifications: https://docusign.docs.buildwithfern.com/openapi.json
> MCP server: https://docusign.docs.buildwithfern.com/_mcp/server

# Docusign code example launchers

> Docusign code launchers are open-source template applications available in multiple programming languages that help developers run, test, and integrate Docusign API code examples.

> **Note**
>
> To quickly authenticate and send your first envelope, use the [Quickstart guide](/docs/esign-rest-api/quickstart): one auth flow and one example, ready to copy and paste.

Docusign code launchers are open-source GitHub projects that let you explore, run, and test code examples from our [How-to guides](/docs/esign-rest-api/how-to) in a specific programming language. You can use them to learn how Docusign APIs work and as a starting point for building your own integrations. This topic explains how to use code launchers and what they include.

## What is a code launcher?

Docusign code launchers are template applications available in eight languages: [Bash](https://github.com/docusign/code-examples-bash), [C#](https://github.com/docusign/code-examples-csharp), [Java](https://github.com/docusign/code-examples-java), [Node.js](https://github.com/docusign/code-examples-node), [PHP](https://github.com/docusign/code-examples-php), [PowerShell](https://github.com/docusign/code-examples-powershell), [Python](https://github.com/docusign/code-examples-python), and [Ruby](https://github.com/docusign/code-examples-ruby).

Each launcher provides a web UI or CLI for running and exploring code examples for supported Docusign APIs. The examples correspond to our [How-to guides](/docs/esign-rest-api/how-to) and demonstrate common tasks, such as sending an envelope for signature or creating an envelope from a template.

## Supported code examples by API

Not every code example is available in every language. Each API's How-to guides overview below lists its code examples and the languages each one supports.

* [eSignature REST API](/docs/esign-rest-api/how-to)
* [Agreement Manager API](/docs/agreement-manager-api/how-to)
* [Workflow Builder API](/docs/workflow-builder-api/how-to)
* [Workspaces API](/docs/workspaces-api/how-to)
* [Connected Fields API](/docs/connected-fields-api/send-envelope-with-data-verification-fields)
* [Web Forms API](/docs/web-forms-api/how-to)
* [Monitor API](/docs/monitor-api/how-to)
* [Docusign Admin API](/docs/admin-api/how-to)
* [ID Evidence API](/docs/idevidence-api/how-to)
* [Click API](/docs/click-api/how-to)
* [Rooms API](/docs/rooms-api/how-to)
* [Notary API](/docs/notary-api/how-to)

Code launchers support two OAuth grant types: [Authorization Code Grant](/platform/auth/authcode) and [JSON Web Token (JWT) Grant](/platform/auth/jwt). Each launcher implements both grant types, allowing you to explore and run the examples using either authentication method without implementing the OAuth flow yourself.

## Prerequisites

* A free [Docusign developer account](https://www.docusign.com/developers/sandbox); create one if you don't already have one.
* Create and [configure an integration key](/platform/configure-app#how-to-get-an-integration-key).  When you configure it, add the redirect URI for your selected code launcher. Each language tab below lists its redirect URI.
* Gather the following values to configure authentication in your selected code launcher:
  * Integration key
  * Secret key: Required for the Authorization Code Grant.
  * Private RSA key: Required for JWT authentication.
  * User ID
  * API Account ID

## Configuration and setup

#### Bash

### Technical requirements

* For Authorization Code Grant authentication, [PHP](https://www.php.net/downloads.php) 8.0 or later is required. For JWT Grant authentication, [PHP](https://www.php.net/downloads.php) 8.0 or later and [Python](https://www.python.org/downloads/) 3 are required.
* [Visual Studio Code](https://code.visualstudio.com/download), macOS Terminal, or Linux shell.
* [PHP cURL tool](https://www.php.net/manual/en/curl.installation.php)
* Download [dos2unix](https://sourceforge.net/projects/dos2unix/)

### Configuration

1. Download or clone the [Bash GitHub project](https://github.com/docusign/code-examples-bash).
2. Make sure your integration key includes this redirect URI: `http://localhost:8080/authorization-code/callback`
3. In `config/settings.txt`, add your integration key, user ID, and API account ID. For Authorization Code Grant, also add your secret key. For JWT Grant, also add your private RSA key.

See [README](https://github.com/docusign/code-examples-bash/blob/master/README.md) for more detailed setup instructions.

### Running the code launcher

Run in Git Bash:

```sh
cd code-examples-bash
bash launcher.sh
```

### Additional configuration: Docusign payments

To use the payments code example in the launcher, first create a test payment gateway on the [Payments](https://admindemo.docusign.com/authenticate?goTo=payments) page in your developer account. See [Configure a payment gateway](https://github.com/docusign/code-examples-bash/blob/master/PAYMENTS_INSTALLATION.md) for details.

Once you've created a payment gateway, save the **Gateway Account ID** GUID to config/settings.txt.

#### C\#

[Please share your feedback on the C# code launcher in a two-question survey](https://docs.google.com/forms/d/e/1FAIpQLScPa74hwhJwi7XWDDj4-XZVOQTF9jJWgbIFEpulXokCqYWT4A/viewform?usp=pp_url\&entry.680551577=C%23)

### Technical requirements

* [.NET](https://dotnet.microsoft.com/en-us/download/dotnet/6.0) 8.0.
* [Visual Studio](https://visualstudio.microsoft.com/downloads/) 2022 with [ASP.NET](http://ASP.NET).

### Configuration

1. Download or clone the [C# GitHub repository](https://github.com/docusign/code-examples-csharp).
2. Make sure your integration key includes this redirect URI: `https://localhost:44333/ds/callback`
3. In `launcher-csharp/appsettings.json`, add your integration key, user ID, and API account ID. For Authorization Code Grant, also add your secret key. For JWT Grant, also add your private RSA key.

See [README](https://github.com/docusign/code-examples-csharp/blob/master/README.md) for more detailed setup instructions.

### Running the code launcher

1. Double-click the **launcher-csharp.sln** file in your project.
2. Select the green **Play IIS Express** button.

### Additional configuration: Docusign payments

To use the payments code example, first create a test payment gateway on the [Payments](https://admindemo.docusign.com/authenticate?goTo=payments) page in your developer account. See [Configure a payment gateway](https://github.com/docusign/code-examples-csharp/blob/master/PAYMENTS_INSTALLATION.md) for details.

Once you've created a payment gateway, save the **Gateway Account ID** GUID to `launcher-csharp/appsettings.json`.

#### Java

[Please share your feedback on the Java code launcher in a two-question survey](https://docs.google.com/forms/d/e/1FAIpQLScPa74hwhJwi7XWDDj4-XZVOQTF9jJWgbIFEpulXokCqYWT4A/viewform?usp=pp_url\&entry.680551577=Java)

### Technical requirements

* Download [JDK](https://jdk.java.net/java-se-ri/11) 11 or later and extract to C:\Program Files\Java
* Download [Maven](https://maven.apache.org/download.cgi) and extract to C:
  * Follow these [instructions](https://maven.apache.org/install.html) to add both Java and Maven to the PATH environment variable.
* [Visual Studio Code](https://code.visualstudio.com/download), macOS Terminal, or Linux shell.

### Configuration

1. Download or clone the [Java GitHub repository](https://github.com/docusign/code-examples-java).
2. Make sure your integration key includes one or both of the following redirect URIs:
   * `http://localhost:8080/login&type=acg` (Auth Code Grant Authentication)
   * `http://localhost:8080/login&type=jwt` (JWT Grant Authentication)
3. In `src/main/resources/application.json`, add your integration key, user ID, and API account ID. For Authorization Code Grant, also add your secret key. For JWT Grant, also add your private RSA key.

See [README](https://github.com/docusign/code-examples-java/blob/master/README.md) for more detailed setup instructions.

### Running the code launcher

Run in Git Bash:

```sh
cd code-examples-java
```

For Mac:

```sh
mvn package -Dmaven.test.skip=true
java -Dspring.profiles.active=dev -jar target/code-examples-java-1.0-SNAPSHOT.war
```

For Windows:

```sh
mvn package -D"maven.test.skip"="true"
java -D"spring.profiles.active"="dev" -jar target/code-examples-java-1.0-SNAPSHOT.war
```

### Additional configuration: Docusign payments

To use the payments code example, first create a test payment gateway on the [Payments](https://admindemo.docusign.com/authenticate?goTo=payments) page in your developer account. See [Configure a payment gateway](https://github.com/docusign/code-examples-java/blob/master/PAYMENTS_INSTALLATION.md) for details.

Once you've created a payment gateway, save the **Gateway Account ID** GUID to `src/main/resources/application.json`.

#### Node.js

[Please share your feedback on the Node.js code launcher in a two-question survey](https://docs.google.com/forms/d/e/1FAIpQLScPa74hwhJwi7XWDDj4-XZVOQTF9jJWgbIFEpulXokCqYWT4A/viewform?usp=pp_url\&entry.680551577=Node.js)

### Technical requirements

* [Node.js 8.10 or later with npm 5 or later](https://nodejs.org/en/download/).
* [Visual Studio Code](https://code.visualstudio.com/download), macOS Terminal, or Linux shell.

### Configuration

1. Download or clone the [Node.js GitHub repository](https://github.com/docusign/code-examples-node).
2. Make sure your integration key includes this redirect URI: `http://localhost:3000/ds/callback`
3. In `config/appsettings.json`, add your integration key, user ID, and API account ID. For Authorization Code Grant, also add your secret key. For JWT Grant, also add your private RSA key.

See [README](https://github.com/docusign/code-examples-node/blob/master/README.md) for more detailed setup instructions.

### Running the code launcher

Run in Git Bash:

```sh
cd code-examples-node
npm install
npm start
```

Open a browser to [http://localhost:3000](http://localhost:3000/)

### Additional configuration: Docusign payments

To use the payments code example, first create a test payment gateway on the [Payments](https://admindemo.docusign.com/authenticate?goTo=payments) page in your developer account. See [Configure a payment gateway](https://github.com/docusign/code-examples-node/blob/master/PAYMENTS_INSTALLATION.md) for details.

Once you've created a payment gateway, save the **Gateway Account ID** GUID to  `config/appsettings.json`.

#### PHP

[Please share your feedback on the PHP code launcher in a two-question survey](https://docs.google.com/forms/d/e/1FAIpQLScPa74hwhJwi7XWDDj4-XZVOQTF9jJWgbIFEpulXokCqYWT4A/viewform?usp=pp_url\&entry.680551577=PHP)

### Technical requirements

* [PHP](https://www.php.net/downloads.php) 8.2 or later.
* [Composer](https://getcomposer.org/download/), set up in your PATH environment variable. This enables you to invoke it from any folder.
* [Visual Studio Code](https://code.visualstudio.com/download), macOS Terminal, or Linux shell.

### Configuration

1. Download or clone the [PHP GitHub repository](https://github.com/docusign/code-examples-php).
2. Make sure your integration key includes this redirect URI: `http://localhost:8080/public/index.php?page=ds_callback`
3. In `ds_config.php`, add your integration key, user ID, and API account ID. For Authorization Code Grant, also add your secret key. For JWT Grant, also add your private RSA key.

See [README](https://github.com/docusign/code-examples-php/blob/master/README.md) for more detailed setup instructions.

### Running the code launcher

Run in Git Bash:

```sh
cd code-examples-php
composer install
php -S localhost:8080
```

Open a browser to http\://localhost:8080/public

### Additional configuration: Docusign payments

To use the payments code example, first create a test payment gateway on the [Payments](https://admindemo.docusign.com/authenticate?goTo=payments) page in your developer account. See [Configure a payment gateway](https://github.com/docusign/code-examples-php/blob/master/PAYMENTS_INSTALLATION.md) for details.

Once you've created a payment gateway, save the **Gateway Account ID** GUID to `ds_config.php`.

#### Powershell

### Technical requirements

* PowerShell 5 or later.
* PowerShell scripts (PS1) downloaded from the internet that are not digitally signed are considered a security risk. By default, PowerShell blocks execution of such scripts. To bypass this limitation, you will need to run the following command at the Windows PowerShell command line:

  `Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass`

### Configuration

1. Download or clone the [PowerShell GitHub repository](https://github.com/docusign/code-examples-powershell).
2. Make sure your integration key includes this redirect URI: `http://localhost:8080/authorization-code/callback`
3. In `config/appsettings.json`, add your integration key, user ID, and API account ID. For Authorization Code Grant, also add your secret key. For JWT Grant, also add your private RSA key.

See [README](https://github.com/docusign/code-examples-powershell/blob/master/README.md) for more detailed setup instructions.

### Running the code launcher

1. In File Explorer, open your code launcher folder.
2. In the root folder, right-click the **launcher** file and select **Run with PowerShell** > **Open**.

### Additional configuration: Docusign payments

To use the payments code example, first create a test payment gateway on the [Payments](https://admindemo.docusign.com/authenticate?goTo=payments) page in your developer account. See [Configure a payment gateway](https://github.com/docusign/code-examples-powershell/blob/master/PAYMENTS_INSTALLATION.md) for details.

Once you've created a payment gateway, save the **Gateway Account ID** GUID to `config/appsettings.json`.

#### Python

[Please share your feedback on the Python code launcher in a two-question survey](https://docs.google.com/forms/d/e/1FAIpQLScPa74hwhJwi7XWDDj4-XZVOQTF9jJWgbIFEpulXokCqYWT4A/viewform?usp=pp_url\&entry.680551577=Python)

### Technical requirements

* [Python](https://www.python.org/downloads/) 3.
* [Visual Studio Code](https://code.visualstudio.com/download), macOS Terminal, or Linux shell.
* If you are working on Windows with a Python version after 3.10 you will also need to install [Microsoft C++ Build Tools](https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2022). After installing that run pip install --upgrade setuptools.

### Configuration

1. Download or clone the [Python GitHub repository](https://github.com/docusign/code-examples-python).
2. Make sure your integration key includes this redirect URI: `http://localhost:3000/ds/callback`
3. In `app/ds_config.py`, add your integration key, user ID, and API account ID. For Authorization Code Grant, also add your secret key. For JWT Grant, also add your private RSA key.

See [README](https://github.com/docusign/code-examples-python/blob/master/README.md) for more detailed setup instructions.

### Running the code launcher

Run in Git Bash:

```sh
cd code-examples-python
pip3 install -r requirements.txt 
python3 run.py
```

Open a browser to [http://localhost:3000](http://localhost:3000/)

### Additional configuration: Docusign payments

To use the payments code example, first create a test payment gateway on the [Payments](https://admindemo.docusign.com/authenticate?goTo=payments) page in your developer account. See [Configure a payment gateway](https://github.com/docusign/code-examples-python/blob/master/PAYMENTS_INSTALLATION.md) for details.

Once you've created a payment gateway, save the **Gateway Account ID** GUID to `app/ds_config.py`.

#### Ruby

[Please share your feedback on the Ruby code launcher in a two-question survey](https://docs.google.com/forms/d/e/1FAIpQLScPa74hwhJwi7XWDDj4-XZVOQTF9jJWgbIFEpulXokCqYWT4A/viewform?usp=pp_url\&entry.680551577=Ruby)

### Technical requirements

* [Visual Studio Code](https://code.visualstudio.com/download), macOS Terminal, or Linux shell.
* [Ruby](https://www.ruby-lang.org/en/downloads/) 2.7.2 or later.
  * Remove all older versions of Ruby.
  * Update the Gemfile to the latest installed version of Ruby.
  * **Windows x64 only:**
    * Ensure that your Ruby folder is appended with **-x64,** e.g. **Ruby27-x64**
    * Install Curl for Ruby: [Download libcurl](https://curl.haxx.se/windows/)
      * Save **libcurl-x64.dll** as **libcurl.dll**
      * Place **libcurl.dll** in your Ruby folder, e.g. **C:\Ruby27-x64\bin**

### Configuration

1. Download or clone the [Ruby GitHub repository](https://github.com/docusign/code-examples-ruby).
2. Make sure your integration key includes this redirect URI: `http://localhost:3000/auth/docusign/callback`
3. In `config/appsettings.yml`, add your integration key, user ID, and API account ID. For Authorization Code Grant, also add your secret key. For JWT Grant, also add your private RSA key.

See [README](https://github.com/docusign/code-examples-ruby/blob/master/README.md) for more detailed setup instructions.

### Running the code launcher

Run in Git Bash:

```sh
cd code-examples-ruby
bundler install
rails s
```

Open a browser to [http://localhost:3000](http://localhost:3000/)

### Additional configuration: Docusign payments

To use the payments code example, first create a test payment gateway on the [Payments](https://admindemo.docusign.com/authenticate?goTo=payments) page in your developer account. See [Configure a payment gateway](https://github.com/docusign/code-examples-ruby/blob/main/PAYMENTS_INSTALLATION.md) for details.

Once you've created a payment gateway, save the **Gateway Account ID** GUID to `config/appsettings.yml`.