Overview

This is the REST documentation for TASKANA's simplehistory REST endpoints.

For all Query Parameters:
Whenever a parameter is an array type, several values can be passed by declaring that parameter multiple times.

Whenever a parameter is a complex type, the attributes of the value-object can be passed as a json. For example, a complex parameter with the name "complex-query-param" and attributes "attribute1" and "attribute2" would be specified in the following way:
complex-query-param={"attribute1":"value1","attribute2":"value2"}

Hypermedia Support

HATEOAS support is still in development. Please have a look at example responses for each resource to determine the available links.

TASKANA uses the HATEOAS (Hypermedia as the Engine of Application State) REST constraint. Most of our resources contain a _links section which contains navigation links. Besides, helping to navigate through our REST API, the navigation links also encapsulate the API. Using HATEOAS allows us to change some endpoints without modifying your frontend.

Errors

In order to support multilingual websites, TASKANA uses error codes to define which error occurred. Additionally, an optional set of message variables, containing some technical information, is added, so that the website can describe the error with all details.

The table below is an addition to the already documented TASKANA REST Service ErrorCodes

Status Code

Key

Message Variables

404 NOT_FOUND

HISTORY_EVENT_NOT_FOUND

historyEventId

History event

Get a list of all Task History Events

GET /api/v1/task-history-event

This endpoint retrieves a list of existing Task History Events. Filters can be applied.

Path parameters

No parameters.

Query parameters

Parameter Type Optional Description

event-type

Array[String]

true

Filter by the event type of the Task History Event. This is an exact match.

event-type-like

Array[String]

true

Filter by the event type of the Task History Event. This results in a substring search.. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

user-id

Array[String]

true

Filter by the user id of the Task History Event. This is an exact match.

user-id-like

Array[String]

true

Filter by the user id of the Task History Event. This results in a substring search.. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

task-id

Array[String]

true

Filter by the task id of the Task History Event. This is an exact match.

task-id-like

Array[String]

true

Filter by the task id of the Task History Event. This results in a substring search.. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

business-process-id

Array[String]

true

Filter by the business process id of the Task History Event. This is an exact match.

business-process-id-like

Array[String]

true

Filter by the business process id of the Task History Event. This results into a substring search. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

parent-business-process-id

Array[String]

true

Filter by the parent business process id of the Task History Event. This is an exact match.

parent-business-process-id-like

Array[String]

true

Filter by the parent business process id of the Task History Event. This results into a substring search. (% is appended to the beginning and end of the requested value). Further SQL "Like" wildcard characters will be resolved correctly.

task-classification-key

Array[String]

true

Filter by the task classification key of the Task History Event. This is an exact match.

task-classification-key-like

Array[String]

true

Filter by the task classification key of the Task History Event. This results into a substring search. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

task-classification-category

Array[String]

true

Filter by the task classification category of the Task History Event. This is an exact match.

task-classification-category-like

Array[String]

true

Filter by the task classification category of the Task History Event. This results into a substring search. (% is appended to the beginning and end of the requested value). Further SQL "Like" wildcard characters will be resolved correctly.

attachment-classification-key

Array[String]

true

Filter by the attachment classification key of the Task History Event. This is an exact match.

attachment-classification-key-like

Array[String]

true

Filter by the attachment classification key of the Task History Event. This results into a substring search. (% is appended to the beginning and end of the requested value). Further SQL "Like" wildcard characters will be resolved correctly.

workbasket-key

Array[String]

true

Filter by the workbasket key of the Task History Event. This is an exact match.

workbasket-key-like

Array[String]

true

Filter by the workbasket key of the Task History Event. This results in a substring search.. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

por-company

Array[String]

true

Filter by the company of the primary object reference of the Task History Event. This is an exact match.

por-company-like

Array[String]

true

Filter by the company of the primary object reference of the Task History Event. This results into a substring search. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

por-system

Array[String]

true

Filter by the system of the primary object reference of the Task History Event. This is an exact match.

por-system-like

Array[String]

true

Filter by the system of the primary object reference of the Task History Event. This results into a substring search. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

por-instance

Array[String]

true

Filter by the system instance of the primary object reference of the Task History Event. This is an exact match.

por-instance-like

Array[String]

true

Filter by the system instance of the primary object reference of the Task History Event. This results into a substring search. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

por-value

Array[String]

true

Filter by the value of the primary object reference of the Task History Event. This is an exact match.

por-value-like

Array[String]

true

Filter by the value of the primary object reference of the Task History Event. This results into a substring search. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

custom-1

Array[String]

true

Filter by the value of the field custom1. This is an exact match.

custom-1-like

Array[String]

true

Filter by the value of the field custom1. This is an exact match. This results into a substring search. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

custom-2

Array[String]

true

Filter by the value of the field custom2. This is an exact match.

custom-2-like

Array[String]

true

Filter by the value of the field custom2. This is an exact match. This results into a substring search. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

custom-3

Array[String]

true

Filter by the value of the field custom3. This is an exact match.

custom-3-like

Array[String]

true

Filter by the value of the field custom3. This is an exact match. This results into a substring search. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

custom-4

Array[String]

true

Filter by the value of the field custom4. This is an exact match.

custom-4-like

Array[String]

true

Filter by the value of the field custom4. This is an exact match. This results into a substring search. (% is appended to the beginning and end of the requested value). Further SQL "LIKE" wildcard characters will be resolved correctly.

sort-by

Array[String]

true

Sort the result by a given field. Multiple sort values can be declared. When the primary sort value is the same, the second one will be used.

Must be one of [TASK_HISTORY_EVENT_ID, BUSINESS_PROCESS_ID, PARENT_BUSINESS_PROCESS_ID, TASK_ID, EVENT_TYPE, CREATED, USER_ID, DOMAIN, WORKBASKET_KEY, POR_COMPANY, POR_SYSTEM, POR_INSTANCE, POR_TYPE, POR_VALUE, TASK_CLASSIFICATION_KEY, TASK_CLASSIFICATION_CATEGORY, ATTACHMENT_CLASSIFICATION_KEY, CUSTOM_1, CUSTOM_2, CUSTOM_3, CUSTOM_4, OLD_VALUE].

order

Array[String]

true

The order direction for each sort value. This value requires the use of 'sort-by'. The amount of sort-by and order declarations have to match. Alternatively the value can be omitted. If done so the default sort order (ASCENDING) will be applied to every sort-by value.

Must be one of [ASCENDING, DESCENDING].

page

Integer

true

Request a specific page. Requires the definition of the 'page-size'.

page-size

Integer

true

Defines the size for each page. This requires a specific requested 'page'.

Request fields

No request body.

Response fields

Path Type Optional Description

taskHistoryEvents

Array[Object]

true

The embedded task history events.

taskHistoryEvents[].taskHistoryId

String

true

Unique Id.

taskHistoryEvents[].businessProcessId

String

true

The Id of the business process.

taskHistoryEvents[].parentBusinessProcessId

String

true

The Id of the parent business process.

taskHistoryEvents[].taskId

String

true

The Id of the task.

taskHistoryEvents[].eventType

String

true

The type of the event.

taskHistoryEvents[].created

String

true

The time of event creation.

The format is ISO-8601.

taskHistoryEvents[].userId

String

true

The Id of the user.

taskHistoryEvents[].userLongName

String

true

The long name of the user.

taskHistoryEvents[].domain

String

true

Domain.

taskHistoryEvents[].workbasketKey

String

true

The key of the Workbasket.

taskHistoryEvents[].porCompany

String

true

The company the referenced primary object belongs to.

taskHistoryEvents[].porType

String

true

The type of the referenced primary object (contract, claim, policy, customer, …​).

taskHistoryEvents[].porSystem

String

true

The (kind of) system, the referenced primary object resides in (e.g. SAP, MySystem A, …​).

taskHistoryEvents[].porInstance

String

true

The instance of the system where the referenced primary object is located.

taskHistoryEvents[].porValue

String

true

The value of the primary object reference.

taskHistoryEvents[].taskOwnerLongName

String

true

The long name of the task owner.

taskHistoryEvents[].taskClassificationKey

String

true

The key of the task’s classification.

taskHistoryEvents[].taskClassificationCategory

String

true

The category of the task’s classification.

taskHistoryEvents[].attachmentClassificationKey

String

true

The classification key of the task’s attachment.

taskHistoryEvents[].oldValue

String

true

The old value.

taskHistoryEvents[].newValue

String

true

The new value.

taskHistoryEvents[].custom1

String

true

A custom property with name "1".

taskHistoryEvents[].custom2

String

true

A custom property with name "2".

taskHistoryEvents[].custom3

String

true

A custom property with name "3".

taskHistoryEvents[].custom4

String

true

A custom property with name "4".

taskHistoryEvents[].details

String

true

Details of changes within the task.

page

Object

true

The page meta data for a paged request.

page.size

Integer

true

The element size of the page.

page.totalElements

Integer

true

The total number of elements available.

page.totalPages

Integer

true

Amount of pages that are available in total.

page.number

Integer

true

The current page number.

Example request

GET /api/v1/task-history-event?page=1&page-size=3 HTTP/1.1
Authorization: Basic YWRtaW46YWRtaW4=
Content-Type: application/hal+json
Host: localhost:8080

Example response

HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/hal+json
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 3701

{
  "taskHistoryEvents" : [ {
    "taskHistoryId" : "THI:000000000000000000000000000000000000",
    "businessProcessId" : "BPI:01",
    "parentBusinessProcessId" : "",
    "taskId" : "TKI:000000000000000000000000000000000000",
    "eventType" : "CREATED",
    "created" : "2024-05-29T15:28:23.192Z",
    "userId" : "USER_2_2",
    "userLongName" : null,
    "domain" : "DOMAIN_B",
    "workbasketKey" : "WBI:100000000000000000000000000000000001",
    "porCompany" : "00",
    "porType" : "VNR",
    "porSystem" : "PASystem",
    "porInstance" : "00",
    "porValue" : "11223344",
    "taskOwnerLongName" : null,
    "taskClassificationKey" : "L140101",
    "taskClassificationCategory" : "TASK",
    "attachmentClassificationKey" : "",
    "oldValue" : "old_val12",
    "newValue" : "new_val12",
    "custom1" : "custom1",
    "custom2" : "custom2",
    "custom3" : "custom3",
    "custom4" : "custom4",
    "details" : null,
    "_links" : {
      "self" : {
        "href" : "http://localhost:8080/api/v1/task-history-event/THI%3A000000000000000000000000000000000000"
      }
    }
  }, {
    "taskHistoryId" : "THI:000000000000000000000000000000000001",
    "businessProcessId" : "BPI:02",
    "parentBusinessProcessId" : "",
    "taskId" : "TKI:000000000000000000000000000000000000",
    "eventType" : "UPDATED",
    "created" : "2024-05-27T15:28:23.192Z",
    "userId" : "USER_1_1",
    "userLongName" : null,
    "domain" : "DOMAIN_A",
    "workbasketKey" : "WBI:100000000000000000000000000000000001",
    "porCompany" : "00",
    "porType" : "VNR",
    "porSystem" : "PASystem",
    "porInstance" : "00",
    "porValue" : "65464564",
    "taskOwnerLongName" : null,
    "taskClassificationKey" : "",
    "taskClassificationCategory" : "",
    "attachmentClassificationKey" : "",
    "oldValue" : "2old_val",
    "newValue" : "new_val2",
    "custom1" : "custom1",
    "custom2" : "",
    "custom3" : "custom3",
    "custom4" : "",
    "details" : null,
    "_links" : {
      "self" : {
        "href" : "http://localhost:8080/api/v1/task-history-event/THI%3A000000000000000000000000000000000001"
      }
    }
  }, {
    "taskHistoryId" : "THI:000000000000000000000000000000000002",
    "businessProcessId" : "BPI:03",
    "parentBusinessProcessId" : "BPI:01",
    "taskId" : "TKI:000000000000000000000000000000000001",
    "eventType" : "DELETED",
    "created" : "2024-05-29T15:28:23.192Z",
    "userId" : "USER_2_1",
    "userLongName" : null,
    "domain" : "DOMAIN_B",
    "workbasketKey" : "WBI:100000000000000000000000000000000002",
    "porCompany" : "11",
    "porType" : "",
    "porSystem" : "",
    "porInstance" : "22",
    "porValue" : "",
    "taskOwnerLongName" : null,
    "taskClassificationKey" : "L140101",
    "taskClassificationCategory" : "TASK",
    "attachmentClassificationKey" : "DOCTYPE_DEFAULT",
    "oldValue" : "",
    "newValue" : "",
    "custom1" : "custom1",
    "custom2" : "",
    "custom3" : "custom3",
    "custom4" : "",
    "details" : null,
    "_links" : {
      "self" : {
        "href" : "http://localhost:8080/api/v1/task-history-event/THI%3A000000000000000000000000000000000002"
      }
    }
  } ],
  "page" : {
    "size" : 3,
    "totalElements" : 45,
    "totalPages" : 15,
    "number" : 1
  },
  "_links" : {
    "self" : {
      "href" : "http://localhost:8080/api/v1/task-history-event?page=1&page-size=3"
    },
    "first" : {
      "href" : "http://localhost:8080/api/v1/task-history-event?page-size=3&page=1"
    },
    "last" : {
      "href" : "http://localhost:8080/api/v1/task-history-event?page-size=3&page=15"
    },
    "next" : {
      "href" : "http://localhost:8080/api/v1/task-history-event?page-size=3&page=2"
    }
  }
}

Get a single Task History Event

GET /api/v1/task-history-event/{historyEventId}

This endpoint retrieves a single Task History Event. provided historyEventId.

Path parameters

Parameter Type Optional Description

historyEventId

String

false

The Id of the requested Task History Event.

Query parameters

No parameters.

Request fields

No request body.

Response fields

Path Type Optional Description

taskHistoryId

String

true

Unique Id.

businessProcessId

String

true

The Id of the business process.

parentBusinessProcessId

String

true

The Id of the parent business process.

taskId

String

true

The Id of the task.

eventType

String

true

The type of the event.

created

String

true

The time of event creation.

The format is ISO-8601.

userId

String

true

The Id of the user.

userLongName

String

true

The long name of the user.

domain

String

true

Domain.

workbasketKey

String

true

The key of the Workbasket.

porCompany

String

true

The company the referenced primary object belongs to.

porType

String

true

The type of the referenced primary object (contract, claim, policy, customer, …​).

porSystem

String

true

The (kind of) system, the referenced primary object resides in (e.g. SAP, MySystem A, …​).

porInstance

String

true

The instance of the system where the referenced primary object is located.

porValue

String

true

The value of the primary object reference.

taskOwnerLongName

String

true

The long name of the task owner.

taskClassificationKey

String

true

The key of the task’s classification.

taskClassificationCategory

String

true

The category of the task’s classification.

attachmentClassificationKey

String

true

The classification key of the task’s attachment.

oldValue

String

true

The old value.

newValue

String

true

The new value.

custom1

String

true

A custom property with name "1".

custom2

String

true

A custom property with name "2".

custom3

String

true

A custom property with name "3".

custom4

String

true

A custom property with name "4".

details

String

true

Details of changes within the task.

Example request

GET /api/v1/task-history-event/THI:000000000000000000000000000000000000 HTTP/1.1
Authorization: Basic YWRtaW46YWRtaW4=
Content-Type: application/hal+json
Host: localhost:8080

Example response

HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/hal+json
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 1005

{
  "taskHistoryId" : "THI:000000000000000000000000000000000000",
  "businessProcessId" : "BPI:01",
  "parentBusinessProcessId" : "",
  "taskId" : "TKI:000000000000000000000000000000000000",
  "eventType" : "CREATED",
  "created" : "2024-05-29T15:28:23.192Z",
  "userId" : "USER_2_2",
  "userLongName" : null,
  "domain" : "DOMAIN_B",
  "workbasketKey" : "WBI:100000000000000000000000000000000001",
  "porCompany" : "00",
  "porType" : "VNR",
  "porSystem" : "PASystem",
  "porInstance" : "00",
  "porValue" : "11223344",
  "taskOwnerLongName" : null,
  "taskClassificationKey" : "L140101",
  "taskClassificationCategory" : "TASK",
  "attachmentClassificationKey" : "",
  "oldValue" : "old_val12",
  "newValue" : "new_val12",
  "custom1" : "custom1",
  "custom2" : "custom2",
  "custom3" : "custom3",
  "custom4" : "custom4",
  "details" : "some Details",
  "_links" : {
    "self" : {
      "href" : "http://localhost:8080/api/v1/task-history-event/THI%3A000000000000000000000000000000000000"
    }
  }
}