{"componentChunkName":"component---src-templates-three-columns-js","path":"/docs/clm-api/clm101/auth/","result":{"pageContext":{"layout":"threeColumns","contentType":"ContentfulAssemblyGuide","data":{"sidebar":{"metadata":{"type":{"data":"sidebarKey"},"sourceUID":{"data":"4qJO6bNNFj4PL4ofkg0GsS-en-US"},"source":{"data":"CM"},"title":{"data":"CLM API"},"version":{"data":""},"titleHref":{"data":"/docs/clm-api"},"badgeTextOptions":{"data":{"items":[{"version":{"data":""},"text":{"data":""}}]}}},"data":{"menu":{"items":[{"metadata":{},"data":{"text":{"data":"CLM API 101"},"items":[{"metadata":{},"data":{"text":{"data":"Authentication overview"},"items":null,"href":{"data":"/docs/clm-api/clm101/auth"},"icon":{},"secondaryText":{"data":"CLM API 101%%%%Authentication overview"}}},{"metadata":{},"data":{"text":{"data":"Salesforce client authentication"},"items":null,"href":{"data":"/docs/clm-api/clm101/salesforce-clients"},"icon":{},"secondaryText":{"data":"CLM API 101%%%%Salesforce client authentication"}}},{"metadata":{},"data":{"text":{"data":"Object API"},"items":null,"href":{"data":"/docs/clm-api/clm101/object-api"},"icon":{},"secondaryText":{"data":"CLM API 101%%%%Object API"}}},{"metadata":{},"data":{"text":{"data":"Task API"},"items":null,"href":{"data":"/docs/clm-api/clm101/task-api"},"icon":{},"secondaryText":{"data":"CLM API 101%%%%Task API"}}},{"metadata":{},"data":{"text":{"data":"Content API"},"items":null,"href":{"data":"/docs/clm-api/clm101/content-api"},"icon":{},"secondaryText":{"data":"CLM API 101%%%%Content API"}}},{"metadata":{},"data":{"text":{"data":"Response and error codes"},"items":null,"href":{"data":"/docs/clm-api/clm101/response-error-codes"},"icon":{},"secondaryText":{"data":"CLM API 101%%%%Response and error codes"}}},{"metadata":{},"data":{"text":{"data":"API rules and resource limits"},"items":null,"href":{"data":"/docs/clm-api/clm101/rules-and-limits"},"icon":{},"secondaryText":{"data":"CLM API 101%%%%API rules and resource limits"}}},{"metadata":{},"data":{"text":{"data":"Cross-Origin Resource Sharing (CORS)"},"items":null,"href":{"data":"/docs/clm-api/clm101/cors"},"icon":{},"secondaryText":{"data":"CLM API 101%%%%Cross-Origin Resource Sharing (CORS)"}}},{"metadata":{},"data":{"text":{"data":"Release notes"},"items":null,"href":{"data":"https://support.docusign.com/en/releasenotes"},"icon":{},"secondaryText":{"data":"CLM API 101%%%%Release notes"}}}],"href":{"data":"/docs/clm-api/clm101"},"icon":{},"secondaryText":{"data":"CLM API 101"}}},{"metadata":{},"data":{"text":{"data":"Go-Live"},"items":null,"href":{"data":"/docs/clm-api/go-live"},"icon":{},"secondaryText":{"data":"Go-Live"}}},{"metadata":{},"data":{"text":{"data":"API reference"},"items":null,"href":{"data":"/docs/clm-api/reference"},"icon":{},"secondaryText":{"data":"API reference"}}}]}}},"body":{"data":{"contentful_id":"4vbkyseybMVZQf0AKONxtp","node_locale":"en-US","name":"Guide Page: CLM Authentication Overview - /docs/clm-api/clm101/auth","heading":null,"internal":{"type":"ContentfulAssemblyGuide"},"body":[{"id":"96f24476-cdc0-557e-9966-6a346a47530c","contentful_id":"4zkJQ2zZYcMgSJ97krXDG9","node_locale":"en-US","heading":"Authentication Overview","headingLevel":1,"sectionId":null,"multicolumn":false,"noBorder":false,"backgroundKind":null,"paddingTop":null,"paddingBottom":null,"html":{"html":"<ds-inlinemessage kind=\"warning\">Developing with the CLM API is only available for CLM customers with a production account. To purchase a plan to gain access to the CLM API, <a href=\"https://www.docusign.com/contact-sales\" target=\"_blank\" rel=\"noopener noreferrer\">contact Docusign Sales</a>.</ds-inlinemessage>\n\n<p>\nBefore your application can make calls to the CLM API, it must authenticate and obtain an access token. This access token proves your app’s identity and authorization. You must submit the token with each request.</p>\n<p>You can use any Docusign-supported OAuth2 authentication workflow to obtain an access token and make calls to the CLM API: <a href=\"/platform/auth/authcode/#confidential-authorization-code-grant\">Confidential Authorization Code Grant</a>, <a href=\"/platform/auth/authcode/#public-authorization-code-grant\">Public Authorization Code Grant</a>, <a href=\"/platform/auth/implicit\">Implicit Grant</a>, or <a href=\"/platform/auth/jwt\">JSON Web Token (JWT) Grant</a>. Service integrations may use Confidential Authorization Code Grant or JWT Grant, while mobile apps may use Public Authorization Code Grant or Implicit Grant.</p>\n<p><strong>Note</strong>: Salesforce clients authenticate by using JWT Grant. For details, see <a href=\"/docs/clm-api/clm101/salesforce-clients\">Salesforce Client Authentication</a>.</p>\n<p>For an overview of these grant types and to determine the best grant type to use for your app, see <a href=\"/platform/auth\">Authentication</a> in the Platform 101 documentation.</p>\n\n<h2><strong>Prerequisites</strong></h2>\n\n<p>Before you can use the Docusign CLM API, you need:</p><ol>\n  <li>A <a href=\"https://go.docusign.com/o/sandbox/\" target=\"_blank\" rel=\"noreferrer noopener\">Docusign eSignature developer account</a> and a Docusign CLM account.</li>\n  <li>An <a href=\"/platform/configure-app/#integration-key\" target=\"_blank\" rel=\"noreferrer noopener\">integration key</a> that identifies your app.</li>\n  <li>A defined redirect URI for your integration key. This is the URL to which Docusign will redirect the user's browser after authentication is complete.</li>\n  <li>You must also have configured your app correctly for the OAuth type you want to use. For details, see the instructions for the grant type you want to use under <a href=\"#next_steps\">Next steps</a>.</li>\n</ol>\n\n<h2>Required scopes</h2>\n\n<p>One of the differences between authenticating with the CLM API and the eSignature API is that, when you request an access token for your OAuth2 scenario, you must request a special CLM API <a href=\"/platform/auth#scopes\">scope</a> during the authentication process. You can combine CLM scopes with eSignature API scopes.</p><p>You can choose from the following CLM scopes:</p><table>\n  <tr>\n   <td>\n<strong>Scope</strong>\n   </td>\n   <td>\n<strong>Description</strong>\n   </td>\n  </tr>\n  <tr>\n   <td>\n<code>spring_read</code>\n   </td>\n   <td>\nAllows read access to all objects, including downloading documents.\n   </td>\n  </tr>\n  <tr>\n   <td>\n<code>spring_write</code>\n   </td>\n   <td>\nAllows write access to all objects, including uploading documents.\n   </td>\n  </tr>\n  <tr>\n   <td>\n<code>content</code>\n   </td>\n   <td>\nAllows read and write access only to document content. This scope grants you access to download and upload documents, but does not grant access to other resources. If you are already requesting the <code>spring_read</code> and <code>spring_write</code> scopes, you don't need to also request the content scope.\n   </td>\n  </tr>\n</table>\n\n<p>\n<strong>Note</strong>: The <code>impersonation</code> scope is also required when using the JWT flow.\n\n<p>Only request the scopes you need for your application.</p>\n\n<ul>\n  <li>Using Authorization Code Grant, you request scopes when you make the authorization code request.</li>\n  <li>Using Implicit Grant, you request scopes when you make the access token request.</li>\n  <li>Using JWT Grant, you request scopes in the body of the JWT token.</li>\n</ul>\n\n<h2>Authentication examples</h2>\n\n<p>The following examples show how to authenticate by using each grant type.</p><h3>Authorization Code Grant</h3>\n\n<p>Request URL:</p><pre>\nhttps://account-d.docusign.com/oauth/auth?response_type=code&scope=signature%20spring_read%20spring_write&client_id=5c2b8d7e-xxxx-xxxx-xxxx-cda8a50dd73f&redirect_uri=http://localhost/\n</pre>\n\n<h3>Implicit Grant</h3>\n\n<p>Request URL:</p><pre>\nhttps://account-d.docusign.com/oauth/auth?response_type=token&scope=spring_read%20spring_write%20signature&client_id=5c2b8d7e-xxxx-xxxx-xxxx-cda8a50dd73f&redirect_uri=http://localhost/\n</pre>\n\n<h3>JSON Web Token (JWT) Grant</h3>\n\n<p>Request URL:</p><pre>\nhttps://account-d.docusign.com/oauth/auth?response_type=code&scope=impersonation%20content&client_id=5c2b8d7e-xxxx-xxxx-xxxx-cda8a50dd73f&redirect_uri=http://localhost/\n</pre>\n\n<p>JSON request body:</p><pre>\n{\n  \"iss\": \"6c2b8d7e-xxxx-xxxx-xxxx-cda8a50dd73f\", \"iat\": 1541785491,\n  \"exp\": 1561785491,\n  \"aud\": \"account-d.docusign.com\",\n  \"scope\": \"signature content\"\n}\n</pre>\n\n<h2>Next steps</h2><a id=\"next_steps\"></a>\n\n<ul>\n  <li>See <a href=\"/platform/auth/\">Platform Authentication</a> for an overview of each OAuth grant flow and how to choose which grant to use for your app.</li>\n  <li>Learn how to implement each authentication flow by viewing these guides:\n    <ul>\n      <li><a href=\"/platform/auth/authcode/confidential-authcode-get-token/\">Confidential Authorization Code Grant</a></li>\n      <li><a href=\"/platform/auth/authcode/public-authcode-get-token/\">Public Authorization Code Grant</a></li>\n      <li><a href=\"/platform/auth/implicit/implicit-get-token/\">Implicit Grant</a></li>\n      <li><a href=\"/platform/auth/jwt/jwt-get-token/\">JSON Web Token (JWT) Grant</a></li>\n    </ul>\n  </li>\n  <li>To learn about JWT Grant authentication for Salesforce integrations, see <a href=\"/docs/clm-api/clm101/salesforce-clients\">Salesforce Client Authentication</a>.</li>\n</ul>\n"},"sys":{"type":"Entry"},"internal":{"type":"ContentfulAssemblyHtmlSection"}}],"sidebar":{"contentful_id":"4qJO6bNNFj4PL4ofkg0GsS","href":"/docs/clm-api","text":"CLM API","node_locale":"en-US","badgeTextOptions":null,"items":[{"text":"CLM API 101","href":"/docs/clm-api/clm101","items":[{"text":"Authentication overview","href":"/docs/clm-api/clm101/auth","items":null},{"text":"Salesforce client authentication","href":"/docs/clm-api/clm101/salesforce-clients","items":null},{"text":"Object API","href":"/docs/clm-api/clm101/object-api","items":null},{"text":"Task API","href":"/docs/clm-api/clm101/task-api","items":null},{"text":"Content API","href":"/docs/clm-api/clm101/content-api","items":null},{"text":"Response and error codes","href":"/docs/clm-api/clm101/response-error-codes","items":null},{"text":"API rules and resource limits","href":"/docs/clm-api/clm101/rules-and-limits","items":null},{"text":"Cross-Origin Resource Sharing (CORS)","href":"/docs/clm-api/clm101/cors","items":null},{"text":"Release notes","href":"https://support.docusign.com/en/releasenotes","items":null}]},{"text":"Go-Live","href":"/docs/clm-api/go-live","items":null},{"text":"API reference","href":"/docs/clm-api/reference","items":null}]},"sys":{"type":"Entry"},"isMarkdownButtonField":null}},"references":{"data":{}},"badgeTextOptions":{"data":{"items":[{"version":{"data":""},"text":{"data":""}}]}}},"metadata":{"description":{"data":"This page gives an overview of authentication for CLM v2.0."},"paragraph":{},"ogTitle":{"data":"CLM Authentication Overview"},"ogDescription":{"data":"This page gives an overview of authentication for CLM v2.0."},"ogImage":{"src":{"data":""}},"keywords":{"data":[]},"locale":"en-US","slug":{"data":"/docs/clm-api/clm101/auth/"},"title":{"data":"CLM Authentication Overview"},"typographyScheme":{"data":"non-marketing"},"backgroundKind":{"data":null},"updatedAt":{"data":"2023-06-20T16:02:00.393Z"},"createdAt":{"data":"2023-06-20T16:02:00.393Z"},"contentSource":{"data":"CM"}},"sidebarInitialState":{"CLM API 101":{"href":"/docs/clm-api/clm101","hrefNew":"","icon":"","open":false,"parents":["CLM API 101"]},"CLM API 101%%%%Authentication overview":{"href":"/docs/clm-api/clm101/auth","hrefNew":"","icon":"","open":false,"parents":["CLM API 101","Authentication overview"]},"CLM API 101%%%%Salesforce client authentication":{"href":"/docs/clm-api/clm101/salesforce-clients","hrefNew":"","icon":"","open":false,"parents":["CLM API 101","Salesforce client authentication"]},"CLM API 101%%%%Object API":{"href":"/docs/clm-api/clm101/object-api","hrefNew":"","icon":"","open":false,"parents":["CLM API 101","Object API"]},"CLM API 101%%%%Task API":{"href":"/docs/clm-api/clm101/task-api","hrefNew":"","icon":"","open":false,"parents":["CLM API 101","Task API"]},"CLM API 101%%%%Content API":{"href":"/docs/clm-api/clm101/content-api","hrefNew":"","icon":"","open":false,"parents":["CLM API 101","Content API"]},"CLM API 101%%%%Response and error codes":{"href":"/docs/clm-api/clm101/response-error-codes","hrefNew":"","icon":"","open":false,"parents":["CLM API 101","Response and error codes"]},"CLM API 101%%%%API rules and resource limits":{"href":"/docs/clm-api/clm101/rules-and-limits","hrefNew":"","icon":"","open":false,"parents":["CLM API 101","API rules and resource limits"]},"CLM API 101%%%%Cross-Origin Resource Sharing (CORS)":{"href":"/docs/clm-api/clm101/cors","hrefNew":"","icon":"","open":false,"parents":["CLM API 101","Cross-Origin Resource Sharing (CORS)"]},"CLM API 101%%%%Release notes":{"href":"https://support.docusign.com/en/releasenotes","hrefNew":"","icon":"","open":false,"parents":["CLM API 101","Release notes"]},"Go-Live":{"href":"/docs/clm-api/go-live","hrefNew":"","icon":"","open":false,"parents":["Go-Live"]},"API reference":{"href":"/docs/clm-api/reference","hrefNew":"","icon":"","open":false,"parents":["API reference"]}}}},"staticQueryHashes":["1046005517","1065676990","1243170842","1300267169","3493175950","3694524098","3727211561","4014647711","4032413523","605147788","791459392"],"slicesMap":{}}