Show/Hide Toolbars

Therefore Web API Programming Interface 1.0

Thereforeâ„¢ 2015

Initial version 1 of the Web API was released with Thereforeâ„¢ 2015.

 

Thereforeâ„¢ 2015 Update 1

There were no changes in the Web API.

 

Thereforeâ„¢ 2015 Update 2

Update for version 1 of the Web API was released with Thereforeâ„¢ 2015 Update 2.

Below you can find a list of the changes.

 

New operation was added:

CloseCase

 

Added new parameters in:

GetCase response: ClosedByUser, ClosedByUserNo, ClosedOn, IsClosed.

GetWorkflowInstance response: TaskNo.

 

Added new configuration setting:

DisableNodeNameResolution

 

Thereforeâ„¢ 2015 Update 3

Update for version 1 of the Web API was released with Therefore 2015 Update 3.

Below you can find list of the changes.

 

Removed configuration setting from TheXMLServer.exe.config:

EnabledTenants key - do not use it anymore. Instead you can manage the tenant access via the TheTenantConnect.config file. For more details, please see the Multi-Tenancy Manual.

 

 WebAPI.EnableTenantsInConfigFile

 

Thereforeâ„¢ 2016

Update for version 1 of the Web API was released with Thereforeâ„¢ 2016.

Below you can find a list of the changes.

 

New operations were added:

EraseAllObjects

EraseObjects

ExecuteDependentFieldsQuery

GetTreeViewChildNodesAndDocuments

ReopenCase

ValidateKeywords

 

Added new parameters in:

FillDependentFields request: CaseDefinitionNo, CategoryNo, ExcludeRedundant, PrimaryFieldNo.

FillDependentFields response: HitCount.

GetCaseDefinition response: SelectFromDropDownBox, DisplayProperties, ImageDocNo, IsImageFieldType, IsImageFieldType.

GetCategoryInfo response: SelectFromDropDownBox, DisplayProperties, ImageDocNo, IsImageFieldType, IsImageFieldType, BackgroundColor, CoverMode, DocumentPreview, EmptyDocMode, FullTextDate, FullTextMode.

GetNextFullTextQueryRows request: RowBlockSize.

GetNextMultiQueryRows request: RowBlockSize

GetWebAPIServerVersion response: ServiceVersion.

 

Other changes:

GetConvertedDocStreams now converts ALL streams of the document if parameter StreamNos is an empty list.

 

Thereforeâ„¢ 2016 Update 1

Update for version 1 of the Web API was released with Thereforeâ„¢ 2016 Update 1.

Below you can find a list of the changes.

 

New operations were added:

SaveCaseIndexDataQuick

SaveDocumentIndexDataQuick

 

Thereforeâ„¢ 2016 Update 6

Update for version 1 of the Web API was released with Thereforeâ„¢ 2016 Update 6.

Below you can find a list of the changes.

 

New operations were added:

CheckInDocument

CheckOutDocument

GetConnectionToken

GetConvertedDocStreamsRaw

GetDocumentStreamRaw

GetDocumentHistory

GetPermissions

MoveUserLicense

SignOut

TestCheckOutDocument

UndoCheckOutDocument

 

Added new parameters in:

ExecuteAsyncMultiQuery response: Status.

ExecuteAsyncSingleQuery response: Status.

ExecuteMultiQuery response: Status.

ExecuteSimpleQuery response: Status.

ExecuteSingleQuery response: Status.

ExecuteWorkflowQueryForAll response: InstanceNo, TokenNo, CaseDefNo, CaseDefName, CategoryNo, CategoryName, ProcessNo, ProcessName.

ExecuteWorkflowQueryForProcess response: InstanceNo, TokenNo, CaseDefNo, CaseDefName, CategoryNo, CategoryName, ProcessNo, ProcessName.

GetNextSingleQueryRows response: Status. GetNextMultiQueryRows response: Status.

GetWorkflowInstance response: Description.

 

Other changes:

JSON/XML endpoints are available now. Only POST request are supported by JSON/XML endpoints. All methods and properties are the same for SOAP and JSON/XML.

Cross-Origin Resource Sharing is possible for JSON/XML endpoints. Added new configuration parameters: IsCrossOriginAllowed, CrossOriginCacheAge.

New HTTP header "The-Client-Type" (Use it to manage usage of your licenses).

Added WSFaultDetails into SOAP detail section and in JSON/XML error response.

GetDocumentIndexData  - performance improved.

A security change on the server to improve security of the service. Now all Web API clients for Windows Authenticated users require Impersonation level of Impersonation to be set to authenticate the user. Previously developed client code may stop working with an error claiming about invalid Impersonation Level. In case of the error Impersonation level should be set on the client. Here is a code sample to fix the error:

 

         ThereforeServiceClient client = CreateClientWindowsAuth();

         client.ClientCredentials.Windows.AllowedImpersonationLevel = TokenImpersonationLevel.Impersonation;

 

Thereforeâ„¢ 2017

Update for version 1 of the Web API was released with Thereforeâ„¢ 2017.

Below you can find a list of the changes.

 

New operations were added:

ClearWorkflowInstanceErrors

 

Added new parameters in:

ExecuteAsyncMultiQuery response: Columns.

ExecuteAsyncSingleQuery response: Columns.

ExecuteDependentFieldsQuery response: IsTabControlFieldType, ParentFieldNo, ShowInTabNo, Tabs.

ExecuteMultiQuery response: Columns.

ExecuteSimpleQuery response: Columns.

ExecuteSingleQuery response: Columns.

ExecuteWorkflowQueryForAll request: new enumeration member WSWorkflowFlags.ErrorInstances.

response: Columns.

ExecuteWorkflowQueryForProcess request: new enumeration member WSWorkflowFlags.ErrorInstances.

response: Columns.

GetCaseDefinition response: IsTabControlFieldType, ParentFieldNo, ShowInTabNo, Tabs.

GetCategoryInfo response: IsTabControlFieldType, ParentFieldNo, ShowInTabNo, Tabs.

GetLinkedWorkflowsForDoc response: ErrorCode, ErrorInfo, ErrorTimestamp.

GetNextMultiQueryRows response: Columns.

GetNextSingleQueryRows response: Columns.

GetWorkflowInstance response: CustomEntryTypeNumber, ErrorCode, ErrorInfo, ErrorTimestamp.

 

Other changes:

For all the ExecuteXXXQuery methods:

ouse new property Columns to get list of columns returned by the query.

oQuery result values for date field are returned as a string with following format: yyyy-MM-dd (example 2017-03-25).

oQuery result values for money field are returned as a string with following format: 0.00 (examples 0.01 or 999.50).

ological values are returned as an integer: 0,1.

okeywords are represented as a comma delimited string in square brackets (example: [kw1, kw2, kw3]).

 

Thereforeâ„¢ 2017 Update 4

Update for version 1 of the Web API was released with Thereforeâ„¢ 2017 Update 4.

Below you can find a list of the changes.

 

Major changes

1. Value of the date field in the index data can be specified/retrieved as a string in ISO8601 format. Example: 2017-03-05.

2. Field names (FieldName property) can be used instead of field numbers (FieldNo property) to refer to index data fields.

 

 

New operations were added:

EraseObjects

GetConnectionTokenFromADFSToken

PreprocessIndexData

PreprocessTableRow

 

Added new parameters in:

CreateCase request: DoFillDependentFields, <DateIndexData>.DataISO8601Value, <AnyIndexData>.FieldName.

CreateDocument request: DoFillDependentFields, WithAutoAppendMode, ConversionOptions, LastChangeTime, DontResetCategoryDefaults, <DateIndexData>.DataISO8601Value, <AnyIndexData>.FieldName.

ExecuteAsyncMultiQuery request: MaxRows, Mode, RowBlockSize.

response: <CategoryField>.AccessMask, <CategoryField>.IsAutoAppendField.

ExecuteAsyncSingleQuery response: <CategoryField>.AccessMask, <CategoryField>.IsAutoAppendField.

ExecuteDependentFieldsQuery request: <DateIndexData>.DataISO8601Value, <AnyIndexData>.FieldName, <TableIndexData>.AccessMask, <TableIndexData>.AccessIsEditableRow.

response: <CategoryField>.AccessMask, <CategoryField>.IsAutoAppendField.

ExecuteFullTextQuery response: <FullTextQueryResultRow>.CategoryName.

ExecuteMultiQuery request: MaxRows, Mode, RowBlockSize.

response: <CategoryField>.AccessMask, <CategoryField>.IsAutoAppendField.

ExecuteSimpleQuery, ExecuteSingleQuery, ExecuteWorkflowQueryForAll, ExecuteWorkflowQueryForProcess responses: <CategoryField>.AccessMask, <CategoryField>.IsAutoAppendField.

FillDependentFields request: IsAccessMaskNeeded.

response: <DateIndexData>.DataISO8601Value, <AnyIndexData>.FieldName, <TableIndexData>.AccessMask, <TableIndexData>.AccessIsEditableRow.

FinishCurrentWorkflowTask request: NextUsers.

GetCase request: IsAccessMaskNeeded.

response: AccessMask, <DateIndexData>.DataISO8601Value, <AnyIndexData>.FieldName, <TableIndexData>.AccessMask, <TableIndexData>.AccessIsEditableRow.

GetCaseDefinition request: IsAccessMaskNeeded.

response: <CaseDefinition>.AccessMask , <CategoryField>.AccessMask, <CategoryField>.IsAutoAppendField.

GetCategoriesTree request: AccessMask.

GetCategoryInfo request: IsAccessMaskNeeded.

response: <Category>.AccessMask, <CategoryField>.AccessMask, <CategoryField>.IsAutoAppendField.

GetDocument request: IsAccessMaskNeeded.

response: AccessMask, <DateIndexData>.DataISO8601Value, <AnyIndexData>.FieldName, <TableIndexData>.AccessMask, <TableIndexData>.AccessIsEditableRow.

GetDocumentIndexData request: IsAccessMaskNeeded.

response: AccessMask, <DateIndexData>.DataISO8601Value, <AnyIndexData>.FieldName, <TableIndexData>.AccessMask, <TableIndexData>.AccessIsEditableRow.

GetDocumentProperties response: CheckedOutByDisplayName, CheckedOutByUserNo, CreatedByDisplayName, CreatedByUserNo, ModifiedByDisplayName, ModifiedByUserNo.

GetNextFullTextQueryRows response: <FullTextQueryResultRow>.CategoryName.

GetNextMultiQueryRows, GetNextSingleQueryRows responses: <CategoryField>.AccessMask, <CategoryField>.IsAutoAppendField.

GetThumbnail request: RequestedThumbnailFormat.

SaveCaseIndexData, SaveCaseIndexDataQuick, SaveDocumentIndexData, SaveDocumentIndexDataQuick, SubmitCreateDocumentBatch, SubmitUpdateDocumentBatch requests: <DateIndexData>.DataISO8601Value, <AnyIndexData>.FieldName.

UpdateDocument request: DoFillDependentFields, <DateIndexData>.DataISO8601Value, <AnyIndexData>.FieldName.

 

Other changes:

Operation EraseObject was deleted. Use the EraseObjects operation instead.

GetLinkedWorkflowsForDoc response: ErrorCode element was replaced with ErrorString element.

GetQuerySpecification response: Added new sequence element 'Not' in the ValidQueryOperators.

GetTreeViewChildNodes, GetTreeViewChildNodesAndDocuments, GetTreeViewNodeDocuments: The operations were redesigned.

GetWorkflowInstance response: <WFInstance>.ErrorCode was replaces by <WFInstance>.ErrorString.

 

Thereforeâ„¢ 2018

Update for version 1 of the Web API was released with Thereforeâ„¢ 2018.

Below you can find a list of the changes.

 

Major changes

1. Multilanguage is supported.

2. New DateTime field type was added.

3. Added support for decimal fields/values to MoneyIndexData elements.

 

Added new parameters in:

AddStreamsToDocument request: MultipageStreamName.

CreateCase request: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

CreateDocument request: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData, ConversionOptions.MultipageStreamName.

response: VersionNo.

ExecuteAsyncMultiQuery request: <Condition>.TimeZone.

response: <CategoryField>.IsDateTimeFieldType , <CategoryField>.Scale.

ExecuteAsyncSingleQuery response: <CategoryField>.IsDateTimeFieldType , <CategoryField>.Scale.

ExecuteDependentFieldsQuery request: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

response: <CategoryField>.IsDateTimeFieldType , <CategoryField>.Scale.

ExecuteMultiQuery, ExecuteSimpleQuery, ExecuteSingleQuery, ExecuteWorkflowQueryForAll, ExecuteWorkflowQueryForProcess responses: <CategoryField>.IsDateTimeFieldType , <CategoryField>.Scale.

FillDependentFields request: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

response: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

GetCase response: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

GetCaseDefinition response: <CategoryField>.IsDateTimeFieldType , <CategoryField>.Scale, Description, Height, SubCaseFieldIx, TableName, Title, TitleLength, TypeNo, Width.

GetCategoryInfo response: <CategoryField>.IsDateTimeFieldType , <CategoryField>.Scale.

GetConvertedDocStreams request: MultipageStreamName.

GetConvertedDocStreamsRaw request: MultipageStreamName.

GetDocument response: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

GetDocumentIndexData response: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

GetKeywordsByFieldNo response: KeywordNos.

GetNextMultiQueryRows response: <CategoryField>.IsDateTimeFieldType , <CategoryField>.Scale.

GetNextSingleQueryRows response: <CategoryField>.IsDateTimeFieldType , <CategoryField>.Scale.

GetTreeViewChildNodes response: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

GetTreeViewChildNodesAndDocuments response: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

GetTreeViewNodeDocuments response: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

PreprocessIndexData request: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

response: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

PreprocessTableRow response: <MoneyIndexData>.DecimalDataValue, <TableFieldDataRow>.DateTimeIndexData.

SaveCaseIndexData request: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

SaveCaseIndexDataQuick request: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, DateTimeIndexData.

SaveDocumentIndexData request: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData.

response: VersionNo

SaveDocumentIndexDataQuick request: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, DateTimeIndexData.

response: VersionNo

SubmitCreateDocumentBatch request: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData, ConversionOptions.

SubmitUpdateDocumentBatch request: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData, ConversionOptions.

UpdateDocument request: <MoneyIndexData>.DecimalDataValue, <MultipleKeywordData>.KeywordNos, <TableFieldDataRow>.DateTimeIndexData, DateTimeIndexData, ConversionOptions.

 

 

Thereforeâ„¢ 2019

Update for version 1 of the Web API was released with Thereforeâ„¢ 2019.

Below you can find a list of the changes in Therefore 2019 ... 2019 Update 2.

 

New operations were added:

ClearLocalCache

CopyEForm

DeleteEForm

DeleteFolder

GetEForm

GetFolder

GetJWTToken

GetKeywordsByKeyDic

GetReferencedTableInfo

GetSystemCustomerId

GetUploadedEFormFile

GetUserDetails

QueryDependentFieldsDirect

SaveEForm

SaveEFormDefaultSubmission

SaveFolder

SetParentFolder

SubmitEForm

UploadEFormFile

VerifyReCaptchaToken

 

Changes were done in requests/responses of the following operations:

EraseObjects, ExecuteAsyncMultiQuery, ExecuteAsyncSingleQuery, ExecuteDependentFieldsQuery, ExecuteMultiQuery, ExecuteSimpleQuery, ExecuteSingleQuery, ExecuteWorkflowQueryForAll, ExecuteWorkflowQueryForProcess, FillDependentFields, GetCaseDefinition, GetCategoryInfo, GetKeywordsByFieldNo, GetNextMultiQueryRows, GetNextSingleQueryRows, GetObjectRights, GetObjects, GetPermissions, HasPermissions, PreprocessIndexData.

 

 

Thereforeâ„¢ 2020

Update for version 1 of the Web API was released with Thereforeâ„¢ 2020.

Below you can find a list of the changes.

 

New operations were added:

DeleteEFormDraftSubmission

GetClientDiscoveryInfo

GetPublicSettingInt

GetPublicSettingString

HandleESignaturePushNotification

RenameObject

SaveEFormDraft

SearchEFormSubmission

UploadSessionAppendChunkRaw

UploadSessionStart

 

DeleteDashboard

DeleteUserDashboards

DeleteUserFavorites

ExecuteStatisticsQuery

GetDashboard

GetDocumentStreamFile

GetFieldsSaveUsageOrder

GetFieldsSearchUsageOrder

GetUserDashboards

GetUserFavorites

GetViewingPageCount

GetViewingPages

PrepareViewing

ResetUserPwd

SaveDashboard

SaveUserDashboards

SaveUserFavorites

SetUserPassword

UploadSessionAppendChunkRaw

UploadSessionStart

GetRolePermissionConstants

GetRolePermissions

HasRolePermission

LinkCases

UnlinkCases

 

Changes were done in requests/responses of the following operations:

AddStreamsToDocument, ClearLocalCache, CreateDocument, EraseObjects, ExecuteFullTextQuery, GetConnectedUser, GetNextFullTextQueryRows, GetObjectRights, GetObjects, GetPermissions, HasPermissions, SaveEForm, SubmitEForm

 

Added new property RoleAccessMask (instead of the AccessMask, which is deprecated) in the following operations:

GetCategoriesTree

GetDocument

GetDocumentIndexData

GetCase

GetCaseDefinition

ExecuteFullTextQuery

GetNextFullTextQueryRows

ExecuteSimpleQuery

ExecuteSingleQuery

ExecuteAsyncSingleQuery

GetNextSingleQueryRows

ExecuteMultiQuery

ExecuteAsyncMultiQuery

GetNextMultiQueryRows

ExecuteWorkflowQueryForProcess

ExecuteWorkflowQueryForAll

 

The following operations now accept new RoleAccessMask parameter to set required permissions instead of the old AccessMask (deprecated):

GetCategoriesTree

GetObjects

 

 

Thereforeâ„¢ 2021

Update for version 1 of the Web API was released with Thereforeâ„¢ 2021.

Below you can find a list of the changes.

 

New operations were added:

DeletePortalUser

ExecuteRecycleBinQuery

GetEFormAccessToken

GetRoleAssignments

GetRoles

GetSavedQuery

GetSmartCaptureVerficationLink

GetWorkflowTaskSettings

SavePortalUser

StartTask2

StartViewingSession

StopViewingSession

UpdateTask2

ValidateFields

 

Changes were done in requests/responses of the following operations:

CopyEForm, ExecuteAsyncMultiQuery, ExecuteStatisticsQuery, ExecuteTaskInfoQuery, GetAllTreeViews, GetCaseDefinition, GetCategoryInfo, GetClientDiscoveryInfo, GetDictionaryInfo, GetEForm, GetObjects, GetTaskInfo, GetViewingThumbnails, GetWorkflowInstance, HasPermissions, SaveEForm.

 

Breaking changes:

GetRolePermissions (changes in request/response)

GetViewingPageCount (operation has been removed)

 

 

© 2024 Therefore Corporation, all rights reserved.