Chilkat Online Tools

PureBasic / DocuSign REST API / Returns a URL to the recipient view UI.

Back to Collection Items

IncludeFile "CkJsonObject.pb"
IncludeFile "CkHttp.pb"
IncludeFile "CkHttpResponse.pb"

Procedure ChilkatExample()

    ; This example assumes the Chilkat API to have been previously unlocked.
    ; See Global Unlock Sample for sample code.

    http.i = CkHttp::ckCreate()
    If http.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    success.i

    ; Use this online tool to generate code from sample JSON: Generate Code to Create JSON

    ; The following JSON is sent in the request body.

    ; {
    ;   "clientUserId": "sample string 1",
    ;   "userId": "sample string 2",
    ;   "userName": "sample string 3",
    ;   "email": "sample string 4",
    ;   "recipientId": "sample string 5",
    ;   "returnUrl": "sample string 6",
    ;   "pingUrl": "sample string 7",
    ;   "pingFrequency": "sample string 8",
    ;   "authenticationMethod": "sample string 9",
    ;   "assertionId": "sample string 10",
    ;   "authenticationInstant": "sample string 11",
    ;   "securityDomain": "sample string 12",
    ;   "xFrameOptions": "sample string 13",
    ;   "xFrameOptionsAllowFromUrl": "sample string 14",
    ;   "frameAncestors": [
    ;     "sample string 1"
    ;   ],
    ;   "messageOrigins": [
    ;     "sample string 1"
    ;   ]
    ; }

    json.i = CkJsonObject::ckCreate()
    If json.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkJsonObject::ckUpdateString(json,"clientUserId","sample string 1")
    CkJsonObject::ckUpdateString(json,"userId","sample string 2")
    CkJsonObject::ckUpdateString(json,"userName","sample string 3")
    CkJsonObject::ckUpdateString(json,"email","sample string 4")
    CkJsonObject::ckUpdateString(json,"recipientId","sample string 5")
    CkJsonObject::ckUpdateString(json,"returnUrl","sample string 6")
    CkJsonObject::ckUpdateString(json,"pingUrl","sample string 7")
    CkJsonObject::ckUpdateString(json,"pingFrequency","sample string 8")
    CkJsonObject::ckUpdateString(json,"authenticationMethod","sample string 9")
    CkJsonObject::ckUpdateString(json,"assertionId","sample string 10")
    CkJsonObject::ckUpdateString(json,"authenticationInstant","sample string 11")
    CkJsonObject::ckUpdateString(json,"securityDomain","sample string 12")
    CkJsonObject::ckUpdateString(json,"xFrameOptions","sample string 13")
    CkJsonObject::ckUpdateString(json,"xFrameOptionsAllowFromUrl","sample string 14")
    CkJsonObject::ckUpdateString(json,"frameAncestors[0]","sample string 1")
    CkJsonObject::ckUpdateString(json,"messageOrigins[0]","sample string 1")

    ; Adds the "Authorization: Bearer {{accessToken}}" header.
    CkHttp::setCkAuthToken(http, "{{accessToken}}")
    CkHttp::ckSetRequestHeader(http,"Accept","application/json")

    resp.i = CkHttp::ckPostJson3(http,"https://domain.com/v2.1/accounts/{{accountId}}/envelopes/{{envelopeId}}/views/recipient","application/json",json)
    If CkHttp::ckLastMethodSuccess(http) = 0
        Debug CkHttp::ckLastErrorText(http)
        CkHttp::ckDispose(http)
        CkJsonObject::ckDispose(json)
        ProcedureReturn
    EndIf

    Debug Str(CkHttpResponse::ckStatusCode(resp))
    Debug CkHttpResponse::ckBodyStr(resp)
    CkHttpResponse::ckDispose(resp)



    CkHttp::ckDispose(http)
    CkJsonObject::ckDispose(json)


    ProcedureReturn
EndProcedure

Curl Command

curl -X POST
	-H "Accept: application/json"
	-H "Authorization: Bearer {{accessToken}}"
	-d '{
  "clientUserId": "sample string 1",
  "userId": "sample string 2",
  "userName": "sample string 3",
  "email": "sample string 4",
  "recipientId": "sample string 5",
  "returnUrl": "sample string 6",
  "pingUrl": "sample string 7",
  "pingFrequency": "sample string 8",
  "authenticationMethod": "sample string 9",
  "assertionId": "sample string 10",
  "authenticationInstant": "sample string 11",
  "securityDomain": "sample string 12",
  "xFrameOptions": "sample string 13",
  "xFrameOptionsAllowFromUrl": "sample string 14",
  "frameAncestors": [
    "sample string 1"
  ],
  "messageOrigins": [
    "sample string 1"
  ]
}'
https://domain.com/v2.1/accounts/{{accountId}}/envelopes/{{envelopeId}}/views/recipient

Postman Collection Item JSON

{
  "name": "Returns a URL to the recipient view UI.",
  "request": {
    "method": "POST",
    "header": [
      {
        "key": "Accept",
        "value": "application/json"
      },
      {
        "key": "Authorization",
        "value": "Bearer {{accessToken}}"
      }
    ],
    "body": {
      "mode": "raw",
      "raw": "{\n  \"clientUserId\": \"sample string 1\",\n  \"userId\": \"sample string 2\",\n  \"userName\": \"sample string 3\",\n  \"email\": \"sample string 4\",\n  \"recipientId\": \"sample string 5\",\n  \"returnUrl\": \"sample string 6\",\n  \"pingUrl\": \"sample string 7\",\n  \"pingFrequency\": \"sample string 8\",\n  \"authenticationMethod\": \"sample string 9\",\n  \"assertionId\": \"sample string 10\",\n  \"authenticationInstant\": \"sample string 11\",\n  \"securityDomain\": \"sample string 12\",\n  \"xFrameOptions\": \"sample string 13\",\n  \"xFrameOptionsAllowFromUrl\": \"sample string 14\",\n  \"frameAncestors\": [\n    \"sample string 1\"\n  ],\n  \"messageOrigins\": [\n    \"sample string 1\"\n  ]\n}"
    },
    "url": {
      "raw": "{{baseUrl}}/v2.1/accounts/{{accountId}}/envelopes/{{envelopeId}}/views/recipient",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "v2.1",
        "accounts",
        "{{accountId}}",
        "envelopes",
        "{{envelopeId}}",
        "views",
        "recipient"
      ],
      "variable": [
        {
          "key": "accountId",
          "value": "{{accountId}}"
        },
        {
          "key": "envelopeId",
          "value": "{{envelopeId}}"
        }
      ]
    },
    "description": "Returns a URL that allows you to embed the recipient view of the DocuSign UI in your applications. This call cannot be used to view draft envelopes, since those envelopes have not been sent. \n\nImportant: iFrames should not be used for embedded operations on mobile devices due to screen space issues. For iOS devices DocuSign recommends using a WebView. \n\nAn entry is added into the Security Level section of the DocuSign Certificate of Completion that reflects the `securityDomain` and `authenticationMethod` properties used to verify the user identity."
  },
  "response": [
  ]
}