diff --git a/docs/apis-tools/tasklist-api-rest/assets/forms/userTaskMigrationDecisionHelperForm.js b/docs/apis-tools/tasklist-api-rest/assets/forms/userTaskMigrationDecisionHelperForm.js index c2220d4d347..5e36735592b 100644 --- a/docs/apis-tools/tasklist-api-rest/assets/forms/userTaskMigrationDecisionHelperForm.js +++ b/docs/apis-tools/tasklist-api-rest/assets/forms/userTaskMigrationDecisionHelperForm.js @@ -127,7 +127,7 @@ export default { components: [ { content: - '\n\n
\n Do you run or develop a custom task application, or plan to do so?\n
\n
\nA custom task application means you are using the Tasklist API (REST or GraphQL) or custom exporters to manage user tasks.\n
', + '\n\n
\n Do you run or develop a custom task application, or plan to do so?\n
\n
\nA custom task application means you are using the Tasklist REST API or custom exporters to manage user tasks.\n
', label: "HTML", type: "html", layout: { diff --git a/docs/apis-tools/tasklist-api-rest/controllers/_category_.yml b/docs/apis-tools/tasklist-api-rest/controllers/_category_.yml deleted file mode 100644 index 4aa78d19398..00000000000 --- a/docs/apis-tools/tasklist-api-rest/controllers/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Controllers" diff --git a/docs/apis-tools/tasklist-api-rest/controllers/tasklist-api-rest-form-controller.md b/docs/apis-tools/tasklist-api-rest/controllers/tasklist-api-rest-form-controller.md deleted file mode 100644 index 2bc0bb56c4c..00000000000 --- a/docs/apis-tools/tasklist-api-rest/controllers/tasklist-api-rest-form-controller.md +++ /dev/null @@ -1,67 +0,0 @@ ---- -id: tasklist-api-rest-form-controller -title: Form API -description: "Learn about the Form API controller, including the request parameters and an HTTP request example." ---- - -The Form API controller provides an API to query forms. - -## Endpoints - -### Get form - -Get the form details by `formId` and `processDefinitionKey` required parameters. - -#### URL - -`/v1/forms/{formId}?processDefinitionKey={processDefinitionKey}&version={formVersion}` - -#### Method - -`GET` - -#### Request parameters - -| Parameter name | Type | Required | Description | -| -------------------- | ----- | -------- | -------------------------------------------------- | -| formId | path | `true` | ID of the form | -| processDefinitionKey | query | `true` | Reference to the process definition | -| version | query | `false` | Version of the form, valid only for deployed forms | - -:::info -In Camunda, there are two types of forms: embedded forms and deployed forms. - -Embedded forms are stored in the process definition and are not versioned. The `formId` is a value generated by the internal Tasklist API and is distinct from the ID specified in the form editor. When retrieving a task, the key follows the format `camunda-forms:bpmn:`, and only the `` segment is required to access the form schema. - -Deployed forms in Camunda are forms that are reusable between multiple processes, allowing for standardized and consistent form usage across various workflows. The `formId` is unique by the form and set by the developer on the process of the form design. The `version` is specifically used for deployed forms and increases after a new form deployment. When it is null, the system returns the latest active version of the form. -::: - -#### HTTP request example - -Send a token issue GET request to the authorization server with the following content: - -``` -{ - "form_id": "", - "process_definition_key": "", - "version": "", -} -``` - -Refer to the following example with curl: - -``` -curl -X 'GET' \ - 'http://{host}/v1/forms/{formId}?processDefinitionKey={processDefinitionKey}&version={formVersion}' \ - -H 'accept: application/json' \ - -H 'Authorization: Bearer {yourBearerToken}' -``` - -See details on [Tasklist API (REST) authentication](/apis-tools/tasklist-api-rest/tasklist-api-rest-authentication.md) if you have not already authenticated. - -#### Responses - -| HTTP status | Description | Response schema | -| ----------- | ------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------- | -| 200 | On success | JSON object with [`FormResponse`](../schemas/responses/form-response.mdx) structure | -| 404 | An error is returned when the form with the `formId`, `processDefinitionKey`, and optionally specified `version` is not found. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | diff --git a/docs/apis-tools/tasklist-api-rest/controllers/tasklist-api-rest-task-controller.md b/docs/apis-tools/tasklist-api-rest/controllers/tasklist-api-rest-task-controller.md deleted file mode 100644 index d403d964086..00000000000 --- a/docs/apis-tools/tasklist-api-rest/controllers/tasklist-api-rest-task-controller.md +++ /dev/null @@ -1,454 +0,0 @@ ---- -id: tasklist-api-rest-task-controller -title: Task API -description: "Learn about the Task API controller, including an HTTP request example, responses, request parameters, and an HTTP request example." ---- - -The Task API controller provides an API to query and manage tasks. - -## Endpoints - -### Search tasks - -Returns the list of tasks that satisfy search request parameters. - -#### URL - -`/v1/tasks/search` - -#### Method - -`POST` - -#### Request body - -[`TaskSearchRequest`](../schemas/requests/task-search-request.mdx) - `[Optional]` - -#### HTTP request example - -All request body parameters are optional. - -:::note -Only one of [searchAfter, searchAfterOrEqual, searchBefore, searchBeforeOrEqual] search options must be present at once in the request. -::: - -If an empty body is provided, all tasks are returned. - -Send a token issue POST request to the authorization server with the following content: - -``` -{ - "tasklist_session": "", - "search_after": "", -} -``` - -Refer to the following example with curl: - -``` -curl -X 'GET' \ - 'http://{host}/v1/tasklist-session/{tasklistSessionId}?processDefinitionKey={processDefinitionKey}&search_after={search-after}' \ - -H 'accept: application/json' \ - -H 'Authorization: Bearer {yourBearerToken}' -``` - -See details on [Tasklist API (REST) authentication](/apis-tools/tasklist-api-rest/tasklist-api-rest-authentication.md) if you have not already authenticated. - -Only assigned and with `CREATED` state tasks will be returned: - -``` -{ - "tasklist_session": "", - "search_after": "", - "state": "CREATED", - "assigned": true -} -``` - -#### Responses - -| HTTP status | Description | Response schema | -| ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| 200 | On success | JSON array of objects with [`TaskSearchResponse`](../schemas/responses/task-search-response.mdx) structure | -| 400 | An error is returned when more than one search parameters among [searchAfter, searchAfterOrEqual, searchBefore, searchBeforeOrEqual] are present in the request. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | - -### Get task - -This endpoint retrieves the details of a specific task identified by `{taskId}`. - -#### URL - -`/v1/tasks/{taskId}` - -#### Method - -`GET` - -#### Request parameters - -| Parameter name | Type | Required | Description | -| -------------- | ---- | :------: | -------------- | -| taskId | path | `true` | ID of the task | - -#### HTTP request example - -```shell -curl -X 'GET' \ - 'http://{host}/v1/tasks/{taskId}' \ - -H 'accept: application/json' - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' -``` - -#### Responses - -| HTTP status | Description | Response schema | -| ----------- | ------------------------------------------------------------------ | ----------------------------------------------------------------------------------- | -| 200 | On success | JSON object with [`TaskResponse`](../schemas/responses/task-response.mdx) structure | -| 404 | An error is returned when the task with the `taskId` is not found. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | - -### Assign task - -Endpoint to assign a task with `taskId` to `assignee` or the active user. Returns the task. - -#### URL - -`/v1/tasks/{taskId}/assign` - -#### Method - -`PATCH` - -#### Request parameters - -| Parameter name | Type | Required | Description | -| -------------- | ---- | :------: | -------------- | -| taskId | path | `true` | ID of the task | - -#### Request body - -[`TaskAssignRequest`](../schemas/requests/task-assign-request.mdx) - `[Optional]` - -:::note -When using the REST API with a JWT authentication token, the following request body parameters may be used. -::: - -#### HTTP request example - -```shell -curl -X 'PATCH' \ - 'http://{host}/v1/tasks/{taskId}/assign' \ - -H 'accept: application/json' \ - -H 'Content-Type: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' -``` - -If JWT authentication is used: - -```shell -curl -X 'PATCH' \ - 'http://{host}/v1/tasks/{taskId}/assign' \ - -H 'accept: application/json' \ - -H 'Content-Type: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \ - -d '{ - "assignee": "someAssignee", - "allowOverrideAssignment": true -}' -``` - -#### Responses - -| HTTP status | Description | Response schema | -| ----------- | --------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | -| 200 | On success | JSON object with [`TaskResponse`](../schemas/responses/task-response.mdx) structure | -| 400 | An error is returned when the task is not active (not in the `CREATED` state). | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | -| 400 | An error is returned when task was already assigned. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | -| 403 | An error is returned when the user doesn't have the permission to assign another user to this task. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | -| 404 | An error is returned when the task with the `taskId` is not found. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | - -### Unassign task - -Unassign a task with the provided ID. This returns the task. - -#### URL - -`/v1/tasks/{taskId}/unassign` - -#### Method - -`PATCH` - -#### Request parameters - -| Parameter name | Type | Required | Description | -| -------------- | ---- | :------: | -------------- | -| taskId | path | `true` | ID of the task | - -#### HTTP request example - -```shell -curl -X 'PATCH' \ - 'http://{host}/v1/tasks/{taskId}/unassign' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' -``` - -#### Responses - -| HTTP status | Description | Response schema | -| ----------- | ------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------- | -| 200 | On success | JSON object with [`TaskResponse`](../schemas/responses/task-response.mdx) structure | -| 400 | An error is returned when the task is not active (not in the `CREATED` state). | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | -| 400 | An error is returned if the task was not assigned before. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | -| 404 | An error is returned when the task with the `taskId` is not found. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | - -### Complete task - -Complete a task with `taskId` and optional variables. Returns the task. - -#### URL - -`/v1/tasks/{taskId}/complete` - -#### Method - -`PATCH` - -#### Request parameters - -| Parameter name | Type | Required | Description | -| -------------- | ---- | :------: | -------------- | -| taskId | path | `true` | ID of the task | - -#### Request body - -[`TaskCompleteRequest`](../schemas/requests/task-complete-request.mdx) - `[Optional]` - -#### HTTP request example - -With empty body: - -```shell -curl -X 'PATCH' \ - 'http://{host}/v1/tasks/{taskId}/complete' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' -``` - -With [`TaskCompleteRequest`](../schemas/requests/task-complete-request.mdx): - -```shell -curl -X 'PATCH' \ - 'http://{host}/v1/tasks/{taskId}/complete' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \ - -d '{ - "variables": [ - { - "name": "varA", - "value": "25" - } - ] -}' -``` - -#### Responses - -| HTTP status | Description | Response schema | -| ----------- | ------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------- | -| 200 | On success | JSON object with [`TaskResponse`](../schemas/responses/task-response.mdx) structure | -| 400 | An error is returned when the task is not active (not in the `CREATED` state). | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | -| 400 | An error is returned if the task was not assigned before. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | -| 400 | An error is returned if the task is not assigned to the current user. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | -| 404 | An error is returned when the task with the `taskId` is not found. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | - -### Save draft task variables - -This API endpoint allows you to save draft variables for a specific task. - -#### Description - -This operation performs several actions: - -1. Validates the task and draft variables. -1. Deletes existing draft variables for the task. -1. Checks for new draft variables. If a new variable's name matches an existing one but the value differs, it is saved. In case of duplicate draft variable names, the last variable's value is kept. - -:::note -Be aware that invoking this method successively will overwrite all existing draft variables. -Only draft variables submitted in the most recent request body will be persisted. -Therefore, ensure you include all necessary variables in each request to maintain the intended variable set. -::: - -:::caution -Note that the UI does not currently display the values for draft variables that are created via this endpoint. -::: - -#### URL - -`/v1/tasks/{taskId}/variables` - -#### Method - -`POST` - -#### Request parameters - -| Parameter name | Type | Required | Description | -| -------------- | ---- | :------: | -------------- | -| taskId | path | `true` | ID of the task | - -#### Request body - -[`SaveVariablesRequest`](../schemas/requests/save-variables-request.mdx) - `[Required]` - -#### HTTP request examples - -##### Request with provided list of draft variables - -```shell -curl -X 'POST' \ - 'http://{host}/v1/tasks/{taskId}/variables' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \ - -d '{ - "variables": [ - { - "name": "strVarExample", - "value": "\"strVarValue\"" - }, - { - "name": "intVarExample", - "value": "15" - }, - { - "name": "booleanVarExample", - "value": "false" - }, - { - "name": "arrayVarExample", - "value": "[1, 2, 3, 5, 8, 13, 21]" - } - ] -}' -``` - -##### Request with empty list of draft variables - -In such a scenario, all previously stored draft variables will be removed. - -```shell -curl -X 'POST' \ - 'http://{host}/v1/tasks/{taskId}/variables' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \ - -d '{ - "variables": [ - { - "name": "strVarExample", - "value": "\"strVarValue\"" - }, - { - "name": "intVarExample", - "value": "15" - }, - { - "name": "booleanVarExample", - "value": "false" - }, - { - "name": "arrayVarExample", - "value": "[1, 2, 3, 5, 8, 13, 21]" - }, - { - "name": "objectVarExample", - "value": "{\"strProp\": \"strValue\", \"intProp\": 15}" - } - ] -}' -``` - -#### Responses - -| HTTP status | Description | Response schema | -| ----------- | ------------------------------------------------------------------------------ | ----------------------------------------------------------------------------- | -| 204 | On success | - | -| 400 | An error is returned when the task is not active (not in the `CREATED` state). | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | -| 400 | An error is returned if the task was not assigned before. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | -| 400 | An error is returned if the task is not assigned to the current user. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | -| 404 | An error is returned when the task with the `taskId` is not found. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | - -### Search task variables - -Returns a list of task variables for the specified `taskId` and `variableNames`. - -#### URL - -`/v1/tasks/{taskId}/variables/search` - -#### Method - -`POST` - -#### Request parameters - -| Parameter name | Type | Required | Description | -| -------------- | ---- | :------: | -------------- | -| taskId | path | `true` | ID of the task | - -#### Request body - -[`VariablesSearchRequest`](../schemas/requests/variables-search-request.mdx) - `[Optional]` - -#### HTTP request example - -If the request body is not provided or if the `variableNames` parameter in the request is `null` or empty, all variables associated with the task will be returned. - -```shell -curl -X 'POST' \ - 'http://{host}/v1/tasks/{taskId}/variables/search' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \ - -d '' -``` - -```shell -curl -X 'POST' \ - 'http://{host}/v1/tasks/{taskId}/variables/search' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \ - -d '{ - "variableNames": null - }' -``` - -```shell -curl -X 'POST' \ - 'http://{host}/v1/tasks/{taskId}/variables/search' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \ - -d '{ - "variableNames": [] - }' -``` - -Only the variables with name "varA" and "varB" will be returned if they are assigned to the task. - -```shell -curl -X 'POST' \ - 'http://{host}/v1/tasks/{taskId}/variables/search' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \ - -d '{ - "variableNames": [ - "varA", "varB" - ] - }' -``` - -#### Responses - -| HTTP status | Description | Response schema | -| ----------- | ------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| 200 | On success | JSON array of objects with [`VariableSearchResponse`](../schemas/responses/variable-search-response.mdx) structure | -| 404 | An error is returned when the task with the `taskId` is not found. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | diff --git a/docs/apis-tools/tasklist-api-rest/controllers/tasklist-api-rest-variables-controller.md b/docs/apis-tools/tasklist-api-rest/controllers/tasklist-api-rest-variables-controller.md deleted file mode 100644 index 48ce994ad29..00000000000 --- a/docs/apis-tools/tasklist-api-rest/controllers/tasklist-api-rest-variables-controller.md +++ /dev/null @@ -1,56 +0,0 @@ ---- -id: tasklist-api-rest-variables-controller -title: Variables API -description: "Learn about the Variables API controller, including request parameters, and an HTTP request example." ---- - -The Variables API controller provides an API to query variables. - -## Endpoints - -### Get variable - -Get the variable details by variable ID. - -#### URL - -`/v1/variables/{variableId}` - -#### Method - -`GET` - -#### Request parameters - -| Parameter name | Type | Required | Description | -| -------------- | ---- | :------: | ------------------ | -| variableId | path | `true` | ID of the variable | - -#### HTTP request example - -Send a token issue GET request to the authorization server with the following content: - -``` -{ - "variable_id": "", - "tasklist_session": "" -} -``` - -Refer to the following example with curl: - -``` -curl -X 'GET' \ - 'http://{host}/v1/variables/{variableId}?processDefinitionKey={processDefinitionKey}&tasklist_session={tasklist-session-id}' \ - -H 'accept: application/json' \ - -H 'Authorization: Bearer {yourBearerToken}' -``` - -See details on [Tasklist API (REST) authentication](/apis-tools/tasklist-api-rest/tasklist-api-rest-authentication.md) if you have not already authenticated. - -#### Responses - -| HTTP status | Description | Response schema | -| ----------- | ------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------- | -| 200 | On success | JSON object with [`VariableResponse`](../schemas/responses/variable-response.mdx) structure | -| 404 | An error is returned when the variable with the variableId is not found. | JSON object with [`Error`](../schemas/responses/error-response.mdx) structure | diff --git a/docs/apis-tools/tasklist-api-rest/schemas/_category_.yml b/docs/apis-tools/tasklist-api-rest/schemas/_category_.yml deleted file mode 100644 index 06d77d937e0..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Schemas" diff --git a/docs/apis-tools/tasklist-api-rest/schemas/enums/_category_.yml b/docs/apis-tools/tasklist-api-rest/schemas/enums/_category_.yml deleted file mode 100644 index a91f30b39a4..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/enums/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Enums" diff --git a/docs/apis-tools/tasklist-api-rest/schemas/enums/operator.mdx b/docs/apis-tools/tasklist-api-rest/schemas/enums/operator.mdx deleted file mode 100644 index 8b37adfeb6c..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/enums/operator.mdx +++ /dev/null @@ -1,56 +0,0 @@ ---- -id: operator -title: Operator -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Filter task by variables operator. - -```java -enum Operator { - eq -} -``` - -### Values - -#### [Operator.eq](#) - -> Equals - -[`TaskVariables`](../models/task-variables.mdx) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/enums/sort.mdx b/docs/apis-tools/tasklist-api-rest/schemas/enums/sort.mdx deleted file mode 100644 index 34959eaf407..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/enums/sort.mdx +++ /dev/null @@ -1,63 +0,0 @@ ---- -id: sort -title: Sort -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -State of the task. - -```java -enum Sort { - ASC, - DESC -} -``` - -### Values - -#### [Sort.ASC](#) - -> Ascending - -#### [Sort.DESC](#) - -> Descending - -### Member of - -[`TaskOrderBy`](../models/task-order-by.mdx) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/enums/task-sort-fields.mdx b/docs/apis-tools/tasklist-api-rest/schemas/enums/task-sort-fields.mdx deleted file mode 100644 index 2f77118e818..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/enums/task-sort-fields.mdx +++ /dev/null @@ -1,74 +0,0 @@ ---- -id: task-sort-fields -title: TaskSortFields -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -State of the task. - -```java -enum TaskSortFields { - creationTime, - completionTime, - followUpDate, - dueDate, - priority -} -``` - -### Values - -#### [TaskSortFields.creationTime](#) - -> Use the field creationTime for sorting - -#### [TaskSortFields.completionTime](#) - -> Use the field completionTime for sorting - -#### [TaskSortFields.followUpDate](#) - -> Use the field followUpDate for sorting - -#### [TaskSortFields.dueDate](#) - -> Use the field dueDate for sorting - -### Member of - -[`TaskOrderBy`](../models/task-order-by.mdx) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/enums/task-state.mdx b/docs/apis-tools/tasklist-api-rest/schemas/enums/task-state.mdx deleted file mode 100644 index d7f02b488aa..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/enums/task-state.mdx +++ /dev/null @@ -1,70 +0,0 @@ ---- -id: task-state -title: TaskState -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Represents the state of the task. - -```java -enum TaskState { - CREATED, - COMPLETED, - CANCELED -} -``` - -### Values - -#### [TaskState.CREATED](#) - -> - -#### [TaskState.COMPLETED](#) - -> - -#### [TaskState.CANCELED](#) - -> - -### Member of - -[`TaskResponse`](../responses/task-response.mdx) -[`TaskSearchRequest`](../requests/task-search-request.mdx) -[`TaskSearchResponse`](../responses/task-search-response.mdx) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/models/_category_.yml b/docs/apis-tools/tasklist-api-rest/schemas/models/_category_.yml deleted file mode 100644 index ec3cab819ed..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/models/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Models" diff --git a/docs/apis-tools/tasklist-api-rest/schemas/models/date-filter-input.mdx b/docs/apis-tools/tasklist-api-rest/schemas/models/date-filter-input.mdx deleted file mode 100644 index cacceb478b3..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/models/date-filter-input.mdx +++ /dev/null @@ -1,88 +0,0 @@ ---- -id: date-filter-input -title: DateFilter -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Filter using a date range - - - - -```graphql -{ - "from": string(date-time), - "to": string(date-time) -} -``` - - - - - -```json -{ - "from": "2023-03-29T18:38:10.491Z", - "to": "2023-03-29T18:38:10.491Z" -} -``` - - - - -### Fields - -#### [DateFilter.from](#)`string(date-time)` - -> Start date range to search from in date-time format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard - -#### [DateFilter.to](#)`string(date-time)` - -> End date range to search to in date-time format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard - -### Member of - -[`TaskSearchRequest`](../requests/task-search-request.mdx) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/models/include-variable.mdx b/docs/apis-tools/tasklist-api-rest/schemas/models/include-variable.mdx deleted file mode 100644 index f81b5f65f93..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/models/include-variable.mdx +++ /dev/null @@ -1,89 +0,0 @@ ---- -id: include-variable -title: IncludeVariable -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Include variables in tasks search response - - - - -```json -{ - "name": string, -} -``` - - - - - -```json -{ - "name": "variableName", - "alwaysReturnFullValue": false -} -``` - - - - -### Fields - -#### [IncludeVariable.name](#)`string` - -> The name of the variable - -#### [IncludeVariable.alwaysReturnFullValue](#)`boolean` - -> Indicates if the full value of the variable should be returned when it exceeds 8191 characters length limit. (default: false) - -### Member of - -[`TaskSearchRequest`](../requests/task-search-request.mdx) - -[`VariablesSearchRequest`](../requests/variables-search-request.mdx) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/models/task-order-by.mdx b/docs/apis-tools/tasklist-api-rest/schemas/models/task-order-by.mdx deleted file mode 100644 index ed0a79a99d5..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/models/task-order-by.mdx +++ /dev/null @@ -1,88 +0,0 @@ ---- -id: task-order-by -title: TaskOrderBy -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Filter using a date range - - - - -```graphql -{ - "field": TaskSortFields, - "order": Sort -} -``` - - - - - -```json -{ - "field": "completionTime", - "order": "ASC" -} -``` - - - - -### Fields - -#### [TaskOrderBy.field](#)[`TaskSortFields`](../enums/task-sort-fields.mdx) - -> Allowed fields to sort by - -#### [TaskOrderBy.order](#)[`Sort`](../enums/sort.mdx) - -> Define if sorting is Ascending or Descending - -### Member of - -[`TaskSearchRequest`](../requests/task-search-request.mdx) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/models/task-variables.mdx b/docs/apis-tools/tasklist-api-rest/schemas/models/task-variables.mdx deleted file mode 100644 index 8c1c2700908..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/models/task-variables.mdx +++ /dev/null @@ -1,94 +0,0 @@ ---- -id: task-variables -title: TaskVariables -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Filter task by Variables - - - - -```graphql -{ - "name": string, - "value": string, - "operator": Operator -} -``` - - - - - -```json -{ - "name": "variableName", - "value": "\"variable_value\"", - "operator": "eq" -} -``` - - - - -### Fields - -#### [TaskVariables.name](#)`string` - -> The name of the variable - -#### [TaskVariables.value](#)`string` - -> The value of the variable. When specifying the variable value, it's crucial to maintain consistency with JSON values (serialization for the complex objects such as list) and ensure that strings remain appropriately formatted. - -#### [TaskVariables.operator](#)[`Operator`](../enums/operator.mdx) - -> Define the search operator to use for the variable - -### Member of - -[`TaskSearchRequest`](../requests/task-search-request.mdx) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/requests/_category_.yml b/docs/apis-tools/tasklist-api-rest/schemas/requests/_category_.yml deleted file mode 100644 index 6cde1acda93..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/requests/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Requests" diff --git a/docs/apis-tools/tasklist-api-rest/schemas/requests/save-variables-request.mdx b/docs/apis-tools/tasklist-api-rest/schemas/requests/save-variables-request.mdx deleted file mode 100644 index aa1328f165a..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/requests/save-variables-request.mdx +++ /dev/null @@ -1,87 +0,0 @@ ---- -id: save-variable-request -title: SaveVariablesRequest -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -SaveVariablesRequest - is request object with variables to add or update for a task. - - - - -```graphql -{ - "variables": [VariableInput] -} -``` - - - - - -```json -{ - "variables": [ - { - "name": "string", - "value": "string" - } - ] -} -``` - - - - -### Fields - -#### [SaveVariablesRequest.variables](#)[`VariableInput`](./variable-input.mdx) - -> Variables to update or add to task. - -### Consumed by - -[`Save draft task variables`](../../controllers/tasklist-api-rest-task-controller.md#save-draft-task-variables) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/requests/task-assign-request.mdx b/docs/apis-tools/tasklist-api-rest/schemas/requests/task-assign-request.mdx deleted file mode 100644 index 46f9f05c549..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/requests/task-assign-request.mdx +++ /dev/null @@ -1,88 +0,0 @@ ---- -id: task-assign-request -title: TaskAssignRequest -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -TaskAssignRequest - request params used to assign the task to `assignee` or current user. - - - - -```graphql -{ - "assignee": string, - "allowOverrideAssignment": boolean -} -``` - - - - - -```json -{ - "assignee": "string", - "allowOverrideAssignment": true -} -``` - - - - -### Fields - -#### [TaskAssignRequest.assignee](#)`string` - -> When using a `JWT` token, the assignee parameter is NOT optional when called directly from the API. The system will not be able to detect the assignee from the JWT token, therefore the assignee parameter needs to be explicitly passed in this instance. - -#### [TaskAssignRequest.allowOverrideAssignment](#)`boolean` - -> When `true` the task that is already assigned may be reassigned again. Otherwise, the task must be first unassigned and only then assigned again. (Default: `true`). - -### Consumed by - -[`Assign task`](../../controllers/tasklist-api-rest-task-controller.md#assign-task) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/requests/task-complete-request.mdx b/docs/apis-tools/tasklist-api-rest/schemas/requests/task-complete-request.mdx deleted file mode 100644 index a67a671804a..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/requests/task-complete-request.mdx +++ /dev/null @@ -1,87 +0,0 @@ ---- -id: task-complete-request -title: TaskCompleteRequest -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -TaskCompleteRequest - request object with variables to update or add to task during the task completion. - - - - -```graphql -{ - "variables": [VariableInput] -} -``` - - - - - -```json -{ - "variables": [ - { - "name": "string", - "value": "string" - } - ] -} -``` - - - - -### Fields - -#### [TaskCompleteRequest.variables](#)[`VariableInput`](./variable-input.mdx) - -> Variables to update or add to task during the task completion. - -### Consumed by - -[`Complete task`](../../controllers/tasklist-api-rest-task-controller.md#complete-task) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/requests/task-search-request.mdx b/docs/apis-tools/tasklist-api-rest/schemas/requests/task-search-request.mdx deleted file mode 100644 index 28a31a7dd88..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/requests/task-search-request.mdx +++ /dev/null @@ -1,221 +0,0 @@ ---- -id: task-search-request -title: TaskSearchRequest -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -TaskSearchRequest - query object to search tasks by provided params. - - - - -```graphql -{ - "state": TaskState, - "assigned": boolean, - "assignee": string, - "taskDefinitionId": string, - "candidateGroup": string, - "candidateUser": string, - "processDefinitionKey": string, - "processInstanceKey": string, - "pageSize": int, - "followUpDate": DateFilter, - "dueDate": DateFilter, - "taskVariables": [TaskVariables], - "tenantIds": [string], - "sort": [TaskOrderBy], - "searchAfter": [string], - "searchAfterOrEqual": [string], - "searchBefore": [string], - "searchBeforeOrEqual": [string], - "includeVariables": [IncludeVariable] -} -``` - - - - - -```json -{ - "state": "CREATED", - "assigned": true, - "assignee": "string", - "taskDefinitionId": "string", - "candidateGroup": "string", - "candidateUser": "string", - "processDefinitionKey": "string", - "processInstanceKey": "string", - "pageSize": 0, - "followUpDate": { - "from": "2023-03-29T18:38:10.491Z", - "to": "2023-03-29T18:38:10.491Z" - }, - "dueDate": { - "from": "2023-03-29T18:38:10.491Z", - "to": "2023-03-29T18:38:10.491Z" - }, - "taskVariables": [ - { - "name": "variable_name", - "value": "\"variable_value\"", - "operator": "eq" - } - ], - "tenantIds": ["string"], - "sort": [ - { - "field": "completionTime", - "order": "ASC" - } - ], - "searchAfter": ["string"], - "searchAfterOrEqual": ["string"], - "searchBefore": ["string"], - "searchBeforeOrEqual": ["string"], - "includeVariables": [ - { - "name": "variable_name", - "alwaysReturnFullValue": false - } - ], - "priority": { - "eq": 100 - } -} -``` - - - - -### Fields - -#### [TaskSearchRequest.state](#)[`TaskState`](../enums/task-state.mdx) - -> State of the tasks - -#### [TaskSearchRequest.assigned](#)`boolean` - -> Are the tasks assigned? - -#### [TaskSearchRequest.assignee](#)`string` - -> Who is assigned to the tasks? - -#### [TaskSearchRequest.taskDefinitionId](#)`string` - -> Task definition ID - what's the BPMN flow node? - -#### [TaskSearchRequest.candidateGroup](#)`string` - -> Given group is in candidate groups list. - -#### [TaskSearchRequest.candidateUser](#)`string` - -> Given group is in candidate user list. - -#### [TaskSearchRequest.processDefinitionKey](#)`string` - -> Reference to process definition -> (renamed equivalent of [`TaskQuery.processDefinitionId`](../../../tasklist-api/inputs/task-query.mdx#code-style-fontweight-normal-taskquerybprocessdefinitionidbcodestring-) field). - -#### [TaskSearchRequest.processInstanceKey](#)`string` - -> Reference to process instance -> (renamed equivalent of [`TaskQuery.processInstanceId`](../../../tasklist-api/inputs/task-query.mdx#code-style-fontweight-normal-taskquerybprocessinstanceidbcodestring-) field). - -#### [TaskSearchRequest.followUpDateDate](#)[`DateFilter`](../models/date-filter-input.mdx) - -> Specifying a range of follow-up dates for the tasks to search for. - -#### [TaskSearchRequest.dueDate](#)[`DateFilter`](../models/date-filter-input.mdx) - -> Specifying a range of due dates for the tasks to search for. - -#### [TaskSearchRequest.taskVariables](#)[`TaskVariables`](../models/task-variables.mdx) - -> An array of filter clauses specifying the variables to filter for. If defined, the query returns only tasks to which all clauses apply. However, it's important to note that this filtering mechanism is designed to work exclusively with truncated variables. This means variables of a larger size are not compatible with this filter, and attempts to use them may result in inaccurate or incomplete query results. - -#### [TaskSearchRequest.tenantIds](#)`string` - -> An array of Tenant IDs to filter tasks. When multi-tenancy is enabled, tasks associated with the specified tenant IDs are returned; if disabled, this parameter is ignored. - -#### [TaskSearchRequest.sort](#)[`TaskOrderBy`](../models/task-order-by.mdx) - -> An array of objects specifying the fields to sort the results by. - -#### [TaskSearchRequest.pageSize](#)`int` - -> Size of tasks page (default: 50). - -#### [TaskSearchRequest.searchAfter](#)`string` - -> Used to return a paginated result. Array of values that should be copied from `sortValues` of one of the tasks from the current search results page. -> It enables the API to return a page of tasks that directly follow the task identified by the provided values, with respect to the sorting order. - -#### [TaskSearchRequest.searchAfterOrEqual](#)`string` - -> Used to return a paginated result. Array of values that should be copied from `sortValues` of one of the tasks from the current search results page. -> It enables the API to return a page of tasks that directly follow or are equal to the task identified by the provided values, with respect to the sorting order. - -#### [TaskSearchRequest.searchBefore](#)`string` - -> Used to return a paginated result. Array of values that should be copied from `sortValues` of one of the tasks from the current search results page. -> It enables the API to return a page of tasks that directly precede the task identified by the provided values, with respect to the sorting order. - -#### [TaskSearchRequest.searchBeforeOrEqual](#)`string` - -> Used to return a paginated result. Array of values that should be copied from `sortValues` of one of the tasks from the current search results page. -> It enables the API to return a page of tasks that directly precede or are equal to the task identified by the provided values, with respect to the sorting order. - -#### [TaskSearchRequest.includeVariables](#)[`IncludeVariable`](../models/include-variable.mdx) - -> An array used to specify a list of the variables that should be included in the response when querying tasks. This field allows users to selectively retrieve specific variables associated with the tasks returned in the search results. - -### Consumed by - -[`Search tasks`](../../controllers/tasklist-api-rest-task-controller.md#search-tasks) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/requests/variable-input.mdx b/docs/apis-tools/tasklist-api-rest/schemas/requests/variable-input.mdx deleted file mode 100644 index 4762b80c0e4..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/requests/variable-input.mdx +++ /dev/null @@ -1,92 +0,0 @@ ---- -id: variable-input -title: VariableInput -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Change or add a variable with name and value. - - - - -```graphql -{ - "name": string, - "value": string -} -``` - - - - - -```json -{ - "name": "string", - "value": "\"string\"" -} -``` - - - - -### Fields - -#### [VariableInput.name](#) `string` - -> Name of the variable. - -#### [VariableInput.value](#) `string` - -> The value of the variable. When specifying the variable value, it's crucial to maintain consistency with JSON values (serialization for the complex objects such as list) and ensure that strings remain appropriately formatted. - -### Member of - -[`TaskCompleteRequest`](./task-complete-request.mdx) - -### Consumed by - -[`Complete task`](../../controllers/tasklist-api-rest-task-controller.md#complete-task) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/requests/variables-search-request.mdx b/docs/apis-tools/tasklist-api-rest/schemas/requests/variables-search-request.mdx deleted file mode 100644 index 5cd08cb9930..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/requests/variables-search-request.mdx +++ /dev/null @@ -1,97 +0,0 @@ ---- -id: variables-search-request -title: VariablesSearchRequest -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -VariablesSearchRequest - query object to search tasks variables by provided variable names. - - - - -```graphql -{ - "variableNames": [string] -} -``` - - - - - -```json -{ - "includeVariables": [ - { - "name": "variable_name", - "alwaysReturnFullValue": false - } - ] -} -``` - - - - -### Fields - -#### [VariablesSearchRequest.variableNames](#)`string` - -> Name of variables to find. - -#### [VariablesSearchRequest.includeVariables](#)[`IncludeVariable`](../models/include-variable.mdx) - -> An array used to specify a list of the variables that should be included in the response. - -### Notes - -> `VariablesSearchRequest.variableNames` and `VariablesSearchRequest.includeVariables` cannot be used together in the same API request. - -> It is recommended to use `VariablesSearchRequest.includeVariables`, as `VariablesSearchRequest.variableNames` will be deprecated in a future release. - -### Consumed by - -[`Search task variables`](../../controllers/tasklist-api-rest-task-controller.md#search-task-variables) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/responses/_category_.yml b/docs/apis-tools/tasklist-api-rest/schemas/responses/_category_.yml deleted file mode 100644 index b653e291f47..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/responses/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Responses" diff --git a/docs/apis-tools/tasklist-api-rest/schemas/responses/error-response.mdx b/docs/apis-tools/tasklist-api-rest/schemas/responses/error-response.mdx deleted file mode 100644 index d013e78df08..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/responses/error-response.mdx +++ /dev/null @@ -1,102 +0,0 @@ ---- -id: error-response -title: ErrorResponse -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -TaskResponse - represents a user task. - - - - -```graphql -{ - "status": int, - "message": string, - "instance": string -} -``` - - - - - -```json -{ - "status": 400, - "message": "string", - "instance": "string" -} -``` - - - - -### Fields - -#### [ErrorResponse.status](#)`int` - -> An integer that represents the HTTP status code of the error response. For example, 400 indicates a "Bad Request" error, 404 indicates a "Not Found" error, and so on. - -#### [ErrorResponse.message](#)`string` - -> A string that provides a brief description of the error that occurred. - -#### [ErrorResponse.instance](#)`string` - -> UUID for look up (eg. in log messages). - -### Returned by - -[`Get form`](../../controllers/tasklist-api-rest-form-controller.md#get-form) -[`Get variable`](../../controllers/tasklist-api-rest-variables-controller.md#get-variable) -[`Save draft task variables`](../../controllers/tasklist-api-rest-task-controller.md#save-draft-task-variables) -[`Search task variables`](../../controllers/tasklist-api-rest-task-controller.md#search-task-variables) -[`Get task`](../../controllers/tasklist-api-rest-task-controller.md#get-task) -[`Search tasks`](../../controllers/tasklist-api-rest-task-controller.md#search-tasks) -[`Assign task`](../../controllers/tasklist-api-rest-task-controller.md#assign-task) -[`Unassign task`](../../controllers/tasklist-api-rest-task-controller.md#unassign-task) -[`Complete task`](../../controllers/tasklist-api-rest-task-controller.md#complete-task) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/responses/form-response.mdx b/docs/apis-tools/tasklist-api-rest/schemas/responses/form-response.mdx deleted file mode 100644 index 46f1d603b42..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/responses/form-response.mdx +++ /dev/null @@ -1,113 +0,0 @@ ---- -id: form-response -title: FormResponse -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -FormResponse - represents task embedded form. - - - - -```graphql -{ - "id": string, - "processDefinitionKey": string, - "schema": string, - "version": long, - "tenantId": string, - "isDeleted": boolean -} -``` - - - - - -```json -{ - "id": "string", - "processDefinitionKey": "string", - "schema": "string", - "version": "long", - "tenantId": "string", - "isDeleted": "boolean" -} -``` - - - - -### Fields - -#### [FormResponse.id](#)`string` - -> The unique identifier of the embedded form within one process - -#### [FormResponse.processDefinitionKey](#)`string` - -> Reference to process definition -> (renamed equivalent of [`Form.processDefinitionId`](../../../tasklist-api/objects/form.mdx#code-style-fontweight-normal-formbprocessdefinitionidbcodestring--) field) - -#### [FormResponse.schema](#)`string` - -> Form content - -#### [FormResponse.version](#)`long` - -> The version field is null in the case of an embedded form, while it represents the deployed form's version in other scenarios. - -#### [FormResponse.tenantId](#)`string` - -> Indicates the Tenant ID associated with the returned form - -#### [FormResponse.isDeleted](#)`boolean` - -> Indicates whether the deployed form is deleted or not on Zeebe. This field is false by default, in the case of an embedded form. - -### Returned by - -[`Get form`](../../controllers/tasklist-api-rest-form-controller.md#get-form) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/responses/task-response.mdx b/docs/apis-tools/tasklist-api-rest/schemas/responses/task-response.mdx deleted file mode 100644 index 7a2c8ac4a8c..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/responses/task-response.mdx +++ /dev/null @@ -1,197 +0,0 @@ ---- -id: task-response -title: TaskResponse -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -TaskResponse - represents a user task. - - - - -```graphql -{ - "id": string, - "name": string, - "taskDefinitionId": string, - "processName": string, - "creationDate": string, - "completionDate": string, - "assignee": string, - "taskState": TaskState, - "formKey": string, - "formId": string, - "formVersion": long, - "isFormEmbedded": boolean, - "processDefinitionKey": string, - "processInstanceKey": string, - "tenantId": string, - "dueDate": string, - "followUpDate": string, - "candidateGroups": [string], - "candidateUsers": [string] -} -``` - - - - - -```json -{ - "id": "string", - "name": "string", - "taskDefinitionId": "string", - "processName": "string", - "creationDate": "string", - "completionDate": "string", - "assignee": "string", - "taskState": "CREATED", - "formKey": "string", - "formId": "string", - "formVersion": 1, - "isFormEmbedded": true, - "processDefinitionKey": "string", - "processInstanceKey": "string", - "tenantId": "string", - "dueDate": "2023-03-29T20:08:07.171Z", - "followUpDate": "2023-03-29T20:08:07.171Z", - "candidateGroups": ["string"], - "candidateUsers": ["string"] -} -``` - - - - -### Fields - -#### [TaskResponse.id](#)`string` - -> The unique identifier of the task - -#### [TaskResponse.name](#)`string` - -> Name of the task - -#### [TaskResponse.taskDefinitionId](#)`string` - -> User task ID from the BPMN definition - -#### [TaskResponse.processName](#)`string` - -> Name of the process - -#### [TaskResponse.creationDate](#)`string` - -> When was the task created -> (renamed equivalent of [`Task.creationTime`](../../../tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbcreationtimebcodestring--) field) - -#### [TaskResponse.completionDate](#)`string` - -> When was the task completed -> (renamed equivalent of [`Task.completionTime`](../../../tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbcompletiontimebcodestring-) field) - -#### [TaskResponse.assignee](#)`string` - -> Username/id of who is assigned to the task - -#### [TaskResponse.taskState](#)[`TaskState`](../enums/task-state.mdx) - -> State of the task - -#### [TaskResponse.formKey](#)`string` - -> Reference to the task form - -#### [TaskResponse.formId](#)`string` - -> Reference to the ID of a deployed form. If the form is not deployed, this property is null. - -#### [TaskResponse.formVersion](#)`long` - -> Reference to the version of a deployed form. If the form is not deployed, this property is null. - -#### [TaskResponse.isFormEmbedded](#)`boolean` - -> Reference to the form is embedded or deployed. If there is no form, this property is null. - -#### [TaskResponse.processDefinitionKey](#)`string` - -> Reference to process definition -> (renamed equivalent of [`Task.processDefinitionId`](../../../tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbprocessdefinitionidbcodestring-) field) - -#### [TaskResponse.processInstanceKey](#)`string` - -> Reference to process instance id -> (renamed equivalent of [`Task.processInstanceId`](../../../tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbprocessinstanceidbcodestring-) field) - -#### [TaskResponse.tenantId](#)`string` - -> Indicates the Tenant ID associated with the returned task - -#### [TaskResponse.candidateGroups](#)`string` - -> Candidate groups - -#### [TaskResponse.candidateUsers](#)`string` - -> Candidate users - -#### [TaskResponse.followUpDate](#)`string` - -> Follow-up date for the task - -#### [TaskResponse.dueDate](#)`string` - -> Due date for the task - -### Returned by - -[`Get task`](../../controllers/tasklist-api-rest-task-controller.md#get-task) -[`Assign task`](../../controllers/tasklist-api-rest-task-controller.md#assign-task) -[`Unassign task`](../../controllers/tasklist-api-rest-task-controller.md#unassign-task) -[`Complete task`](../../controllers/tasklist-api-rest-task-controller.md#complete-task) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/responses/task-search-response.mdx b/docs/apis-tools/tasklist-api-rest/schemas/responses/task-search-response.mdx deleted file mode 100644 index b466ec57832..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/responses/task-search-response.mdx +++ /dev/null @@ -1,204 +0,0 @@ ---- -id: task-search-response -title: TaskSearchResponse -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -TaskSearchResponse - representing the searched task. - - - - -```graphql -{ - "id": string, - "name": string, - "taskDefinitionId": string, - "processName": string, - "creationDate": string, - "completionDate": string, - "assignee": string, - "taskState": TaskState, - "sortValues": [string], - "isFirst": boolean, - "formKey": string, - "processDefinitionKey": string, - "processInstanceKey": string, - "tenantId": string, - "dueDate": string, - "followUpDate": string, - "candidateGroups": [string], - "candidateUsers": [string], - "variables": [VariableSearchResponse], - "priority": integer -} -``` - - - - - -```json -{ - "id": "string", - "name": "string", - "taskDefinitionId": "string", - "processName": "string", - "creationDate": "string", - "completionDate": "string", - "assignee": "string", - "taskState": "CREATED", - "sortValues": ["string"], - "isFirst": true, - "formKey": "string", - "processDefinitionKey": "string", - "processInstanceKey": "string", - "tenantId": "string", - "dueDate": "2023-03-29T20:08:07.171Z", - "followUpDate": "2023-03-29T20:08:07.171Z", - "candidateGroups": ["string"], - "candidateUsers": ["string"], - "variables": [ - { - "id": "-", - "name": "", - "value": "\"stringVariableValue\"", - "isValueTruncated": false, - "previewValue": "\"stringVariableValue\"" - } - ], - "priority": 50 -} -``` - - - - -### Fields - -#### [TaskSearchResponse.id](#)`string` - -> The unique identifier of the task - -#### [TaskSearchResponse.name](#)`string` - -> Name of the task - -#### [TaskSearchResponse.taskDefinitionId](#)`string` - -> User task ID from the BPMN definition - -#### [TaskSearchResponse.processName](#)`string` - -> Name of the process - -#### [TaskSearchResponse.creationDate](#)`string` - -> When was the task created -> (renamed equivalent of [`Task.creationTime`](../../../tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbcreationtimebcodestring--) field) - -#### [TaskSearchResponse.completionDate](#)`string` - -> When was the task completed -> (renamed equivalent of [`Task.completionTime`](../../../tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbcompletiontimebcodestring-) field) - -#### [TaskSearchResponse.assignee](#)`string` - -> Username/id of who is assigned to the task - -#### [TaskSearchResponse.taskState](#)[`TaskState`](../enums/task-state.mdx) - -> State of the task - -#### [TaskSearchResponse.sortValues](#)`string` - -> Array of values to be copied into [`TaskSearchRequest`](../requests/task-search-request.mdx) to request for next or previous page of tasks. - -#### [TaskSearchResponse.isFirst](#)`boolean` - -> Flag to show that the task is first in current filter - -#### [TaskSearchResponse.formKey](#)`string` - -> Reference to the task form - -#### [TaskSearchResponse.processDefinitionKey](#)`string` - -> Reference to process definition -> (renamed equivalent of [`Task.processDefinitionId`](../../../tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbprocessdefinitionidbcodestring-) field) - -#### [TaskSearchResponse.processInstanceKey](#)`string` - -> Reference to process instance id -> (renamed equivalent of [`Task.processInstanceId`](../../../tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbprocessinstanceidbcodestring-) field) - -#### [TaskSearchResponse.tenantId](#)`string` - -> Indicates the Tenant ID associated with the returned task - -#### [TaskSearchResponse.candidateGroups](#)`string` - -> Candidate groups - -#### [TaskSearchResponse.candidateUsers](#)`string` - -> Candidate users - -#### [TaskSearchResponse.followUpDate](#)`string` - -> Follow-up date for the task - -#### [TaskSearchResponse.dueDate](#)`string` - -> Due date for the task - -#### [TaskSearchResponse.variables](#)[`VariableSearchResponse`](./variable-search-response.mdx) - -> An array of task's variables. Only variables specified in [`TaskSearchReqeuest`](../requests/task-search-request.mdx#)`.includeVariables` are returned. Note that variable's draft value is not returned in TaskSearchResponse. - -### Returned by - -[`Search tasks`](../../controllers/tasklist-api-rest-task-controller.md#search-tasks) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/responses/variable-response.mdx b/docs/apis-tools/tasklist-api-rest/schemas/responses/variable-response.mdx deleted file mode 100644 index 7dfe471df9d..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/responses/variable-response.mdx +++ /dev/null @@ -1,110 +0,0 @@ ---- -id: variable-response -title: VariableResponse -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -VariableResponse - represents a variable with `id`, `name` and `value` properties. - - - - -```graphql -{ - "id": string, - "name": string, - "value": string, - "draft": { - "value": string - }, - "tenantId": string -} -``` - - - - - -```json -{ - "id": "-", - "name": "", - "value": "\"stringVariableValue\"", - "draft": { - "value": "\"draftValueOfVariable\"" - }, - "tenantId": "" -} -``` - - - - -### Fields - -#### [VariableResponse.id](#)`string` - -> id of the variable - -#### [VariableResponse.name](#)`string` - -> variable name - -#### [VariableResponse.value](#)`string` - -> represents full variable value - -#### [VariableResponse.draft](#)`object` - -> represents draft value of variable - -#### [VariableResponse.tenantId](#)`string` - -> Indicates the Tenant ID associated with the returned variable - -### Returned by - -[`Get variable`](../../controllers/tasklist-api-rest-variables-controller.md#get-variable) diff --git a/docs/apis-tools/tasklist-api-rest/schemas/responses/variable-search-response.mdx b/docs/apis-tools/tasklist-api-rest/schemas/responses/variable-search-response.mdx deleted file mode 100644 index a5ab83cf65d..00000000000 --- a/docs/apis-tools/tasklist-api-rest/schemas/responses/variable-search-response.mdx +++ /dev/null @@ -1,124 +0,0 @@ ---- -id: variable-search-response -title: VariableSearchResponse -hide_table_of_contents: false ---- - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -VariableSearchResponse - represents a variable in a search response. It contains information about the variable's ID, name, value, truncation status, and a preview of the value. The `value` field may be `null` if the value has been truncated due to exceeding a length limit (8191 characters). The `previewValue` field provides a shorter preview of the value for display purposes. - - - - -```graphql -{ - "id": string, - "name": string, - "value": string, - "isValueTruncated": boolean, - "previewValue": string, - "draft": { - "value": string, - "isValueTruncated": boolean, - "previewValue": string - } -} -``` - - - - - -```json -{ - "id": "-", - "name": "", - "value": "\"stringVariableValue\"", - "isValueTruncated": false, - "previewValue": "\"stringVariableValue\"", - "draft": { - "value": "\"draftValueOfVariable\"", - "isValueTruncated": false, - "previewValue": "\"draftValueOfVariable\"" - } -} -``` - - - - -### Fields - -#### [VariableSearchResponse.id](#)`string` - -> id of the variable - -#### [VariableSearchResponse.name](#)`string` - -> variable name - -#### [VariableSearchResponse.value](#)`string` - -> represents the value of the variable. If `isValueTruncated` is `true` and `alwaysReturnFullValue` in the search request is not set to `true`, the value will be `null`. - -#### [VariableSearchResponse.previewValue](#)`string` - -> preview of the variable value. It is limited to a length of 8191 characters. - -#### [VariableSearchResponse.isValueTruncated](#)`boolean` - -> indicates, whether `previewValue` contains truncated value or full value - -#### [VariableSearchResponse.draft](#)`object` - -> represents draft value for variable - -### Returned by - -[`Search task variables`](../../controllers/tasklist-api-rest-task-controller.md#search-task-variables) - -### Member of - -[`TaskSearchResponse`](../responses/task-search-response.mdx) diff --git a/docs/apis-tools/tasklist-api/assets/tasklist.graphqls b/docs/apis-tools/tasklist-api/assets/tasklist.graphqls deleted file mode 100644 index 3442bfa6777..00000000000 --- a/docs/apis-tools/tasklist-api/assets/tasklist.graphqls +++ /dev/null @@ -1,203 +0,0 @@ -scalar DateTime - -# Describes the User task. -type Task { - # The unique identifier of the task - id: ID! - # Name of the task - name: String! - # Task Definition ID (node BPMN id) of the process - taskDefinitionId: String! - # Name of the process - processName: String! - # When was the task created - creationTime: String! - # When was the task completed - completionTime: String - # Username/id of who is assigned to the task - assignee: String - # Variables associated to the task - variables: [Variable!] - # State of the task - taskState: TaskState! - # Array of values to be copied into `TaskQuery` to request for next or previous page of tasks. - sortValues: [String!] - # Flag to show that the task is first in current filter - isFirst: Boolean - # Reference to the task form - formKey: String - #Reference to process definition - processDefinitionId: String - #Reference to processInstance definition - processInstanceId: String - #Candidate groups - candidateGroups: [String!] - #Follow-up Date for Task - followUpDate: DateTime - #Due date for Task - dueDate: DateTime - #Candidate users - candidateUsers: [String!] -} - -#Describes task embedded form -type Form { - #The unique identifier of the embedded form within one process - id: String! - #Reference to process definition - processDefinitionId: String! - #Form content - schema: String! -} - -type Process { - id: String! - name: String - processDefinitionId: String - version: Int -} - -input DateFilter { - from: DateTime! - to: DateTime! -} - -#Task query - query to get one page of tasks. -input TaskQuery { - # State of the tasks - state: TaskState - # Are the tasks assigned? - assigned: Boolean - # Who is assigned to the tasks? - assignee: String - # given group is in candidate groups list - candidateGroup: String - # given user is in candidate users list - candidateUser: String - # process definition id - processDefinitionId: String - # process instance id - processInstanceId: String - #Size of tasks page (default: 50). - pageSize: Int - # Task definition ID - what's the BPMN flow node? - taskDefinitionId: String - #Array of values copied from `sortValues` of one of the tasks, query will return page of tasks going directly after this values plus same sort values. - searchAfter: [String!] - #Array of values copied from `sortValues` of one of the tasks, query will return page of tasks going directly after this values. - searchAfterOrEqual: [String!] - #Array of values copied from `sortValues` of one of the tasks, query will return page of tasks going directly before this values plus same sort values. - searchBefore: [String!] - #Array of values copied from `sortValues` of one of the tasks, query will return page of tasks going directly before this values. - searchBeforeOrEqual: [String!] - #Follow-up Date for Task - followUpDate: DateFilter - #Due Date for Task - dueDate: DateFilter - #order - sort: [TaskOrderBy] -} - -input TaskOrderBy { - field: TaskSortFields! - order: Sort! -} - -enum Sort { - ASC - DESC -} - -enum TaskSortFields { - creationTime - completionTime - followUpDate - dueDate -} - -# State of the task. -enum TaskState { - CREATED - COMPLETED - CANCELED -} - -# Variable used in task. -type Variable { - id: ID! - name: String! - # full variable value - value: String! - # value preview (limited in size) - previewValue: String! - # shows, whether previewValue contains truncated value or full value - isValueTruncated: Boolean! -} -# Change or add a variable with name and value. -input VariableInput { - # Name of the variable. - name: String! - # Value of the variable. Complex values, e.g. a list of objects, must be serialized as JSON. - value: String! -} - -type ProcessInstance { - id: ID! -} - -type C8AppLink { - name: String! - link: String! -} -# Describes the user. -type User { - userId: ID! - displayName: String - permissions: [String!] - roles: [String] - salesPlanType: String - c8Links: [C8AppLink] -} -# What can be searched for. -type Query { - # Get list of tasks based on `TaskQuery`. - tasks(query: TaskQuery!): [Task!]! - # Get one task by id. Returns task or error when task does not exist. - task(id: String!): Task! - # Get currently logged in user. - currentUser: User! - # Get task form by id and processDefinitionId - form(id: String!, processDefinitionId: String!): Form - # Get a collection of Variables by name - variables(taskId: String!, variableNames: [String!]!): [Variable!]! - # Get the variables by variable id - variable(id: String!): Variable! - # Get the processes - processes(search: String): [Process!]! -} -# What can be changed. -type Mutation { - # Complete a task with taskId and optional variables. Returns the task. - completeTask(taskId: String!, variables: [VariableInput!]!): Task! - """ - Claim a task with `taskId` to `assignee`. Returns the task. - - When using Graphql API with JWT authentication token following parameters may be used: - * `assignee`. When using a JWT token, the assignee parameter is NOT optional when called directly from the API. - The system will not be able to detect the assignee from the JWT token, therefore the assignee parameter needs to be - explicitly passed in this instance. - * `allowOverrideAssignment`. When `true` the task that is already assigned may be claimed again. Otherwise the task - must be first unclaimed and only then claimed again. (Default: `true`) - """ - claimTask( - taskId: String! - assignee: String - allowOverrideAssignment: Boolean - ): Task! - # Unclaim a task with taskId. Returns the task. - unclaimTask(taskId: String!): Task! - # Delete process instance by given processInstanceId. Returns true if process instance could be deleted. - deleteProcessInstance(processInstanceId: String!): Boolean! - # start a Process from tasklist - startProcess(processDefinitionId: String!): ProcessInstance! -} diff --git a/docs/apis-tools/tasklist-api/directives/_category_.yml b/docs/apis-tools/tasklist-api/directives/_category_.yml deleted file mode 100644 index 309996eee2c..00000000000 --- a/docs/apis-tools/tasklist-api/directives/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Directives" diff --git a/docs/apis-tools/tasklist-api/directives/deprecated.mdx b/docs/apis-tools/tasklist-api/directives/deprecated.mdx deleted file mode 100644 index 34223694e6f..00000000000 --- a/docs/apis-tools/tasklist-api/directives/deprecated.mdx +++ /dev/null @@ -1,54 +0,0 @@ ---- -id: deprecated -title: deprecated -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Marks the field or enum value as deprecated - -```graphql -directive @deprecated( - reason: String = "No longer supported" -) -``` - -### Arguments - -#### [deprecated.reason](#)[`String`](../scalars/string.mdx) - -> The reason for the deprecation diff --git a/docs/apis-tools/tasklist-api/directives/include.mdx b/docs/apis-tools/tasklist-api/directives/include.mdx deleted file mode 100644 index 1e10ec91b54..00000000000 --- a/docs/apis-tools/tasklist-api/directives/include.mdx +++ /dev/null @@ -1,54 +0,0 @@ ---- -id: include -title: include -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Directs the executor to include this field or fragment only when the `if` argument is true - -```graphql -directive @include( - if: Boolean! -) -``` - -### Arguments - -#### [include.if](#)[`Boolean!`](../scalars/boolean.mdx) - -> Included when true. diff --git a/docs/apis-tools/tasklist-api/directives/skip.mdx b/docs/apis-tools/tasklist-api/directives/skip.mdx deleted file mode 100644 index 05326f76d4a..00000000000 --- a/docs/apis-tools/tasklist-api/directives/skip.mdx +++ /dev/null @@ -1,54 +0,0 @@ ---- -id: skip -title: skip -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Directs the executor to skip this field or fragment when the `if`'argument is true. - -```graphql -directive @skip( - if: Boolean! -) -``` - -### Arguments - -#### [skip.if](#)[`Boolean!`](../scalars/boolean.mdx) - -> Skipped when true. diff --git a/docs/apis-tools/tasklist-api/directives/specified-by.mdx b/docs/apis-tools/tasklist-api/directives/specified-by.mdx deleted file mode 100644 index ac0d0adb080..00000000000 --- a/docs/apis-tools/tasklist-api/directives/specified-by.mdx +++ /dev/null @@ -1,54 +0,0 @@ ---- -id: specified-by -title: specifiedBy -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Exposes a URL that specifies the behaviour of this scalar. - -```graphql -directive @specifiedBy( - url: String! -) -``` - -### Arguments - -#### [specifiedBy.url](#)[`String!`](../scalars/string.mdx) - -> The URL that specifies the behaviour of this scalar. diff --git a/docs/apis-tools/tasklist-api/enums/_category_.yml b/docs/apis-tools/tasklist-api/enums/_category_.yml deleted file mode 100644 index a91f30b39a4..00000000000 --- a/docs/apis-tools/tasklist-api/enums/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Enums" diff --git a/docs/apis-tools/tasklist-api/enums/sort.mdx b/docs/apis-tools/tasklist-api/enums/sort.mdx deleted file mode 100644 index 435dd21ce06..00000000000 --- a/docs/apis-tools/tasklist-api/enums/sort.mdx +++ /dev/null @@ -1,63 +0,0 @@ ---- -id: sort -title: Sort -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -State of the task. - -```graphql -enum Sort { - ASC - DESC -} -``` - -### Values - -#### [Sort.ASC](#) - -> Ascending - -#### [Sort.DESC](#) - -> Descending - -### Member of - -[`TaskQuery`](/docs/apis-tools/tasklist-api/inputs/task-query.mdx) diff --git a/docs/apis-tools/tasklist-api/enums/task-sort-fields.mdx b/docs/apis-tools/tasklist-api/enums/task-sort-fields.mdx deleted file mode 100644 index 11105070a2d..00000000000 --- a/docs/apis-tools/tasklist-api/enums/task-sort-fields.mdx +++ /dev/null @@ -1,73 +0,0 @@ ---- -id: task-sort-fields -title: TaskSortFields -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -State of the task. - -```graphql -enum TaskSortFields { - creationTime - completionTime - followUpDate - dueDate -} -``` - -### Values - -#### [TaskSortFields.creationTime](#) - -> Use the field creationTime for sorting - -#### [TaskSortFields.completionTime](#) - -> Use the field completionTime for sorting - -#### [TaskSortFields.followUpDate](#) - -> Use the field followUpDate for sorting - -#### [TaskSortFields.dueDate](#) - -> Use the field dueDate for sorting - -### Member of - -[`TaskQuery`](/docs/apis-tools/tasklist-api/inputs/task-query.mdx) diff --git a/docs/apis-tools/tasklist-api/enums/task-state.mdx b/docs/apis-tools/tasklist-api/enums/task-state.mdx deleted file mode 100644 index 736495f669f..00000000000 --- a/docs/apis-tools/tasklist-api/enums/task-state.mdx +++ /dev/null @@ -1,68 +0,0 @@ ---- -id: task-state -title: TaskState -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -State of the task. - -```graphql -enum TaskState { - CREATED - COMPLETED - CANCELED -} -``` - -### Values - -#### [TaskState.CREATED](#) - -> - -#### [TaskState.COMPLETED](#) - -> - -#### [TaskState.CANCELED](#) - -> - -### Member of - -[`Task`](../objects/task.mdx) [`TaskQuery`](../inputs/task-query.mdx) diff --git a/docs/apis-tools/tasklist-api/generated.md b/docs/apis-tools/tasklist-api/generated.md deleted file mode 100644 index 72b93fb4bf3..00000000000 --- a/docs/apis-tools/tasklist-api/generated.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -id: schema -slug: /apis-tools/tasklist-api -title: Schema Documentation -sidebar_position: 1 -hide_table_of_contents: true -pagination_next: null -pagination_prev: null -sidebar_class_name: navbar__toggle ---- - -This documentation has been automatically generated from the GraphQL schema. -GraphQL schema file to download: [tasklist.graphqls](./assets/tasklist.graphqls) - -Use the docs in the sidebar to find out how to use the schema: - -- **Allowed operations**: queries and mutations. -- **Schema-defined types**: scalars, objects, enums, interfaces, unions, and input objects. - -Generated on 11/11/2022, 11:24:49 AM. diff --git a/docs/apis-tools/tasklist-api/inputs/_category_.yml b/docs/apis-tools/tasklist-api/inputs/_category_.yml deleted file mode 100644 index 170f758fc24..00000000000 --- a/docs/apis-tools/tasklist-api/inputs/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Inputs" diff --git a/docs/apis-tools/tasklist-api/inputs/date-filter-input.mdx b/docs/apis-tools/tasklist-api/inputs/date-filter-input.mdx deleted file mode 100644 index 076db907a0b..00000000000 --- a/docs/apis-tools/tasklist-api/inputs/date-filter-input.mdx +++ /dev/null @@ -1,59 +0,0 @@ ---- -id: date-filter-input -title: DateFilter -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Filter using a date range - -```graphql -input DateFilter { - from: DateTime! - to: DateTime! -} -``` - -### Fields - -#### [DateFilter.from](#)[`DateTime!`](/docs/apis-tools/tasklist-api/scalars/DateTime.mdx) - -> Start date range to search from - -#### [DateFilter.to](#)[`DateTime!`](/docs/apis-tools/tasklist-api/scalars/DateTime.mdx) - -> End date range to search to diff --git a/docs/apis-tools/tasklist-api/inputs/task-order-by.mdx b/docs/apis-tools/tasklist-api/inputs/task-order-by.mdx deleted file mode 100644 index 2451b8d2a53..00000000000 --- a/docs/apis-tools/tasklist-api/inputs/task-order-by.mdx +++ /dev/null @@ -1,59 +0,0 @@ ---- -id: task-order-by -title: TaskOrderBy -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Filter using a date range - -```graphql -input TaskOrderBy { - field: TaskSortFields! - order: Sort! -} -``` - -### Fields - -#### [TaskOrderBy.field](#)[`TaskSortFields!`](/docs/apis-tools/tasklist-api/enums/task-sort-fields.mdx) - -> Allowed fields to sort by - -#### [TaskOrderBy.order](#)[`Sort!`](/docs/apis-tools/tasklist-api/enums/sort.mdx) - -> Define if sorting is Ascending or Descending diff --git a/docs/apis-tools/tasklist-api/inputs/task-query.mdx b/docs/apis-tools/tasklist-api/inputs/task-query.mdx deleted file mode 100644 index b19a391a76b..00000000000 --- a/docs/apis-tools/tasklist-api/inputs/task-query.mdx +++ /dev/null @@ -1,133 +0,0 @@ ---- -id: task-query -title: TaskQuery -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Task query - query to get one page of tasks. - -```graphql -input TaskQuery { - state: TaskState - assigned: Boolean - assignee: String - candidateGroup: String - candidateUser: String - processDefinitionId: String - processInstanceId: String - followUpDate: DateFilter - dueDate: DateFilter - pageSize: Int - taskDefinitionId: String - searchAfter: [String!] - searchAfterOrEqual: [String!] - searchBefore: [String!] - searchBeforeOrEqual: [String!] - sort: [TaskOrderBy] -} -``` - -### Fields - -#### [TaskQuery.state](#)[`TaskState`](/docs/apis-tools/tasklist-api/enums/task-state.mdx) - -> State of the tasks - -#### [TaskQuery.assigned](#)[`Boolean`](/docs/apis-tools/tasklist-api/scalars/boolean.mdx) - -> Are the tasks assigned? - -#### [TaskQuery.assignee](#)[`String`](/docs/apis-tools/tasklist-api/scalars/string.mdx) - -> Who is assigned to the tasks? - -#### [TaskQuery.candidateGroup](#)[`String`](/docs/apis-tools/tasklist-api/scalars/string.mdx) - -> given group is in candidate groups list - -#### [TaskQuery.candidateUser](#)[`String`](/docs/apis-tools/tasklist-api/scalars/string.mdx) - -> given group is in candidate user list - -#### [TaskQuery.processDefinitionId](#)[`String`](/docs/apis-tools/tasklist-api/scalars/string.mdx) - -> Reference to process definition - -#### [TaskQuery.processInstanceId](#)[`String`](/docs/apis-tools/tasklist-api/scalars/string.mdx) - -> Reference to process instance - -#### [TaskQuery.followUpDateDate](#)[`DateFilter`](/docs/apis-tools/tasklist-api/inputs/date-filter-input.mdx) - -> Follow-up date for the task - -#### [TaskQuery.dueDate](#)[`DateFilter`](/docs/apis-tools/tasklist-api/inputs/date-filter-input.mdx) - -> Due date for the task - -#### [TaskQuery.pageSize](#)[`Int`](/docs/apis-tools/tasklist-api/scalars/int.mdx) - -> Size of tasks page (default: 50). - -#### [TaskQuery.taskDefinitionId](#)[`String`](/docs/apis-tools/tasklist-api/scalars/string.mdx) - -> Task definition ID - what's the BPMN flow node? - -#### [TaskQuery.searchAfter](#)[`[String!]`](/docs/apis-tools/tasklist-api/scalars/string.mdx) - -> Array of values copied from `sortValues` of one of the tasks, query will return page of tasks going directly after this values plus same sort values. - -#### [TaskQuery.searchAfterOrEqual](#)[`[String!]`](/docs/apis-tools/tasklist-api/scalars/string.mdx) - -> Array of values copied from `sortValues` of one of the tasks, query will return page of tasks going directly after this values. - -#### [TaskQuery.searchBefore](#)[`[String!]`](/docs/apis-tools/tasklist-api/scalars/string.mdx) - -> Array of values copied from `sortValues` of one of the tasks, query will return page of tasks going directly before this values plus same sort values. - -#### [TaskQuery.searchBeforeOrEqual](#)[`[String!]`](/docs/apis-tools/tasklist-api/scalars/string.mdx) - -> Array of values copied from `sortValues` of one of the tasks, query will return page of tasks going directly before this values. - -#### [TaskQuery.sort](#)[`[TaskOrderBy]`](/docs/apis-tools/tasklist-api/inputs/task-order-by.mdx) - -> Array of values copied from `sortValues` of one of the tasks, query will return page of tasks going directly before this values. - -### Member of - -[`tasks`](/apis-tools/tasklist-api/queries/tasks.mdx) diff --git a/docs/apis-tools/tasklist-api/inputs/variable-input.mdx b/docs/apis-tools/tasklist-api/inputs/variable-input.mdx deleted file mode 100644 index d3958e48255..00000000000 --- a/docs/apis-tools/tasklist-api/inputs/variable-input.mdx +++ /dev/null @@ -1,63 +0,0 @@ ---- -id: variable-input -title: VariableInput -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Change or add a variable with name and value. - -```graphql -input VariableInput { - name: String! - value: String! -} -``` - -### Fields - -#### [VariableInput.name](#)[`String!`](../scalars/string.mdx) - -> Name of the variable. - -#### [VariableInput.value](#)[`String!`](../scalars/string.mdx) - -> Value of the variable. Complex values, e.g. a list of objects, must be serialized as JSON. - -### Member of - -[`completeTask`](../mutations/complete-task.mdx) diff --git a/docs/apis-tools/tasklist-api/interfaces/_category_.yml b/docs/apis-tools/tasklist-api/interfaces/_category_.yml deleted file mode 100644 index 2adeef08a87..00000000000 --- a/docs/apis-tools/tasklist-api/interfaces/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Interfaces" diff --git a/docs/apis-tools/tasklist-api/mutations/_category_.yml b/docs/apis-tools/tasklist-api/mutations/_category_.yml deleted file mode 100644 index 4896c1e5d33..00000000000 --- a/docs/apis-tools/tasklist-api/mutations/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Mutations" diff --git a/docs/apis-tools/tasklist-api/mutations/claim-task.mdx b/docs/apis-tools/tasklist-api/mutations/claim-task.mdx deleted file mode 100644 index 5c2b84857dc..00000000000 --- a/docs/apis-tools/tasklist-api/mutations/claim-task.mdx +++ /dev/null @@ -1,78 +0,0 @@ ---- -id: claim-task -title: claimTask -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Claim a task with `taskId` to `assignee`. Returns the task. - -When using Graphql API with JWT authentication token following parameters may be used: - -- `assignee`. When using a JWT token, the assignee parameter is NOT optional when called directly from the API. - The system will not be able to detect the assignee from the JWT token, therefore the assignee parameter needs to be - explicitly passed in this instance. -- `allowOverrideAssignment`. When `true` the task that is already assigned may be claimed again. Otherwise the task - must be first unclaimed and only then claimed again. (Default: `true`) - -```graphql -claimTask( - taskId: String! - assignee: String - allowOverrideAssignment: Boolean -): Task! -``` - -### Arguments - -#### [claimTask.taskId](#)[`String!`](../scalars/string.mdx) - -> - -#### [claimTask.assignee](#)[`String`](../scalars/string.mdx) - -> - -#### [claimTask.allowOverrideAssignment](#)[`Boolean`](../scalars/boolean.mdx) - -> - -### Type - -#### [`Task`](../objects/task.mdx) - -> Describes the User task. diff --git a/docs/apis-tools/tasklist-api/mutations/complete-task.mdx b/docs/apis-tools/tasklist-api/mutations/complete-task.mdx deleted file mode 100644 index 1c713a2a5f4..00000000000 --- a/docs/apis-tools/tasklist-api/mutations/complete-task.mdx +++ /dev/null @@ -1,65 +0,0 @@ ---- -id: complete-task -title: completeTask -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Complete a task with taskId and optional variables. Returns the task. - -```graphql -completeTask( - taskId: String! - variables: [VariableInput!]! -): Task! -``` - -### Arguments - -#### [completeTask.taskId](#)[`String!`](../scalars/string.mdx) - -> - -#### [completeTask.variables](#)[`[VariableInput!]!`](../inputs/variable-input.mdx) - -> - -### Type - -#### [`Task`](../objects/task.mdx) - -> Describes the User task. diff --git a/docs/apis-tools/tasklist-api/mutations/delete-process-instance.mdx b/docs/apis-tools/tasklist-api/mutations/delete-process-instance.mdx deleted file mode 100644 index d71c392e7a8..00000000000 --- a/docs/apis-tools/tasklist-api/mutations/delete-process-instance.mdx +++ /dev/null @@ -1,60 +0,0 @@ ---- -id: delete-process-instance -title: deleteProcessInstance -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Delete process instance by given processInstanceId. Returns true if process instance could be deleted. - -```graphql -deleteProcessInstance( - processInstanceId: String! -): Boolean! -``` - -### Arguments - -#### [deleteProcessInstance.processInstanceId](#)[`String!`](../scalars/string.mdx) - -> - -### Type - -#### [`Boolean`](../scalars/boolean.mdx) - -> The `Boolean` scalar type represents `true` or `false`. diff --git a/docs/apis-tools/tasklist-api/mutations/unclaim-task.mdx b/docs/apis-tools/tasklist-api/mutations/unclaim-task.mdx deleted file mode 100644 index e00f4659f5b..00000000000 --- a/docs/apis-tools/tasklist-api/mutations/unclaim-task.mdx +++ /dev/null @@ -1,60 +0,0 @@ ---- -id: unclaim-task -title: unclaimTask -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Unclaim a task with taskId. Returns the task. - -```graphql -unclaimTask( - taskId: String! -): Task! -``` - -### Arguments - -#### [unclaimTask.taskId](#)[`String!`](../scalars/string.mdx) - -> - -### Type - -#### [`Task`](../objects/task.mdx) - -> Describes the User task. diff --git a/docs/apis-tools/tasklist-api/objects/_category_.yml b/docs/apis-tools/tasklist-api/objects/_category_.yml deleted file mode 100644 index f56c1499f38..00000000000 --- a/docs/apis-tools/tasklist-api/objects/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Objects" diff --git a/docs/apis-tools/tasklist-api/objects/form.mdx b/docs/apis-tools/tasklist-api/objects/form.mdx deleted file mode 100644 index 19a5a47f743..00000000000 --- a/docs/apis-tools/tasklist-api/objects/form.mdx +++ /dev/null @@ -1,68 +0,0 @@ ---- -id: form -title: Form -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Describes task embedded form - -```graphql -type Form { - id: String! - processDefinitionId: String! - schema: String! -} -``` - -### Fields - -#### [Form.id](#)[`String!`](../scalars/string.mdx) - -> The unique identifier of the embedded form within one process - -#### [Form.processDefinitionId](#)[`String!`](../scalars/string.mdx) - -> Reference to process definition - -#### [Form.schema](#)[`String!`](../scalars/string.mdx) - -> Form content - -### Returned by - -[`form`](../queries/form.mdx) diff --git a/docs/apis-tools/tasklist-api/objects/task.mdx b/docs/apis-tools/tasklist-api/objects/task.mdx deleted file mode 100644 index 800fec6ebcc..00000000000 --- a/docs/apis-tools/tasklist-api/objects/task.mdx +++ /dev/null @@ -1,144 +0,0 @@ ---- -id: task -title: Task -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Describes the User task. - -```graphql -type Task { - id: ID! - name: String! - taskDefinitionId: String! - processName: String! - creationTime: String! - completionTime: String - assignee: String - variables: [Variable!] - taskState: TaskState! - sortValues: [String!] - isFirst: Boolean - formKey: String - processDefinitionId: String - processInstanceId: String - candidateGroups: [String!] - candidateUsers: [String!] - followUpDate: DateTime - #Due date for Task - dueDate: DateTime -} -``` - -### Fields - -#### [Task.id](#)[`ID!`](../scalars/id.mdx) - -> The unique identifier of the task - -#### [Task.name](#)[`String!`](../scalars/string.mdx) - -> Name of the task - -#### [Task.taskDefinitionId](#)[`String!`](../scalars/string.mdx) - -> Task Definition ID (node BPMN id) of the process - -#### [Task.processName](#)[`String!`](../scalars/string.mdx) - -> Name of the process - -#### [Task.creationTime](#)[`String!`](../scalars/string.mdx) - -> When was the task created - -#### [Task.completionTime](#)[`String`](../scalars/string.mdx) - -> When was the task completed - -#### [Task.assignee](#)[`String`](../scalars/string.mdx) - -> Username/id of who is assigned to the task - -#### [Task.variables](#)[`[Variable!]`](../objects/variable.mdx) - -> Variables associated to the task - -#### [Task.taskState](#)[`TaskState!`](../enums/task-state.mdx) - -> State of the task - -#### [Task.sortValues](#)[`[String!]`](../scalars/string.mdx) - -> Array of values to be copied into `TaskQuery` to request for next or previous page of tasks. - -#### [Task.isFirst](#)[`Boolean`](../scalars/boolean.mdx) - -> Flag to show that the task is first in current filter - -#### [Task.formKey](#)[`String`](../scalars/string.mdx) - -> Reference to the task form - -#### [Task.processDefinitionId](#)[`String`](../scalars/string.mdx) - -> Reference to process definition - -#### [Task.processInstanceId](#)[`String`](../scalars/string.mdx) - -> Reference to process instance id - -#### [Task.candidateGroups](#)[`[String!]`](../scalars/string.mdx) - -> Candidate groups - -#### [Task.candidateUsers](#)[`[String!]`](../scalars/string.mdx) - -> Candidate users - -#### [Task.followUpDate](#)[`[String!]`](../scalars/DateTime.mdx) - -> Follow-up date for the task - -#### [Task.dueDate](#)[`[String!]`](../scalars/DateTime.mdx) - -> Due date for the task - -### Returned by - -[`claimTask`](../mutations/claim-task.mdx) [`completeTask`](../mutations/complete-task.mdx) [`task`](../queries/task.mdx) [`tasks`](../queries/tasks.mdx) [`unclaimTask`](../mutations/unclaim-task.mdx) diff --git a/docs/apis-tools/tasklist-api/objects/user.mdx b/docs/apis-tools/tasklist-api/objects/user.mdx deleted file mode 100644 index cc9bcaa35ac..00000000000 --- a/docs/apis-tools/tasklist-api/objects/user.mdx +++ /dev/null @@ -1,78 +0,0 @@ ---- -id: user -title: User -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Describes the user. - -```graphql -type User { - userId: ID! - displayName: String - permissions: [String!] - roles: [String] - salesPlanType: String -} -``` - -### Fields - -#### [User.userId](#)[`ID!`](../scalars/id.mdx) - -> - -#### [User.displayName](#)[`String`](../scalars/string.mdx) - -> - -#### [User.permissions](#)[`[String!]`](../scalars/string.mdx) - -> - -#### [User.roles](#)[`[String]`](../scalars/string.mdx) - -> - -#### [User.salesPlanType](#)[`String`](../scalars/string.mdx) - -> - -### Returned by - -[`currentUser`](../queries/current-user.mdx) diff --git a/docs/apis-tools/tasklist-api/objects/variable.mdx b/docs/apis-tools/tasklist-api/objects/variable.mdx deleted file mode 100644 index 99555238c1d..00000000000 --- a/docs/apis-tools/tasklist-api/objects/variable.mdx +++ /dev/null @@ -1,82 +0,0 @@ ---- -id: variable -title: Variable -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Variable used in task. - -```graphql -type Variable { - id: ID! - name: String! - value: String! - previewValue: String! - isValueTruncated: Boolean! -} -``` - -### Fields - -#### [Variable.id](#)[`ID!`](../scalars/id.mdx) - -> - -#### [Variable.name](#)[`String!`](../scalars/string.mdx) - -> - -#### [Variable.value](#)[`String!`](../scalars/string.mdx) - -> full variable value - -#### [Variable.previewValue](#)[`String!`](../scalars/string.mdx) - -> value preview (limited in size) - -#### [Variable.isValueTruncated](#)[`Boolean!`](../scalars/boolean.mdx) - -> shows, whether previewValue contains truncated value or full value - -### Returned by - -[`variable`](../queries/variable.mdx) [`variables`](../queries/variables.mdx) - -### Member of - -[`Task`](../objects/task.mdx) diff --git a/docs/apis-tools/tasklist-api/queries/_category_.yml b/docs/apis-tools/tasklist-api/queries/_category_.yml deleted file mode 100644 index 529a48de855..00000000000 --- a/docs/apis-tools/tasklist-api/queries/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Queries" diff --git a/docs/apis-tools/tasklist-api/queries/current-user.mdx b/docs/apis-tools/tasklist-api/queries/current-user.mdx deleted file mode 100644 index 997da3571aa..00000000000 --- a/docs/apis-tools/tasklist-api/queries/current-user.mdx +++ /dev/null @@ -1,52 +0,0 @@ ---- -id: current-user -title: currentUser -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Get currently logged in user. - -```graphql -currentUser: User! -``` - -### Type - -#### [`User`](../objects/user.mdx) - -> Describes the user. diff --git a/docs/apis-tools/tasklist-api/queries/form.mdx b/docs/apis-tools/tasklist-api/queries/form.mdx deleted file mode 100644 index a4d110d93dc..00000000000 --- a/docs/apis-tools/tasklist-api/queries/form.mdx +++ /dev/null @@ -1,65 +0,0 @@ ---- -id: form -title: form -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Get task form by id and processDefinitionId - -```graphql -form( - id: String! - processDefinitionId: String! -): Form -``` - -### Arguments - -#### [form.id](#)[`String!`](../scalars/string.mdx) - -> - -#### [form.processDefinitionId](#)[`String!`](../scalars/string.mdx) - -> - -### Type - -#### [`Form`](../objects/form.mdx) - -> Describes task embedded form diff --git a/docs/apis-tools/tasklist-api/queries/task.mdx b/docs/apis-tools/tasklist-api/queries/task.mdx deleted file mode 100644 index f3f7e23e70c..00000000000 --- a/docs/apis-tools/tasklist-api/queries/task.mdx +++ /dev/null @@ -1,60 +0,0 @@ ---- -id: task -title: task -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Get one task by id. Returns task or error when task does not exist. - -```graphql -task( - id: String! -): Task! -``` - -### Arguments - -#### [task.id](#)[`String!`](../scalars/string.mdx) - -> - -### Type - -#### [`Task`](../objects/task.mdx) - -> Describes the User task. diff --git a/docs/apis-tools/tasklist-api/queries/tasks.mdx b/docs/apis-tools/tasklist-api/queries/tasks.mdx deleted file mode 100644 index 2073800499c..00000000000 --- a/docs/apis-tools/tasklist-api/queries/tasks.mdx +++ /dev/null @@ -1,60 +0,0 @@ ---- -id: tasks -title: tasks -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Get list of tasks based on `TaskQuery`. - -```graphql -tasks( - query: TaskQuery! -): [Task!]! -``` - -### Arguments - -#### [tasks.query](#)[`TaskQuery!`](../inputs/task-query.mdx) - -> - -### Type - -#### [`Task`](../objects/task.mdx) - -> Describes the User task. diff --git a/docs/apis-tools/tasklist-api/queries/variable.mdx b/docs/apis-tools/tasklist-api/queries/variable.mdx deleted file mode 100644 index df3c0de0594..00000000000 --- a/docs/apis-tools/tasklist-api/queries/variable.mdx +++ /dev/null @@ -1,60 +0,0 @@ ---- -id: variable -title: variable -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Get the variables by variable id - -```graphql -variable( - id: String! -): Variable! -``` - -### Arguments - -#### [variable.id](#)[`String!`](../scalars/string.mdx) - -> - -### Type - -#### [`Variable`](../objects/variable.mdx) - -> Variable used in task. diff --git a/docs/apis-tools/tasklist-api/queries/variables.mdx b/docs/apis-tools/tasklist-api/queries/variables.mdx deleted file mode 100644 index 9654f63c846..00000000000 --- a/docs/apis-tools/tasklist-api/queries/variables.mdx +++ /dev/null @@ -1,65 +0,0 @@ ---- -id: variables -title: variables -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -Get a collection of Variables by name - -```graphql -variables( - taskId: String! - variableNames: [String!]! -): [Variable!]! -``` - -### Arguments - -#### [variables.taskId](#)[`String!`](../scalars/string.mdx) - -> - -#### [variables.variableNames](#)[`[String!]!`](../scalars/string.mdx) - -> - -### Type - -#### [`Variable`](../objects/variable.mdx) - -> Variable used in task. diff --git a/docs/apis-tools/tasklist-api/scalars/DateTime.mdx b/docs/apis-tools/tasklist-api/scalars/DateTime.mdx deleted file mode 100644 index 9f5272a3fc7..00000000000 --- a/docs/apis-tools/tasklist-api/scalars/DateTime.mdx +++ /dev/null @@ -1,50 +0,0 @@ ---- -id: datetime -title: DateTime -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -The `DateTime` scalar type represents date and time data and is compliant with the date-time format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar. - -```graphql -scalar DateTime -``` - -### Member of - -[`Task`](/docs/apis-tools/tasklist-api/inputs/task-query.mdx) diff --git a/docs/apis-tools/tasklist-api/scalars/_category_.yml b/docs/apis-tools/tasklist-api/scalars/_category_.yml deleted file mode 100644 index 882b071de4b..00000000000 --- a/docs/apis-tools/tasklist-api/scalars/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Scalars" diff --git a/docs/apis-tools/tasklist-api/scalars/boolean.mdx b/docs/apis-tools/tasklist-api/scalars/boolean.mdx deleted file mode 100644 index 7d445378c90..00000000000 --- a/docs/apis-tools/tasklist-api/scalars/boolean.mdx +++ /dev/null @@ -1,54 +0,0 @@ ---- -id: boolean -title: Boolean -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -The `Boolean` scalar type represents `true` or `false`. - -```graphql -scalar Boolean -``` - -### Returned by - -[`deleteProcessInstance`](../mutations/delete-process-instance.mdx) - -### Member of - -[`claimTask`](../mutations/claim-task.mdx) [`include`](../directives/include.mdx) [`skip`](../directives/skip.mdx) [`Task`](../objects/task.mdx) [`TaskQuery`](../inputs/task-query.mdx) [`Variable`](../objects/variable.mdx) diff --git a/docs/apis-tools/tasklist-api/scalars/id.mdx b/docs/apis-tools/tasklist-api/scalars/id.mdx deleted file mode 100644 index 7504beac023..00000000000 --- a/docs/apis-tools/tasklist-api/scalars/id.mdx +++ /dev/null @@ -1,50 +0,0 @@ ---- -id: id -title: ID -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `"4"`) or integer (such as `4`) input value will be accepted as an ID. - -```graphql -scalar ID -``` - -### Member of - -[`Task`](../objects/task.mdx) [`User`](../objects/user.mdx) [`Variable`](../objects/variable.mdx) diff --git a/docs/apis-tools/tasklist-api/scalars/int.mdx b/docs/apis-tools/tasklist-api/scalars/int.mdx deleted file mode 100644 index e85fdb3c003..00000000000 --- a/docs/apis-tools/tasklist-api/scalars/int.mdx +++ /dev/null @@ -1,50 +0,0 @@ ---- -id: int -title: Int -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1. - -```graphql -scalar Int -``` - -### Member of - -[`TaskQuery`](../inputs/task-query.mdx) diff --git a/docs/apis-tools/tasklist-api/scalars/string.mdx b/docs/apis-tools/tasklist-api/scalars/string.mdx deleted file mode 100644 index 818899c478a..00000000000 --- a/docs/apis-tools/tasklist-api/scalars/string.mdx +++ /dev/null @@ -1,50 +0,0 @@ ---- -id: string -title: String -hide_table_of_contents: false ---- - -export const Bullet = () => ( - <> - -  ●  - - -); - -export const SpecifiedBy = (props) => ( - <> - Specification - - ⎘ - - -); - -export const Badge = (props) => ( - <> - {props.text} - -); - -The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text. - -```graphql -scalar String -``` - -### Member of - -[`claimTask`](../mutations/claim-task.mdx) [`completeTask`](../mutations/complete-task.mdx) [`deleteProcessInstance`](../mutations/delete-process-instance.mdx) [`deprecated`](../directives/deprecated.mdx) [`Form`](../objects/form.mdx) [`form`](../queries/form.mdx) [`specifiedBy`](../directives/specified-by.mdx) [`Task`](../objects/task.mdx) [`task`](../queries/task.mdx) [`TaskQuery`](../inputs/task-query.mdx) [`unclaimTask`](../mutations/unclaim-task.mdx) [`User`](../objects/user.mdx) [`Variable`](../objects/variable.mdx) [`variable`](../queries/variable.mdx) [`VariableInput`](../inputs/variable-input.mdx) [`variables`](../queries/variables.mdx) diff --git a/docs/apis-tools/tasklist-api/sidebar-schema.js b/docs/apis-tools/tasklist-api/sidebar-schema.js deleted file mode 100644 index 82b59566af1..00000000000 --- a/docs/apis-tools/tasklist-api/sidebar-schema.js +++ /dev/null @@ -1,10 +0,0 @@ -/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */ - -module.exports = { - "Tasklist API (GraphQL)": [ - { - type: "autogenerated", - dirName: "apis-tools/tasklist-api", - }, - ], -}; diff --git a/docs/apis-tools/tasklist-api/tasklist-api-authentication.md b/docs/apis-tools/tasklist-api/tasklist-api-authentication.md deleted file mode 100644 index 2cd6c2d4a5f..00000000000 --- a/docs/apis-tools/tasklist-api/tasklist-api-authentication.md +++ /dev/null @@ -1,92 +0,0 @@ ---- -id: tasklist-api-authentication -title: Authentication -slug: /apis-tools/tasklist-api/tasklist-api-authentication -sidebar_position: 2 -description: "Build apps powered by BPMN that require human interaction, and make requests." ---- - -Authenticate to access the Tasklist API. - -## Authentication in the cloud - -To access the API endpoint, you need an access token. - -Your client must send a header in each request: - -`Authorization: Bearer ` - -For example, send a request using _curl_: - -```shell -curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer " -d '{"query": "{tasks(query:{}){name}}"}' http://localhost:8080/graphql -``` - -### How to obtain the access token - -You must obtain a token to use the Tasklist API. When you create a Tasklist [client](/guides/setup-client-connection-credentials.md), you get all the information needed to connect to Tasklist. - -Refer to our guide on [building your own client](/apis-tools/build-your-own-client.md). - -The following settings are needed: - -| Name | Description | Default value | -| ------------------------ | ----------------------------------------------- | --------------------- | -| client id | Name of your registered client | - | -| client secret | Password for your registered client | - | -| audience | Permission name; if not given use default value | `tasklist.camunda.io` | -| authorization server url | Token issuer server | - | - -Send a token issue _POST_ request to the authorization server with the following content: - -```json -{ - "client_id": "", - "client_secret": "", - "audience": "", - "grant_type": "client_credentials" -} -``` - -Refer to the following example with _curl_: - -```shell -curl -X POST --header 'content-type: application/json' --data '{"client_id": "", "client_secret":"","audience":"","grant_type":"client_credentials"}' https:// -``` - -If the authentication is successful, the authorization server sends back the access token, when it expires, scope, and type: - -```json -{ - "access_token": "ey...", - "scope": "...", - "expires_in": 86400, - "token_type": "Bearer" -} -``` - -## Authentication for Self-Managed cluster - -### Authentication via Identity JWT access token - -The authentication is described in [Tasklist Configuration - Authentication](/self-managed/tasklist-deployment/tasklist-authentication.md#identity). - -### Authentication via cookie - -:::note -When authenticating via cookie, note that Cross-Site Request Forgery (CSRF) protection must be disabled to allow this method of authentication. In a Camunda Self-Managed cluster, set the configuration property `camunda.tasklist.csrfPreventionEnabled` to `false`. -::: - -Another way to access the Tasklist API in a Self-Managed cluster is to send cookie headers in each request. The cookie can be obtained by using the API endpoint `/api/login`. Take the following steps: - -1. Log in as user 'demo' and store the cookie in the file `cookie.txt`: - -```shell -curl -c cookie.txt -X POST 'http://localhost:8080/api/login?username=demo&password=demo' -``` - -2. Send the cookie (as a header) in each API request. In this case, request all process definitions: - -```shell -curl -b cookie.txt -X POST 'http://localhost:8080/v1/process-definitions/search' -H 'Content-Type: application/json' -d '{}' -``` diff --git a/docs/apis-tools/tasklist-api/tasklist-api-graphql-to-rest-migration.md b/docs/apis-tools/tasklist-api/tasklist-api-graphql-to-rest-migration.md deleted file mode 100644 index 3b17a3ad4fd..00000000000 --- a/docs/apis-tools/tasklist-api/tasklist-api-graphql-to-rest-migration.md +++ /dev/null @@ -1,216 +0,0 @@ ---- -id: tasklist-api-graphql-to-rest-migration -title: GraphQL to REST API migration -slug: /apis-tools/tasklist-api/tasklist-api-graphql-to-rest-migration -sidebar_position: 3 -description: "This article provides a guide for developers to migrate from GraphQL to REST API seamlessly." ---- - -We want to provide you with the information you need to successfully migrate from our GraphQL API -to our new REST API version. In this document, we'll explain the differences between the two APIs -and provide guidance on how to make the switch. - -GraphQL has been a popular and valuable tool for many of our customers, but we recognize that there are -certain advantages to using a RESTful architecture. Our new REST API version provides a more structured -and predictable way of accessing our data, which can improve performance and greater reliability. - -It's worth noting that all of our other APIs use REST, so moving to a RESTful architecture will align this API -with the rest of our ecosystem. This will make it easier to maintain and enhance our APIs over time, -as well as providing a more consistent experience for API customers. - -## GraphQL operation to REST API endpoint mapping - -### Queries - -#### Task - -Instead of [task](../tasklist-api/queries/task.mdx) GraphQL query: - -```graphql -# Get one task by id. Returns task or error when task does not exist. -task(id: String!): Task! -``` - -Use the following [get task](../tasklist-api-rest/controllers/tasklist-api-rest-task-controller.md#get-task) endpoint: - -```bash -curl -X 'GET' \ - 'http://{host}/v1/tasks/{taskId}' \ - -H 'accept: application/json' - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' -``` - -:::note - -The following fields in REST API response were renamed compared to the equivalent GraphQL response: - -- [`Task.creationTime`](docs/apis-tools/tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbcreationtimebcodestring--) ⇒ [`TaskResponse.creationDate`](docs/apis-tools/tasklist-api-rest/schemas/responses/task-response.mdx#code-style-fontweight-normal-taskresponsebcreationdatebcodestring-) -- [`Task.completionTime`](docs/apis-tools/tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbcompletiontimebcodestring-) ⇒ [`TaskResponse.completionDate`](docs/apis-tools/tasklist-api-rest/schemas/responses/task-response.mdx#code-style-fontweight-normal-taskresponsebcompletiondatebcodestring) -- [`Task.processDefinitionId`](docs/apis-tools/tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbprocessdefinitionidbcodestring-) ⇒ [`TaskResponse.processDefinitionKey`](docs/apis-tools/tasklist-api-rest/schemas/responses/task-response.mdx#code-style-fontweight-normal-taskresponsebprocessdefinitionkeybcodestring) -- [`Task.processInstanceId`](docs/apis-tools/tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbprocessinstanceidbcodestring-) ⇒ [`TaskResponse.processInstanceKey`](docs/apis-tools/tasklist-api-rest/schemas/responses/task-response.mdx#code-style-fontweight-normal-taskresponsebprocessinstancekeybcodestring) - -::: - -#### Tasks - -Instead of [tasks](../tasklist-api/queries/tasks.mdx) GraphQL query: - -```graphql -# Get list of tasks based on `TaskQuery`. -tasks(query: TaskQuery!): [Task!]! -``` - -Use the following [search tasks](../tasklist-api-rest/controllers/tasklist-api-rest-task-controller.md#search-tasks) endpoint: - -```bash -curl -X 'POST' \ - 'http://{host}/v1/tasks/search' \ - -H 'accept: application/json' \ - -H 'Content-Type: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \ - -d '{ - "state": "CREATED", - "assigned": true -}' -``` - -:::note - -Please note that several field names in request body and response were changed in REST API comparing to the equivalent GraphQL input/response models, in order to improve the consistency and clarity of our API: - -- in request body: - - - [`TaskQuery.processDefinitionId`](docs/apis-tools/tasklist-api/inputs/task-query.mdx#code-style-fontweight-normal-taskquerybprocessdefinitionidbcodestring-) ⇒ [`TaskSearchRequest.processDefinitionKey`](docs/apis-tools/tasklist-api-rest/schemas/requests/task-search-request.mdx#code-style-fontweight-normal-tasksearchrequestbprocessdefinitionkeybcodestring) - - [`TaskQuery.processInstanceId`](docs/apis-tools/tasklist-api/inputs/task-query.mdx#code-style-fontweight-normal-taskquerybprocessinstanceidbcodestring-) ⇒ [`TaskSearchRequest.processInstanceKey`](docs/apis-tools/tasklist-api-rest/schemas/requests/task-search-request.mdx#code-style-fontweight-normal-tasksearchrequestbprocessinstancekeybcodestring) - -- in response: - - [`Task.creationTime`](docs/apis-tools/tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbcreationtimebcodestring--) ⇒ [`TaskSearchResponse.creationDate`](docs/apis-tools/tasklist-api-rest/schemas/responses/task-search-response.mdx#code-style-fontweight-normal-tasksearchresponsebcreationdatebcodestring-) - - [`Task.completionTime`](docs/apis-tools/tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbcompletiontimebcodestring-) ⇒ [`TaskSearchResponse.completionDate`](docs/apis-tools/tasklist-api-rest/schemas/responses/task-search-response.mdx#code-style-fontweight-normal-tasksearchresponsebcompletiondatebcodestring) - - [`Task.processDefinitionId`](docs/apis-tools/tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbprocessdefinitionidbcodestring-) ⇒ [`TaskSearchResponse.processDefinitionKey`](docs/apis-tools/tasklist-api-rest/schemas/responses/task-search-response.mdx#code-style-fontweight-normal-tasksearchresponsebprocessdefinitionkeybcodestring) - - [`Task.processInstanceId`](docs/apis-tools/tasklist-api/objects/task.mdx#code-style-fontweight-normal-taskbprocessinstanceidbcodestring-) ⇒ [`TaskSearchResponse.processInstanceKey`](docs/apis-tools/tasklist-api-rest/schemas/responses/task-search-response.mdx#code-style-fontweight-normal-tasksearchresponsebprocessinstancekeybcodestring) - -::: - -#### Variable - -Instead of [variable](../tasklist-api/queries/variable.mdx) GraphQL query: - -```graphql -# Get the variables by variable id -variable(id: String!): Variable! -``` - -Use the following [get variable](../tasklist-api-rest/controllers/tasklist-api-rest-variables-controller.md#get-variable) endpoint: - -```bash -curl -X 'GET' \ - 'http://{host}/v1/variables/{variableId}' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' -``` - -#### Variables - -Instead of [variables](../tasklist-api/queries/variables.mdx) GraphQL query: - -```graphql -# Get a collection of Variables by name -variables(taskId: String!, variableNames: [String!]!): [Variable!]! -``` - -Use the following [search task variables](../tasklist-api-rest/controllers/tasklist-api-rest-task-controller.md#search-task-variables) endpoint: - -```bash -curl -X 'POST' \ - 'http://{host}/v1/tasks/{taskId}/variables/search' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \ - -d '{ - "variableNames": [ - "varA", "varB" - ] - }' -``` - -#### Form - -Instead of [form](../tasklist-api/queries/form.mdx) GraphQL query: - -```graphql -# Get task form by formId and processDefinitionId -form(id: String!, processDefinitionId: String!): Form -``` - -Use the following [get form](../tasklist-api-rest/controllers/tasklist-api-rest-form-controller.md#get-form) endpoint: - -```bash -curl -X 'GET' \ - 'http://{host}/v1/forms/{formId}?processDefinitionKey={processDefinitionKey}' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' -``` - -:::note - -Note that `processDefinitionKey` query parameter in HTTP request represents the same value as [`form.processDefinitionId`](docs/apis-tools/tasklist-api/queries/form.mdx#code-style-fontweight-normal-formbprocessdefinitionidbcodestring--), -and in REST API response [`FormResponse.processDefinitionKey`](docs/apis-tools/tasklist-api-rest/schemas/responses/form-response.mdx#code-style-fontweight-normal-formresponsebprocessdefinitionkeybcodestring-) field -is the renamed equivalent of [`Form.processDefinitionId`](docs/apis-tools/tasklist-api/objects/form.mdx#code-style-fontweight-normal-formbprocessdefinitionidbcodestring--). - -::: - -### Mutations - -#### Claim task - -Instead of [claimTasks](../tasklist-api/mutations/claim-task.mdx) GraphQL mutation: - -```graphql -# Claim a task with `taskId` to `assignee`. Returns the task. -claimTask(taskId: String!, assignee: String, allowOverrideAssignment: Boolean): Task! -``` - -Use the following [assign task](../tasklist-api-rest/controllers/tasklist-api-rest-task-controller.md#assign-task) endpoint: - -```bash -curl -X 'PATCH' \ - 'http://{host}/v1/tasks/{taskId}/assign' \ - -H 'accept: application/json' \ - -H 'Content-Type: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' -``` - -#### Unclaim task - -Instead of [unclaimTasks](../tasklist-api/mutations/unclaim-task.mdx) GraphQL mutation: - -```graphql -# Unclaim a task with taskId. Returns the task. -unclaimTask(taskId: String!): Task! -``` - -Use the following [unassign task](../tasklist-api-rest/controllers/tasklist-api-rest-task-controller.md#unassign-task) endpoint: - -```bash -curl -X 'PATCH' \ - 'http://{host}/v1/tasks/{taskId}/unassign' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' -``` - -#### Complete task - -Instead of [completeTasks](../tasklist-api/mutations/complete-task.mdx) GraphQL mutation: - -```graphql -# Complete a task with taskId and optional variables. Returns the task. -completeTask(taskId: String!, variables: [VariableInput!]!): Task! -``` - -Use the following [complete task](../tasklist-api-rest/controllers/tasklist-api-rest-task-controller.md#complete-task) endpoint: - -```bash -curl -X 'PATCH' \ - 'http://{host}/v1/tasks/{taskId}/complete' \ - -H 'accept: application/json' \ - -H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' -``` diff --git a/docs/apis-tools/tasklist-api/tasklist-api-overview.md b/docs/apis-tools/tasklist-api/tasklist-api-overview.md deleted file mode 100644 index 7f3eaf0586e..00000000000 --- a/docs/apis-tools/tasklist-api/tasklist-api-overview.md +++ /dev/null @@ -1,113 +0,0 @@ ---- -id: tasklist-api-overview -title: Overview -slug: /apis-tools/tasklist-api/tasklist-api-overview -sidebar_position: 1 -description: "Build apps powered by BPMN that require human interaction, and make requests." ---- - -Learn the basics on how to consume the Tasklist GraphQL API. Read more about how to build a real world application [here](../tasklist-api-tutorial). Be sure to [authenticate to use the Tasklist API](./tasklist-api-authentication.md). - -:::info -The GraphQL API is deprecated. To ensure a smooth transition, we'll continue to support our GraphQL API for a period of time, giving you an opportunity to migrate to the new REST API version at your own pace. - -Review the [Tasklist REST API](../tasklist-api-rest/tasklist-api-rest-overview.md). The REST API offers more functionality than the GraphQL API, and a more streamlined and efficient way of interacting with our service. -::: - -## Endpoint - -Tasklist provides a GraphQL API at endpoint `/graphql`. - -From Camunda 8 the endpoint is `${base-url}/graphql`. - -For SaaS: `https://${REGION}.tasklist.camunda.io:443/${CLUSTER_ID}/graphql`, and for Self-Managed installations: `http://localhost:8080/graphql`. - -## Obtaining the Tasklist schema - -To obtain the Tasklist GraphQL schema, visit the API collection in [GitHub](https://github.com/camunda-community-hub/camunda-8-api-postman-collection), which is fully functioning in [Postman](https://www.postman.com/camundateam/workspace/camunda-8-postman/collection/20317927-6394943f-b57c-4c04-acf9-391a8614103b?action=share&creator=11465105). - -Alternatively, send a request to the endpoint with a GraphQL introspection query as described [here](https://graphql.org/learn/introspection/), or use the [generated API documentation](/apis-tools/tasklist-api/generated.md). - -There are also several [tools to explore GraphQL APIs](https://altair.sirmuel.design). - -For example, you want to know about provided types: - -```graphql -query { - __schema { - queryType { - fields { - name - type { - kind - ofType { - kind - name - } - } - } - } - } -} -``` - -## Example requests and responses - -### Get all task names - -_Request:_ - -```graphql -{ - tasks(query: {}) { - name - } -} -``` - -_Response:_ - -```json -{ - "data": { - "tasks": [ - { - "name": "Check payment" - }, - { - "name": "Register the passenger" - } - ] - } -} -``` - -### Get all tasks completed with id, name, and state - -_Request:_ - -```graphql -{ - tasks(query: { state: COMPLETED }) { - id - name - taskState - } -} -``` - -_Response:_ - -```json -{ - "data": { - "tasks": [ - { - "id": "2251799813685728", - "name": "Check payment", - "taskState": "COMPLETED" - } - ] - } -} -``` diff --git a/docs/apis-tools/tasklist-api/tasklist-api-tutorial.md b/docs/apis-tools/tasklist-api/tasklist-api-tutorial.md deleted file mode 100644 index 5ecdd5ba456..00000000000 --- a/docs/apis-tools/tasklist-api/tasklist-api-tutorial.md +++ /dev/null @@ -1,341 +0,0 @@ ---- -id: tasklist-api-tutorial -title: Tutorial -slug: /apis-tools/tasklist-api/tasklist-api-tutorial -sidebar_position: 2 -description: "Let's implement an application using the Tasklist API." ---- - -## Building an application using the Tasklist API and NestJS - -The Tasklist API provides a simple way for you to build apps powered by BPMN that require human interaction. - -With this example, we'll use NestJS (one of the most popular Node.js backend frameworks) to a build a loan request review application. - -## Getting started - -For this tutorial we'll need: - -- Node v14+ -- The [NestJS CLI](https://docs.nestjs.com/cli/overview) tool. Install it by running `npm install -g @nestjs/cli`. -- [A cluster on Camunda 8](../../components/console/manage-clusters/create-cluster.md) -- [A set of API credentials; remember to check the Tasklist option when creating them](../../components/console/manage-clusters/manage-api-clients.md). Don't forget to save these, we'll need them later. -- [A clone of this repo](https://github.com/camunda-community-hub/camunda-cloud-tasklist-api-nestjs) - -## Before moving forward - -If you have all the prerequisites from the getting started section above, you will have cloned a repo with the complete demo application we're going to build over this tutorial. The default branch in this repo has the complete application, so we need to `checkout` to the branch `0-getting-started` before proceeding. - -Inside the repo folder, you'll find some files and two folders, one of these folders is called `demo-data/` and the other `frontend/`. As it might be evident inside each of these folders, there are two different projects. - -The former will be responsible by deploying the demo process into Zeebe and generating instances for that process. The latter is a front-end application that will consume our API; this project is bootstrapped with [Vite](https://vitejs.dev), [bulma](https://bulma.io) for styling, and [react-query](https://react-query.tanstack.com) - -## Creating a new NestJS application - -Now let's bootstrap our NestJS app. Take the following steps: - -1. Open your terminal and go to the cloned repository folder. -2. Run `nest new api`. -3. Pick `yarn` as a package manager. - -This will create the NestJS project for us inside the `api/` folder. We can clean up the project a bit and remove the files `api/app.controller.spec.ts`, `api/app.controller.ts`, and `api/app.service.ts`. - -We can also remove the references from the deleted files in `api/app.module.ts`. The file should look like this: - -```ts -import { Module } from "@nestjs/common"; - -@Module({ - imports: [], - controllers: [], - providers: [], -}) -export class AppModule {} -``` - -To check if everything is working as expected, run `yarn workspace api run start:dev` from the root folder on your terminal. You will observe a message similar to the one below: - -```sh -[00:00:00 AM] Starting compilation in watch mode... -[00:00:00 AM] Found 0 errors. Watching for file changes. -[Nest] 46621 - 00/00/0000, 00:00:00 AM LOG [NestFactory] Starting Nest application... -[Nest] 46621 - 00/00/0000, 00:00:00 AM LOG [InstanceLoader] AppModule dependencies initialized +12ms -[Nest] 46621 - 00/00/0000, 00:00:00 AM LOG [NestApplication] Nest application successfully started +3ms -``` - -## Generating the Tasklist service - -Inside the `api/` folder we'll need to generate a service that will be responsible for accessing the Tasklist API. Take the following steps: - -1. Run `nest g service`. -2. You'll be prompted to pick a name for the service, let's pick `tasklist`. -3. Run `yarn add @nestjs/axios`. - -A folder called `tasklist/` will be created with the service definition and test; you can delete the tests if you wish. We also installed the package `@nestjs/axios`, so we can make requests to the Tasklist API. -To make HTTP requests we need to inject the module into the service, like below: - -```ts -import { Injectable } from "@nestjs/common"; -import { HttpService } from "@nestjs/axios"; - -@Injectable() -export class TasklistService { - constructor(private readonly http: HttpService) {} -} -``` - -Now, we're ready to make requests to the API. First, let's define a Data Transfer Object (DTO) with the shape of the tasks we're going to request. For that, we can create a file in `tasklist/dto/task.dto.ts`. There, we can define the DTO as follows: - -```ts -type Variable = { - name: string; - value: string; -}; - -export class TaskDto { - id: string; - name: string; - processName: string; - creationTime: string; - completionTime: string | null; - assignee: string | null; - variables: Variable[]; - taskState: "CREATED" | "COMPLETED" | "CANCELED"; - sortValues: [string, string]; - isFirst: boolean | null; - formKey: string | null; - processDefinitionId: string; - taskDefinitionId: string; -} -``` - -We can implement the requests. For this, we need to define the Tasklist API query and define the methods on the service: - -```ts -import { HttpService } from "@nestjs/axios"; -import { Injectable } from "@nestjs/common"; -import { firstValueFrom } from "rxjs"; -import { TaskDto } from "./dto/task.dto"; - -const getTasksQuery = ` - query GetTasks($state: TaskState $pageSize: Int $searchAfter: [String!] $searchBefore: [String!] $taskDefinitionId: String!) { - tasks(query: { state: $state pageSize: $pageSize searchAfter: $searchAfter searchBefore: $searchBefore taskDefinitionId: $taskDefinitionId }) { - id - creationTime - variables { - value - name - } - taskState - isFirst - sortValues - } - } -`; - -type QueryVariables = { - pageSize?: number; - searchAfter?: [string, string]; - searchBefore?: [string, string]; - state?: "CREATED" | "COMPLETED"; - taskDefinitionId?: string; -}; - -@Injectable() -export class TasklistService { - constructor(private readonly http: HttpService) {} - - async getTasks(variables: QueryVariables): Promise { - const { http } = this; - const { errors, data } = ( - await firstValueFrom( - http.post("/", { - /* - for simplicity we just used Axios here, but since the Tasklist API is a GraphQL API - a package like `graphql-request` might be better suited for this - */ - query: getTasksQuery, - variables, - }) - ) - ).data; - - if (errors) { - // handle error - } - - return data.tasks; - } -} -``` - -To keep things concise, we have one query and one method here. To observe the complete implementation, review [this file](https://github.com/camunda-community-hub/camunda-cloud-tasklist-api-nestjs/blob/2-generating-tasklist-service/api/src/tasklist/tasklist.service.ts). - -## Handling the Tasklist API authentication - -We have the implementation of our service, but we still can't make requests to the Tasklist API because we're not providing any credentials to the API. - -To achieve this, we need to rename the file `.env.example` to `.env` (the file needs to be on the root because we'll reuse it to generate the demo data), and the content of this file must look like this: - -```sh -ZEEBE_ADDRESS=".bru-2.zeebe.camunda.io:443" -ZEEBE_CLIENT_ID="k2FKt_PNMrRUFQO-QOR9MtCygvGsT.sm" -ZEEBE_CLIENT_SECRET="C-o5WFhvoZKv4-oQGHWg~d2MObjdr-GUv3cdqRS3~6fCoHaLleEEwnOqRToQvWda" -ZEEBE_AUTHORIZATION_SERVER_URL="https://login.cloud.camunda.io/oauth/token" -TASKLIST_API_ADDRESS="https://bru-2.tasklist.camunda.io//graphql" -ZEEBE_AUTHORIZATION_AUDIENCE="tasklist.camunda.io" -``` - -You can find all this information on the **API** tab of the cluster page. The client id and secret must be on the file you downloaded in the getting started section. - -Now that we have our credentials, we can authenticate and inject the JWT token into every request we make into Tasklist API. - -For this, we need to turn our Tasklist service into part of a module. Run `nest g module` and name it `tasklist`, the same we named the service. This will generate the module file and update `app.module.ts`. -We need to edit the `app.module.ts` file to use only the module: - -```ts -import { Module } from "@nestjs/common"; -import { TasklistModule } from "./tasklist/tasklist.module"; - -@Module({ - imports: [TasklistModule], - controllers: [], - providers: [], -}) -export class AppModule {} -``` - -We can install the package `@nestjs/config` and finally implement the authentication: - -```ts -import { Logger, Module, OnModuleInit } from "@nestjs/common"; -import { ConfigModule, ConfigService } from "@nestjs/config"; -import { HttpModule, HttpService } from "@nestjs/axios"; -import { TasklistService } from "./tasklist.service"; -import { firstValueFrom, map } from "rxjs"; - -type AuthResponse = { - access_token: string; - scope: string; - expires_in: number; - token_type: string; -}; - -@Module({ - imports: [ - HttpModule, - ConfigModule.forRoot({ - envFilePath: "../.env", - }), - ], - providers: [TasklistService], - exports: [TasklistService, HttpModule, ConfigModule], -}) -export class TasklistModule implements OnModuleInit { - logger = new Logger(TasklistModule.name); - - constructor( - private readonly http: HttpService, - private readonly config: ConfigService - ) {} - - public async onModuleInit() { - const { - http: { axiosRef }, - config, - logger, - } = this; - const credentials = await this.fetchCredentials(); - - logger.log("Tasklist credentials fetched"); - - axiosRef.defaults.baseURL = config.get("TASKLIST_API_ADDRESS"); - axiosRef.defaults.headers["Authorization"] = - `Bearer ${credentials.access_token}`; - axiosRef.defaults.headers["Content-Type"] = "application/json"; - setTimeout(this.onModuleInit.bind(this), credentials.expires_in * 1000); // we need convert minutes to milliseconds - } - - private async fetchCredentials() { - const { http, config } = this; - - return firstValueFrom( - http - .post(config.get("ZEEBE_AUTHORIZATION_SERVER_URL"), { - client_id: config.get("ZEEBE_CLIENT_ID"), - client_secret: config.get("ZEEBE_CLIENT_SECRET"), - audience: config.get("ZEEBE_AUTHORIZATION_AUDIENCE"), - grant_type: "client_credentials", - }) - .pipe(map((response) => response.data)) - ); - } -} -``` - -When this module is initialized, we can read the credentials using the `@nestjs/config` package, authenticate into the API, and inject the JWT into Axios. We also set a timeout to request a new token when the first one expires. - -## Creating your application API - -We're now able to implement our actual business logic, but first we need to install some packages to create our custom GraphQL API. - -Run `yarn add @nestjs/graphql graphql apollo-server-express`. - -We'll have to generate a module, a service, and a resource. To achieve this, run the following commands: - -```sh -nest g module -nest g service -nest g resource -``` - -Use the name `loanRequests` for all options. For the resource generation, select the option `GraphQL (code first)` and you don't have to generate the CRUD entry points. - -We can now change our `app.module.ts` file to its final form: - -```ts -import { Module } from "@nestjs/common"; -import { GraphQLModule } from "@nestjs/graphql"; -import { LoanRequestsModule } from "./loan-requests/loan-requests.module"; - -@Module({ - imports: [ - GraphQLModule.forRoot({ - autoSchemaFile: true, - playground: true, - }), - LoanRequestsModule, - ], -}) -export class AppModule {} -``` - -And the `loan-requests/loan-requests.module.ts` to: - -```ts -import { Module } from "@nestjs/common"; -import { LoanRequestsService } from "./loan-requests.service"; -import { TasklistModule } from "src/tasklist/tasklist.module"; -import { LoanRequestsResolver } from "./loan-requests.resolver"; - -@Module({ - imports: [TasklistModule], - providers: [LoanRequestsResolver, LoanRequestsService], - exports: [LoanRequestsService, TasklistModule], -}) -export class LoanRequestsModule {} -``` - -We just need to implement the service, which will have three methods (one to get all requests, one to get a single request, and one to make a decision.) - -We will also have four resolvers for the GraphQL API (two mutations and two queries). - -Find the full implementation [here](https://github.com/camunda-community-hub/camunda-cloud-tasklist-api-nestjs/tree/4-application/api/src/loan-requests). - -You can run `yarn start:dev` inside the `api/` folder and the NestJS app should start without errors. - -To test your API, you can access `localhost:3000/graphl` on your browser and should refer to our custom GraphQL API playground. - -## Demo data generation and sample frontend - -To test our app with a real frontend, we can change the port inside `api/main.ts` to `6000`. Then, run from the root folder `yarn start:demo-data` to start the backend, frontend, and demo data generation, or just `yarn start` if you don't need any new data. diff --git a/docs/apis-tools/tasklist-api/unions/_category_.yml b/docs/apis-tools/tasklist-api/unions/_category_.yml deleted file mode 100644 index f6c8705b502..00000000000 --- a/docs/apis-tools/tasklist-api/unions/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: "Unions" diff --git a/docs/apis-tools/working-with-apis-tools.md b/docs/apis-tools/working-with-apis-tools.md index e413dd21ab8..0f75b9bb805 100644 --- a/docs/apis-tools/working-with-apis-tools.md +++ b/docs/apis-tools/working-with-apis-tools.md @@ -38,10 +38,6 @@ Official clients have been developed and tested by Camunda. They also add conven -:::note -Other components in Camunda 8, such as [Tasklist API (GraphQL)](../apis-tools/tasklist-api/generated.md), provide language-agnostic APIs, but no clients to interact with them. GraphQL enables you to query, claim, and complete user tasks. -::: - ## Learn about Camunda Components and their APIs :::note diff --git a/docs/components/best-practices/architecture/understanding-human-tasks-management.md b/docs/components/best-practices/architecture/understanding-human-tasks-management.md index a2edbfae66c..f2ae81ae404 100644 --- a/docs/components/best-practices/architecture/understanding-human-tasks-management.md +++ b/docs/components/best-practices/architecture/understanding-human-tasks-management.md @@ -27,7 +27,9 @@ As a general rule, you should assign human tasks, like [user tasks](/components/ ``` -Then, require individual members of that group to explicitly _claim tasks_ before working on them. This way, you avoid different people working on the same task at the same time. Refer to [`claimTask`](../../../apis-tools/tasklist-api/mutations/claim-task.mdx). +Then, require individual members of that group to explicitly _claim tasks_ before working on them. This way, you avoid different people working on the same task at the same time. + + ```graphql claimTask( diff --git a/docs/components/best-practices/development/handling-data-in-processes.md b/docs/components/best-practices/development/handling-data-in-processes.md index 9aa8fc51da7..66b919bf9bc 100644 --- a/docs/components/best-practices/development/handling-data-in-processes.md +++ b/docs/components/best-practices/development/handling-data-in-processes.md @@ -48,7 +48,9 @@ In Camunda 8, [values are stored as JSON](/components/concepts/variables.md#vari This best practice describes variable handling within Camunda 8. Process variables are handled slightly differently with Camunda 7. Consult the [Camunda 7 documentation](https://docs.camunda.org/manual/latest/user-guide/process-engine/variables/) for details. In essence, variable values are not handled as JSON and thus there are [different values](https://docs.camunda.org/manual/latest/user-guide/process-engine/variables/#supported-variable-values) supported. ::: -You can dynamically create such variables by assigning an object of choice to a (string typed) variable name; for example, by passing a `Map` when [completing](../../../apis-tools/tasklist-api/mutations/complete-task.mdx) the "Review tweet" task via the API: +You can dynamically create such variables by assigning an object of choice to a (string typed) variable name; for example, by passing a `Map` when completing the "Review tweet" task via the API: + + ``` // TODO: Double check! diff --git a/docs/components/console/manage-clusters/manage-api-clients.md b/docs/components/console/manage-clusters/manage-api-clients.md index d5753278548..38e52aae5de 100644 --- a/docs/components/console/manage-clusters/manage-api-clients.md +++ b/docs/components/console/manage-clusters/manage-api-clients.md @@ -43,7 +43,7 @@ When the rate limit is triggered, the client will receive an HTTP 429 response. Currently, Camunda 8 SaaS supports the following scopes: - Zeebe - Access to the [Zeebe gRPC](/apis-tools/zeebe-api/grpc.md) and [REST](/apis-tools/camunda-api-rest/camunda-api-rest-overview.md) APIs. -- Tasklist - Access to the [Tasklist GraphQL](/apis-tools/tasklist-api/tasklist-api-overview.md) API. +- Tasklist - Access to the [Tasklist REST](/apis-tools/tasklist-api-rest/tasklist-api-rest-overview.md) API. - Operate - Access to the [Operate REST API](/apis-tools/operate-api/overview.md). - Optimize - Access to the [Optimize REST API]($optimize$/apis-tools/optimize-api/overview). - Secrets - Access cluster secrets in a [hybrid setup](/guides/use-connectors-in-hybrid-mode.md). diff --git a/docs/guides/setup-client-connection-credentials.md b/docs/guides/setup-client-connection-credentials.md index 18301f74c79..414bdc0c839 100644 --- a/docs/guides/setup-client-connection-credentials.md +++ b/docs/guides/setup-client-connection-credentials.md @@ -14,7 +14,7 @@ Here, we'll set up client connection credentials to create, name, and connect yo Currently, Camunda 8 SaaS supports the following scopes: - Zeebe - Access to the [Zeebe gRPC](/apis-tools/zeebe-api/grpc.md) and [REST](/apis-tools/camunda-api-rest/camunda-api-rest-overview.md) APIs. -- Tasklist - Access to the [Tasklist GraphQL](/apis-tools/tasklist-api/tasklist-api-overview.md) API. +- Tasklist - Access to the [Tasklist REST](/apis-tools/tasklist-api-rest/tasklist-api-rest-overview.md) API. - Operate - Access to the [Operate REST API](/apis-tools/operate-api/overview.md). - Optimize - Access to the [Optimize REST API]($optimize$/apis-tools/optimize-api/overview). - Secrets - Access cluster secrets in a [hybrid setup](/guides/use-connectors-in-hybrid-mode.md). diff --git a/docs/reference/announcements/870.md b/docs/reference/announcements/870.md index cf4c795311c..1044df6053e 100644 --- a/docs/reference/announcements/870.md +++ b/docs/reference/announcements/870.md @@ -52,7 +52,7 @@ With the 8.7 release, Camunda announces the deprecation of several [Zeebe gRPC]( ### Removed: Tasklist GraphQL API -With the 8.7 release, the deprecated [Tasklist GraphQL API](/apis-tools/tasklist-api/tasklist-api-overview.md) will be removed from the product. +With the 8.7 release, the deprecated Tasklist GraphQL API has been removed from the product.