Skip to main content
Mitratech Success Center

Client Support Center

Need help? Click a product group below to select your application and get access to knowledge articles, webinars, training content, and release notes or to contact our support team.

Authorized users - log in to create a ticket, view tickets status and check your success plan details.

 

TAP API Documentation

The TAP API follows Microsoft's OData standard for all URL Elements & parameters. Find a guide to these features here.  The most up-to-date TAP API endpoints are available on the API Explorer Page.

POST Access Token /auth/identity/connect/token Generates an access token for use in subsequent calls.

Note: This call requires a TAP user account and the API is subject to the same permission limitations as this user account. Please insure you use a Super Admin user account to gather the access token, otherwise there is the potential that some results may not be included in the response due to limited security privileges.

URL Elements & Parameters

Tenant Name - The subdomain of your environment e.g. default.tap.thinksmart.com

Environment

Body Elements

grant_type - password

scope - api

redirect_uri - tapredirect (Typical default value, reach out to Mitratech to confirm)

username - The registered user to be authorized

password - That user's password

client_id - To be obtained from Mitratech

client_secret - To be obtained from Mitratech

Sample Request

HTTP
POST
/default/auth/identity/connect/token HTTP/1.1
Host: default.stagingtap.thinksmart.com
Content-Type: application/x-www-form-urlencoded

grant_type=password&scope=api&redirect_uri=tapredirect&username=test@test.com&password=UserPassWord&client_id=6b95e19lc3774a9a900e72287ffcefa4&client_secret=qSYBt+HkGTElD+FpKs3ItdUbRZHVeyvZvj1a/Tt5C4M=

Sample Response

{
  "access_token": "d57fc1d99d15f18f9234aa181853d805",
  "expires_in": 3600,
  "token_type": "Bearer"
}

Live

Live Response

POST Bulk API /api/users/bulkAddorUpdate Used to create new user accounts.

Note: This call requires a TAP user account and the API is subject to the same permission limitations as this user account. Please ensure you use a Super Admin user account to gather the access token, otherwise, there is the potential that some results may not be included in the response due to limited security privileges.

URL Elements & Parameters

Tenant Name - The subdomain of your environment e.g. default.tap.thinksmart.com

Environment

Body Elements

grant_type - password

Sample Request

HTTP
POST
/default/auth/identity/connect/token HTTP/1.1
Host: default.stagingtap.thinksmart.com
Content-Type: application/x-www-form-urlencoded

grant_type=password&scope=api&redirect_uri=tapredirect&username=test@test.com&password=UserPassWord&client_id=6b95e19lc3774a9a900e72287ffcefa4&client_secret=qSYBt+HkGTElD+FpKs3ItdUbRZHVeyvZvj1a/Tt5C4M=

Sample Response

{
  "access_token": "d57fc1d99d15f18f9234aa181853d805",
  "expires_in": 3600,
  "token_type": "Bearer"
}

Live

Live Response

GET Download by ID /api/v1/files/{id} Method which will return a file by id. Use GET File Attachments to get the file ids from a specific workflow record.

URL Elements & Parameters

{id} - The id of the file you want to download.

Sample Request

HTTP
GET
/default/api/v1/files/ef821349-695b-414f-8d40-78dde3fa3eb1 HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer ad98e0b76d9a90543c8b4bd9953cec1c

Sample Response

Octet stream of file body.

Live

Live Response

GET Audit Trail /api/v1/workflows/getaudittraildetails/name Method to audit the workflows by name

URL Elements & Parameters

Request # - Workflow Name

Request Body

Sample Request

HTTP
GET /default/api/v1/workflows/audittraildetails/name HTTP/1.1
Host: default.stagingtap.thinksmart.com
Content-Type: application/json
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

[
  "Request # 00000190",
  "Request # 00000167",
  "Request # 00000166"
]

Sample Response

[
{
"WorkflowName": "Request # 00000190",
"AuditTrailFieldLogStageList": [
{
"Stage": "Stage 1",
"Date": "2023-01-13T12:43:05.0431102",
"User": "Francisco Trinidad",
"Status": "Relationship 1",
"Fields": [
{
"Name": "element3",
"Value": "Hi this a sample.",
"Type": "text-area",
"Label": "Click to edit"
},
{
"Name": "element4",
"Value": "",
"Type": "text-box",
"Label": "Click to edit"
}
]
} ] },
{ "WorkflowName": "Request # 00000167",
"AuditTrailFieldLogStageList": []
},
{ "WorkflowName": "Request # 00000166",
"AuditTrailFieldLogStageList": []
} ]

Live

Live Response

GET Tenant Configurations /api/v1/gridconfigurations/tenant Method which will return all dashboard grid configurations.

URL Elements & Parameters

$top - The max number of records

$skip - The number of records to skip

$filter - A function that must evaluate to true for a record to be returned

$select - Specifies a subset of properties to return

$orderby - Determines what values are used to order a collection of records

$inlinecount - Set 'allpages' if you want to have total count value in result

Sample Request

HTTP
GET
/default/api/v1/gridconfigurations/tenant?$top=1&$skip=0&$filter=Name eq 'Cole API Training' HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer e2f3bc12116f1d87f35d01a62526b7e1

Sample Response

{
  "Items": [
    {
      "ID": "2dbfc80d-5fb4-458d-ab92-2e2abbec11cc",
      "Name": "Cole API Training",
      "Description": "Cole API Training",
      "Configuration": null,
      "UserID": null,
      "ApplicationID": "00000000-0000-0000-0000-000000000000",
      "IsPinned": false,
      "IsTenant": true,
      "IsDefault": false,
      "HasURL Elements & Parameters": false,
      "DateCreated": "2019-10-03T18:06:13.732",
      "UserCreated": "3883892d-81e0-4606-a18c-406a3ca09355",
      "DateModified": "2020-04-29T22:02:47.787",
      "UserModified": "3883892d-81e0-4606-a18c-406a3ca09355"
    }
  ],
  "NextPageLink": null,
  "Count": null
}

Live

Live Response

GET User Configurations /api/v1/gridconfigurations/user Method that will return all dashboard grid configurations visible for current user

URL Elements & Parameters

$top - The max number of records

$skip - The number of records to skip

$filter - A function that must evaluate to true for a record to be returned

$select - Specifies a subset of properties to return

$orderby - Determines what values are used to order a collection of records

$inlinecount - Set 'allpages' if you want to have total count value in result

Sample Request

HTTP
GET
/default/api/v1/gridconfigurations/user HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer 5b79de7c00961bfebd24c10f95e30ce6

Sample Response

{
"Items": [
  {
    "ID": "cb5b946c-d965-4925-ab1b-f2f6cc3fdd53",
    "Name": "User default",
    "Description": null,
    "Configuration": null,
    "UserID": "b24626a6-6d61-4b76-99f6-3ed4b4606468",
    "ApplicationID": "00000000-0000-0000-0000-000000000000",
    "IsPinned": false,
    "IsTenant": false,
    "IsDefault": false,
    "HasParameters": false,
    "DateCreated": "2020-05-18T15:23:55.642",
    "UserCreated": "b24626a6-6d61-4b76-99f6-3ed4b4606468",
    "DateModified": "2020-05-18T15:23:55.642",
    "UserModified": "b24626a6-6d61-4b76-99f6-3ed4b4606468"
  }
],
"NextPageLink": null,
"Count": null
}

Live

Live Response

GET Configuration by ID /api/v1/gridconfigurations/{id} Method which returns the details of a grid configuration by id.

URL Elements & Parameters

{id} - The id of the grid configuration returned from the tenant configurations or user configurations call.

Sample Request

HTTP
GET /default/api/v1/gridconfigurations/cb5b946c-d965-4925-ab1b-f2f6cc3fdd53 HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer 5b79de7c00961bfebd24c10f95e30ce6

Sample Response

{
  "ID": "cb5b946c-d965-4925-ab1b-f2f6cc3fdd53",
  "Name": "User default",
  "Description": null,
  "Configuration": null,
  "UserID": "b24626a6-6d61-4b76-99f6-3ed4b4606468",
  "ApplicationID": "00000000-0000-0000-0000-000000000000",
  "IsPinned": false,
  "IsTenant": false,
  "IsDefault": false,
  "HasParameters": false,
  "DateCreated": "2020-05-18T15:23:55.642",
  "UserCreated": "b24626a6-6d61-4b76-99f6-3ed4b4606468",
  "DateModified": "2020-05-18T15:23:55.642",
  "UserModified": "b24626a6-6d61-4b76-99f6-3ed4b4606468"
}

Live

Live Response

GET Available Templates /api/v1/templates/dashboard Returns available workflow templates for visible on dashboard

URL Elements & Parameters

$top - The max number of records

$skip - The number of records to skip

$filter - A function that must evaluate to true for a record to be returned

$select - Specifies a subset of properties to return

$orderby - Determines what values are used to order a collection of records

$inlinecount - Set 'allpages' if you want to have total count value in result

Sample Request

HTTP
GET /default/api/v1/templates/dashboard?$filter=WorkflowName eq 'Cole API Training 2020' HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

Sample Response

{
  "Items": [
    {
      "ID": "f5031928-95d6-4169-8d95-a9fc5b89c5ae",
      "WorkflowName": "Cole API Training 2020",
      "InitialStage": "Description for stage 1",
      "DateCreated": "2020-03-30T10:48:39.257"
    }
  ],
  "NextPageLink": null,
  "Count": null
}

Live

Live Response

GET User info by ID /api/v1/users/{id} Method which returns user info by id.

URL Elements & Parameters

{id} - The id of the user in question.

Sample Request

HTTP
GET /default/api/v1/users/b24626a6-6d61-4b76-99f6-3ed4b4606468? HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

Sample Response

{
  "ID": "b24626a6-6d61-4b76-99f6-3ed4b4606468",
  "FullName": "Cole API User",
  "Email": "test@test.com",
  "Roles": [
    "Super Admin"
  ],
  "Departments": [
    "Global"
  ],
  "ESignKey": "test2@test.com",
  "CustomFields": [
    {
      "Key": "Employee Type",
      "Value": "Full Time"
    }
  ]
}

Live

Live Response

GET Current User /api/v1/users/current Returns authenticated user info.

Sample Request

HTTP
GET /default/api/v1/users/current HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

Sample Response

{
  "ID": "b24626a6-6d61-4b76-99f6-3ed4b4606468",
  "FullName": "Cole API User",
  "Email": "test@test.com",
  "Roles": [
    "Super Admin"
  ],
  "Departments": [
    "Global"
  ],
  "ESignKey": "test2@test.com",
  "CustomFields": [
    {
      "Key": "Employee Type",
      "Value": "Full Time"
    }
  ]
}

Live

Live Response

GET All Users /api/v1/users Returns TAP users info.

URL Elements & Parameters

$top - The max number of records

$skip - The number of records to skip

$filter - A function that must evaluate to true for a record to be returned

$select - Specifies a subset of properties to return

$orderby - Determines what values are used to order a collection of records

$inlinecount - Set 'allpages' if you want to have total count value in result

Sample Request

HTTP
GET /default/api/v1/users?$filter=FullName eq 'Cole API User' HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

Sample Response

{
  "Items": [
    {
      "ID": "b24626a6-6d61-4b76-99f6-3ed4b4606468",
      "FullName": "Cole API User",
      "Email": "cole.apiuser@cole.com",
      "Roles": [
        "Super Admin"
      ],
      "Departments": [
        "Global"
      ],
      "ESignKey": "test@test.com",
      "CustomFields": [
        {
          "Key": "Employee Type",
          "Value": "Full Time"
        }
      ]
    }
  ],
  "NextPageLink": null,
  "Count": null
}

Live

Live Response

GET All Workflows /api/v1/workflows/all Method that will return all dashboard workflows (does not support OData filtering yet).

URL Elements & Parameters

pageSize - Page size (Required)

page - Number of displayed page (Required)

configurationId - Id of Workflow Dashboard configuration

search - Text for search filter

orderBy - Field name for sorting

orderDirection - Direction of sorting. Possible values: ASC, DESC

advancedFilter - Advanced filter for records (e.g. : column1~startswith~'value'~and~column2~eq~'value')

dynamicColumns - Dynamic columns separated with comma to select and filter on

Sample Request

HTTP
GET /default/api/v1/workflows/all?pageSize=1&page=1 HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

Sample Response

Note: Main Fields in TAP have two underscores '__' as a prefix and suffix. Main Fields are ALWAYS returned in the response of this endpoint.
For Example: '__WorkflowName__', '__WorkflowDescription__', '__CurrentAssignee__', '__DateCreated__', etc.

{
  "Items": [
    {
      "ResultSetId": "de7d60b1-ec0b-4d90-8988-0a3d8d3727e9",
      "TaskId": "de7d60b1-ec0b-4d90-8988-0a3d8d3727e9",
      "TokenId": "67f44d69-2a50-4501-9579-04c49f9f6735",
      "Columns": [
        {
          "Name": "__WorkflowName__",
          "Label": "Workflow Name",
          "Value": "Request # 00489724"
        },
        {
          "Name": "__WorkflowDescription__",
          "Label": "Workflow Description",
          "Value": "Time Range Test"
        },
        {
          "Name": "__CurrentAssignee__",
          "Label": "Current Assignee",
          "Value": "Cole Stewart (2nd)"
        },
        {
          "Name": "__DateLastUpdated__",
          "Label": "Last Updated",
          "Value": "5/14/2020 9:09:29 AM"
        },
        {
          "Name": "__DateCreated__",
          "Label": "Created",
          "Value": "5/14/2020 9:09:29 AM"
        },
        {
          "Name": "__DateSigned__",
          "Label": "Date Signed",
          "Value": ""
        },
        {
          "Name": "__DateCompleted__",
          "Label": "Completed",
          "Value": ""
        },
        {
          "Name": "__Status__",
          "Label": "Status",
          "Value": "Relationship 1"
        },
        {
          "Name": "__DocumentIdentifier__",
          "Label": "Document ID",
          "Value": ""
        },
        {
          "Name": "__EndDate__",
          "Label": "End Date",
          "Value": "12/31/2033 12:00:00 AM"
        },
        {
          "Name": "__FormProgress__",
          "Label": "Stage Progress",
          "Value": "0"
        },
        {
          "Name": "__NextSigner__",
          "Label": "Next Signer",
          "Value": ""
        }
      ],
      "Actions": [
        "edit_",
        "remove_",
        "attachments_",
        "cancel",
        "continue",
        "auditTrail",
        "changeUser",
        "offline_"
      ]
    }
  ],
  "Count": 159072
}

Live

Live Response

GET Action Required /api/v1/workflows/actionrequired Returns all workflows that require action on the behalf of the user account executing the call.

URL Elements & Parameters

pageSize - Page size (Required)

page - Number of displayed page (Required)

configurationId - Id of Workflow Dashboard configuration

search - Text for search filter

orderBy - Field name for sorting

orderDirection - Direction of sorting. Possible values: ASC, DESC

advancedFilter - Advanced filter for records (e.g. : column1~startswith~'value'~and~column2~eq~'value')

dynamicColumns - Dynamic columns separated with comma to select and filter on

Sample Request

HTTP
GET /default/api/v1/workflows/actionrequired?pageSize=1&page=1 HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

Sample Response

{
  "Items": [
    {
      "ResultSetId": "de7d60b1-ec0b-4d90-8988-0a3d8d3727e9",
      "TaskId": "de7d60b1-ec0b-4d90-8988-0a3d8d3727e9",
      "TokenId": "67f44d69-2a50-4501-9579-04c49f9f6735",
      "Columns": [
        {
          "Name": "__WorkflowName__",
          "Label": "Workflow Name",
          "Value": "Request # 00489724"
        },
        {
          "Name": "__WorkflowDescription__",
          "Label": "Workflow Description",
          "Value": "Time Range Test"
        },
        {
          "Name": "__CurrentAssignee__",
          "Label": "Current Assignee",
          "Value": "Cole Stewart (2nd)"
        },
        {
          "Name": "__DateLastUpdated__",
          "Label": "Last Updated",
          "Value": "5/14/2020 9:09:29 AM"
        },
        {
          "Name": "__DateCreated__",
          "Label": "Created",
          "Value": "5/14/2020 9:09:29 AM"
        },
        {
          "Name": "__DateSigned__",
          "Label": "Date Signed",
          "Value": ""
        },
        {
          "Name": "__DateCompleted__",
          "Label": "Completed",
          "Value": ""
        },
        {
          "Name": "__Status__",
          "Label": "Status",
          "Value": "Relationship 1"
        },
        {
          "Name": "__DocumentIdentifier__",
          "Label": "Document ID",
          "Value": ""
        },
        {
          "Name": "__EndDate__",
          "Label": "End Date",
          "Value": "12/31/2033 12:00:00 AM"
        },
        {
          "Name": "__FormProgress__",
          "Label": "Stage Progress",
          "Value": "0"
        },
        {
          "Name": "__NextSigner__",
          "Label": "Next Signer",
          "Value": ""
        }
      ],
      "Actions": [
        "edit_",
        "remove_",
        "attachments_",
        "cancel",
        "continue",
        "auditTrail",
        "changeUser",
        "offline_"
      ]
    }
  ],
  "Count": 159072
}

Live

Live Response

GET Task Values /api/v1/workflows/{taskId}/view View values from specific workflow task by "{taskId}"

URL Elements & Parameters

{taskId} - ID of workflow task

include - Additional properties to include. Use "fieldCode" value to add EchoSign code to result.

Sample Request

HTTP
GET /default/api/v1/workflows/97244a03-df1a-403e-8913-ad6706ad3b46/view HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

Sample Response

Note: If the value entered in a form field is modified in a later stage, the response of this call will only display the latest data and not all previous values, unlike the Audit Trail. Also, please be aware that if you have more than one form field with the same Name this can create some confusion when parsing the response body. Unique Field Names are highly recommended.

[
  {
    "Label": "From",
    "Value": "05/12/2020"
  },
  {
    "Label": "Is all information accurate?",
    "Value": "Option 1"
  },
  {
    "Label": "1. Record Code Name",
    "Value": "Accounts Payable"
  },
  {
    "Label": "1. Retention Period",
    "Value": "7 Years"
  },
  {
    "Label": "1. Record Code",
    "Value": "ACC-1020"
  },
  {
    "Label": "To",
    "Value": "05/12/2020"
  },
  {
    "Label": "Description",
    "Value": "asdf"
  },
  {
    "Label": "Records Review Due Date",
    "Value": "05/12/2020"
  },
  {
    "Label": "Select Request Type",
    "Value": "Option 1"
  },
  {
    "Label": "Submission Date",
    "Value": "05/12/2020"
  },
  {
    "Label": "Your Email",
    "Value": "test@test.com"
  },
  {
    "Label": "Is review by all attorneys required?",
    "Value": "Option 2"
  },
  {
    "Label": "Record Location",
    "Value": "adsf"
  },
  {
    "Label": "Destruction Eligibility Date",
    "Value": "05/12/2020"
  }
]

Live

Live Response

GET Form Info /api/v1/workflows/form View form info for workflow initiation or continuation. If there is only templateId provided - will return info for start stage.

URL Elements & Parameters

templateId - ID of workflow template

tokenId - ID of workflow token (for continuation only)

additionalInfo - Adds additional field info into result

Sample Request

HTTP
GET /default/api/v1/workflows/form?templateId=f5031928-95d6-4169-8d95-a9fc5b89c5ae HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

Sample Response

{
  "TemplateId": "f5031928-95d6-4169-8d95-a9fc5b89c5ae",
  "ResultSetId": null,
  "TaskId": null,
  "TokenId": null,
  "TemplateName": "Cole API Training 2020",
  "Title": null,
  "StageTitle": "Stage 1",
  "Status": null,
  "ActiveRelationship": null,
  "IsContinuable": true,
  "CurrentAssignee": null,
  "IsWizardEnabled": false,
  "FormSections": [
    {
      "title": "Form",
      "sectionIndex": 0
    },
    {
      "title": "Submit",
      "sectionIndex": 1
    }
  ],

  "AdditionalWorkflowInfo": {
    "allConditions": []
  },
  "FormFields": [
    {
      "ID": "form-element-wrapper_1",
      "Name": "element1",
      "Label": "Text 1 User Readable",
      "Value": "",
      "Required": false,
      "Editable": true,
      "Validation": "",
      "FieldType": "text-box",
      "AdditionalInfo": null
    },
    {
      "ID": "form-element-wrapper_3",
      "Name": "element3",
      "Label": "Area 1",
      "Value": "",
      "Required": false,
      "Editable": true,
      "Validation": null,
      "FieldType": "text-area",
      "AdditionalInfo": null
    },
    {
      "ID": "form-element-wrapper_4",
      "Name": "element4",
      "Label": "Dropdown 1",
      "Value": "",
      "Required": false,
      "Editable": true,
      "Validation": "drop-down",
      "FieldType": "drop-down",
      "AdditionalInfo": null
    },
    {
      "ID": "form-element-wrapper_6",
      "Name": "element6",
      "Label": "Radio 1",
      "Value": "",
      "Required": false,
      "Editable": true,
      "Validation": "radio-button",
      "FieldType": "radio-button",
      "AdditionalInfo": null
    },
    {
      "ID": "form-element-wrapper_7",
      "Name": "element7",
      "Label": "File Field 1",
      "Value": "",
      "Required": false,
      "Editable": true,
      "Validation": null,
      "FieldType": "file-upload",
      "AdditionalInfo": null
    }
  ]
}

Live

Live Response

POST Initiate /api/v1/workflows/{templateId}/form Initiates workflow by workflow template ID.

URL Elements & Parameters

templateId - ID of workflow template (Required)
Note: Each revision has a different templateID. Regardless of the ID provided to this parameter ONLY the latest revision of the template will be initiated.

Allowed Content Types

application/json in structure { "fieldName" : "fieldValue" }
multipart/form-data (only way to submit files) in structure { "fieldName" : "fieldValue" }
application/x-www-form-urlencoded in structure fieldName1=fieldValue1&fieldName2=fieldValue2

Request Body

Sample Request

HTTP
POST /default/api/v1/workflows/f5031928-95d6-4169-8d95-a9fc5b89c5ae/form HTTP/1.1
Host: default.stagingtap.thinksmart.com
Content-Type: application/json
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

{
  "element1": "Cole",
  "element3": "This is an area field \n don't you know",
  "element4": "Dogs",
  "element6": "One"
}

Sample Response

{
  "ResultSetId": "e5dc17e3-bee1-4e52-9015-f67849827a67",
  "TokenCollection": [
    "10a73c62-7ed3-4c85-80cb-e15d22381937"
  ]
}

Live

Live Response

PUT Continue /api/v1/workflows/{tokenId}/form Submit active workflow by Token ID.

URL Elements & Parameters

{tokenId} - ID of workflow token

Allowed Content Types

application/json in structure { "fieldName" : "fieldValue" }
multipart/form-data (only way to submit files) in structure Content-Disposition: form-data
 key=<elementid of upload form field> value=<filepath on local system>
application/x-www-form-urlencoded in structure fieldName1=fieldValue1&fieldName2=fieldValue2

Request Body

Sample Request

HTTP
PUT /default/api/v1/workflows/024775a4-ba29-4a47-a113-08d2173d66a5/form HTTP/1.1
Host: default.stagingtap.thinksmart.com
Content-Type: application/json
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

{
  "element1": "Cole 2"
}

Sample Response

{
  "ResultSetId": "9d4422f6-b671-46d9-9a59-bd70c4d25131",
  "TokenCollection": [
    "da85043a-ee64-4e79-a980-cba29540a93d"
  ]
}

Live

Live Response

GET File Attachments /api/v1/workflows/{resultSetId}/files View workflow attachments by resultSetId

URL Elements & Parameters

{resultSetId} - ID of workflow

Sample Request

HTTP
GET /default/api/v1/workflows/21c237e9-80ff-4a77-93f1-5a6502537d06/files HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

Sample Response

[
  {
    "ID": "340657b6-c209-4bc7-a4e7-525a46147fb9",
    "Name": "Example.pdf",
    "UploadedBy": "Cole API User",
    "UploadedOn": "2020-05-17T23:59:59"
  }
]

Live

Live Response

DELETE Cancel Sent Documents /api/v1/workflows/{resultSetId}/docs Terminates workflow instance by resultSetId

URL Elements & Parameters

{resultSetId} - Unique ID of workflow instance

onlyReminders - Resets only reminders of workflow ("cancel and continue" if false)

Sample Request

HTTP
DELETE /default/api/v1/workflows/f4556b4b-b1b6-4311-8535-30680962da4e/docs HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

Sample Response

"f15c5db3-4fbb-467d-a06d-c2ae6d6ef883"

Live

Live Response

GET Signed Documents /api/v1/workflows/{resultSetId}/docs View workflow signed documents by resultSetId

URL Elements & Parameters

{resultSetId} - Unique ID of workflow instance

Sample Request

HTTP
GET /default/api/v1/workflows/0343d707-68a9-4169-894b-4d10b511c489/docs HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

Sample Response

[
  {
    "ID": "24db6805-65c1-4116-ae19-c11213e2db21",
    "Name": "Example_20200518",
    "Status": "Signed",
    "SignedOn": "2020-05-18T09:04:58.89",
    "AgreementID": "3AAABLblqZhCFTIk62mlFlFg_z_qogm-R7D4bbfz2LyntZ5B85ckGzT98lgR_YNoCDouaY3Iq0AB8V3kPK1gnd59Mpgv5Ggjz",
    "UploadedOn": "2020-05-18T09:04:37.363",
    "UploadedBy": "Cole Stewart (2nd)"
  }
]

Live

Live Response

DELETE Cancel Workflow /api/v1/workflows/{resultSetId}/cancel Cancels workflow instance by resultSetId

URL Elements & Parameters

{resultSetId} - Unique ID of workflow instance

Sample Request

HTTP
DELETE /default/api/v1/workflows/1ee7fe50-c779-4f46-ace8-7197ed04bb63/cancel HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

Sample Response

-- 1154 No Content --

Live

Live Response

PUT Reassign Workflow /api/v1/workflows/{tokenId}/assign/{userId} Assigns new user to specific workflow token by tokenId

URL Elements & Parameters

{tokenId} - ID of workflow token (Required)

userId - New user ID (Required)

message - (Required)

Sample Request

HTTP
PUT /default/api/v1/workflows/4420b8cc-3e37-45c6-8292-f6f86f2a260d/assign/3883892d-81e0-4606-a18c-406a3ca09355? HTTP/1.1
Host: default.stagingtap.thinksmart.com
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

Sample Response

-- 1150 OK --

Live

Live Response

PUT Save Workflow /api/v1/workflows/{resultsetId} Saves any form by resultSetId

New Endpoints August 2020

POST Archive by Filter /api/v1/workflows/archive/filter Archives records by Filter. Archived records can be restored with Restore calls.

Allowed Content Types

application/json

Request Body

Sample Request

HTTP
POST
/default/api/v1/workflows/archive/filter HTTP/1.1
Host: default.stagingtap.thinksmart.com
Content-Type: application/json
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

{
  "PageSize": 1,
  "Page": 1,
  "ConfigurationId": "",
  "Search": "",
  "OrderBy": "",
  "OrderDirection": "",
  "AdvancedFilter": "__WorkflowDescription__~contains~'Sample Workflow'",
  "DynamicColumns": "",
  "IsNullFilter": true
}

Sample Response

{
  "12b9e358-e6ac-460d-8df4-91f3f9f1f2a4": true
}

Live

Live Response

POST Archive by ID /api/v1/workflows/archive Archives records by resultSetId. Archived records can be restored with Restore calls.

Allowed Content Types

application/json

Request Body

Sample Request

HTTP
POST
/default/api/v1/workflows/archive HTTP/1.1
Host: default.stagingtap.thinksmart.com
Content-Type: application/json
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

[
  "12b9e358-e6ac-460d-8df4-91f3f9f1f2a4",
  "f4e07773-3149-4dc7-bff6-e12bc8faf544"
]

Sample Response

{
  "12b9e358-e6ac-460d-8df4-91f3f9f1f2a4": true,
  "f4e07773-3149-4dc7-bff6-e12bc8faf544": true
}

Live

Live Response

POST Archive by Name /api/v1/workflows/archive/name Archives records by workflow name. Archived records can be restored with Restore calls.

Allowed Content Types

application/json

Request Body

Sample Request

HTTP
POST
/default/api/v1/workflows/archive/name HTTP/1.1
Host: default.stagingtap.thinksmart.com
Content-Type: application/json
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

[
  "Request # 00504395",
  "Request # 00504397"
]

Sample Response

{
  "Request # 00504395": true,
  "Request # 00504397": true
}

Live

Live Response

POST Delete by Filter /api/v1/workflows/delete/filter Deletes records by Filter. Deleted records are removed permanently.

Allowed Content Types

application/json

Request Body

Sample Request

HTTP
POST
/default/api/v1/workflows/delete/filter HTTP/1.1
Host: default.stagingtap.thinksmart.com
Content-Type: application/json
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

{
  "PageSize": 1,
  "Page": 1,
  "ConfigurationId": "",
  "Search": "",
  "OrderBy": "",
  "OrderDirection": "",
  "AdvancedFilter": "__WorkflowDescription__~contains~'Sample Workflow'",
  "DynamicColumns": "",
  "IsNullFilter": true
}

Sample Response

{
  "12b9e358-e6ac-460d-8df4-91f3f9f1f2a4": true
}

Live

Live Response

POST Delete by ID /api/v1/workflows/delete Deletes records by resultSetId. Deleted records are removed permanently.

Allowed Content Types

application/json

Request Body

Sample Request

HTTP
POST
/default/api/v1/workflows/delete HTTP/1.1
Host: default.stagingtap.thinksmart.com
Content-Type: application/json
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

[
  "12b9e358-e6ac-460d-8df4-91f3f9f1f2a4",
  "f4e07773-3149-4dc7-bff6-e12bc8faf544"
]

Sample Response

{
  "12b9e358-e6ac-460d-8df4-91f3f9f1f2a4": true,
  "f4e07773-3149-4dc7-bff6-e12bc8faf544": true
}

Live

Live Response

POST Delete by Name /api/v1/workflows/delete/name Deletes records by workflow name. Deleted records are removed permanently.

Allowed Content Types

application/json

Request Body

Notes

Returns 500 upon failure to delete.

Sample Request

HTTP
POST
/default/api/v1/workflows/delete/name HTTP/1.1
Host: default.stagingtap.thinksmart.com
Content-Type: application/json
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

[
  "Request # 00504395",
  "Request # 00504397"
]

Sample Response

{
  "Request # 00504395": true,
  "Request # 00504397": true
}

Live

Live Response

POST Restore by ID /api/v1/workflows/restore Restores previously-archived records by workflow name.

Allowed Content Types

application/json

Request Body

Sample Request

HTTP
POST
/default/api/v1/workflows/restore HTTP/1.1
Host: default.stagingtap.thinksmart.com
Content-Type: application/json
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

[
  "12b9e358-e6ac-460d-8df4-91f3f9f1f2a4",
  "f4e07773-3149-4dc7-bff6-e12bc8faf544"
]

Sample Response

{
  "12b9e358-e6ac-460d-8df4-91f3f9f1f2a4": true,
  "f4e07773-3149-4dc7-bff6-e12bc8faf544": true
}

Live

Live Response

POST Restore by Name /api/v1/workflows/restore/name Restores previously-archived records by workflow name.

New Endpoints in TAP 1.17

TAP 1.17 released in May 2024 has introduced a variety of new endpoints detailed below:

New API Endpoints to get roles and departments and Create/ Update/ Delete TAP users.

As part of this new feature 5 new endpoints are created. User account being used for authentication should have administration page access to generate a valid token for this call.

·      Get Roles

·      Get Departments

·      Create User

·      Update User

·      Delete User

 

Get Roles

This API is used to get all existing roles. These role id’s further can be used for creating or updating users.

URL :     GET - https://tenant-url/api/v1/users/roles

 

clipboard_ec58a8f452febfcddf04a6c6eb0d48f61.png

 Get Departments

This API is used to get all existing departments. These department id’s further can be used for creating or updating users.

URL :     GET - https://tenant-url/api/v1/users/departments

 clipboard_e2d8214cc1716e5b693eb4f6b61ddbbc4.png

Create User

This API is used to create users through Json. We can either create single or multiple users at a time.

Required fields to create a user is Login/Password/FirstName/LastName/Roles/Departments

URL :     POST - https://tenant-url/api/v1/users

Below is the sample Json for creating a user.

[{"FirstName":"John1",

"lastName":"Doe",

"Login":"john@gmail.com",

"Password":"QJDnsh2022!",

"Roles":["4ac13c63-dd85-4c58-beb6-87c0d84aba5a","def4a3c8-8fd7-4fd2-85c4-2e2be65f653a"],

"Departments":["1d06831c-2a37-4dc1-b6ba-c96406b8e722"],

"SisenseUserName":"test",

"SisenseUserPassword":"password",

"GenericFields":[{"FieldCode":"domainaddress","FieldValue":"test"}]

},

{"FirstName":"John2",

"lastName":"Doe",

"Login":"john2@gmail.com",

"Password":"QJDnsh2022!",

"Roles":["4ac13c63-dd85-4c58-beb6-87c0d84aba5a"],

"Departments":["1d06831c-2a37-4dc1-b6ba-c96406b8e722"]

}]

 

clipboard_e4e03273e8f3e41806b8d7e452765588a.png

Update User

This API is used to update users through Json. We can either update single or multiple users at a time.

Required fields to update a user is Login

URL :  PATCH - https://tenant-url/api/v1/users

Below is the sample Json for updating a user.

[{"FirstName":"John",

"lastName":"Doe",

"Login":"john@gmail.com"

},

{"FirstName":"John",

"lastName":"Doe",

"isLockedOut":true,

"Login":"john2@gmail.com",

"Roles":["83e7da9c-f259-4918-9bb5-d193c401595f"],

"Departments":["1d06831c-2a37-4dc1-b6ba-c96406b8e722"]

}]

 

clipboard_e5e86d8de744541ef00420b95edba306d.png

Delete User

This API is used to delete users through Json. We can either delete single or multiple users at a time.

Required fields to delete a user is Login

URL :  DELETE - https://tenant-url/api/v1/users

Below is the sample Json for deleting a user.

["john@gmail.com","john1@gmail.com"]

 

clipboard_e9284566ee885aca098d41f486ed50a1f.png

New API Endpoints to Get Comments

New Features

·       Get Comments by Workflow ID/ ResultSet Id

·       Get Comments by Workflow Name

·       Get Comments by Filter Id.

 

Get Comments by Workflow IDs/ ResultSet Ids

This endpoint is used to get workflow comments from a workflow or list of workflows based on provided ID/ResultSetID.

URL :  GET - https://tenant-url/api/v1/workflows/comments

clipboard_e17c5d0a48b52bc5e0c00190b9f9770f8.png

 

//Http Get request to

// https://default.local-dev.thinksmart.com/local/api/v1/workflows/comments

//Body Request :

["4BA397D6-FBDF-4EFE-B459-1587B6CF6748", "5E100D0A-3924-4B57-B892-32B31E385D44"]

 

//Response

[

    {

        "WorkflowName": "Request # 00000002",

        "CommentsFieldsList": [

            {

                "User": "khyati super admin desai",

                "Comments": "second comment",

                "CommentsCreatedDate": "2023-10-03T15:11:19.75"

            },

            {

                "User": "khyati super admin desai",

                "Comments": "third comment",

                "CommentsCreatedDate": "2023-10-03T15:11:19.77"

            }

        ]

    },

    {

        "WorkflowName": "Request # 00000007",

        "CommentsFieldsList": [

            {

                "Message": "Record contains no comments"

            }

        ]

    }

]

 

 

Get Comments by Workflow Names

This endpoint is used to get workflow comments from a workflow or list of workflows based on provided Workflow Name(s).

URL :  GET - https://tenant-url/api/v1/workflows/comments/name

clipboard_e4b8bc34df827ffe8e03a39e1d6c8641c.png

//Http Get request to

// https://default.local-dev.thinksmart.com/local/api/v1/workflows/comments/name

//Body Request :

["Request # 00000003","Request # 00000002"]

//Response

 

[
    {
        "WorkflowName": "Request # 00335992",
        "Count": 1,
        "Error": "",
        "CommentsFieldsList": [
            {
                "User": "Uma Mahamkali",
                "Comments": "@uma.mahamkali@mitratech.com",
                "CommentsCreatedDate": "2020-10-14T03:12:06.51"
            }
        ]
    },
    {
        "WorkflowName": "Request # 00387340",
        "Count": 8,
        "Error": "",
        "CommentsFieldsList": [
            {
                "User": "Indrajeet Kumar",
                "Comments": "Test1",
                "CommentsCreatedDate": "2021-02-05T02:40:37.243"
            },
            {
                "User": "Indrajeet Kumar",
                "Comments": "Test2",
                "CommentsCreatedDate": "2021-02-05T02:40:39.907"
            },
            {
                "User": "Indrajeet Kumar",
                "Comments": "Test3",
                "CommentsCreatedDate": "2021-02-05T02:40:42.663"
            },
            {
                "User": "Indrajeet Kumar",
                "Comments": "Test4",
                "CommentsCreatedDate": "2021-02-05T02:40:45.73"
            },
            {
                "User": "Indrajeet Kumar",
                "Comments": "Test5",
                "CommentsCreatedDate": "2021-02-05T02:40:48.683"
            },
            {
                "User": "Indrajeet Kumar",
                "Comments": "Test6",
                "CommentsCreatedDate": "2021-02-05T02:40:55.79"
            },
            {
                "User": "Indrajeet Kumar",
                "Comments": "Test8",
                "CommentsCreatedDate": "2021-02-05T02:41:16.367"
            },
            {
                "User": "Indrajeet Kumar",
                "Comments": "Test9",
                "CommentsCreatedDate": "2021-02-05T02:41:20.577"
            }
        ]
    }
]

 

Get Comments by Filter Id

This endpoint is used to get workflow comments from a workflow or list of workflows based on provided dashboard view Filter ID.

URL :  GET - https://tenant-url/api/v1/workflows/comments/all

Get Comments

//Http Get request to

// https://default.local-dev.thinksmart.com/local/api/v1/workflows/comments/all

//Body Request :

 {

"Page": 1,

"PageSize" : 2,

"ConfigurationId": "e25d1683-a234-4c08-aa9b-44182924c635",

}

//Response

{

    "Items": [

        {

            "WorkflowName": "Request # 00000004",

            "CommentsFieldsList": [

                {

                    "Message": "Record contains no comments"

                }

            ]

        },

        {

            "WorkflowName": "Request # 00000003",

            "CommentsFieldsList": [

                {

                    "User": "khyati super admin desai",

                    "Comments": "Hello from Khyati Test1",

                    "CommentsCreatedDate": "2023-10-04T18:26:48.307"

                },

                {

                    "User": "khyati super admin desai",

                    "Comments": "Second comment from khyati Test 1",

                    "CommentsCreatedDate": "2023-10-04T18:26:48.323"

                },

                {

                    "User": "khyati super admin desai",

                    "Comments": "Testing order by",

                    "CommentsCreatedDate": "2023-10-12T14:29:23.717"

                },

                {

                    "User": "khyati super admin desai",

                    "Comments": "Testing order by",

                    "CommentsCreatedDate": "2023-10-12T14:30:10.44"

                }

            ]

        }

    ],

    "Count": 2

}

 

New API Endpoints to Get Discussion Section

New Features

·       Get Discussion by Workflow ID/ ResultSet Id

·       Get Discussion by Workflow Name

·       Get Discussion by Filter Id.

 

Get Discussion by Workflow IDs/ ResultSet Ids

This endpoint is used to get discussion section info for a workflow or list of workflows based on ID/ResultSetID.

URL :  GET - https://tenant-url/api/v1/workflows/discussion

clipboard_e4043f28088371ab59f57d3e4f5952d57.png

 

//Http Get request to

// https://default.local-dev.thinksmart...ows/discussion

//Body Request :

["15dc2e38-cd9b-4eeb-a245-71e4a02fcdb4","5cfeb64a-6e23-4835-85df-207984927166"]

 

//Response

[

              {

                             "WorkflowName": "Request # 00718496",

                             "Count" : 1,

                             "Error" : "",

                             "CommentsFieldsList":

                             [

                                           {

                                           "Stage": "Collab 1",

                                           "User": "Soumya Rani voore",

                                           "Comments": "This is a test comment",

                                           "CommentsCreatedDate": "2023-10-19T05:47:41.65"

                                           }

                             ]

              },

              {

                             "WorkflowName": "Request # 00718444",

                             "Count" : 3,

                             "Error" : "",

                             "CommentsFieldsList":

                             [

                                           {

                                           "Stage": "Stage 2",

                                           "User": "Testing TAP",

                                           "Comments": "its Italian pastaaa",

                                           "CommentsCreatedDate": "2023-10-18T07:13:21.113"

                                           },

                                           {

                                           "Stage": "Stage 2",

                                           "User": "NRU",

                                           "Comments": "pasta pasta pasta everywhere",

                                           "CommentsCreatedDate": "2023-10-18T07:13:56.42"

                                           },

                                           {

                                           "Stage": "Stage 2",

                                           "User": "Soumya Rani voore",

                                           "Comments": "alfredooooo",

                                           "CommentsCreatedDate": "2023-10-18T07:51:26.927"

                                           }

                             ]

              }

]

 

Get Discussion by Workflow Names

This endpoint is used to get discussion section info for a workflow or list of workflows based on provided Workflow Name(s).

URL :  GET - https://tenant-url/api/v1/workflows/discussion/name

clipboard_edfd2033b2ccf532a6009632604a44841.png

//Http Get request to

// https://default.local-dev.thinksmart...iscussion/name

//Body Request :

["Request # 00000080", "Request # 00000075"]

 

//Response

 

[

       {

             "WorkflowName" : "Request # 00000080"

             "Count" : 0,

             "Error" : []

             "CommentsFieldsList": []

       }

       {

             "WorkflowName" : "Request # 00000075"

             "Count" : "0",

             "Error" : []

              "CommentsFieldsList": []

       }

]

 

Get Discussion by Filter Id

This endpoint is used to get discussion section info for a workflow or list of workflows based on provided dashboard view Filter ID.

URL :  GET - https://tenant-url/api/v1/workflows/discussion/all

clipboard_eb03bb7c93588527557582ee6e4570aaf.png

 

//Http Get request to

// https://default.local-dev.thinksmart...discussion/all

//Body Request :

 {

"Page": 1,

"PageSize" : 5,

"ConfigurationId": "e25d1683-a234-4c08-aa9b-44182924c635",

}

//Response

{

       "Items": [

             {

                    "WorkflowName": "Request # 00718553",

                    "Count" : 0,

                    "Error" : ""

                    "CommentsFieldsList": []

             },

             {

                    "WorkflowName": "Request # 00718552",

                    "Count" : 2,

                    "Error" : "",

                    "CommentsFieldsList":

                    [

                          {

                                 "Stage": "Collab 1",

                                 "User": "Soumya Rani voore",

                                 "Comments": "medimix soap",

                                 "CommentsCreatedDate": "2023-10-19T08:53:52"

                          },

                          {

                                 "Stage": "Collab 1",

                                 "User": "NRU",

                                 "Comments": "santoor soap",

                                 "CommentsCreatedDate": "2023-10-19T09:13:55.2"

                          }

                    ]

             },

             {

                    "WorkflowName": "Request # 00718551",

                    "Count" : 1,

                    "Error" : "",

                    "CommentsFieldsList":

                    [

                          {

                                 "Stage": "Collaboration Stage",

                                 "User": "Soumya Rani voore",

                                 "Comments": "pears soap",

                                 "CommentsCreatedDate": "2023-10-19T08:53:17.52"

                          }

                    ]

             },

             {

                    "WorkflowName": "Request # 00718550",

                    "Count" : 1,

                    "Error" : "",

                    "CommentsFieldsList":

                    [

                          {

                                 "Stage": "Collaboration Stage",

                                 "User": "Soumya Rani voore",

                                 "Comments": "lux soap",

                                 "CommentsCreatedDate": "2023-10-19T08:52:06.633"

                          }

                    ]

             },

             {

                    "WorkflowName": "Request # 00718549",

                    "Count" : 1,

                    "Error" : "",

                    "CommentsFieldsList":

                    [

                          {

                                 "Stage": "Stage 2",

                                 "User": "Soumya Rani voore",

                                 "Comments": "hello there priya",

                                 "CommentsCreatedDate": "2023-10-19T08:51:09.553"

                          }

                    ]

             }

       ],

       "Count": 5

}

POST BulkAddorUpdate

Users can efficiently utilize the BulkAddOrUpdate API to manage multiple records in a single request.

Note: This call requires a TAP user account and the API is subject to the same permission limitations as this user account. Please make sure you use a Super Admin user account to gather the access token, otherwise, there is the potential that some results may not be included in the response because of limited security privileges.

URL :  POST - https://tenant-url/api/users/bulkAddorUpdate 

Sample Request and Sample Response

clipboard_e706c596ebbd6a810eb8d75fdd6ba5d99.png

The authorization for this API differs from other APIs. Please refer to the screenshot below.

clipboard_e33ec608119c092f244974e971f68c969.png

Allowed Content Types

application/json

Request Body

Sample Request

HTTP
POST
/default/api/v1/workflows/restore/name HTTP/1.1
Host: default.stagingtap.thinksmart.com
Content-Type: application/json
Authorization: Bearer d57fc1d99d15f18f9234aa181853d805

[
  "Request # 00504395",
  "Request # 00504397"
]

Sample Response

{
  "Request # 00504395": true,
  "Request # 00504397": true
}

Live

Live Response

  • Was this article helpful?