DocuSign REST API
docusign · Commerce
The DocuSign REST API provides you with a powerful, convenient, and simple Web services API for interacting with DocuSign.
Authentication
Sample Requests
Retrieves the available REST API versions. DocuSign Production system: https://www.docusign.net/restapi/service_information DocuSign Demo system: https://demo.docusign.net/restapi/service_information You do not need an integration key to view the REST API versions and resources.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/docusign.net/v2.1/service_information"
import requests
response = requests.get(
"https://api.apis.guru/v2/specs/docusign.net/v2.1/service_information",
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/docusign.net/v2.1/service_information'; const response = await fetch(url); const data = await response.json(); console.log(data);
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
targetURL := "https://api.apis.guru/v2/specs/docusign.net/v2.1/service_information"
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/docusign.net/v2.1/service_information")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/docusign.net/v2.1/service_information";
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Retrieves the base resources available for the eSignature REST API. You do not need an integrator key to view the REST API versions and resources.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/docusign.net/v2.1/v2.1"
import requests
response = requests.get(
"https://api.apis.guru/v2/specs/docusign.net/v2.1/v2.1",
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/docusign.net/v2.1/v2.1'; const response = await fetch(url); const data = await response.json(); console.log(data);
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
targetURL := "https://api.apis.guru/v2/specs/docusign.net/v2.1/v2.1"
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/docusign.net/v2.1/v2.1")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/docusign.net/v2.1/v2.1";
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Gets settings for a notary user. The current user must be a notary.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/docusign.net/v2.1/v2.1/current_user/notary?include_jurisdictions=example"
import requests
params = {
"include_jurisdictions": "example"
}
response = requests.get(
"https://api.apis.guru/v2/specs/docusign.net/v2.1/v2.1/current_user/notary",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/docusign.net/v2.1/v2.1/current_user/notary');
url.searchParams.set('include_jurisdictions', 'example');
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/docusign.net/v2.1/v2.1/current_user/notary")
q := baseURL.Query()
q.Set("include_jurisdictions", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/docusign.net/v2.1/v2.1/current_user/notary")
uri.query = URI.encode_www_form({
"include_jurisdictions" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/docusign.net/v2.1/v2.1/current_user/notary?" . http_build_query([
"include_jurisdictions" => "example"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Postman Setup Guide
- See official documentation for authentication and setup.
What can you build with DocuSign REST API?
DocuSign REST API is a Commerce API. Developers commonly use commerce APIs for:
- syncing product catalogues and inventory levels
- building price comparison and deal-finder tools
- processing orders and tracking shipments
- managing customer wishlists and reviews
- automating abandoned-cart and promotional emails
No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. DocuSign REST API is free to use, making it a low-risk choice to experiment with.
New to APIs? Read our beginner's guide