Chilkat Online Tools

C++ / DocuSign REST API / Creates a custom tab.

Back to Collection Items

#include <CkHttp.h>
#include <CkJsonObject.h>
#include <CkHttpResponse.h>

void ChilkatSample(void)
    {
    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    CkHttp http;
    bool success;

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

    // The following JSON is sent in the request body.

    // {
    //   "font": "sample string 1",
    //   "bold": "sample string 2",
    //   "italic": "sample string 3",
    //   "underline": "sample string 4",
    //   "fontColor": "sample string 5",
    //   "fontSize": "sample string 6",
    //   "anchor": "sample string 7",
    //   "anchorXOffset": "sample string 8",
    //   "anchorYOffset": "sample string 9",
    //   "anchorUnits": "sample string 10",
    //   "anchorIgnoreIfNotPresent": "sample string 11",
    //   "anchorMatchWholeWord": "sample string 12",
    //   "anchorCaseSensitive": "sample string 13",
    //   "anchorHorizontalAlignment": "sample string 14",
    //   "paymentItemCode": "sample string 15",
    //   "paymentItemDescription": "sample string 16",
    //   "paymentItemName": "sample string 17",
    //   "height": "sample string 18",
    //   "width": "sample string 19",
    //   "customTabId": "sample string 20",
    //   "initialValue": "sample string 21",
    //   "includedInEmail": "sample string 22",
    //   "disableAutoSize": "sample string 23",
    //   "concealValueOnDocument": "sample string 24",
    //   "locked": "sample string 25",
    //   "required": "sample string 26",
    //   "shared": "sample string 27",
    //   "collaborative": "sample string 28",
    //   "requireInitialOnSharedChange": "sample string 29",
    //   "requireAll": "sample string 30",
    //   "items": [
    //     "sample string 1"
    //   ],
    //   "tabLabel": "sample string 31",
    //   "maximumLength": "sample string 32",
    //   "scaleValue": "sample string 33",
    //   "name": "sample string 34",
    //   "type": "sample string 35",
    //   "validationMessage": "sample string 36",
    //   "validationPattern": "sample string 37",
    //   "lastModifiedByUserId": "sample string 38",
    //   "lastModifiedByDisplayName": "sample string 39",
    //   "lastModified": "sample string 40",
    //   "createdByUserId": "sample string 41",
    //   "createdByDisplayName": "sample string 42",
    //   "editable": "sample string 43",
    //   "mergeField": {
    //     "configurationType": "sample string 1",
    //     "path": "sample string 2",
    //     "writeBack": "sample string 3",
    //     "allowSenderToEdit": "sample string 4",
    //     "row": "sample string 5"
    //   },
    //   "stampType": "sample string 44",
    //   "selected": "sample string 45"
    // }

    CkJsonObject json;
    json.UpdateString("font","sample string 1");
    json.UpdateString("bold","sample string 2");
    json.UpdateString("italic","sample string 3");
    json.UpdateString("underline","sample string 4");
    json.UpdateString("fontColor","sample string 5");
    json.UpdateString("fontSize","sample string 6");
    json.UpdateString("anchor","sample string 7");
    json.UpdateString("anchorXOffset","sample string 8");
    json.UpdateString("anchorYOffset","sample string 9");
    json.UpdateString("anchorUnits","sample string 10");
    json.UpdateString("anchorIgnoreIfNotPresent","sample string 11");
    json.UpdateString("anchorMatchWholeWord","sample string 12");
    json.UpdateString("anchorCaseSensitive","sample string 13");
    json.UpdateString("anchorHorizontalAlignment","sample string 14");
    json.UpdateString("paymentItemCode","sample string 15");
    json.UpdateString("paymentItemDescription","sample string 16");
    json.UpdateString("paymentItemName","sample string 17");
    json.UpdateString("height","sample string 18");
    json.UpdateString("width","sample string 19");
    json.UpdateString("customTabId","sample string 20");
    json.UpdateString("initialValue","sample string 21");
    json.UpdateString("includedInEmail","sample string 22");
    json.UpdateString("disableAutoSize","sample string 23");
    json.UpdateString("concealValueOnDocument","sample string 24");
    json.UpdateString("locked","sample string 25");
    json.UpdateString("required","sample string 26");
    json.UpdateString("shared","sample string 27");
    json.UpdateString("collaborative","sample string 28");
    json.UpdateString("requireInitialOnSharedChange","sample string 29");
    json.UpdateString("requireAll","sample string 30");
    json.UpdateString("items[0]","sample string 1");
    json.UpdateString("tabLabel","sample string 31");
    json.UpdateString("maximumLength","sample string 32");
    json.UpdateString("scaleValue","sample string 33");
    json.UpdateString("name","sample string 34");
    json.UpdateString("type","sample string 35");
    json.UpdateString("validationMessage","sample string 36");
    json.UpdateString("validationPattern","sample string 37");
    json.UpdateString("lastModifiedByUserId","sample string 38");
    json.UpdateString("lastModifiedByDisplayName","sample string 39");
    json.UpdateString("lastModified","sample string 40");
    json.UpdateString("createdByUserId","sample string 41");
    json.UpdateString("createdByDisplayName","sample string 42");
    json.UpdateString("editable","sample string 43");
    json.UpdateString("mergeField.configurationType","sample string 1");
    json.UpdateString("mergeField.path","sample string 2");
    json.UpdateString("mergeField.writeBack","sample string 3");
    json.UpdateString("mergeField.allowSenderToEdit","sample string 4");
    json.UpdateString("mergeField.row","sample string 5");
    json.UpdateString("stampType","sample string 44");
    json.UpdateString("selected","sample string 45");

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

    CkHttpResponse *resp = http.PostJson3("https://domain.com/v2.1/accounts/{{accountId}}/tab_definitions","application/json",json);
    if (http.get_LastMethodSuccess() == false) {
        std::cout << http.lastErrorText() << "\r\n";
        return;
    }

    std::cout << resp->get_StatusCode() << "\r\n";
    std::cout << resp->bodyStr() << "\r\n";
    delete resp;
    }

Curl Command

curl -X POST
	-H "Accept: application/json"
	-H "Authorization: Bearer {{accessToken}}"
	-d '{
  "font": "sample string 1",
  "bold": "sample string 2",
  "italic": "sample string 3",
  "underline": "sample string 4",
  "fontColor": "sample string 5",
  "fontSize": "sample string 6",
  "anchor": "sample string 7",
  "anchorXOffset": "sample string 8",
  "anchorYOffset": "sample string 9",
  "anchorUnits": "sample string 10",
  "anchorIgnoreIfNotPresent": "sample string 11",
  "anchorMatchWholeWord": "sample string 12",
  "anchorCaseSensitive": "sample string 13",
  "anchorHorizontalAlignment": "sample string 14",
  "paymentItemCode": "sample string 15",
  "paymentItemDescription": "sample string 16",
  "paymentItemName": "sample string 17",
  "height": "sample string 18",
  "width": "sample string 19",
  "customTabId": "sample string 20",
  "initialValue": "sample string 21",
  "includedInEmail": "sample string 22",
  "disableAutoSize": "sample string 23",
  "concealValueOnDocument": "sample string 24",
  "locked": "sample string 25",
  "required": "sample string 26",
  "shared": "sample string 27",
  "collaborative": "sample string 28",
  "requireInitialOnSharedChange": "sample string 29",
  "requireAll": "sample string 30",
  "items": [
    "sample string 1"
  ],
  "tabLabel": "sample string 31",
  "maximumLength": "sample string 32",
  "scaleValue": "sample string 33",
  "name": "sample string 34",
  "type": "sample string 35",
  "validationMessage": "sample string 36",
  "validationPattern": "sample string 37",
  "lastModifiedByUserId": "sample string 38",
  "lastModifiedByDisplayName": "sample string 39",
  "lastModified": "sample string 40",
  "createdByUserId": "sample string 41",
  "createdByDisplayName": "sample string 42",
  "editable": "sample string 43",
  "mergeField": {
    "configurationType": "sample string 1",
    "path": "sample string 2",
    "writeBack": "sample string 3",
    "allowSenderToEdit": "sample string 4",
    "row": "sample string 5"
  },
  "stampType": "sample string 44",
  "selected": "sample string 45"
}'
https://domain.com/v2.1/accounts/{{accountId}}/tab_definitions

Postman Collection Item JSON

{
  "name": "Creates a custom tab.",
  "request": {
    "method": "POST",
    "header": [
      {
        "key": "Accept",
        "value": "application/json"
      },
      {
        "key": "Authorization",
        "value": "Bearer {{accessToken}}"
      }
    ],
    "body": {
      "mode": "raw",
      "raw": "{\n  \"font\": \"sample string 1\",\n  \"bold\": \"sample string 2\",\n  \"italic\": \"sample string 3\",\n  \"underline\": \"sample string 4\",\n  \"fontColor\": \"sample string 5\",\n  \"fontSize\": \"sample string 6\",\n  \"anchor\": \"sample string 7\",\n  \"anchorXOffset\": \"sample string 8\",\n  \"anchorYOffset\": \"sample string 9\",\n  \"anchorUnits\": \"sample string 10\",\n  \"anchorIgnoreIfNotPresent\": \"sample string 11\",\n  \"anchorMatchWholeWord\": \"sample string 12\",\n  \"anchorCaseSensitive\": \"sample string 13\",\n  \"anchorHorizontalAlignment\": \"sample string 14\",\n  \"paymentItemCode\": \"sample string 15\",\n  \"paymentItemDescription\": \"sample string 16\",\n  \"paymentItemName\": \"sample string 17\",\n  \"height\": \"sample string 18\",\n  \"width\": \"sample string 19\",\n  \"customTabId\": \"sample string 20\",\n  \"initialValue\": \"sample string 21\",\n  \"includedInEmail\": \"sample string 22\",\n  \"disableAutoSize\": \"sample string 23\",\n  \"concealValueOnDocument\": \"sample string 24\",\n  \"locked\": \"sample string 25\",\n  \"required\": \"sample string 26\",\n  \"shared\": \"sample string 27\",\n  \"collaborative\": \"sample string 28\",\n  \"requireInitialOnSharedChange\": \"sample string 29\",\n  \"requireAll\": \"sample string 30\",\n  \"items\": [\n    \"sample string 1\"\n  ],\n  \"tabLabel\": \"sample string 31\",\n  \"maximumLength\": \"sample string 32\",\n  \"scaleValue\": \"sample string 33\",\n  \"name\": \"sample string 34\",\n  \"type\": \"sample string 35\",\n  \"validationMessage\": \"sample string 36\",\n  \"validationPattern\": \"sample string 37\",\n  \"lastModifiedByUserId\": \"sample string 38\",\n  \"lastModifiedByDisplayName\": \"sample string 39\",\n  \"lastModified\": \"sample string 40\",\n  \"createdByUserId\": \"sample string 41\",\n  \"createdByDisplayName\": \"sample string 42\",\n  \"editable\": \"sample string 43\",\n  \"mergeField\": {\n    \"configurationType\": \"sample string 1\",\n    \"path\": \"sample string 2\",\n    \"writeBack\": \"sample string 3\",\n    \"allowSenderToEdit\": \"sample string 4\",\n    \"row\": \"sample string 5\"\n  },\n  \"stampType\": \"sample string 44\",\n  \"selected\": \"sample string 45\"\n}"
    },
    "url": {
      "raw": "{{baseUrl}}/v2.1/accounts/{{accountId}}/tab_definitions",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "v2.1",
        "accounts",
        "{{accountId}}",
        "tab_definitions"
      ],
      "variable": [
        {
          "key": "accountId",
          "value": "{{accountId}}"
        }
      ]
    },
    "description": "Creates a tab with pre-defined properties, such as a text tab with a certain font type and validation pattern. Users can access the custom tabs when sending documents through the DocuSign web application.\n\nCustom tabs can be created for approve, checkbox, company, date, date signed, decline, email, email address, envelope ID, first name, formula, full name, initial here, last name, list, note, number, radio, sign here, signer attachment, SSN, text, title, and zip tabs."
  },
  "response": [
  ]
}