PureBasic / DocuSign REST API / Replaces contacts associated with an account for the DocuSign service.
Back to Collection Items
IncludeFile "CkJsonObject.pb"
IncludeFile "CkStringBuilder.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.
; {
; "contacts": [
; {
; "signingGroupUsers": [
; {
; "userName": "sample string 1",
; "userId": "sample string 2",
; "email": "sample string 3",
; "userType": "sample string 4",
; "userStatus": "sample string 5",
; "uri": "sample string 6",
; "loginStatus": "sample string 7",
; "sendActivationEmail": "sample string 8",
; "activationAccessCode": "sample string 9"
; }
; ],
; "contactId": "sample string 1",
; "name": "sample string 2",
; "emails": [
; "sample string 1"
; ],
; "organization": "sample string 3",
; "shared": "sample string 4",
; "contactUri": "sample string 5",
; "signingGroup": "sample string 6",
; "signingGroupName": "sample string 7",
; "contactPhoneNumbers": [
; {
; "phoneNumber": "sample string 1",
; "phoneType": "sample string 2"
; }
; ]
; }
; ]
; }
json.i = CkJsonObject::ckCreate()
If json.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkJsonObject::ckUpdateString(json,"contacts[0].signingGroupUsers[0].userName","sample string 1")
CkJsonObject::ckUpdateString(json,"contacts[0].signingGroupUsers[0].userId","sample string 2")
CkJsonObject::ckUpdateString(json,"contacts[0].signingGroupUsers[0].email","sample string 3")
CkJsonObject::ckUpdateString(json,"contacts[0].signingGroupUsers[0].userType","sample string 4")
CkJsonObject::ckUpdateString(json,"contacts[0].signingGroupUsers[0].userStatus","sample string 5")
CkJsonObject::ckUpdateString(json,"contacts[0].signingGroupUsers[0].uri","sample string 6")
CkJsonObject::ckUpdateString(json,"contacts[0].signingGroupUsers[0].loginStatus","sample string 7")
CkJsonObject::ckUpdateString(json,"contacts[0].signingGroupUsers[0].sendActivationEmail","sample string 8")
CkJsonObject::ckUpdateString(json,"contacts[0].signingGroupUsers[0].activationAccessCode","sample string 9")
CkJsonObject::ckUpdateString(json,"contacts[0].contactId","sample string 1")
CkJsonObject::ckUpdateString(json,"contacts[0].name","sample string 2")
CkJsonObject::ckUpdateString(json,"contacts[0].emails[0]","sample string 1")
CkJsonObject::ckUpdateString(json,"contacts[0].organization","sample string 3")
CkJsonObject::ckUpdateString(json,"contacts[0].shared","sample string 4")
CkJsonObject::ckUpdateString(json,"contacts[0].contactUri","sample string 5")
CkJsonObject::ckUpdateString(json,"contacts[0].signingGroup","sample string 6")
CkJsonObject::ckUpdateString(json,"contacts[0].signingGroupName","sample string 7")
CkJsonObject::ckUpdateString(json,"contacts[0].contactPhoneNumbers[0].phoneNumber","sample string 1")
CkJsonObject::ckUpdateString(json,"contacts[0].contactPhoneNumbers[0].phoneType","sample string 2")
; Adds the "Authorization: Bearer {{accessToken}}" header.
CkHttp::setCkAuthToken(http, "{{accessToken}}")
CkHttp::ckSetRequestHeader(http,"Accept","application/json")
sbRequestBody.i = CkStringBuilder::ckCreate()
If sbRequestBody.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkJsonObject::ckEmitSb(json,sbRequestBody)
resp.i = CkHttp::ckPTextSb(http,"PUT","https://domain.com/v2.1/accounts/{{accountId}}/contacts",sbRequestBody,"utf-8","application/json",0,0)
If CkHttp::ckLastMethodSuccess(http) = 0
Debug CkHttp::ckLastErrorText(http)
CkHttp::ckDispose(http)
CkJsonObject::ckDispose(json)
CkStringBuilder::ckDispose(sbRequestBody)
ProcedureReturn
EndIf
Debug Str(CkHttpResponse::ckStatusCode(resp))
Debug CkHttpResponse::ckBodyStr(resp)
CkHttpResponse::ckDispose(resp)
CkHttp::ckDispose(http)
CkJsonObject::ckDispose(json)
CkStringBuilder::ckDispose(sbRequestBody)
ProcedureReturn
EndProcedure
Curl Command
curl -X PUT
-H "Accept: application/json"
-H "Authorization: Bearer {{accessToken}}"
-d '{
"contacts": [
{
"signingGroupUsers": [
{
"userName": "sample string 1",
"userId": "sample string 2",
"email": "sample string 3",
"userType": "sample string 4",
"userStatus": "sample string 5",
"uri": "sample string 6",
"loginStatus": "sample string 7",
"sendActivationEmail": "sample string 8",
"activationAccessCode": "sample string 9"
}
],
"contactId": "sample string 1",
"name": "sample string 2",
"emails": [
"sample string 1"
],
"organization": "sample string 3",
"shared": "sample string 4",
"contactUri": "sample string 5",
"signingGroup": "sample string 6",
"signingGroupName": "sample string 7",
"contactPhoneNumbers": [
{
"phoneNumber": "sample string 1",
"phoneType": "sample string 2"
}
]
}
]
}'
https://domain.com/v2.1/accounts/{{accountId}}/contacts
Postman Collection Item JSON
{
"name": "Replaces contacts associated with an account for the DocuSign service.",
"request": {
"method": "PUT",
"header": [
{
"key": "Accept",
"value": "application/json"
},
{
"key": "Authorization",
"value": "Bearer {{accessToken}}"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"contacts\": [\n {\n \"signingGroupUsers\": [\n {\n \"userName\": \"sample string 1\",\n \"userId\": \"sample string 2\",\n \"email\": \"sample string 3\",\n \"userType\": \"sample string 4\",\n \"userStatus\": \"sample string 5\",\n \"uri\": \"sample string 6\",\n \"loginStatus\": \"sample string 7\",\n \"sendActivationEmail\": \"sample string 8\",\n \"activationAccessCode\": \"sample string 9\"\n }\n ],\n \"contactId\": \"sample string 1\",\n \"name\": \"sample string 2\",\n \"emails\": [\n \"sample string 1\"\n ],\n \"organization\": \"sample string 3\",\n \"shared\": \"sample string 4\",\n \"contactUri\": \"sample string 5\",\n \"signingGroup\": \"sample string 6\",\n \"signingGroupName\": \"sample string 7\",\n \"contactPhoneNumbers\": [\n {\n \"phoneNumber\": \"sample string 1\",\n \"phoneType\": \"sample string 2\"\n }\n ]\n }\n ]\n}"
},
"url": {
"raw": "{{baseUrl}}/v2.1/accounts/{{accountId}}/contacts",
"host": [
"{{baseUrl}}"
],
"path": [
"v2.1",
"accounts",
"{{accountId}}",
"contacts"
],
"variable": [
{
"key": "accountId",
"value": "{{accountId}}"
}
]
}
},
"response": [
]
}