{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"0b457382-0fcd-403b-b71e-0d452c3cc178","name":"API V2 Documentation | Yousign Developers","description":"**API V2 documentation (Not the latest version)**\n\nThis documentation is only intended for our current API v2 customers.\n\nIf it’s the first time you integrate Yousign’s API, please [use the v3](https://dev.yousign.com/#api-v3-documentation-new) instead of the v2 to benefit from all its additional features.\n\n**How do I know which version I'm using?**  \nThe best option to know which version you have is to have a look at the base URL used for your API calls:\n\n- Yousign's API V2 : [https://api.yousign.com](https://api.yousign.com/)\n- Yousign's API V3 : [https://api.yousign.app/v3](https://api.yousign.app/v3)\n    \n\n# API V3 documentation (NEW)\n\n[<b>To start integrating our new API product (v3) for free, please refer to this API v3 documentation.</b>](https://developers.yousign.com/)\n\nIf you're already an API v2 customer and would like to migrate to our new Yousign API version, discover the many benefits in this video:\n\n<video src=\"https://youtube.com/embed/Ua6oNahLPKA\" width=\"566\" height=\"296\"></video>\n\nFor more details on this migration, read our [dedicated guide for migrating](https://developers.yousign.com/docs/migration-from-our-api-v2) from Yousign's API V2 to Yousign's API V3.\n\n## Welcome on Yousign for Developers!\n\nBuild the best experience of digital signature through your own platform. Increase your conversion rates, leverage your data and reduce your costs with Yousign API.\n\nIf you're already an API v2 customer, you'll find the rest of the documentation below.\n\nYousign provides an [API](https://en.wikipedia.org/wiki/Application_programming_interface) that allows you to optimize and automate your signature process directly through your own application. Please find below the full documentation which explains how to integrate our API step by step with concrete examples, use cases as well as source code.\n\nBy using this service, you will enjoy all features of Yousign's application and even more.\n\n## API pricing\n\nClick [here](https://yousign.com/pricing-api) for information on our API pricing.  \nOn production environment, each API plan includes 1 user account for our Yousign application.\n\n## We are here to support you!\n\nOur priority is to ensure that you never feel abandoned. For more information, you can visit our [help center](https://help.yousign.com/hc/categories/115000279192-API-Integration). If you have any [technical](https://mailto:support@yousign.com) or [commercial](https://mailto:hello@yousign.com) questions or suggestions, feel free to contact us by email.\n\n# Environments\n\nIn order to offer the most flexible integration, we provide developers with a completely free and unlimited test environment (our sandbox is named _Staging_).\n\nTo approach and take control of our API, developers will be able to build POC (Proof Of Concept) up to the end to end qualification stage without any constraint. This means that it's not necessary to contract and start paying to carry out the full development stage.\n\n| **Environment** | **API Base URL** | **Web App URL** |\n| --- | --- | --- |\n| **Staging** | [https://staging-api.yousign.com](https://staging-api.yousign.com) | [https://staging-app.yousign.com](https://staging-app.yousign.com) |\n| **Production** | [https://api.yousign.com](https://api.yousign.com) | [https://webapp.yousign.com](https://webapp.yousign.com) |\n\nNotes: All **signed documents on staging environment are NOT legally signed**. The certificate used as part of these signatures will NOT comply with legal expectations and NO .txt proof file will be generated for your tests.\n\nIt is important to underline that both environments are completely independent and there is no link between them. This means that you will have one login / password and API keys for staging environment and another login / password and API keys for production environment. There is no native way to switch from test to live environment. Just use the appropriate API key and appropriate URL to perform a test or live procedure.\n\nFor more details on the transition to production, you should refer to the following section: Go live.\n\n# Libraries\n\nCurrently, we don’t provide libraries or packages for specific programming languages. However, our API and webhooks use JSON. This format is widespread in the web ecosystem and you can easily find a parser for your favorite language.\n\nFeel free to contact us if you built an open-source library for our API and want to share it with our developer community! Of course, Yousign will not maintain the provided libraries, but our team will be happy to simplify your integration even further.\n\nHere is the list of libraries provided by the community:\n\n- Language: GO > Go to the [Github repository](https://github.com/tbruyelle/yousign)\n- Language: PHP > Go to the [Github repository](https://github.com/OlivierWizi/WiziYousignClient)\n- Language: C# > Download the [package](https://s3.eu-west-3.amazonaws.com/ys-storage-public-content-bucket/api/code/20181217-laurenth-c-sharp.zip)\n    \n\nMany thanks to [Thomas Bruyelle](https://github.com/tbruyelle), [Olivier](https://github.com/OlivierWizi) and Laurent H.!\n\n# Getting started\n\nThe Yousign API is a [REST](https://en.wikipedia.org/wiki/Representational_state_transfer)ful interface, providing access to a wide range of the data in the system and especially to create signature procedures.\n\nThe API accepts [JSON](http://json.org/) content in requests and returns JSON content in all of its responses. This format is also forced by the Header `Content-Type`.\n\nThe [HTTP method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html) (like GET, POST, PUT, DELETE) determines the operation type on the resource (users, files, …). The resource is identified by the URL which is targeted by the method.\n\nExample: `GET https://staging-api.yousign.com/users` will list all the details of users related to your organization.\n\nTo learn more about how the API works, you can consult the following links to understand how [HTTP status](https://dev.yousign.com/#244d14b0-a683-4930-b536-dbf87189735c), [pagination](https://dev.yousign.com/#06f20fd6-5fe0-4213-9edf-9ada6318e396), [filters](https://dev.yousign.com/#09638d14-159c-4425-ae00-b5f60e42ad04) and [data formats](https://dev.yousign.com/#a5db5290-0765-425f-b1fb-6901646e265c) work.\n\nIn addition, each identifier used to target a resource in our API is formatted from the following standard: [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier#Version_4_(random)) (UUID v4). This format is systematically composed as follows:  \n`XXXXXXXXXX-XXXX-XXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXXX`. Finally, given the number of characters and therefore the number of possibilities, this random identifier format is secured and unpredictable.\n\nBefore implementing it in your platform, you can use software ([POSTMAN](https://www.getpostman.com/) for example) to send JSON requests and receive responses without writing any line of source code. It could be very helpful at the beginning to understand what will be the request format and simulate the workflow on your side with inputs / outputs.\n\nTo further facilitate the development of your Yousign API integration, we provide you a [Swagger](https://dev.yousign.com/?version=latest#d9bda911-06e9-4515-b7e6-d9f8a6d15cc2) through [Swagger-UI](https://swagger.yousign.com/) and [swagger.json](https://swagger.yousign.com/swagger.json).\n\nNow let's see how to create your API key to start sending your first request!\n\n## Step 1 - Create your account\n\nFirst of all, you have to create your own free and unlimited account to access our application on our staging environment (sandbox). Let's start by clicking on one of the following links:\n\n- [Sandbox Signup](https://staging-auth.yousign.com/pre-signup)\n    \n\nAfter having entered your email address, you will receive a confirmation email allowing you to validate your account.\n\nNotes: It is mentioned “_Free 14-day trial. No credit card required._” on the signup page but there is no limit in time to use this service on the test environment.\n\nOn this environment, you will be able to create up to 10 users on your organization. Therefore, if you are a team of developers working on this wonderful project, you will all have access to the same information including sharing the API keys.\n\nIt's important to underline that on the production environment, each user account will be billed according to the selected plan (except the first user that will be included in your API plan).\n\n## Step 2 - Create your API key\n\nOnce you have access to our application, then you have to create an API key to access our routes (menu: Admin > API keys > Create).\n\n1. Logon on Yousign app: [https://staging-app.yousign.com](https://staging-app.yousign.com)\n2. Create your first API key here: [https://staging-app.yousign.com/admin/apikeys](https://staging-app.yousign.com/admin/apikeys)\n    \n\nYour API keys carry many privileges, so be sure to keep them secure! With these tokens, anyone can access to all information stored for your organization (users, files, ...). Do not share your secret API keys in publicly accessible areas.\n\nOn our application, only users with administrator privileges will access to API keys.\n\nIf you don't see any access to Admin menu or API key tabs, please contact your organization administrator or our [technical support](https://mailto:support@yousign.com).\n\n## Step 3 - Authentication\n\nOnce your API key generated, you will be able to send and receive HTTP requests from our server.\n\nAccess to the API is performed via **Bearer Authentication** that involves security tokens called bearer tokens (so this is the API key).\n\nYour request has to include `Authorization` header with your API key to be authenticated:\n\n`Authorization: Bearer [YOUR_API_KEY_HERE]`\n\nFor security reasons, you can only use our API through [HTTPS](https://en.wikipedia.org/wiki/HTTPS) protocol. Calls made over plain HTTP will fail. You have to authenticate for all requests with Bearer authentication.\n\nNotes: The API keys are different for your test site and your live site.","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":true,"owner":"2211403","collectionId":"0b457382-0fcd-403b-b71e-0d452c3cc178","publishedId":"2s93RZLUzA","public":true,"publicUrl":"https://dev.yousign.com","privateUrl":"https://go.postman.co/documentation/2211403-0b457382-0fcd-403b-b71e-0d452c3cc178","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"67B7D1"},"documentationLayout":"classic-double-column","customisation":null,"version":"8.10.1","publishDate":"2023-04-06T09:16:53.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/768118b36f06c94b0306958b980558e6915839447e859fe16906e29d683976f0","favicon":"https://yousign.com/favicon.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://dev.yousign.com/view/metadata/2s93RZLUzA"}