PureBasic / DocuSign REST API / Updates envelope custom fields for an envelope.
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.
; {
; "textCustomFields": [
; {
; "fieldId": "sample string 1",
; "name": "sample string 2",
; "show": "sample string 3",
; "required": "sample string 4",
; "value": "sample string 5",
; "configurationType": "sample string 6"
; }
; ],
; "listCustomFields": [
; {
; "listItems": [
; "sample string 1"
; ],
; "fieldId": "sample string 1",
; "name": "sample string 2",
; "show": "sample string 3",
; "required": "sample string 4",
; "value": "sample string 5",
; "configurationType": "sample string 6"
; }
; ]
; }
json.i = CkJsonObject::ckCreate()
If json.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkJsonObject::ckUpdateString(json,"textCustomFields[0].fieldId","sample string 1")
CkJsonObject::ckUpdateString(json,"textCustomFields[0].name","sample string 2")
CkJsonObject::ckUpdateString(json,"textCustomFields[0].show","sample string 3")
CkJsonObject::ckUpdateString(json,"textCustomFields[0].required","sample string 4")
CkJsonObject::ckUpdateString(json,"textCustomFields[0].value","sample string 5")
CkJsonObject::ckUpdateString(json,"textCustomFields[0].configurationType","sample string 6")
CkJsonObject::ckUpdateString(json,"listCustomFields[0].listItems[0]","sample string 1")
CkJsonObject::ckUpdateString(json,"listCustomFields[0].fieldId","sample string 1")
CkJsonObject::ckUpdateString(json,"listCustomFields[0].name","sample string 2")
CkJsonObject::ckUpdateString(json,"listCustomFields[0].show","sample string 3")
CkJsonObject::ckUpdateString(json,"listCustomFields[0].required","sample string 4")
CkJsonObject::ckUpdateString(json,"listCustomFields[0].value","sample string 5")
CkJsonObject::ckUpdateString(json,"listCustomFields[0].configurationType","sample string 6")
; 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}}/custom_fields","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 '{
"textCustomFields": [
{
"fieldId": "sample string 1",
"name": "sample string 2",
"show": "sample string 3",
"required": "sample string 4",
"value": "sample string 5",
"configurationType": "sample string 6"
}
],
"listCustomFields": [
{
"listItems": [
"sample string 1"
],
"fieldId": "sample string 1",
"name": "sample string 2",
"show": "sample string 3",
"required": "sample string 4",
"value": "sample string 5",
"configurationType": "sample string 6"
}
]
}'
https://domain.com/v2.1/accounts/{{accountId}}/envelopes/{{envelopeId}}/custom_fields
Postman Collection Item JSON
{
"name": "Updates envelope custom fields for an envelope.",
"request": {
"method": "POST",
"header": [
{
"key": "Accept",
"value": "application/json"
},
{
"key": "Authorization",
"value": "Bearer {{accessToken}}"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"textCustomFields\": [\n {\n \"fieldId\": \"sample string 1\",\n \"name\": \"sample string 2\",\n \"show\": \"sample string 3\",\n \"required\": \"sample string 4\",\n \"value\": \"sample string 5\",\n \"configurationType\": \"sample string 6\"\n }\n ],\n \"listCustomFields\": [\n {\n \"listItems\": [\n \"sample string 1\"\n ],\n \"fieldId\": \"sample string 1\",\n \"name\": \"sample string 2\",\n \"show\": \"sample string 3\",\n \"required\": \"sample string 4\",\n \"value\": \"sample string 5\",\n \"configurationType\": \"sample string 6\"\n }\n ]\n}"
},
"url": {
"raw": "{{baseUrl}}/v2.1/accounts/{{accountId}}/envelopes/{{envelopeId}}/custom_fields",
"host": [
"{{baseUrl}}"
],
"path": [
"v2.1",
"accounts",
"{{accountId}}",
"envelopes",
"{{envelopeId}}",
"custom_fields"
],
"variable": [
{
"key": "accountId",
"value": "{{accountId}}"
},
{
"key": "envelopeId",
"value": "{{envelopeId}}"
}
]
},
"description": "Updates the envelope custom fields for draft and in-process envelopes.\n\nEach custom field used in an envelope must have a unique name."
},
"response": [
]
}