Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Tcl) DocuSign Send a Draft EnvelopeSee more DocuSign ExamplesDemonstrates how to send a DocuSign draft envelope. For more information, see https://developers.docusign.com/docs/esign-rest-api/reference/envelopes/envelopes/update/
load ./chilkat.dll # This example assumes the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. set http [new_CkHttp] # Load a previously obtained OAuth2 access token. set jsonToken [new_CkJsonObject] set success [CkJsonObject_LoadFile $jsonToken "qa_data/tokens/docusign.json"] if {$success == 0} then { puts [CkJsonObject_lastErrorText $jsonToken] delete_CkHttp $http delete_CkJsonObject $jsonToken exit } # Adds the "Authorization: Bearer eyJ0eXAi.....UE8Kl_V8KroQ" header. CkHttp_put_AuthToken $http [CkJsonObject_stringOf $jsonToken "access_token"] # Send the following request. # Make sure to use your own account ID (obtained from Get Docusign User Account Information) # PUT https://demo.docusign.net/restapi/v2.1/accounts/<account ID>/envelopes/<envelope ID> HTTP/1.1 # Accept: application/json # Cache-Control: no-cache # Authorization: Bearer eyJ0eX... # Content-Length: ... # Content-Type: application/json # # { # "status": "sent" # } set json [new_CkJsonObject] CkJsonObject_UpdateString $json "status" "sent" set sbJson [new_CkStringBuilder] CkJsonObject_put_EmitCompact $json 0 CkJsonObject_EmitSb $json $sbJson CkHttp_SetRequestHeader $http "Cache-Control" "no-cache" CkHttp_SetRequestHeader $http "Accept" "application/json" # Use your own account ID here. CkHttp_SetUrlVar $http "accountId" "7f3f65ed-5e87-418d-94c1-92499ddc8252" # Use the envelope ID returned by DocuSign when creating the draft envelope). CkHttp_SetUrlVar $http "envelopeId" "cee4191c-f94e-4089-9d7c-8033685cbc1a" set url "https://demo.docusign.net/restapi/v2.1/accounts/{$accountId}/envelopes/{$envelopeId}" # resp is a CkHttpResponse set resp [CkHttp_PTextSb $http "PUT" $url $sbJson "utf-8" "application/json" 0 0] if {[CkHttp_get_LastMethodSuccess $http] == 0} then { puts [CkHttp_lastErrorText $http] delete_CkHttp $http delete_CkJsonObject $jsonToken delete_CkJsonObject $json delete_CkStringBuilder $sbJson exit } set jResp [new_CkJsonObject] CkJsonObject_Load $jResp [CkHttpResponse_bodyStr $resp] CkJsonObject_put_EmitCompact $jResp 0 puts "Response Body:" puts [CkJsonObject_emit $jResp] # If you get a 401 response status code, it's likely you need to refresh the DocuSign OAuth2 token). set respStatusCode [CkHttpResponse_get_StatusCode $resp] puts "Response Status Code = $respStatusCode" if {$respStatusCode >= 400} then { puts "Response Header:" puts [CkHttpResponse_header $resp] puts "Failed." delete_CkHttpResponse $resp delete_CkHttp $http delete_CkJsonObject $jsonToken delete_CkJsonObject $json delete_CkStringBuilder $sbJson delete_CkJsonObject $jResp exit } delete_CkHttpResponse $resp # Sample JSON response: # (Sample code for parsing the JSON response is shown below) # If the envelope you're trying to send is not yet completed, you'll get an error such as this: # { # "errorCode": "ENVELOPE_IS_INCOMPLETE", # "message": "The Envelope is not Complete. A Complete Envelope Requires Documents, Recipients, Tabs, and a Subject Line." # } # Sample code for parsing the JSON response... # Use the following online tool to generate parsing code from sample JSON: # Generate Parsing Code from JSON delete_CkHttp $http delete_CkJsonObject $jsonToken delete_CkJsonObject $json delete_CkStringBuilder $sbJson delete_CkJsonObject $jResp |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.