DocuSign eSignature API Swagger Specification Released
Update for developers… DocuSign just released the OpenAPI (Swagger) specification of its eSignature REST API! Now developers can quickly and easily create custom API tools, SDKs, and resources for interacting with the DocuSign platform – all using the OAI standard and framework for defining REST APIs.
What is Swagger / OAS?
The goal of Swagger – now called the OpenAPI Specification (OAS) – is to define a standard, language-agnostic interface to REST APIs which allows both humans and computers to discover and understand the capabilities of a given service. For those of you familiar with SOAP APIs this is analogous to having a WSDL file defined for your REST API.
For a little over a year now DocuSign has been using the OAS – along with additional tools such as Swagger-Codegen and Swagger-Editor – to generate API clients (SDKs), API Documentation, and our visual API Explorer. Using these open source technologies allows us to save valuable engineering time, minimize errors, and increase consistency across our developer tools and libraries.
What can I do with the OAS?
Now that the DocuSign eSignature OAS has been open sourced, the sky’s the limit in terms of the tools and resources you can create that interact with the DocuSign platform. While we use our OAS to generate our SDKs and developer tools, there are many other applications and possibilities for what you can do with Swagger.
What do you intend to create? Let us know through using the Comments section below.
Which languages does Swagger support?
As of this writing DocuSign has five open source API clients (C#, Java, PHP, Node.js, Obj-C) available to integration developers with additional languages under development. However, the OAS supports many more languages than this and makes it easy to generate your own API client(s) when needed.
Here’s the full list of languages OAS currently supports:
- API clients: ActionScript, Apex, Bash, C# (.net 2.0, 4.0 or later), C++ (cpprest, Qt5, Tizen), Clojure, Dart, Elixir, Go, Groovy, Haskell, Java (Jersey1.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign), Kotlin, Node.js (ES5, ES6, AngularJS with Google Closure Compiler annotations) Objective-C, Perl, PHP, Python, Ruby, Scala, Swift (2.x, 3.x), Typescript (Angular1.x, Angular2.x, Fetch, jQuery, Node)
- Server stubs: C# (ASP.NET Core, NancyFx), C++ (Restbed), Erlang, Go, Haskell, Java (MSF4J, Spring, Undertow, JAX-RS: CDI, CXF, Inflector, RestEasy, Play Framework), PHP (Lumen, Slim, Silex, Zend Expressive), Python (Flask), NodeJS, Ruby (Sinatra, Rails5), Scala (Finch, Scalatra)
- API documentation generators: HTML, Confluence Wiki
- Others: JMeter
How can I get Started?
It’s easy to start testing and integrating DocuSign’s APIs into your app or website, you just need a free a developer sandbox. Once you have your sandbox you can download the latest copy of our esignature.rest.swagger.json OAS file here.