From d231f1e0003675e2484dc8122feadb30431571f1 Mon Sep 17 00:00:00 2001 From: sanja <52755494+sanjacornelius@users.noreply.github.com> Date: Mon, 1 Jun 2026 13:59:45 -0700 Subject: [PATCH 1/4] Add getRequestArray helper to ScriptController Replace repeated json_decode(...) ?: [] usage with a private getRequestArray method. This centralizes request parsing for 'data' and 'config' in preview and the script execution flow, allowing the controller to accept either arrays or JSON strings and default safely to an empty array, reducing duplication and improving robustness. --- .../Http/Controllers/Api/ScriptController.php | 21 +++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/ProcessMaker/Http/Controllers/Api/ScriptController.php b/ProcessMaker/Http/Controllers/Api/ScriptController.php index 2e7fc5c5dc..be194291ee 100644 --- a/ProcessMaker/Http/Controllers/Api/ScriptController.php +++ b/ProcessMaker/Http/Controllers/Api/ScriptController.php @@ -187,8 +187,8 @@ public function index(Request $request) */ public function preview(Request $request, Script $script) { - $data = json_decode($request->get('data'), true) ?: []; - $config = json_decode($request->get('config'), true) ?: []; + $data = $this->getRequestArray($request->get('data')); + $config = $this->getRequestArray($request->get('config')); $code = $request->get('code'); $nonce = $request->get('nonce'); @@ -245,8 +245,8 @@ public function execute(Request $request, ...$scriptKey) $processRequest = ProcessRequestToken::findOrFail($request->task_id)->processRequest; $script = $script->versionFor($processRequest); } - $data = json_decode($request->get('data'), true) ?: []; - $config = json_decode($request->get('config'), true) ?: []; + $data = $this->getRequestArray($request->get('data')); + $config = $this->getRequestArray($request->get('config')); $watcher = $request->get('watcher', uniqid('scr', true)); $code = $script->code; @@ -561,4 +561,17 @@ public function close(Script $script) return response([], 204); } + + private function getRequestArray($value): array + { + if (is_array($value)) { + return $value; + } + + if (is_string($value)) { + return json_decode($value, true) ?: []; + } + + return []; + } } From 0097eabbf35e9ffd343fe405aef7a52ee3733e8c Mon Sep 17 00:00:00 2001 From: sanja <52755494+sanjacornelius@users.noreply.github.com> Date: Wed, 3 Jun 2026 11:22:35 -0700 Subject: [PATCH 2/4] Normalize script input; update OpenAPI types - Update OpenAPI annotations in ScriptController to declare 'data' and 'config' as objects instead of arrays. - Add getRequestArray() to normalize script inputs: decode JSON strings to arrays, detect list payloads and unwrap single-element list objects (e.g. [{}] or [{"key":"value"}) to an associative object, and return an empty array for unsupported forms. This prevents the script microservice from rejecting list-shaped payloads (422) and enforces consistent request shapes. --- .../Http/Controllers/Api/ScriptController.php | 34 ++++++++++++------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/ProcessMaker/Http/Controllers/Api/ScriptController.php b/ProcessMaker/Http/Controllers/Api/ScriptController.php index be194291ee..e3cca93814 100644 --- a/ProcessMaker/Http/Controllers/Api/ScriptController.php +++ b/ProcessMaker/Http/Controllers/Api/ScriptController.php @@ -159,13 +159,11 @@ public function index(Request $request) * @OA\JsonContent( * @OA\Property( * property="data", - * type="array", - * @OA\Items (type="object"), + * type="object", * ), * @OA\Property( * property="config", - * type="array", - * @OA\Items (type="object"), + * type="object", * ), * @OA\Property( * property="code", @@ -215,13 +213,11 @@ public function preview(Request $request, Script $script) * @OA\JsonContent( * @OA\Property( * property="data", - * type="array", - * @OA\Items (type="object"), + * type="object", * ), * @OA\Property( * property="config", - * type="array", - * @OA\Items (type="object"), + * type="object", * ), * @OA\Property( * property="sync", @@ -562,16 +558,28 @@ public function close(Script $script) return response([], 204); } + /** + * Normalize script input before executing the script. + * Script data and config must be an object (associative array), the script + * microservice rejects list payloads like [{}] with a 422. + */ private function getRequestArray($value): array { - if (is_array($value)) { - return $value; + if (is_string($value)) { + $value = json_decode($value, true); } - if (is_string($value)) { - return json_decode($value, true) ?: []; + $result = []; + + if (is_array($value)) { + if (!array_is_list($value)) { + $result = $value; + } elseif (count($value) === 1 && is_array($value[0])) { + // Unwrap [{}] or [{"key": "value"}] to object form; ignore other lists. + $result = $value[0]; + } } - return []; + return $result; } } From 85da8421a9fa20cb30caff6204d5ed577acfd330 Mon Sep 17 00:00:00 2001 From: sanja <52755494+sanjacornelius@users.noreply.github.com> Date: Wed, 3 Jun 2026 11:35:38 -0700 Subject: [PATCH 3/4] Update API docs --- storage/api-docs/api-docs.json | 8556 +++++++++++++++++++++----------- 1 file changed, 5577 insertions(+), 2979 deletions(-) diff --git a/storage/api-docs/api-docs.json b/storage/api-docs/api-docs.json index 3755004f8f..47f822767e 100644 --- a/storage/api-docs/api-docs.json +++ b/storage/api-docs/api-docs.json @@ -18,6 +18,177 @@ } ], "paths": { + "/analytics-reporting": { + "get": { + "tags": [ + "AnalyticsReporting" + ], + "summary": "Returns all analytics reporting that the user has access to", + "description": "Get a list of Analytics Reporting.", + "operationId": "getAnalyticsReporting", + "parameters": [ + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" + } + ], + "responses": { + "200": { + "description": "list of analytics reporting", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/analyticsReporting" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" + } + } + } + } + } + }, + "post": { + "tags": [ + "AnalyticsReporting" + ], + "summary": "Save a new Analytics Reporting", + "description": "Create a new Analytics Reporting.", + "operationId": "createAnalyticsReporting", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/analyticsReportingEditable" + } + } + } + }, + "responses": { + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/analyticsReporting" + } + } + } + } + } + } + }, + "/analytics-reporting/{analytic_reporting_id}": { + "get": { + "tags": [ + "AnalyticsReporting" + ], + "summary": "Get single analytic reporting by ID", + "description": "Get a single Analytic Reporting.", + "operationId": "getAnalyticReportingById", + "parameters": [ + { + "name": "analytic_reporting_id", + "in": "path", + "description": "ID of analytic reporting to return", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Successfully found the analytics reporting", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/analyticsReporting" + } + } + } + } + } + }, + "put": { + "tags": [ + "AnalyticsReporting" + ], + "summary": "Update a analytic reporting", + "description": "Update a Analytics Reporting.", + "operationId": "updateAnalyticReporting", + "parameters": [ + { + "name": "analytic_reporting_id", + "in": "path", + "description": "ID of analytic reporting to update", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/analyticsReportingEditable" + } + } + } + }, + "responses": { + "204": { + "description": "success" + } + } + }, + "delete": { + "tags": [ + "AnalyticsReporting" + ], + "summary": "Delete an analytic reporting", + "description": "Delete a Analytics Reporting.", + "operationId": "deleteAnalyticReporting", + "parameters": [ + { + "name": "analytic_reporting_id", + "in": "path", + "description": "ID of analytic reporting to return", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "success" + } + } + } + }, "/collections": { "get": { "tags": [ @@ -554,48 +725,84 @@ } } }, - "/saved-searches/{saved_search_id}/charts": { + "/comments/tasks": { "get": { "tags": [ - "SavedSearchCharts" + "Comments" ], - "summary": "Returns all saved search charts that the user has access to", - "description": "Get a list of SavedSearchCharts.", - "operationId": "getSavedSearchCharts", + "summary": "Returns all the tasks that are active.", + "description": "Display a listing of the resource.", + "operationId": "getCommentTasks", "parameters": [ { - "$ref": "#/components/parameters/filter" - }, - { - "name": "type", + "name": "process_request_id", "in": "query", - "description": "Only return saved searches by type", + "description": "Process request id", "required": false, "schema": { - "type": "string", - "enum": [ - "request", - "task", - "collection" - ] + "type": "integer" } }, + { + "$ref": "#/components/parameters/filter" + }, { "$ref": "#/components/parameters/order_by" }, { "$ref": "#/components/parameters/order_direction" + } + ], + "responses": { + "200": { + "description": "list all tasks taht are active", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/processRequestToken" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" + } + } + } + } + } + } + }, + "/data_source_categories": { + "get": { + "tags": [ + "DataSourcesCategories" + ], + "summary": "Returns all Data Connectors categories that the user has access to", + "description": "Display a listing of the Data Connector Categories.", + "operationId": "getDataSourceCategories", + "parameters": [ + { + "$ref": "#/components/parameters/filter" }, { - "$ref": "#/components/parameters/per_page" + "$ref": "#/components/parameters/order_by" }, { - "$ref": "#/components/parameters/include" + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "list of saved search charts", + "description": "list of Data Connectors categories", "content": { "application/json": { "schema": { @@ -603,7 +810,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/SavedSearchChart" + "$ref": "#/components/schemas/DataSourceCategory" } }, "meta": { @@ -622,111 +829,63 @@ } } }, - "put": { + "post": { "tags": [ - "SavedSearchCharts" - ], - "summary": "Update several saved search charts at once", - "description": "Batch update several SavedSearchCharts.", - "operationId": "batchUpdateSavedSearchCharts", - "parameters": [ - { - "name": "saved_search_id", - "in": "path", - "description": "ID of saved search to which these charts will be saved", - "required": true, - "schema": { - "type": "string" - } - } + "DataSourcesCategories" ], + "summary": "Save a new Data Connector Category", + "description": "Store a newly created Data Connector Category in storage", + "operationId": "createDataSourceCategory", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SavedSearchChart" - } + "$ref": "#/components/schemas/dataSourceCategoryEditable" } } } }, "responses": { - "204": { - "description": "success" + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DataSourceCategory" + } + } + } } } - }, - "post": { + } + }, + "/data_source_categories/{data_source_category_id}": { + "get": { "tags": [ - "SavedSearchCharts" + "DataSourcesCategories" ], - "summary": "Save a new saved search chart", - "description": "Create a new SavedSearchChart.", - "operationId": "createSavedSearchChart", + "summary": "Get single Data Connector category by ID", + "description": "Display the specified data Source category.", + "operationId": "getDatasourceCategoryById", "parameters": [ { - "name": "saved_search_id", + "name": "data_source_category_id", "in": "path", - "description": "ID of saved search to which this chart will be saved", + "description": "ID of Data Connector category to return", "required": true, "schema": { "type": "string" } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SavedSearchChartEditable" - } - } - } - }, "responses": { - "201": { - "description": "success", + "200": { + "description": "Successfully found the Data Connector", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearchChart" - } - } - } - } - } - } - }, - "/saved-searches/charts/{chart_id}": { - "get": { - "tags": [ - "SavedSearchCharts" - ], - "summary": "Get single saved search chart by ID", - "description": "Get a single SavedSearchChart.", - "operationId": "getSavedSearchChartById", - "parameters": [ - { - "name": "chart_id", - "in": "path", - "description": "ID of chart to return", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Successfully found the saved search chart", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SavedSearchChart" + "$ref": "#/components/schemas/DataSourceCategory" } } } @@ -735,16 +894,16 @@ }, "put": { "tags": [ - "SavedSearchCharts" + "DataSourcesCategories" ], - "summary": "Update a saved search chart", - "description": "Update a SavedSearchChart.", - "operationId": "updateSavedSearchChart", + "summary": "Update a Data Connector Category", + "description": "Updates the current element", + "operationId": "updateDatasourceCategory", "parameters": [ { - "name": "chart_id", + "name": "data_source_category_id", "in": "path", - "description": "ID of chart to return", + "description": "ID of Data Connector category to return", "required": true, "schema": { "type": "string" @@ -756,7 +915,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearchChartEditable" + "$ref": "#/components/schemas/dataSourceCategoryEditable" } } } @@ -767,7 +926,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearchChart" + "$ref": "#/components/schemas/DataSourceCategory" } } } @@ -776,16 +935,16 @@ }, "delete": { "tags": [ - "SavedSearchCharts" + "DataSourcesCategories" ], - "summary": "Delete a saved search chart", - "description": "Delete a SavedSearchChart.", - "operationId": "deleteSavedSearchChart", + "summary": "Delete a Data Connector category", + "description": "Remove the specified resource from storage.", + "operationId": "deleteDataSourceCategory", "parameters": [ { - "name": "chart_id", + "name": "data_source_category_id", "in": "path", - "description": "ID of chart to return", + "description": "ID of Data Connector category to return", "required": true, "schema": { "type": "string" @@ -799,52 +958,73 @@ } } }, - "/saved-searches/charts/{chart_id}/fields": { + "/data_sources": { "get": { "tags": [ - "SavedSearchCharts" + "DataSources" ], - "summary": "Get available chart fields for a Saved Search by ID", - "description": "Get available chart fields for a Saved Search.", - "operationId": "getSavedSearchFieldsById", + "summary": "Returns all Data Connectors that the user has access to", + "description": "Get the list of records of a Data Connector", + "operationId": "getDataSources", "parameters": [ { - "name": "chart_id", - "in": "path", - "description": "ID of Saved Search to return", - "required": true, - "schema": { - "type": "string" - } + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "Successfully found the saved search", + "description": "list of Data Connectors", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearch" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/dataSource" + } + }, + "meta": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/metadata" + } + ] + } + }, + "type": "object" } } } } } - } - }, - "/saved-searches/reports": { + }, "post": { "tags": [ - "Reports" + "DataSources" ], - "summary": "Save a new report", - "operationId": "createReport", + "summary": "Save a new Data Connector", + "description": "Create a new Data Connector.", + "operationId": "createDataSource", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ReportEditable" + "$ref": "#/components/schemas/dataSourceEditable" } } } @@ -855,7 +1035,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Report" + "$ref": "#/components/schemas/dataSource" } } } @@ -863,174 +1043,91 @@ } } }, - "/saved-searches/reports/{reportId}": { - "put": { + "/data_sources/{data_source_id}": { + "get": { "tags": [ - "SavedSearches" + "DataSources" ], - "summary": "Update a saved search", - "description": "Update a Report", - "operationId": "updateReport", + "summary": "Get single Data Connector by ID", + "description": "Get a single Data Connector.", + "operationId": "getDataSourceById", "parameters": [ { - "name": "reportId", + "name": "data_source_id", "in": "path", - "description": "ID of report", + "description": "ID of Data Connector to return", "required": true, "schema": { "type": "string" } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SavedSearchEditable" - } - } - } - }, "responses": { "200": { - "description": "success", + "description": "Successfully found the Data Connector", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearch" + "$ref": "#/components/schemas/dataSource" } } } } } - } - }, - "/saved-searches": { - "get": { + }, + "put": { "tags": [ - "SavedSearches" + "DataSources" ], - "summary": "Returns all saved searches that the user has access to", - "description": "Get a list of SavedSearches.", - "operationId": "getSavedSearches", + "summary": "Update a Data Connector", + "description": "Update a Data Connector.", + "operationId": "updateDataSource", "parameters": [ { - "$ref": "#/components/parameters/filter" - }, - { - "name": "type", - "in": "query", - "description": "Only return saved searches by type", - "required": false, - "schema": { - "type": "string", - "enum": [ - "request", - "task", - "collection" - ] - } - }, - { - "name": "subset", - "in": "query", - "description": "Only return saved searches that are yours or those that have been shared with you", - "required": false, + "name": "data_source_id", + "in": "path", + "description": "ID of Data Connector to return", + "required": true, "schema": { - "type": "string", - "enum": [ - "mine", - "shared" - ] - } - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" - } - ], - "responses": { - "200": { - "description": "list of saved searches", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SavedSearch" - } - }, - "meta": { - "type": "object", - "allOf": [ - { - "$ref": "#/components/schemas/metadata" - } - ] - } - }, - "type": "object" - } - } + "type": "string" } } - } - }, - "post": { - "tags": [ - "SavedSearches" ], - "summary": "Save a new saved search", - "description": "Create a new SavedSearch.", - "operationId": "createSavedSearch", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearchEditable" + "$ref": "#/components/schemas/dataSourceEditable" } } } }, "responses": { - "201": { + "204": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearch" + "$ref": "#/components/schemas/dataSource" } } } } } - } - }, - "/saved-searches/{savedSearchId}": { - "get": { + }, + "delete": { "tags": [ - "SavedSearches" + "DataSources" ], - "summary": "Get single saved searches by ID", - "description": "Get a single SavedSearch.", - "operationId": "getSavedSearchById", + "summary": "Delete a Data Connector", + "description": "Delete a Data Connector.", + "operationId": "deleteDataSource", "parameters": [ { - "name": "savedSearchId", + "name": "data_source_id", "in": "path", - "description": "ID of saved search to return", + "description": "ID of Data Connector to return", "required": true, "schema": { "type": "string" @@ -1038,30 +1135,32 @@ } ], "responses": { - "200": { - "description": "Successfully found the saved search", + "204": { + "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearch" + "$ref": "#/components/schemas/dataSource" } } } } } - }, - "put": { + } + }, + "/data_sources/{data_source_id}/test": { + "post": { "tags": [ - "SavedSearches" + "DataSources" ], - "summary": "Update a saved search", - "description": "Update a SavedSearch.", - "operationId": "updateSavedSearch", + "summary": "Send a Data Connector request", + "description": "Send a Data Connector request.", + "operationId": "sendDataSource", "parameters": [ { - "name": "savedSearchId", + "name": "data_source_id", "in": "path", - "description": "ID of saved search to return", + "description": "ID of Data Connector to return", "required": true, "schema": { "type": "string" @@ -1073,18 +1172,18 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearchEditable" + "$ref": "#/components/schemas/dataSourceEditable" } } } }, "responses": { - "200": { + "204": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearch" + "$ref": "#/components/schemas/dataSource" } } } @@ -1092,76 +1191,56 @@ } } }, - "/saved-searches/{savedSearchId}/columns": { - "get": { + "/requests/{request_id}/data_sources/{data_source_id}": { + "post": { "tags": [ - "SavedSearches" + "DataSources" ], - "summary": "Returns all columns associated with a Saved Search", - "description": "Display a listing of columns.", - "operationId": "getSavedSearchColumns", + "summary": "execute Data Source", + "description": "Execute a data Source endpoint", + "operationId": "executeDataSourceForRequest", "parameters": [ { - "name": "savedSearchId", + "name": "request_id", "in": "path", - "description": "ID of saved search to return", + "description": "ID of the request in whose context the datasource will be executed", "required": true, "schema": { "type": "string" } }, { - "name": "include", - "in": "query", - "description": "Include specific categories. Comma separated list.", + "name": "data_source_id", + "in": "path", + "description": "ID of DataSource to be run", + "required": true, "schema": { - "type": "array", - "items": { - "type": "string", - "enum": [ - "current", - "default", - "available", - "data" - ] - }, - "uniqueItems": false + "type": "string" } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "config": { + "$ref": "#/components/schemas/DataSourceCallParameters" + } + }, + "type": "object" + } + } + } + }, "responses": { "200": { - "description": "Categorized list of columns", + "description": "success", "content": { "application/json": { "schema": { - "properties": { - "current": { - "type": "array", - "items": { - "$ref": "#/components/schemas/columns" - } - }, - "default": { - "type": "array", - "items": { - "$ref": "#/components/schemas/columns" - } - }, - "available": { - "type": "array", - "items": { - "$ref": "#/components/schemas/columns" - } - }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/columns" - } - } - }, - "type": "object" + "$ref": "#/components/schemas/DataSourceResponse" } } } @@ -1169,110 +1248,49 @@ } } }, - "/saved-searches/{savedSearchId}/users": { - "get": { + "/requests/data_sources/{data_source_id}": { + "post": { "tags": [ - "Users" + "DataSources" ], - "summary": "Returns all users", - "description": "Display a listing of the resource.", - "operationId": "getSavedSearchUsers", + "summary": "execute Data Source", + "operationId": "executeDataSource", "parameters": [ { - "name": "savedSearchId", + "name": "data_source_id", "in": "path", - "description": "ID of saved search to return", + "description": "ID of DataSource to be run", "required": true, "schema": { "type": "string" } - }, - { - "name": "filter", - "in": "query", - "description": "Filter results by string. Searches First Name, Last Name, Email and Username.", - "schema": { - "type": "string" - } - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" } ], - "responses": { - "200": { - "description": "list of users", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/users" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "config": { + "$ref": "#/components/schemas/DataSourceCallParameters" }, - "type": "object" - } + "data": { + "type": "object" + } + }, + "type": "object" } } } - } - } - }, - "/saved-searches/{savedSearchId}/groups": { - "get": { - "tags": [ - "Groups" - ], - "summary": "Returns all groups that the user has access to", - "description": "Display a listing of the resource.", - "operationId": "getSavedSearchGroups", - "parameters": [ - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" - } - ], + }, "responses": { "200": { - "description": "list of groups", + "description": "success", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/groups" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" + "$ref": "#/components/schemas/DataSourceResponse" } } } @@ -1280,68 +1298,40 @@ } } }, - "/saved-searches/{saved_search_id}": { - "delete": { + "/requests/data_sources/{data_source_id}/resources/{endpoint}/data": { + "post": { "tags": [ - "SavedSearches" + "DataSources" ], - "summary": "Delete a saved search", - "description": "Delete a SavedSearch.", - "operationId": "deleteSavedSearch", + "summary": "Get Data from Data Source", + "operationId": "getDataFromDataSource", "parameters": [ { - "name": "saved_search_id", + "name": "data_source_id", "in": "path", - "description": "ID of saved search to return", + "description": "ID of DataSource to be run", "required": true, "schema": { "type": "string" } - } - ], - "responses": { - "204": { - "description": "success" - } - } - } - }, - "/saved-searches/icons": { - "get": { - "tags": [ - "SavedSearches" - ], - "summary": "Returns all icons for saved searches", - "description": "Get a list of icons available for SavedSearches.", - "operationId": "getSavedSearchesIcons", - "parameters": [ + }, { - "$ref": "#/components/parameters/per_page" + "name": "endpoint", + "in": "path", + "description": "Endpoint of the data source", + "required": true, + "schema": { + "type": "string" + } } ], "responses": { "200": { - "description": "list of icons for saved searches", + "description": "success", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SavedSearchIcon" - } - }, - "meta": { - "type": "object", - "allOf": [ - { - "$ref": "#/components/schemas/metadata" - } - ] - } - }, - "type": "object" + "$ref": "#/components/schemas/DataSourceResponse" } } } @@ -1349,14 +1339,14 @@ } } }, - "/version_histories": { + "/decision_table_categories": { "get": { "tags": [ - "Version History" + "DecisionTableCategories" ], - "summary": "Return all version History according to the model", - "description": "Get the list of records of Version History", - "operationId": "getVersionHistories", + "summary": "Returns all Decision Tables categories that the user has access to", + "description": "Display a listing of the Decision Tables Categories.", + "operationId": "getDecisionTableCategories", "parameters": [ { "$ref": "#/components/parameters/filter" @@ -1369,14 +1359,11 @@ }, { "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "list of Version History", + "description": "list of Decision Tables categories", "content": { "application/json": { "schema": { @@ -1384,7 +1371,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/versionHistory" + "$ref": "#/components/schemas/DecisionTableCategory" } }, "meta": { @@ -1405,17 +1392,17 @@ }, "post": { "tags": [ - "Version History" + "DecisionTableCategories" ], - "summary": "Save a new Version History", - "description": "Create a new Version History.", - "operationId": "createVersion", + "summary": "Save a new Decision Table Category", + "description": "Store a newly created Decision Tables Category in storage", + "operationId": "createDecisionTableCategory", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/versionHistoryEditable" + "$ref": "#/components/schemas/decisionTableCategoryEditable" } } } @@ -1426,7 +1413,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/versionHistory" + "$ref": "#/components/schemas/DecisionTableCategory" } } } @@ -1434,19 +1421,19 @@ } } }, - "/version_histories/{version_history_id}": { + "/decision_table_categories/{decision_table_categories_id}": { "get": { "tags": [ - "Version History" + "DecisionTableCategories" ], - "summary": "Get single Version History by ID", - "description": "Get a single Version History.", - "operationId": "getVersionHistoryById", + "summary": "Get single Decision Table category by ID", + "description": "Display the specified decision Tables category.", + "operationId": "getDecisionTableCategoryById", "parameters": [ { - "name": "version_history_id", + "name": "decision_table_categories_id", "in": "path", - "description": "ID of Version History to return", + "description": "ID of Decision Table category to return", "required": true, "schema": { "type": "string" @@ -1455,11 +1442,11 @@ ], "responses": { "200": { - "description": "Successfully found the Version History", + "description": "Successfully found the Decision Table", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/versionHistory" + "$ref": "#/components/schemas/DecisionTableCategory" } } } @@ -1468,16 +1455,16 @@ }, "put": { "tags": [ - "Version History" + "DecisionTableCategories" ], - "summary": "Update a Version History", - "description": "Update a Version History.", - "operationId": "updateVersion", + "summary": "Update a Decision Table Category", + "description": "Updates the current element", + "operationId": "updateDecisionTableCategory", "parameters": [ { - "name": "version_history_id", + "name": "decision_table_categories_id", "in": "path", - "description": "ID of Version History to return", + "description": "ID of Decision Table category to return", "required": true, "schema": { "type": "string" @@ -1489,18 +1476,18 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/versionHistoryEditable" + "$ref": "#/components/schemas/decisionTableCategoryEditable" } } } }, "responses": { - "204": { + "200": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/versionHistory" + "$ref": "#/components/schemas/DecisionTableCategory" } } } @@ -1509,16 +1496,16 @@ }, "delete": { "tags": [ - "Version History" + "DecisionTableCategories" ], - "summary": "Delete a Version History", - "description": "Delete a Version History.", - "operationId": "deleteVersion", + "summary": "Delete a Decision Table category", + "description": "Remove the specified resource from storage.", + "operationId": "deleteDecisionTableCategory", "parameters": [ { - "name": "version_history_id", + "name": "decision_table_categories_id", "in": "path", - "description": "ID of Version History to return", + "description": "ID of Decision Table category to return", "required": true, "schema": { "type": "string" @@ -1527,98 +1514,19 @@ ], "responses": { "204": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/versionHistory" - } - } - } - } - } - } - }, - "/version_histories/clone": { - "post": { - "tags": [ - "Version History" - ], - "summary": "Clone a new Version History", - "description": "Clone a new Version History.", - "operationId": "cloneVersion", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/versionHistoryEditable" - } - } - } - }, - "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/versionHistory" - } - } - } - } - } - } - }, - "/customize-ui": { - "post": { - "tags": [ - "CssSettings" - ], - "summary": "Create or update a new setting", - "description": "Create a new Settings css-override", - "operationId": "updateCssSetting", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "properties": { - "variables": { - "type": "string" - }, - "sansSerifFont": { - "type": "string" - } - }, - "type": "object" - } - } - } - }, - "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/settings" - } - } - } + "description": "success" } } } }, - "/environment_variables": { + "/decision_tables": { "get": { "tags": [ - "Environment Variables" + "DecisionTables" ], - "summary": "Returns all environmentVariables that the user has access to. For security, values are not included.", - "description": "Fetch a collection of variables based on paged request and filter if provided", - "operationId": "getEnvironmentVariables", + "summary": "Returns all Decision tables that the user has access to", + "description": "Display a listing of the resource.", + "operationId": "getDecisionTables", "parameters": [ { "$ref": "#/components/parameters/filter" @@ -1638,7 +1546,7 @@ ], "responses": { "200": { - "description": "list of environmentVariables", + "description": "list of Decision Tables", "content": { "application/json": { "schema": { @@ -1646,11 +1554,16 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/EnvironmentVariable" + "$ref": "#/components/schemas/decisionTable" } }, "meta": { - "type": "object" + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/metadata" + } + ] } }, "type": "object" @@ -1662,17 +1575,17 @@ }, "post": { "tags": [ - "Environment Variables" + "DecisionTables" ], - "summary": "Create a new environment variable", - "description": "Creates a new global Environment Variable in the system", - "operationId": "createEnvironmentVariable", + "summary": "Save a new Decision Table", + "description": "Store a newly created resource in storage.", + "operationId": "createDecisionTable", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvironmentVariableEditable" + "$ref": "#/components/schemas/decisionTableEditable" } } } @@ -1683,7 +1596,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvironmentVariable" + "$ref": "#/components/schemas/decisionTable" } } } @@ -1691,32 +1604,32 @@ } } }, - "/environment_variables/{environment_variable_id}": { + "/decision_tables/{decision_table_id}": { "get": { "tags": [ - "Environment Variables" + "DecisionTables" ], - "summary": "Get an environment variable by id. For security, the value is not included.", - "description": "Return an environment variable instance\nUsing implicit model binding, will automatically return 404 if variable now found", - "operationId": "getEnvironmentVariableById", + "summary": "Get single Decision Table by ID", + "description": "Display the specified resource.", + "operationId": "getDecisionTableById", "parameters": [ { - "name": "environment_variable_id", + "name": "decision_table_id", "in": "path", - "description": "ID of environment_variables to return", + "description": "ID of Decision Table to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { - "201": { - "description": "success", + "200": { + "description": "Successfully found the Decision Table", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvironmentVariable" + "$ref": "#/components/schemas/decisionTable" } } } @@ -1725,19 +1638,19 @@ }, "put": { "tags": [ - "Environment Variables" + "DecisionTables" ], - "summary": "Update an environment variable", - "description": "Update an environment variable", - "operationId": "updateEnvironmentVariable", + "summary": "Update a Decision Table", + "description": "Update a Decision table", + "operationId": "updateDecisionTable", "parameters": [ { - "name": "environment_variable_id", + "name": "decision_table_id", "in": "path", - "description": "ID of environment variables to update", + "description": "ID of Decision Table to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], @@ -1746,18 +1659,18 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvironmentVariableEditable" + "$ref": "#/components/schemas/decisionTableEditable" } } } }, "responses": { - "200": { + "204": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvironmentVariable" + "$ref": "#/components/schemas/decisionTable" } } } @@ -1766,117 +1679,96 @@ }, "delete": { "tags": [ - "Environment Variables" + "DecisionTables" ], - "summary": "Delete an environment variable", - "operationId": "deleteEnvironmentVariable", + "summary": "Delete a Decision Table", + "description": "Delete a Decision tables", + "operationId": "deleteDecisionTable", "parameters": [ { - "name": "environment_variable_id", + "name": "decision_table_id", "in": "path", - "description": "ID of environment_variables to return", + "description": "ID of Decision Table to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { - "200": { - "description": "success" + "204": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/decisionTable" + } + } + } } } } }, - "/files": { - "get": { + "/decision_tables/{decision_table_id}/duplicate": { + "put": { "tags": [ - "Files" + "DecisionTables" ], - "summary": "Returns the list of files", - "description": "Display a listing of the resource.", - "operationId": "getFiles", + "summary": "duplicate a Decision Table", + "description": "duplicate a Decision table.", + "operationId": "duplicateDecisionTable", "parameters": [ { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" + "name": "decision_table_id", + "in": "path", + "description": "ID of Decision Table to return", + "required": true, + "schema": { + "type": "string" + } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/decisionTableEditable" + } + } + } + }, "responses": { - "200": { - "description": "list of files", + "201": { + "description": "success", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/media" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" + "$ref": "#/components/schemas/decisionTable" } } } } } - }, + } + }, + "/decision_tables/{decision_table_id}/excel-import": { "post": { "tags": [ - "Files" + "DecisionTables" ], - "summary": "Save a new media file. Note: To upload files to a request, use createRequestFile in the RequestFile API", - "description": "Store a newly created resource in storage.", - "operationId": "createFile", + "summary": "Import a new decision table", + "description": "Import a Decision table from excel", + "operationId": "importExcel", "parameters": [ { - "name": "model_id", - "in": "query", - "description": "ID of the model to which the file will be associated", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "model", - "in": "query", - "description": "Full namespaced class of the model to associate", + "name": "decision_table_id", + "in": "path", + "description": "ID of Decision Table to return", "required": true, "schema": { "type": "string" } - }, - { - "name": "data_name", - "in": "query", - "description": "Name of the variable used in a request", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "collection", - "in": "query", - "description": "Media collection name. For requests, use 'default'", - "required": false, - "schema": { - "type": "string" - } } ], "requestBody": { @@ -1886,7 +1778,7 @@ "schema": { "properties": { "file": { - "description": "save a new media file", + "description": "file to import", "type": "string", "format": "binary" } @@ -1897,23 +1789,14 @@ } }, "responses": { - "200": { + "201": { "description": "success", "content": { "application/json": { "schema": { "properties": { - "id": { - "type": "string" - }, - "model_id": { - "type": "string" - }, - "file_name": { - "type": "string" - }, - "mime_type": { - "type": "string" + "status": { + "type": "object" } }, "type": "object" @@ -1924,120 +1807,139 @@ } } }, - "/files/{file_id}": { - "get": { + "/decision_tables/{decision_table_id}/export": { + "post": { "tags": [ - "Files" + "DecisionTables" ], - "summary": "Get the metadata of a file. To actually fetch the file see Get File Contents", - "description": "Get a single media file.", - "operationId": "getFileById", + "summary": "Export a single Decision Table by ID", + "description": "Export the specified screen.", + "operationId": "exportDecisionTable", "parameters": [ { - "name": "file_id", + "name": "decision_table_id", "in": "path", - "description": "ID of the file to return", + "description": "ID of Decision Table to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { "200": { - "description": "Successfully found the file", + "description": "Successfully exported the decision table", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/media" + "$ref": "#/components/schemas/DecisionTableExported" } } } - }, - "404": { - "$ref": "#/components/responses/404" } } - }, - "delete": { + } + }, + "/decision_tables/import": { + "post": { "tags": [ - "Files" + "DecisionTables" ], - "summary": "Delete a media file", - "description": "Remove the specified resource from storage.", - "operationId": "deleteFile", - "parameters": [ - { - "name": "file_id", - "in": "path", - "description": "ID of the file", - "required": true, - "schema": { - "type": "integer" + "summary": "Import a new Decision Table", + "description": "Import the specified Decision Table.", + "operationId": "importDecisionTable", + "requestBody": { + "required": true, + "content": { + "multipart/form-data": { + "schema": { + "properties": { + "file": { + "description": "file to import", + "type": "string", + "format": "binary" + } + }, + "type": "object" + } } } - ], + }, "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "properties": { + "status": { + "type": "object" + } + }, + "type": "object" + } + } + } } } } }, - "/files/{file_id}/contents": { - "get": { + "/decision_tables/{decision_table_id}/execute": { + "post": { "tags": [ - "Files" + "DecisionTables" ], - "summary": "Get the contents of a file", - "description": "Display the specified resource.", - "operationId": "getFileContentsById", + "summary": "Execute a Decision Table definition", + "description": "Execute a Decision Table definition", + "operationId": "previewDecisionTable", "parameters": [ { - "name": "file_id", + "name": "decision_table_id", "in": "path", - "description": "ID of the file to return", + "description": "Decision Table unique Identifier", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { "200": { - "description": "File stream", + "description": "Successfully executed", "content": { - "application/octet-stream": { - "schema": { - "type": "string", - "format": "binary" - } + "application/json": { + "schema": {} } } - }, - "404": { - "$ref": "#/components/responses/404" } } } }, - "/groups": { + "/saved-searches/{saved_search_id}/charts": { "get": { "tags": [ - "Groups" + "SavedSearchCharts" ], - "summary": "Returns all groups that the user has access to", - "description": "Display a listing of the resource.", - "operationId": "getGroups", + "summary": "Returns all saved search charts that the user has access to", + "description": "Get a list of SavedSearchCharts.", + "operationId": "getSavedSearchCharts", "parameters": [ { - "$ref": "#/components/parameters/status" + "$ref": "#/components/parameters/filter" }, { - "$ref": "#/components/parameters/filter" + "name": "type", + "in": "query", + "description": "Only return saved searches by type", + "required": false, + "schema": { + "type": "string", + "enum": [ + "request", + "task", + "collection" + ] + } }, { "$ref": "#/components/parameters/order_by" @@ -2054,7 +1956,7 @@ ], "responses": { "200": { - "description": "list of groups", + "description": "list of saved search charts", "content": { "application/json": { "schema": { @@ -2062,11 +1964,16 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/groups" + "$ref": "#/components/schemas/SavedSearchChart" } }, "meta": { - "$ref": "#/components/schemas/metadata" + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/metadata" + } + ] } }, "type": "object" @@ -2076,19 +1983,67 @@ } } }, + "put": { + "tags": [ + "SavedSearchCharts" + ], + "summary": "Update several saved search charts at once", + "description": "Batch update several SavedSearchCharts.", + "operationId": "batchUpdateSavedSearchCharts", + "parameters": [ + { + "name": "saved_search_id", + "in": "path", + "description": "ID of saved search to which these charts will be saved", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SavedSearchChart" + } + } + } + } + }, + "responses": { + "204": { + "description": "success" + } + } + }, "post": { "tags": [ - "Groups" + "SavedSearchCharts" + ], + "summary": "Save a new saved search chart", + "description": "Create a new SavedSearchChart.", + "operationId": "createSavedSearchChart", + "parameters": [ + { + "name": "saved_search_id", + "in": "path", + "description": "ID of saved search to which this chart will be saved", + "required": true, + "schema": { + "type": "string" + } + } ], - "summary": "Save a new group", - "description": "Store a newly created resource in storage.", - "operationId": "createGroup", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/groupsEditable" + "$ref": "#/components/schemas/SavedSearchChartEditable" } } } @@ -2099,67 +2054,61 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/groups" + "$ref": "#/components/schemas/SavedSearchChart" } } } - }, - "422": { - "$ref": "#/components/responses/422" } } } }, - "/groups/{group_id}": { + "/saved-searches/charts/{chart_id}": { "get": { "tags": [ - "Groups" + "SavedSearchCharts" ], - "summary": "Get single group by ID", - "description": "Display the specified resource.", - "operationId": "getGroupById", + "summary": "Get single saved search chart by ID", + "description": "Get a single SavedSearchChart.", + "operationId": "getSavedSearchChartById", "parameters": [ { - "name": "group_id", + "name": "chart_id", "in": "path", - "description": "ID of group to return", + "description": "ID of chart to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { "200": { - "description": "Successfully found the group", + "description": "Successfully found the saved search chart", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/groups" + "$ref": "#/components/schemas/SavedSearchChart" } } } - }, - "404": { - "$ref": "#/components/responses/404" } } }, "put": { "tags": [ - "Groups" + "SavedSearchCharts" ], - "summary": "Update a group", - "description": "Update a user", - "operationId": "updateGroup", + "summary": "Update a saved search chart", + "description": "Update a SavedSearchChart.", + "operationId": "updateSavedSearchChart", "parameters": [ { - "name": "group_id", + "name": "chart_id", "in": "path", - "description": "ID of group to return", + "description": "ID of chart to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], @@ -2168,94 +2117,75 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/groupsEditable" + "$ref": "#/components/schemas/SavedSearchChartEditable" } } } }, "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SavedSearchChart" + } + } + } } } }, "delete": { "tags": [ - "Groups" + "SavedSearchCharts" ], - "summary": "Delete a group", - "description": "Delete a user", - "operationId": "deleteGroup", + "summary": "Delete a saved search chart", + "description": "Delete a SavedSearchChart.", + "operationId": "deleteSavedSearchChart", "parameters": [ { - "name": "group_id", + "name": "chart_id", "in": "path", - "description": "ID of group to return", + "description": "ID of chart to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { "204": { "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" } } } }, - "/groups/{group_id}/users": { + "/saved-searches/charts/{chart_id}/fields": { "get": { "tags": [ - "Groups" + "SavedSearchCharts" ], - "summary": "Returns all users of a group", - "description": "Display the list of users in a group", - "operationId": "getGroupUsers", + "summary": "Get available chart fields for a Saved Search by ID", + "description": "Get available chart fields for a Saved Search.", + "operationId": "getSavedSearchFieldsById", "parameters": [ { - "name": "group_id", + "name": "chart_id", "in": "path", - "description": "ID of group", + "description": "ID of Saved Search to return", "required": true, "schema": { - "type": "integer" + "type": "string" } - }, - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "list of members of a group", + "description": "Successfully found the saved search", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/users" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" + "$ref": "#/components/schemas/SavedSearch" } } } @@ -2263,52 +2193,73 @@ } } }, - "/groups/{group_id}/groups": { - "get": { + "/saved-searches/reports": { + "post": { "tags": [ - "Groups" + "Reports" ], - "summary": "Returns all users of a group", - "description": "Display the list of groups in a group", - "operationId": "getGroupGroupss", + "summary": "Save a new report", + "operationId": "createReport", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportEditable" + } + } + } + }, + "responses": { + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Report" + } + } + } + } + } + } + }, + "/saved-searches/reports/{reportId}": { + "put": { + "tags": [ + "SavedSearches" + ], + "summary": "Update a saved search", + "description": "Update a Report", + "operationId": "updateReport", "parameters": [ { - "name": "group_id", + "name": "reportId", "in": "path", - "description": "ID of group", + "description": "ID of report", "required": true, "schema": { - "type": "integer" + "type": "string" } - }, - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SavedSearchEditable" + } + } + } + }, "responses": { "200": { - "description": "list of members of a group", + "description": "success", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/groups" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" + "$ref": "#/components/schemas/SavedSearch" } } } @@ -2316,17 +2267,44 @@ } } }, - "/group_members": { + "/saved-searches": { "get": { "tags": [ - "Group Members" + "SavedSearches" ], - "summary": "Returns all groups for a given member", - "description": "Display a listing of the resource.", - "operationId": "getGroupMembers", + "summary": "Returns all saved searches that the user has access to", + "description": "Get a list of SavedSearches.", + "operationId": "getSavedSearches", "parameters": [ { - "$ref": "#/components/parameters/member_id" + "$ref": "#/components/parameters/filter" + }, + { + "name": "type", + "in": "query", + "description": "Only return saved searches by type", + "required": false, + "schema": { + "type": "string", + "enum": [ + "request", + "task", + "collection" + ] + } + }, + { + "name": "subset", + "in": "query", + "description": "Only return saved searches that are yours or those that have been shared with you", + "required": false, + "schema": { + "type": "string", + "enum": [ + "mine", + "shared" + ] + } }, { "$ref": "#/components/parameters/order_by" @@ -2336,11 +2314,14 @@ }, { "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "list of group_members", + "description": "list of saved searches", "content": { "application/json": { "schema": { @@ -2348,11 +2329,16 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/groupMembers" + "$ref": "#/components/schemas/SavedSearch" } }, "meta": { - "$ref": "#/components/schemas/metadata" + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/metadata" + } + ] } }, "type": "object" @@ -2364,17 +2350,17 @@ }, "post": { "tags": [ - "Group Members" + "SavedSearches" ], - "summary": "Save a new group member", - "description": "Store a newly created resource in storage.", - "operationId": "createGroupMember", + "summary": "Save a new saved search", + "description": "Create a new SavedSearch.", + "operationId": "createSavedSearch", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/groupMembersEditable" + "$ref": "#/components/schemas/SavedSearchEditable" } } } @@ -2385,7 +2371,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/createGroupMembers" + "$ref": "#/components/schemas/SavedSearch" } } } @@ -2393,19 +2379,19 @@ } } }, - "/group_members/{group_member_id}": { + "/saved-searches/{savedSearchId}": { "get": { "tags": [ - "Group Members" + "SavedSearches" ], - "summary": "Get single group member by ID", - "description": "Display the specified resource.", - "operationId": "getGroupMemberById", + "summary": "Get single saved searches by ID", + "description": "Get a single SavedSearch.", + "operationId": "getSavedSearchById", "parameters": [ { - "name": "group_member_id", + "name": "savedSearchId", "in": "path", - "description": "ID of group members to return", + "description": "ID of saved search to return", "required": true, "schema": { "type": "string" @@ -2414,97 +2400,126 @@ ], "responses": { "200": { - "description": "Successfully found the group members", + "description": "Successfully found the saved search", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/getGroupMembersById" + "$ref": "#/components/schemas/SavedSearch" } } } } } }, - "delete": { + "put": { "tags": [ - "Group Members" + "SavedSearches" ], - "summary": "Delete a group member", - "description": "Delete a group membership", - "operationId": "deleteGroupMember", + "summary": "Update a saved search", + "description": "Update a SavedSearch.", + "operationId": "updateSavedSearch", "parameters": [ { - "name": "group_member_id", + "name": "savedSearchId", "in": "path", - "description": "ID of group_members to return", + "description": "ID of saved search to return", "required": true, "schema": { "type": "string" } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SavedSearchEditable" + } + } + } + }, "responses": { - "204": { - "description": "success" + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SavedSearch" + } + } + } } } } }, - "/group_members_available": { + "/saved-searches/{savedSearchId}/columns": { "get": { "tags": [ - "Group Members" + "SavedSearches" ], - "summary": "Returns all groups available for a given member", - "description": "Display a listing of groups available", - "operationId": "getGroupMembersAvailable", + "summary": "Returns all columns associated with a Saved Search", + "description": "Display a listing of columns.", + "operationId": "getSavedSearchColumns", "parameters": [ { - "name": "member_id", + "name": "savedSearchId", "in": "path", - "description": "ID of group member to return", + "description": "ID of saved search to return", "required": true, "schema": { "type": "string" } }, { - "name": "member_type", - "in": "path", - "description": "type of group member to return", - "required": true, + "name": "include", + "in": "query", + "description": "Include specific categories. Comma separated list.", "schema": { - "type": "string" + "type": "array", + "items": { + "type": "string", + "enum": [ + "current", + "default", + "available", + "data" + ] + }, + "uniqueItems": false } - }, - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "list of groups available to be assigned as member", + "description": "Categorized list of columns", "content": { "application/json": { "schema": { "properties": { - "data": { + "current": { "type": "array", "items": { - "$ref": "#/components/schemas/availableGroupMembers" + "$ref": "#/components/schemas/columns" } }, - "meta": { - "$ref": "#/components/schemas/metadata" + "default": { + "type": "array", + "items": { + "$ref": "#/components/schemas/columns" + } + }, + "available": { + "type": "array", + "items": { + "$ref": "#/components/schemas/columns" + } + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/columns" + } } }, "type": "object" @@ -2515,19 +2530,19 @@ } } }, - "/user_members_available": { + "/saved-searches/{savedSearchId}/users": { "get": { "tags": [ - "Group Members" + "Users" ], - "summary": "Returns all users available for a given group", - "description": "Display a listing of users available", - "operationId": "getUserMembersAvailable", + "summary": "Returns all users", + "description": "Display a listing of the resource.", + "operationId": "getSavedSearchUsers", "parameters": [ { - "name": "group_id", + "name": "savedSearchId", "in": "path", - "description": "ID of group to return", + "description": "ID of saved search to return", "required": true, "schema": { "type": "string" @@ -2536,7 +2551,7 @@ { "name": "filter", "in": "query", - "description": "Filter results by string. Searches Name. Can be a substring.", + "description": "Filter results by string. Searches First Name, Last Name, Email and Username.", "schema": { "type": "string" } @@ -2549,11 +2564,14 @@ }, { "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "list of users available to be assigned as member", + "description": "list of users", "content": { "application/json": { "schema": { @@ -2576,24 +2594,131 @@ } } }, - "/notifications": { + "/saved-searches/{savedSearchId}/groups": { "get": { "tags": [ - "Notifications" + "Groups" ], - "summary": "Returns all notifications that the user has access to", + "summary": "Returns all groups that the user has access to", "description": "Display a listing of the resource.", - "operationId": "getNotifications", + "operationId": "getSavedSearchGroups", "parameters": [ { - "name": "status", - "in": "query", - "description": "Only return notifications by status (unread, all, etc.)", - "required": false, + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" + } + ], + "responses": { + "200": { + "description": "list of groups", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/groups" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" + } + } + } + } + } + } + }, + "/saved-searches/{saved_search_id}": { + "delete": { + "tags": [ + "SavedSearches" + ], + "summary": "Delete a saved search", + "description": "Delete a SavedSearch.", + "operationId": "deleteSavedSearch", + "parameters": [ + { + "name": "saved_search_id", + "in": "path", + "description": "ID of saved search to return", + "required": true, "schema": { "type": "string" } - }, + } + ], + "responses": { + "204": { + "description": "success" + } + } + } + }, + "/saved-searches/icons": { + "get": { + "tags": [ + "SavedSearches" + ], + "summary": "Returns all icons for saved searches", + "description": "Get a list of icons available for SavedSearches.", + "operationId": "getSavedSearchesIcons", + "parameters": [ + { + "$ref": "#/components/parameters/per_page" + } + ], + "responses": { + "200": { + "description": "list of icons for saved searches", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SavedSearchIcon" + } + }, + "meta": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/metadata" + } + ] + } + }, + "type": "object" + } + } + } + } + } + } + }, + "/version_histories": { + "get": { + "tags": [ + "Version History" + ], + "summary": "Return all version History according to the model", + "description": "Get the list of records of Version History", + "operationId": "getVersionHistories", + "parameters": [ { "$ref": "#/components/parameters/filter" }, @@ -2612,7 +2737,7 @@ ], "responses": { "200": { - "description": "list of notifications", + "description": "list of Version History", "content": { "application/json": { "schema": { @@ -2620,10 +2745,17 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/Notification" + "$ref": "#/components/schemas/versionHistory" } }, - "meta": {} + "meta": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/metadata" + } + ] + } }, "type": "object" } @@ -2634,17 +2766,17 @@ }, "post": { "tags": [ - "Notifications" + "Version History" ], - "summary": "Save a new notifications", - "description": "Store a newly created resource in storage.", - "operationId": "createNotification", + "summary": "Save a new Version History", + "description": "Create a new Version History.", + "operationId": "createVersion", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/NotificationEditable" + "$ref": "#/components/schemas/versionHistoryEditable" } } } @@ -2655,7 +2787,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Notification" + "$ref": "#/components/schemas/versionHistory" } } } @@ -2663,19 +2795,19 @@ } } }, - "/notifications/{notification_id}": { + "/version_histories/{version_history_id}": { "get": { "tags": [ - "Notifications" + "Version History" ], - "summary": "Get single notification by ID", - "description": "Display the specified resource.", - "operationId": "getNotificationById", + "summary": "Get single Version History by ID", + "description": "Get a single Version History.", + "operationId": "getVersionHistoryById", "parameters": [ { - "name": "notification_id", + "name": "version_history_id", "in": "path", - "description": "ID of notification to return", + "description": "ID of Version History to return", "required": true, "schema": { "type": "string" @@ -2684,11 +2816,11 @@ ], "responses": { "200": { - "description": "Successfully found the notification", + "description": "Successfully found the Version History", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Notification" + "$ref": "#/components/schemas/versionHistory" } } } @@ -2697,16 +2829,16 @@ }, "put": { "tags": [ - "Notifications" + "Version History" ], - "summary": "Update a notification", - "description": "Update a user", - "operationId": "updateNotification", + "summary": "Update a Version History", + "description": "Update a Version History.", + "operationId": "updateVersion", "parameters": [ { - "name": "notification_id", + "name": "version_history_id", "in": "path", - "description": "ID of notification to return", + "description": "ID of Version History to return", "required": true, "schema": { "type": "string" @@ -2718,29 +2850,36 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/NotificationEditable" + "$ref": "#/components/schemas/versionHistoryEditable" } } } }, "responses": { "204": { - "description": "success" - } - } - }, + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/versionHistory" + } + } + } + } + } + }, "delete": { "tags": [ - "Notifications" + "Version History" ], - "summary": "Delete a notification", - "description": "Delete a notification", - "operationId": "deleteNotification", + "summary": "Delete a Version History", + "description": "Delete a Version History.", + "operationId": "deleteVersion", "parameters": [ { - "name": "notification_id", + "name": "version_history_id", "in": "path", - "description": "ID of notification to return", + "description": "ID of Version History to return", "required": true, "schema": { "type": "string" @@ -2749,113 +2888,106 @@ ], "responses": { "204": { - "description": "success" + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/versionHistory" + } + } + } } } } }, - "/read_notifications": { - "put": { + "/version_histories/clone": { + "post": { "tags": [ - "Notifications" + "Version History" ], - "summary": "Mark notifications as read by the user", - "description": "Update notification as read", - "operationId": "markNotificationAsRead", + "summary": "Clone a new Version History", + "description": "Clone a new Version History.", + "operationId": "cloneVersion", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "properties": { - "message_ids": { - "description": "list of message ids that will be marked as read", - "type": "array", - "items": { - "type": "string" - } - }, - "routes": { - "description": "all messages that has an url that is in this list will be marked as read", - "type": "array", - "items": { - "type": "string" - } - } - }, - "type": "object" + "$ref": "#/components/schemas/versionHistoryEditable" } } } }, "responses": { "201": { - "description": "success" + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/versionHistory" + } + } + } } } } }, - "/unread_notifications": { - "put": { + "/cases/{case_number}": { + "delete": { "tags": [ - "Notifications" + "Cases" ], - "summary": "Mark notifications as unread by the user", - "description": "Update notifications as unread", - "operationId": "markNotificationAsUnread", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "properties": { - "message_ids": { - "description": "list of message ids that will be marked as read", - "type": "array", - "items": { - "type": "string" - } - }, - "routes": { - "description": "all messages that has an url that is in this list will be marked as read", - "type": "array", - "items": { - "type": "string" - } - } - }, - "type": "object" - } + "summary": "Delete a case and its related requests", + "description": "Delete a case and its related requests.", + "operationId": "deleteCase", + "parameters": [ + { + "name": "case_number", + "in": "path", + "description": "Case number to delete", + "required": true, + "schema": { + "type": "string" } } - }, + ], "responses": { - "201": { + "204": { "description": "success" + }, + "401": { + "description": "Unauthorized" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "description": "Conflict" + }, + "500": { + "description": "Internal Server Error" } } } }, - "/read_all_notifications": { - "put": { + "/customize-ui": { + "post": { "tags": [ - "Notifications" + "CssSettings" ], - "summary": "Mark notifications as read by id and type", - "description": "Update all notification as read.", - "operationId": "markAllAsRead", + "summary": "Create or update a new setting", + "description": "Create a new Settings css-override", + "operationId": "updateCssSetting", "requestBody": { "required": true, "content": { "application/json": { "schema": { "properties": { - "id": { - "description": "Polymorphic relation id", - "type": "integer" + "variables": { + "type": "string" }, - "type": { - "description": "Polymorphic relation type", + "sansSerifFont": { "type": "string" } }, @@ -2866,73 +2998,29 @@ }, "responses": { "201": { - "description": "success" - } - } - } - }, - "/permissions": { - "put": { - "tags": [ - "Permissions" - ], - "summary": "Update the permissions of a user", - "description": "Update permissions", - "operationId": "51b3555fb753f44324bf5c3880e01454", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "properties": { - "user_id": { - "description": "ID of the user whose permissions are configured", - "type": "integer" - }, - "group_id": { - "description": "ID of the group whose permissions are configured", - "type": "integer" - }, - "is_administrator": { - "description": "Whether the user should have Super Admin privileges", - "type": "boolean", - "default": false - }, - "permission_names": { - "type": "array", - "items": { - "type": "string" - } - } - }, - "type": "object" + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/settings" + } } } } - }, - "responses": { - "204": { - "description": "success" - } } } }, - "/process_categories": { + "/environment_variables": { "get": { "tags": [ - "Process Categories" + "Environment Variables" ], - "summary": "Returns all processes categories that the user has access to", - "description": "Display a listing of the Process Categories.", - "operationId": "getProcessCategories", + "summary": "Returns all environmentVariables that the user has access to. For security, values are not included.", + "description": "Fetch a collection of variables based on paged request and filter if provided", + "operationId": "getEnvironmentVariables", "parameters": [ { - "name": "filter", - "in": "query", - "description": "Filter results by string. Searches Name and Status. All fields must match exactly.", - "schema": { - "type": "string" - } + "$ref": "#/components/parameters/filter" }, { "$ref": "#/components/parameters/order_by" @@ -2942,11 +3030,14 @@ }, { "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "list of processes categories", + "description": "list of environmentVariables", "content": { "application/json": { "schema": { @@ -2954,7 +3045,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/ProcessCategory" + "$ref": "#/components/schemas/EnvironmentVariable" } }, "meta": { @@ -2970,17 +3061,17 @@ }, "post": { "tags": [ - "Process Categories" + "Environment Variables" ], - "summary": "Save a new process Category", - "description": "Store a newly created Process Category in storage", - "operationId": "createProcessCategory", + "summary": "Create a new environment variable", + "description": "Creates a new global Environment Variable in the system", + "operationId": "createEnvironmentVariable", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessCategoryEditable" + "$ref": "#/components/schemas/EnvironmentVariableEditable" } } } @@ -2991,7 +3082,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessCategory" + "$ref": "#/components/schemas/EnvironmentVariable" } } } @@ -2999,19 +3090,19 @@ } } }, - "/process_categories/{process_category_id}": { + "/environment_variables/{environment_variable_id}": { "get": { "tags": [ - "Process Categories" + "Environment Variables" ], - "summary": "Get single process category by ID", - "description": "Display the specified Process category.", - "operationId": "getProcessCategoryById", + "summary": "Get an environment variable by id. For security, the value is not included.", + "description": "Return an environment variable instance\nUsing implicit model binding, will automatically return 404 if variable now found", + "operationId": "getEnvironmentVariableById", "parameters": [ { - "name": "process_category_id", + "name": "environment_variable_id", "in": "path", - "description": "ID of process category to return", + "description": "ID of environment_variables to return", "required": true, "schema": { "type": "integer" @@ -3019,12 +3110,12 @@ } ], "responses": { - "200": { - "description": "Successfully found the process", + "201": { + "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessCategory" + "$ref": "#/components/schemas/EnvironmentVariable" } } } @@ -3033,16 +3124,16 @@ }, "put": { "tags": [ - "Process Categories" + "Environment Variables" ], - "summary": "Update a process Category", - "description": "Updates the current element", - "operationId": "updateProcessCategory", + "summary": "Update an environment variable", + "description": "Update an environment variable", + "operationId": "updateEnvironmentVariable", "parameters": [ { - "name": "process_category_id", + "name": "environment_variable_id", "in": "path", - "description": "ID of process category to return", + "description": "ID of environment variables to update", "required": true, "schema": { "type": "integer" @@ -3054,7 +3145,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessCategoryEditable" + "$ref": "#/components/schemas/EnvironmentVariableEditable" } } } @@ -3065,7 +3156,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessCategory" + "$ref": "#/components/schemas/EnvironmentVariable" } } } @@ -3074,16 +3165,15 @@ }, "delete": { "tags": [ - "Process Categories" + "Environment Variables" ], - "summary": "Delete a process category", - "description": "Remove the specified resource from storage.", - "operationId": "deleteProcessCategory", + "summary": "Delete an environment variable", + "operationId": "deleteEnvironmentVariable", "parameters": [ { - "name": "process_category_id", + "name": "environment_variable_id", "in": "path", - "description": "ID of process category to return", + "description": "ID of environment_variables to return", "required": true, "schema": { "type": "integer" @@ -3091,27 +3181,20 @@ } ], "responses": { - "204": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Process" - } - } - } + "200": { + "description": "success" } } } }, - "/processes": { + "/files": { "get": { "tags": [ - "Processes" + "Files" ], - "summary": "Returns all processes that the user has access to", - "description": "Get list Process", - "operationId": "getProcesses", + "summary": "Returns the list of files", + "description": "Display a listing of the resource.", + "operationId": "getFiles", "parameters": [ { "$ref": "#/components/parameters/filter" @@ -3124,26 +3207,11 @@ }, { "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/status" - }, - { - "$ref": "#/components/parameters/include" - }, - { - "name": "simplified_data_for_selector", - "in": "query", - "description": "Comma separated list of fields to include in the response", - "schema": { - "type": "string", - "default": "" - } } ], "responses": { "200": { - "description": "list of processes", + "description": "list of files", "content": { "application/json": { "schema": { @@ -3151,7 +3219,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/Process" + "$ref": "#/components/schemas/media" } }, "meta": { @@ -3167,28 +3235,87 @@ }, "post": { "tags": [ - "Processes" + "Files" ], - "summary": "Save a new process", + "summary": "Save a new media file. Note: To upload files to a request, use createRequestFile in the RequestFile API", "description": "Store a newly created resource in storage.", - "operationId": "createProcess", + "operationId": "createFile", + "parameters": [ + { + "name": "model_id", + "in": "query", + "description": "ID of the model to which the file will be associated", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "model", + "in": "query", + "description": "Full namespaced class of the model to associate", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "data_name", + "in": "query", + "description": "Name of the variable used in a request", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "collection", + "in": "query", + "description": "Media collection name. For requests, use 'default'", + "required": false, + "schema": { + "type": "string" + } + } + ], "requestBody": { "required": true, "content": { - "application/json": { + "multipart/form-data": { "schema": { - "$ref": "#/components/schemas/ProcessEditable" + "properties": { + "file": { + "description": "save a new media file", + "type": "string", + "format": "binary" + } + }, + "type": "object" } } } }, "responses": { - "201": { + "200": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Process" + "properties": { + "id": { + "type": "string" + }, + "model_id": { + "type": "string" + }, + "file_name": { + "type": "string" + }, + "mime_type": { + "type": "string" + } + }, + "type": "object" } } } @@ -3196,94 +3323,82 @@ } } }, - "/processes/{processId}": { + "/files/{file_id}": { "get": { "tags": [ - "Processes" + "Files" ], - "summary": "Get single process by ID", - "description": "Display the specified resource.", - "operationId": "getProcessById", + "summary": "Get the metadata of a file. To actually fetch the file see Get File Contents", + "description": "Get a single media file.", + "operationId": "getFileById", "parameters": [ { - "name": "processId", + "name": "file_id", "in": "path", - "description": "ID of process to return", + "description": "ID of the file to return", "required": true, "schema": { "type": "integer" } - }, - { - "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "Successfully found the process", + "description": "Successfully found the file", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Process" + "$ref": "#/components/schemas/media" } } } + }, + "404": { + "$ref": "#/components/responses/404" } } }, - "put": { + "delete": { "tags": [ - "Processes" + "Files" ], - "summary": "Update a process", - "description": "Updates the current element.", - "operationId": "updateProcess", + "summary": "Delete a media file", + "description": "Remove the specified resource from storage.", + "operationId": "deleteFile", "parameters": [ { - "name": "processId", + "name": "file_id", "in": "path", - "description": "ID of process to return", + "description": "ID of the file", "required": true, "schema": { "type": "integer" } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProcessEditable" - } - } - } - }, "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Process" - } - } - } + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" } } - }, - "delete": { + } + }, + "/files/{file_id}/contents": { + "get": { "tags": [ - "Processes" + "Files" ], - "summary": "Delete a process", - "description": "Remove the specified resource from storage.", - "operationId": "deleteProcess", + "summary": "Get the contents of a file", + "description": "Display the specified resource.", + "operationId": "getFileContentsById", "parameters": [ { - "name": "processId", + "name": "file_id", "in": "path", - "description": "ID of process to return", + "description": "ID of the file to return", "required": true, "schema": { "type": "integer" @@ -3291,29 +3406,46 @@ } ], "responses": { - "204": { - "description": "success" + "200": { + "description": "File stream", + "content": { + "application/octet-stream": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "404": { + "$ref": "#/components/responses/404" } } } }, - "/processes/{processId}/start_events": { + "/groups": { "get": { "tags": [ - "Processes" + "Groups" ], - "summary": "Get start events of a process by Id", - "description": "Display the specified resource.", - "operationId": "getStartEventsProcessById", + "summary": "Returns all groups that the user has access to", + "description": "Display a listing of the resource.", + "operationId": "getGroups", "parameters": [ { - "name": "processId", - "in": "path", - "description": "ID of process to return", - "required": true, - "schema": { - "type": "integer" - } + "$ref": "#/components/parameters/status" + }, + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" }, { "$ref": "#/components/parameters/include" @@ -3321,7 +3453,7 @@ ], "responses": { "200": { - "description": "Successfully found the start events process", + "description": "list of groups", "content": { "application/json": { "schema": { @@ -3329,7 +3461,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/ProcessStartEvents" + "$ref": "#/components/schemas/groups" } }, "meta": { @@ -3342,21 +3474,88 @@ } } } + }, + "post": { + "tags": [ + "Groups" + ], + "summary": "Save a new group", + "description": "Store a newly created resource in storage.", + "operationId": "createGroup", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/groupsEditable" + } + } + } + }, + "responses": { + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/groups" + } + } + } + }, + "422": { + "$ref": "#/components/responses/422" + } + } } }, - "/processes/{processId}/draft": { + "/groups/{group_id}": { + "get": { + "tags": [ + "Groups" + ], + "summary": "Get single group by ID", + "description": "Display the specified resource.", + "operationId": "getGroupById", + "parameters": [ + { + "name": "group_id", + "in": "path", + "description": "ID of group to return", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Successfully found the group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/groups" + } + } + } + }, + "404": { + "$ref": "#/components/responses/404" + } + } + }, "put": { "tags": [ - "Processes" + "Groups" ], - "summary": "Update a draft process", - "description": "Update draft process.", - "operationId": "updateDraftProcess", + "summary": "Update a group", + "description": "Update a user", + "operationId": "updateGroup", "parameters": [ { - "name": "processId", + "name": "group_id", "in": "path", - "description": "ID of process to return", + "description": "ID of group to return", "required": true, "schema": { "type": "integer" @@ -3368,62 +3567,79 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessEditable" + "$ref": "#/components/schemas/groupsEditable" } } } }, "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Process" - } - } + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" + } + } + }, + "delete": { + "tags": [ + "Groups" + ], + "summary": "Delete a group", + "description": "Delete a user", + "operationId": "deleteGroup", + "parameters": [ + { + "name": "group_id", + "in": "path", + "description": "ID of group to return", + "required": true, + "schema": { + "type": "integer" } } + ], + "responses": { + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" + } } } }, - "/start_processes": { + "/groups/{group_id}/users": { "get": { "tags": [ - "Processes" + "Groups" ], - "summary": "Returns the list of processes that the user can start", - "description": "Returns the list of processes that the user can start.", - "operationId": "startProcesses", + "summary": "Returns all users of a group", + "description": "Display the list of users in a group", + "operationId": "getGroupUsers", "parameters": [ { - "$ref": "#/components/parameters/filter" + "name": "group_id", + "in": "path", + "description": "ID of group", + "required": true, + "schema": { + "type": "integer" + } }, { - "$ref": "#/components/parameters/order_by" + "$ref": "#/components/parameters/filter" }, { "$ref": "#/components/parameters/order_direction" }, { "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" - }, - { - "name": "without_event_definitions", - "in": "path", - "description": "If true return only processes that haven't start event definitions", - "required": false, - "schema": { - "type": "boolean" - } } ], "responses": { "200": { - "description": "list of processes that the user can start", + "description": "list of members of a group", "content": { "application/json": { "schema": { @@ -3431,7 +3647,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/ProcessWithStartEvents" + "$ref": "#/components/schemas/users" } }, "meta": { @@ -3446,32 +3662,52 @@ } } }, - "/processes/{processId}/restore": { - "put": { + "/groups/{group_id}/groups": { + "get": { "tags": [ - "Processes" + "Groups" ], - "summary": "Restore an inactive process", - "description": "Reverses the soft delete of the element.", - "operationId": "restoreProcess", + "summary": "Returns all users of a group", + "description": "Display the list of groups in a group", + "operationId": "getGroupGroupss", "parameters": [ { - "name": "processId", + "name": "group_id", "in": "path", - "description": "ID of process to return", + "description": "ID of group", "required": true, "schema": { "type": "integer" } + }, + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "success", + "description": "list of members of a group", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Process" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/groups" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" } } } @@ -3479,34 +3715,43 @@ } } }, - "/processes/{processId}/export": { - "post": { + "/group_members": { + "get": { "tags": [ - "Processes" + "Group Members" ], - "summary": "Export a single process by ID and return a URL to download it", - "description": "Export the specified process.", - "operationId": "exportProcess", + "summary": "Returns all groups for a given member", + "description": "Display a listing of the resource.", + "operationId": "getGroupMembers", "parameters": [ { - "name": "processId", - "in": "path", - "description": "ID of process to export", - "required": true, - "schema": { - "type": "integer" - } + "$ref": "#/components/parameters/member_id" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "Successfully built the process for export", + "description": "list of group_members", "content": { "application/json": { "schema": { "properties": { - "url": { - "type": "string" + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/groupMembers" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" } }, "type": "object" @@ -3515,40 +3760,31 @@ } } } - } - }, - "/processes/import/validation": { + }, "post": { "tags": [ - "Processes" + "Group Members" ], - "summary": "Validate a import", - "description": "Validate the specified process before importing.", - "operationId": "validateImport", + "summary": "Save a new group member", + "description": "Store a newly created resource in storage.", + "operationId": "createGroupMember", "requestBody": { "required": true, "content": { - "multipart/form-data": { + "application/json": { "schema": { - "properties": { - "file": { - "description": "file to import", - "type": "string", - "format": "binary" - } - }, - "type": "object" + "$ref": "#/components/schemas/groupMembersEditable" } } } }, "responses": { - "200": { + "201": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessImport" + "$ref": "#/components/schemas/createGroupMembers" } } } @@ -3556,111 +3792,118 @@ } } }, - "/processes/import": { - "post": { + "/group_members/{group_member_id}": { + "get": { "tags": [ - "Processes" + "Group Members" ], - "summary": "Import a new process", - "description": "Import the specified process.", - "operationId": "importProcess", - "requestBody": { - "required": true, - "content": { - "multipart/form-data": { - "schema": { - "properties": { - "file": { - "description": "file to import", - "type": "string", - "format": "binary" - } - }, - "type": "object" - } + "summary": "Get single group member by ID", + "description": "Display the specified resource.", + "operationId": "getGroupMemberById", + "parameters": [ + { + "name": "group_member_id", + "in": "path", + "description": "ID of group members to return", + "required": true, + "schema": { + "type": "string" } } - }, + ], "responses": { "200": { - "description": "success", + "description": "Successfully found the group members", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessImport" + "$ref": "#/components/schemas/getGroupMembersById" } } } } } - } - }, - "/processes/{processId}/bpmn": { - "get": { + }, + "delete": { "tags": [ - "Processes" + "Group Members" ], - "summary": "Download the BPMN definition of a process", - "description": "Download the BPMN definition of a process", - "operationId": "processBpmn", + "summary": "Delete a group member", + "description": "Delete a group membership", + "operationId": "deleteGroupMember", "parameters": [ { - "name": "processId", + "name": "group_member_id", "in": "path", - "description": "ID of process", + "description": "ID of group_members to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { - "200": { - "description": "Successfully built the process for export", - "content": { - "application/json": { - "schema": { - "properties": { - "url": { - "type": "string" - } - }, - "type": "object" - } - } - } + "204": { + "description": "success" } } } }, - "/processes/import/{code}/is_ready": { - "head": { + "/group_members_available": { + "get": { "tags": [ - "Processes" + "Group Members" ], - "summary": "Check if the import is ready", - "description": "Check if the import is ready", - "operationId": "6a131993b7c879ddcd3d3a291dd8380f", + "summary": "Returns all groups available for a given member", + "description": "Display a listing of groups available", + "operationId": "getGroupMembersAvailable", "parameters": [ { - "name": "code", + "name": "member_id", "in": "path", - "description": "Import code", + "description": "ID of group member to return", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "member_type", + "in": "path", + "description": "type of group member to return", "required": true, "schema": { "type": "string" } + }, + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "check is import is ready", + "description": "list of groups available to be assigned as member", "content": { "application/json": { "schema": { "properties": { - "ready": { - "type": "boolean" + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/availableGroupMembers" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" } }, "type": "object" @@ -3671,88 +3914,60 @@ } } }, - "/processes/{process_id}/import/assignments": { - "post": { - "tags": [ - "Processes" - ], - "summary": "Update assignments after import", - "description": "Import Assignments of process.", - "operationId": "assignmentProcess", - "parameters": [ - { - "name": "process_id", - "in": "path", - "description": "ID of process to return", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProcessAssignments" - } - } - } - }, - "responses": { - "204": { - "description": "success" - } - } - } - }, - "/process_events/{process_id}": { - "post": { + "/user_members_available": { + "get": { "tags": [ - "Processes" + "Group Members" ], - "summary": "Start a new process", - "description": "Trigger an start event within a process.", - "operationId": "triggerStartEvent", + "summary": "Returns all users available for a given group", + "description": "Display a listing of users available", + "operationId": "getUserMembersAvailable", "parameters": [ { - "name": "process_id", + "name": "group_id", "in": "path", - "description": "ID of process to return", + "description": "ID of group to return", "required": true, "schema": { - "type": "integer" + "type": "string" } }, { - "name": "event", + "name": "filter", "in": "query", - "description": "Node ID of the start event", - "required": true, + "description": "Filter results by string. Searches Name. Can be a substring.", "schema": { "type": "string" } + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" } ], - "requestBody": { - "description": "data that will be stored as part of the created request", - "required": false, - "content": { - "application/json": { - "schema": { - "type": "object" - } - } - } - }, "responses": { "200": { - "description": "success", + "description": "list of users available to be assigned as member", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/processRequest" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/users" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" } } } @@ -3760,28 +3975,22 @@ } } }, - "/requests": { + "/notifications": { "get": { "tags": [ - "Process Requests" + "Notifications" ], - "summary": "Returns all process Requests that the user has access to", + "summary": "Returns all notifications that the user has access to", "description": "Display a listing of the resource.", - "operationId": "getProcessesRequests", + "operationId": "getNotifications", "parameters": [ { - "name": "type", + "name": "status", "in": "query", - "description": "Only return requests by type (all|in_progress|completed)", + "description": "Only return notifications by status (unread, all, etc.)", "required": false, "schema": { - "type": "string", - "enum": [ - "all", - "in_progress", - "completed", - "started_me" - ] + "type": "string" } }, { @@ -3802,7 +4011,7 @@ ], "responses": { "200": { - "description": "list of processes", + "description": "list of notifications", "content": { "application/json": { "schema": { @@ -3810,12 +4019,10 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/processRequest" + "$ref": "#/components/schemas/Notification" } }, - "meta": { - "$ref": "#/components/schemas/metadata" - } + "meta": {} }, "type": "object" } @@ -3823,61 +4030,85 @@ } } } + }, + "post": { + "tags": [ + "Notifications" + ], + "summary": "Save a new notifications", + "description": "Store a newly created resource in storage.", + "operationId": "createNotification", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotificationEditable" + } + } + } + }, + "responses": { + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Notification" + } + } + } + } + } } }, - "/requests/{process_request_id}": { + "/notifications/{notification_id}": { "get": { "tags": [ - "Process Requests" + "Notifications" ], - "summary": "Get single process request by ID", + "summary": "Get single notification by ID", "description": "Display the specified resource.", - "operationId": "getProcessRequestById", + "operationId": "getNotificationById", "parameters": [ { - "name": "process_request_id", + "name": "notification_id", "in": "path", - "description": "ID of process request to return", + "description": "ID of notification to return", "required": true, "schema": { - "type": "integer" + "type": "string" } - }, - { - "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "Successfully found the process", + "description": "Successfully found the notification", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/processRequest" + "$ref": "#/components/schemas/Notification" } } } - }, - "404": { - "$ref": "#/components/responses/404" } } }, "put": { "tags": [ - "Process Requests" + "Notifications" ], - "summary": "Update a process request", - "description": "Update a request", - "operationId": "updateProcessRequest", + "summary": "Update a notification", + "description": "Update a user", + "operationId": "updateNotification", "parameters": [ { - "name": "process_request_id", + "name": "notification_id", "in": "path", - "description": "ID of process request to return", + "description": "ID of notification to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], @@ -3886,7 +4117,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/processRequestEditable" + "$ref": "#/components/schemas/NotificationEditable" } } } @@ -3894,179 +4125,137 @@ "responses": { "204": { "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" } } }, "delete": { "tags": [ - "Process Requests" + "Notifications" ], - "summary": "Delete a process request", - "description": "Delete a request", - "operationId": "deleteProcessRequest", + "summary": "Delete a notification", + "description": "Delete a notification", + "operationId": "deleteNotification", "parameters": [ { - "name": "process_request_id", + "name": "notification_id", "in": "path", - "description": "ID of process request to return", + "description": "ID of notification to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { "204": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/processRequest" - } - } - } - }, - "404": { - "$ref": "#/components/responses/404" + "description": "success" } } } }, - "/requests/{process_request_id}/events/{event_id}": { - "post": { + "/read_notifications": { + "put": { "tags": [ - "Process Requests" + "Notifications" ], - "summary": "Update a process request event", - "description": "Trigger a intermediate catch event", - "operationId": "updateProcessRequestEvent", - "parameters": [ - { - "name": "process_request_id", - "in": "path", - "description": "ID of process request to return", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "event_id", - "in": "path", - "description": "ID of process event to return", - "required": true, - "schema": { - "type": "string" + "summary": "Mark notifications as read by the user", + "description": "Update notification as read", + "operationId": "markNotificationAsRead", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "message_ids": { + "description": "list of message ids that will be marked as read", + "type": "array", + "items": { + "type": "string" + } + }, + "routes": { + "description": "all messages that has an url that is in this list will be marked as read", + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" + } } } - ], + }, "responses": { - "204": { + "201": { "description": "success" } } } }, - "/requests/{request_id}/files": { - "get": { + "/unread_notifications": { + "put": { "tags": [ - "Request Files" - ], - "summary": "Returns the list of files associated with a request", - "description": "Display a listing of the resource.", - "operationId": "getRequestFiles", - "parameters": [ - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - }, - { - "name": "request_id", - "in": "path", - "description": "ID of the request", - "required": true, - "schema": { - "type": "integer" - } - } + "Notifications" ], - "responses": { - "200": { - "description": "list of files", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/media" - } - }, - "meta": { - "type": "object", - "allOf": [ - { - "$ref": "#/components/schemas/metadata" - } - ] + "summary": "Mark notifications as unread by the user", + "description": "Update notifications as unread", + "operationId": "markNotificationAsUnread", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "message_ids": { + "description": "list of message ids that will be marked as read", + "type": "array", + "items": { + "type": "string" } }, - "type": "object" - } + "routes": { + "description": "all messages that has an url that is in this list will be marked as read", + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" } } } + }, + "responses": { + "201": { + "description": "success" + } } - }, - "post": { + } + }, + "/read_all_notifications": { + "put": { "tags": [ - "Request Files" - ], - "summary": "Save a new media file to a request", - "description": "Store a newly created resource in storage.", - "operationId": "createRequestFile", - "parameters": [ - { - "name": "request_id", - "in": "path", - "description": "ID of the request", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "data_name", - "in": "query", - "description": "Variable name in the request data to use for the file name", - "required": false, - "schema": { - "type": "string" - } - } + "Notifications" ], + "summary": "Mark notifications as read by id and type", + "description": "Update all notification as read.", + "operationId": "markAllAsRead", "requestBody": { "required": true, "content": { - "multipart/form-data": { + "application/json": { "schema": { "properties": { - "file": { - "description": "save a new media file", - "type": "string", - "format": "binary" + "id": { + "description": "Polymorphic relation id", + "type": "integer" + }, + "type": { + "description": "Polymorphic relation type", + "type": "string" } }, "type": "object" @@ -4075,122 +4264,71 @@ } }, "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "properties": { - "message": { - "type": "string" - }, - "fileUploadId": { - "type": "integer" - } - }, - "type": "object" - } - } - } + "201": { + "description": "success" } } } }, - "/requests/{request_id}/files/{file_id}": { - "get": { + "/permissions": { + "put": { "tags": [ - "Request Files" - ], - "summary": "Get a file uploaded to a request", - "description": "Display the specified resource.", - "operationId": "getRequestFilesById", - "parameters": [ - { - "name": "request_id", - "in": "path", - "description": "ID of the request", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "file_id", - "in": "path", - "description": "ID of the file to return", - "required": true, - "schema": { - "type": "integer" - } - } + "Permissions" ], - "responses": { - "200": { - "description": "File stream", - "content": { - "application/octet-stream": { - "schema": { - "type": "string", - "format": "binary" - } + "summary": "Update the permissions of a user", + "description": "Update permissions", + "operationId": "51b3555fb753f44324bf5c3880e01454", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "user_id": { + "description": "ID of the user whose permissions are configured", + "type": "integer" + }, + "group_id": { + "description": "ID of the group whose permissions are configured", + "type": "integer" + }, + "is_administrator": { + "description": "Whether the user should have Super Admin privileges", + "type": "boolean", + "default": false + }, + "permission_names": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" } } - }, - "404": { - "$ref": "#/components/responses/404" - } - } - }, - "delete": { - "tags": [ - "Request Files" - ], - "summary": "Delete all media associated with a request", - "description": "Remove the specified resource from storage.", - "operationId": "deleteRequestFile", - "parameters": [ - { - "name": "file_id", - "in": "path", - "description": "ID of the file", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "request_id", - "in": "path", - "description": "ID of the request", - "required": true, - "schema": { - "type": "string" - } } - ], + }, "responses": { "204": { "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" } } } }, - "/screen_categories": { + "/process_categories": { "get": { "tags": [ - "Screen Categories" + "Process Categories" ], - "summary": "Returns all screens categories that the user has access to", - "description": "Display a listing of the Screen Categories.", - "operationId": "getScreenCategories", + "summary": "Returns all processes categories that the user has access to", + "description": "Display a listing of the Process Categories.", + "operationId": "getProcessCategories", "parameters": [ { "name": "filter", "in": "query", - "description": "Filter results by string. Searches Name, Description, and Status. All fields must match exactly.", + "description": "Filter results by string. Searches Name and Status. All fields must match exactly.", "schema": { "type": "string" } @@ -4207,7 +4345,7 @@ ], "responses": { "200": { - "description": "list of screens categories", + "description": "list of processes categories", "content": { "application/json": { "schema": { @@ -4215,7 +4353,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/ScreenCategory" + "$ref": "#/components/schemas/ProcessCategory" } }, "meta": { @@ -4231,17 +4369,17 @@ }, "post": { "tags": [ - "Screen Categories" + "Process Categories" ], - "summary": "Save a new Screen Category", - "description": "Store a newly created Screen Category in storage", - "operationId": "createScreenCategory", + "summary": "Save a new process Category", + "description": "Store a newly created Process Category in storage", + "operationId": "createProcessCategory", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScreenCategoryEditable" + "$ref": "#/components/schemas/ProcessCategoryEditable" } } } @@ -4252,7 +4390,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScreenCategory" + "$ref": "#/components/schemas/ProcessCategory" } } } @@ -4260,32 +4398,32 @@ } } }, - "/screen_categories/{screen_category_id}": { + "/process_categories/{process_category_id}": { "get": { "tags": [ - "Screen Categories" + "Process Categories" ], - "summary": "Get single screen category by ID", - "description": "Display the specified screen category.", - "operationId": "getScreenCategoryById", + "summary": "Get single process category by ID", + "description": "Display the specified Process category.", + "operationId": "getProcessCategoryById", "parameters": [ { - "name": "screen_category_id", + "name": "process_category_id", "in": "path", - "description": "ID of screen category to return", + "description": "ID of process category to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { "200": { - "description": "Successfully found the screen", + "description": "Successfully found the process", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScreenCategory" + "$ref": "#/components/schemas/ProcessCategory" } } } @@ -4294,19 +4432,19 @@ }, "put": { "tags": [ - "Screen Categories" + "Process Categories" ], - "summary": "Update a screen Category", + "summary": "Update a process Category", "description": "Updates the current element", - "operationId": "updateScreenCategory", + "operationId": "updateProcessCategory", "parameters": [ { - "name": "screen_category_id", + "name": "process_category_id", "in": "path", - "description": "ID of screen category to return", + "description": "ID of process category to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], @@ -4315,7 +4453,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScreenCategoryEditable" + "$ref": "#/components/schemas/ProcessCategoryEditable" } } } @@ -4326,7 +4464,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScreenCategory" + "$ref": "#/components/schemas/ProcessCategory" } } } @@ -4335,37 +4473,44 @@ }, "delete": { "tags": [ - "Screen Categories" + "Process Categories" ], - "summary": "Delete a screen category", + "summary": "Delete a process category", "description": "Remove the specified resource from storage.", - "operationId": "deleteScreenCategory", + "operationId": "deleteProcessCategory", "parameters": [ { - "name": "screen_category_id", + "name": "process_category_id", "in": "path", - "description": "ID of screen category to return", + "description": "ID of process category to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { "204": { - "description": "success" + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Process" + } + } + } } } } }, - "/screens": { + "/processes": { "get": { "tags": [ - "Screens" + "Processes" ], - "summary": "Returns all screens that the user has access to", - "description": "Get a list of Screens.", - "operationId": "getScreens", + "summary": "Returns all processes that the user has access to", + "description": "Get list Process", + "operationId": "getProcesses", "parameters": [ { "$ref": "#/components/parameters/filter" @@ -4379,13 +4524,16 @@ { "$ref": "#/components/parameters/per_page" }, + { + "$ref": "#/components/parameters/status" + }, { "$ref": "#/components/parameters/include" }, { - "name": "exclude", + "name": "simplified_data_for_selector", "in": "query", - "description": "Comma separated list of fields to exclude from the response", + "description": "Comma separated list of fields to include in the response", "schema": { "type": "string", "default": "" @@ -4394,7 +4542,7 @@ ], "responses": { "200": { - "description": "list of screens", + "description": "list of processes", "content": { "application/json": { "schema": { @@ -4402,11 +4550,11 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/screens" + "$ref": "#/components/schemas/Process" } }, "meta": { - "type": "object" + "$ref": "#/components/schemas/metadata" } }, "type": "object" @@ -4418,17 +4566,17 @@ }, "post": { "tags": [ - "Screens" + "Processes" ], - "summary": "Save a new screens", - "description": "Create a new Screen.", - "operationId": "createScreen", + "summary": "Save a new process", + "description": "Store a newly created resource in storage.", + "operationId": "createProcess", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screensEditable" + "$ref": "#/components/schemas/ProcessEditable" } } } @@ -4439,7 +4587,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screens" + "$ref": "#/components/schemas/Process" } } } @@ -4447,32 +4595,51 @@ } } }, - "/screens/{screens_id}": { + "/processes/{processId}": { "get": { "tags": [ - "Screens" + "Processes" ], - "summary": "Get single screens by ID", - "description": "Get a single Screen.", - "operationId": "getScreensById", + "summary": "Get single process by ID", + "description": "Display the specified resource.", + "operationId": "getProcessById", "parameters": [ { - "name": "screens_id", + "name": "processId", "in": "path", - "description": "ID of screens to return", + "description": "ID of process to return", "required": true, "schema": { - "type": "string" + "type": "integer" } + }, + { + "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "Successfully found the screen", + "description": "Successfully found the process", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screens" + "$ref": "#/components/schemas/Process" + } + } + } + }, + "204": { + "description": "Process not found", + "content": { + "application/json": { + "schema": { + "properties": { + "message": { + "type": "string", + "example": "The requested process was not found" + } + }, + "type": "object" } } } @@ -4481,19 +4648,19 @@ }, "put": { "tags": [ - "Screens" + "Processes" ], - "summary": "Update a screen", - "description": "Update a Screen.", - "operationId": "updateScreen", + "summary": "Update a process", + "description": "Updates the current element.", + "operationId": "updateProcess", "parameters": [ { - "name": "screens_id", + "name": "processId", "in": "path", - "description": "ID of screen to return", + "description": "ID of process to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], @@ -4502,32 +4669,39 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screensEditable" + "$ref": "#/components/schemas/ProcessEditable" } } } }, "responses": { - "204": { - "description": "success" + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Process" + } + } + } } } }, "delete": { "tags": [ - "Screens" + "Processes" ], - "summary": "Delete a screen", - "description": "Delete a Screen.", - "operationId": "deleteScreen", + "summary": "Delete a process", + "description": "Remove the specified resource from storage.", + "operationId": "deleteProcess", "parameters": [ { - "name": "screens_id", + "name": "processId", "in": "path", - "description": "ID of screen to return", + "description": "ID of process to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], @@ -4538,58 +4712,69 @@ } } }, - "/screens/{screens_id}/draft": { - "put": { + "/processes/{processId}/start_events": { + "get": { "tags": [ - "Screens" + "Processes" ], - "summary": "Update a draft screen", - "description": "Update a draft Screen.", - "operationId": "updateDraftScreen", + "summary": "Get start events of a process by Id", + "description": "Display the specified resource.", + "operationId": "getStartEventsProcessById", "parameters": [ { - "name": "screens_id", + "name": "processId", "in": "path", - "description": "ID of screen to return", + "description": "ID of process to return", "required": true, "schema": { - "type": "string" + "type": "integer" } + }, + { + "$ref": "#/components/parameters/include" } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/screensEditable" + "responses": { + "200": { + "description": "Successfully found the start events process", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProcessStartEvents" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" + } } } } - }, - "responses": { - "204": { - "description": "success" - } } } }, - "/screens/{screens_id}/duplicate": { + "/processes/{processId}/draft": { "put": { "tags": [ - "Screens" + "Processes" ], - "summary": "duplicate a screen", - "description": "duplicate a Screen.", - "operationId": "duplicateScreen", + "summary": "Update a draft process", + "description": "Update draft process.", + "operationId": "updateDraftProcess", "parameters": [ { - "name": "screens_id", + "name": "processId", "in": "path", - "description": "ID of screen to return", + "description": "ID of process to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], @@ -4598,18 +4783,18 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screensEditable" + "$ref": "#/components/schemas/ProcessEditable" } } } }, "responses": { - "201": { + "200": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screens" + "$ref": "#/components/schemas/Process" } } } @@ -4617,32 +4802,58 @@ } } }, - "/screens/{screensId}/export": { - "post": { + "/start_processes": { + "get": { "tags": [ - "Screens" + "Processes" ], - "summary": "Export a single screen by ID", - "description": "Export the specified screen.", - "operationId": "exportScreen", + "summary": "Returns the list of processes that the user can start", + "description": "Returns the list of processes that the user can start.", + "operationId": "startProcesses", "parameters": [ { - "name": "screensId", + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" + }, + { + "name": "without_event_definitions", "in": "path", - "description": "ID of screen to return", - "required": true, + "description": "If true return only processes that haven't start event definitions", + "required": false, "schema": { - "type": "string" + "type": "boolean" } } ], "responses": { "200": { - "description": "Successfully exported the screen", + "description": "list of processes that the user can start", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screenExported" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProcessWithStartEvents" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" } } } @@ -4650,40 +4861,67 @@ } } }, - "/screens/import": { - "post": { + "/processes/{processId}/restore": { + "put": { "tags": [ - "Screens" + "Processes" ], - "summary": "Import a new screen", - "description": "Import the specified screen.", - "operationId": "importScreen", - "requestBody": { - "required": true, - "content": { - "multipart/form-data": { - "schema": { - "properties": { - "file": { - "description": "file to import", - "type": "string", - "format": "binary" - } - }, - "type": "object" - } + "summary": "Restore an inactive process", + "description": "Reverses the soft delete of the element.", + "operationId": "restoreProcess", + "parameters": [ + { + "name": "processId", + "in": "path", + "description": "ID of process to return", + "required": true, + "schema": { + "type": "integer" } } - }, + ], "responses": { - "201": { + "200": { "description": "success", "content": { "application/json": { "schema": { - "properties": { - "status": { - "type": "object" + "$ref": "#/components/schemas/Process" + } + } + } + } + } + } + }, + "/processes/{processId}/export": { + "post": { + "tags": [ + "Processes" + ], + "summary": "Export a single process by ID and return a URL to download it", + "description": "Export the specified process.", + "operationId": "exportProcess", + "parameters": [ + { + "name": "processId", + "in": "path", + "description": "ID of process to export", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Successfully built the process for export", + "content": { + "application/json": { + "schema": { + "properties": { + "url": { + "type": "string" } }, "type": "object" @@ -4694,31 +4932,24 @@ } } }, - "/screens/preview": { + "/processes/import/validation": { "post": { "tags": [ - "Screens" + "Processes" ], - "summary": "Preview a screen", - "description": "Get preview a screen", - "operationId": "preview", + "summary": "Validate a import", + "description": "Validate the specified process before importing.", + "operationId": "validateImport", "requestBody": { "required": true, "content": { - "application/json": { + "multipart/form-data": { "schema": { "properties": { - "config": { - "type": "object" - }, - "watchers": { - "type": "object" - }, - "computed": { - "type": "object" - }, - "custom_css": { - "type": "string" + "file": { + "description": "file to import", + "type": "string", + "format": "binary" } }, "type": "object" @@ -4728,11 +4959,11 @@ }, "responses": { "200": { - "description": "Successfully found the screen", + "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screens" + "$ref": "#/components/schemas/ProcessImport" } } } @@ -4740,41 +4971,38 @@ } } }, - "/screens/{screen_id}/translate/{language}": { - "get": { + "/processes/import": { + "post": { "tags": [ - "Screens" + "Processes" ], - "summary": "Translates the screen to the desired language", - "description": "Translates the controls inside a screen", - "operationId": "translateScreen", - "parameters": [ - { - "name": "screen_id", - "in": "path", - "description": "ID of the screen", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "language", - "in": "path", - "description": "Language used for the translation of the string", - "required": true, - "schema": { - "type": "string" + "summary": "Import a new process", + "description": "Import the specified process.", + "operationId": "importProcess", + "requestBody": { + "required": true, + "content": { + "multipart/form-data": { + "schema": { + "properties": { + "file": { + "description": "file to import", + "type": "string", + "format": "binary" + } + }, + "type": "object" + } } } - ], + }, "responses": { "200": { - "description": "Successfully found the screen", + "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screens" + "$ref": "#/components/schemas/ProcessImport" } } } @@ -4782,48 +5010,34 @@ } } }, - "/script_categories": { + "/processes/{processId}/bpmn": { "get": { "tags": [ - "Script Categories" + "Processes" ], - "summary": "Returns all scripts categories that the user has access to", - "description": "Display a listing of the Script Categories.", - "operationId": "getScriptCategories", + "summary": "Download the BPMN definition of a process", + "description": "Download the BPMN definition of a process", + "operationId": "processBpmn", "parameters": [ { - "name": "filter", - "in": "query", - "description": "Filter results by string. Searches Name, Description, and Status. All fields must match exactly.", + "name": "processId", + "in": "path", + "description": "ID of process", + "required": true, "schema": { - "type": "string" + "type": "integer" } - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "list of scripts categories", + "description": "Successfully built the process for export", "content": { "application/json": { "schema": { "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ScriptCategory" - } - }, - "meta": { - "type": "object" + "url": { + "type": "string" } }, "type": "object" @@ -4832,51 +5046,21 @@ } } } - }, - "post": { - "tags": [ - "Script Categories" - ], - "summary": "Save a new Script Category", - "description": "Store a newly created Script Category in storage", - "operationId": "createScriptCategory", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ScriptCategoryEditable" - } - } - } - }, - "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ScriptCategory" - } - } - } - } - } } }, - "/script_categories/{script_category_id}": { - "get": { + "/processes/import/{code}/is_ready": { + "head": { "tags": [ - "Script Categories" + "Processes" ], - "summary": "Get single script category by ID", - "description": "Display the specified script category.", - "operationId": "getScriptCategoryById", + "summary": "Check if the import is ready", + "description": "Check if the import is ready", + "operationId": "6a131993b7c879ddcd3d3a291dd8380f", "parameters": [ { - "name": "script_category_id", + "name": "code", "in": "path", - "description": "ID of script category to return", + "description": "Import code", "required": true, "schema": { "type": "string" @@ -4885,32 +5069,39 @@ ], "responses": { "200": { - "description": "Successfully found the script", + "description": "check is import is ready", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScriptCategory" + "properties": { + "ready": { + "type": "boolean" + } + }, + "type": "object" } } } } } - }, - "put": { + } + }, + "/processes/{process_id}/import/assignments": { + "post": { "tags": [ - "Script Categories" + "Processes" ], - "summary": "Update a script Category", - "description": "Updates the current element", - "operationId": "updateScriptCategory", + "summary": "Update assignments after import", + "description": "Import Assignments of process.", + "operationId": "assignmentProcess", "parameters": [ { - "name": "script_category_id", + "name": "process_id", "in": "path", - "description": "ID of script category to return", + "description": "ID of process to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], @@ -4919,92 +5110,123 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScriptCategoryEditable" + "$ref": "#/components/schemas/ProcessAssignments" } } } }, "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ScriptCategory" - } - } - } + "204": { + "description": "success" } } - }, - "delete": { + } + }, + "/process_events/{process_id}": { + "post": { "tags": [ - "Script Categories" + "Processes" ], - "summary": "Delete a script category", - "description": "Remove the specified resource from storage.", - "operationId": "deleteScriptCategory", + "summary": "Start a new process", + "description": "Trigger an start event within a process.", + "operationId": "triggerStartEvent", "parameters": [ { - "name": "script_category_id", + "name": "process_id", "in": "path", - "description": "ID of script category to return", + "description": "ID of process to return", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "event", + "in": "query", + "description": "Node ID of the start event", "required": true, "schema": { "type": "string" } } ], + "requestBody": { + "description": "data that will be stored as part of the created request", + "required": false, + "content": { + "application/json": { + "schema": { + "type": "object" + } + } + } + }, "responses": { - "204": { - "description": "success" + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/processRequest" + } + } + } } } } }, - "/scripts": { + "/processes/{process}/stages": { "get": { "tags": [ - "Scripts" + "Processes" ], - "summary": "Returns all scripts that the user has access to", - "description": "Get a list of scripts in a process.", - "operationId": "getScripts", + "summary": "Get the list of stages for a process", + "description": "Get stages of a process", + "operationId": "b40606bf1f4f04479be88823f470626f", "parameters": [ { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" + "name": "process", + "in": "path", + "description": "ID of the process", + "required": true, + "schema": { + "type": "integer" + } }, { - "$ref": "#/components/parameters/include" + "name": "alternative", + "in": "query", + "description": "Alternative version (A or B)", + "required": false, + "schema": { + "type": "string" + } } ], "responses": { "200": { - "description": "list of scripts", + "description": "List of stages", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/scripts" + "type": "array", + "items": { + "properties": { + "id": { + "type": "integer" + }, + "order": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "selected": { + "type": "boolean" } }, - "meta": { - "type": "object" - } - }, - "type": "object" + "type": "object" + } } } } @@ -5013,28 +5235,82 @@ }, "post": { "tags": [ - "Scripts" + "Processes" + ], + "summary": "Save or update the list of stages for a process", + "description": "Save stages for a process", + "operationId": "eb23a62117463592164d70f29aecdf9b", + "parameters": [ + { + "name": "process", + "in": "path", + "description": "ID of the process", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "alternative", + "in": "query", + "description": "Alternative version (A or B)", + "required": false, + "schema": { + "type": "string" + } + } ], - "summary": "Save a new script", - "description": "Create a new script in a process.", - "operationId": "createScript", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/scriptsEditable" + "type": "array", + "items": { + "properties": { + "id": { + "type": "integer" + }, + "order": { + "type": "integer" + }, + "label": { + "type": "string" + }, + "selected": { + "type": "boolean" + } + }, + "type": "object" + } } } } }, "responses": { - "201": { - "description": "success", + "200": { + "description": "Updated stages", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/scripts" + "type": "array", + "items": { + "properties": { + "id": { + "type": "integer" + }, + "order": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "selected": { + "type": "boolean" + } + }, + "type": "object" + } } } } @@ -5042,72 +5318,56 @@ } } }, - "/scripts/{script_id}/preview": { - "post": { + "/processes/{process}/aggregation": { + "get": { "tags": [ - "Scripts" + "Processes" ], - "summary": "Test script code without saving it", - "description": "Previews executing a script, with sample data/config data", - "operationId": "previewScript", + "summary": "Get the aggregation configuration for a process", + "description": "Get aggregation for a process", + "operationId": "ecf07de0e8ce9b5876c72ea0133d83a4", "parameters": [ { - "name": "script_id", + "name": "process", "in": "path", + "description": "ID of the process", "required": true, "schema": { "type": "integer" } } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "type": "object" - } - }, - "config": { - "type": "array", - "items": { - "type": "object" + "responses": { + "200": { + "description": "Aggregation configuration", + "content": { + "application/json": { + "schema": { + "properties": { + "aggregation": { + "description": "string containing var aggregation", + "type": "string" } }, - "code": { - "type": "string" - }, - "nonce": { - "type": "string" - } - }, - "type": "object" + "type": "object" + } } } } - }, - "responses": { - "200": { - "description": "success if the script was queued" - } } - } - }, - "/scripts/execute/{script_id}": { + }, "post": { "tags": [ - "Scripts" + "Processes" ], - "summary": "Execute script", - "description": "Executes a script, with sample data/config data", - "operationId": "executeScript", + "summary": "Save or update the aggregation field for a process", + "description": "Updates the aggregation field of a process. If no aggregation is provided, defaults to 'amount'.", + "operationId": "8b6d8704835d8571bc50e31938fd7ded", "parameters": [ { - "name": "script_id", + "name": "process", "in": "path", + "description": "ID of the process", "required": true, "schema": { "type": "integer" @@ -5115,21 +5375,15 @@ } ], "requestBody": { + "required": false, "content": { "application/json": { "schema": { "properties": { - "data": { - "type": "array", - "items": { - "type": "object" - } - }, - "config": { - "type": "array", - "items": { - "type": "object" - } + "aggregation": { + "description": "Field name to use for aggregation (defaults to 'amount' if not provided)", + "type": "string", + "example": "amount" } }, "type": "object" @@ -5139,211 +5393,283 @@ }, "responses": { "200": { - "description": "success if the script was queued", + "description": "Updated aggregation field", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/scriptsPreview" + "properties": { + "data": { + "description": "The saved aggregation field value", + "type": "string", + "example": "amount" + } + }, + "type": "object" } } } + }, + "404": { + "description": "Process not found" } } } }, - "/scripts/execution/{key}": { + "/processes/{process}/stage-mapping": { "get": { "tags": [ - "Scripts" + "Processes" ], - "summary": "Get the response of a script execution by execution key", - "description": "Get the response of a script execution", - "operationId": "getScriptExecutionResponse", + "summary": "Get process stages configuration", + "description": "Retrieves and formats the stages configuration for a specific process, including total counts and individual stages.", + "operationId": "getStageMapping", "parameters": [ { - "name": "key", + "name": "process", "in": "path", + "description": "ID of the process", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { "200": { - "description": "response of a script execution", + "description": "Successful operation", "content": { "application/json": { - "schema": {} + "schema": { + "properties": { + "data": { + "properties": { + "total": { + "properties": { + "stage_id": { + "type": "number", + "example": "0" + }, + "stage_name": { + "type": "string", + "example": "Total Cases" + }, + "percentage": { + "type": "number", + "example": 100 + }, + "percentage_format": { + "type": "string", + "example": "100%" + }, + "agregation_sum": { + "type": "number", + "example": 50000 + }, + "agregation_count": { + "type": "number", + "example": 150 + } + }, + "type": "object" + }, + "stages": { + "type": "array", + "items": { + "properties": { + "stage_id": { + "type": "number", + "example": "1" + }, + "stage_name": { + "type": "string", + "example": "In progress" + }, + "percentage": { + "type": "number", + "example": 60, + "nullable": true + }, + "percentage_format": { + "type": "string", + "example": "60%" + }, + "agregation_sum": { + "type": "number", + "example": 28678, + "nullable": true + }, + "agregation_count": { + "type": "number", + "example": 100, + "nullable": true + } + }, + "type": "object" + } + } + }, + "type": "object" + } + }, + "type": "object" + } } } } } } }, - "/scripts/{script_id}": { + "/api/processes/{process}/default-stages": { "get": { "tags": [ - "Scripts" + "Processes" ], - "summary": "Get single script by ID", - "description": "Get a single script in a process.", - "operationId": "getScriptsById", + "summary": "Get default process stages configuration", + "description": "Retrieves and formats the default stages configuration for a process.", + "operationId": "getDefaultStagesPerProcess", "parameters": [ { - "name": "script_id", + "name": "process", "in": "path", - "description": "ID of script to return", + "description": "ID of the process", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { "200": { - "description": "Successfully found the script", + "description": "Successful operation", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/scripts" - } - } - } - } - } - }, - "put": { - "tags": [ - "Scripts" - ], - "summary": "Update a script", - "description": "Update a script in a process.", - "operationId": "updateScript", - "parameters": [ - { - "name": "script_id", - "in": "path", - "description": "ID of script to return", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/scriptsEditable" + "type": "array", + "items": { + "properties": { + "stage_id": { + "type": "number", + "example": "1" + }, + "stage_name": { + "type": "string", + "example": "In progress" + }, + "percentage": { + "type": "number", + "example": 60, + "nullable": true + }, + "percentage_format": { + "type": "string", + "example": "60%" + }, + "agregation_sum": { + "type": "number", + "example": 28678, + "nullable": true + }, + "agregation_count": { + "type": "number", + "example": 100, + "nullable": true + } + }, + "type": "object" + } + } } } } - }, - "responses": { - "204": { - "description": "success" - } - } - }, - "delete": { - "tags": [ - "Scripts" - ], - "summary": "Delete a script", - "description": "Delete a script in a process.", - "operationId": "deleteScript", - "parameters": [ - { - "name": "script_id", - "in": "path", - "description": "ID of script to return", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "success" - } } } }, - "/scripts/{script_id}/draft": { - "put": { + "/api/processes/{process}/metrics": { + "get": { "tags": [ - "Scripts" + "Processes" ], - "summary": "Update a draft script", - "description": "Update a draft script.", - "operationId": "updateDraftScript", + "summary": "Get process metrics configuration", + "description": "Retrieves and formats the metrics configuration for a specific process. Supports different formats like 'student' or default metrics.", + "operationId": "getMetricsPerProcess", "parameters": [ { - "name": "script_id", + "name": "process", "in": "path", - "description": "ID of script to return", + "description": "ID of the process", "required": true, "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/scriptsEditable" - } + "type": "integer" } - } - }, - "responses": { - "204": { - "description": "success" - } - } - } - }, - "/scripts/{scripts_id}/duplicate": { - "put": { - "tags": [ - "Scripts" - ], - "summary": "duplicate a script", - "description": "Duplicate a Script.", - "operationId": "duplicateScript", - "parameters": [ + }, { - "name": "scripts_id", - "in": "path", - "description": "ID of script to return", - "required": true, + "name": "format", + "in": "query", + "description": "Format type of the metrics (e.g., 'student')", + "required": false, "schema": { - "type": "string" + "type": "string", + "default": "student", + "enum": [ + "student", + "default" + ] } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/scriptsEditable" + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "properties": { + "id": { + "type": "integer", + "example": 1 + }, + "metric_description": { + "type": "string", + "example": "Max amount available" + }, + "metric_count": { + "type": "integer", + "example": 10, + "nullable": true + }, + "metric_count_description": { + "type": "string", + "example": "Across 10 applicants" + }, + "metric_value": { + "type": "number", + "example": 84000 + }, + "metric_value_unit": { + "type": "string", + "example": "k" + } + }, + "type": "object" + } + } } } - } - }, - "responses": { - "201": { - "description": "success", + }, + "400": { + "description": "Invalid format parameter", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/scripts" + "properties": { + "error": { + "type": "string", + "example": "Invalid format parameter" + } + }, + "type": "object" } } } @@ -5351,15 +5677,30 @@ } } }, - "/script-executors": { + "/requests": { "get": { "tags": [ - "Rebuild Script Executors" + "Process Requests" ], - "summary": "Returns all script executors that the user has access to", - "description": "Get a list of script executors.", - "operationId": "getScriptExecutors", + "summary": "Returns all process Requests that the user has access to", + "description": "Display a listing of the resource.", + "operationId": "getProcessesRequests", "parameters": [ + { + "name": "type", + "in": "query", + "description": "Only return requests by type (all|in_progress|completed)", + "required": false, + "schema": { + "type": "string", + "enum": [ + "all", + "in_progress", + "completed", + "started_me" + ] + } + }, { "$ref": "#/components/parameters/filter" }, @@ -5371,11 +5712,14 @@ }, { "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "list of script executors", + "description": "list of processes", "content": { "application/json": { "schema": { @@ -5383,11 +5727,11 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/scriptExecutors" + "$ref": "#/components/schemas/processRequest" } }, "meta": { - "type": "object" + "$ref": "#/components/schemas/metadata" } }, "type": "object" @@ -5396,62 +5740,61 @@ } } } - }, - "post": { + } + }, + "/requests/{process_request_id}": { + "get": { "tags": [ - "Rebuild Script Executors" + "Process Requests" ], - "summary": "Create a script executor", - "description": "Create a script executor", - "operationId": "createScriptExecutor", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/scriptExecutorsEditable" - } + "summary": "Get single process request by ID", + "description": "Display the specified resource.", + "operationId": "getProcessRequestById", + "parameters": [ + { + "name": "process_request_id", + "in": "path", + "description": "ID of process request to return", + "required": true, + "schema": { + "type": "integer" } + }, + { + "$ref": "#/components/parameters/include" } - }, + ], "responses": { "200": { - "description": "success", + "description": "Successfully found the process", "content": { "application/json": { "schema": { - "properties": { - "status": { - "type": "string" - }, - "id": { - "type": "string" - } - }, - "type": "object" + "$ref": "#/components/schemas/processRequest" } } } + }, + "404": { + "$ref": "#/components/responses/404" } } - } - }, - "/script-executors/{script_executor}": { + }, "put": { "tags": [ - "Rebuild Script Executors" + "Process Requests" ], - "summary": "Update script executor", - "description": "Update and rebuild the script executor", - "operationId": "updateScriptExecutor", + "summary": "Update a process request", + "description": "Update a request", + "operationId": "updateProcessRequest", "parameters": [ { - "name": "script_executor", + "name": "process_request_id", "in": "path", - "description": "ID of script executor to return", + "description": "ID of process request to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], @@ -5460,119 +5803,98 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/scriptExecutorsEditable" + "$ref": "#/components/schemas/processRequestEditable" } } } }, "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "properties": { - "status": { - "type": "string" - } - }, - "type": "object" - } - } - } + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" } } }, "delete": { "tags": [ - "Rebuild Script Executors" + "Process Requests" ], - "summary": "Delete a script executor", - "description": "Delete a script executor", - "operationId": "deleteScriptExecutor", + "summary": "Delete a process request", + "description": "Delete a request", + "operationId": "deleteProcessRequest", "parameters": [ { - "name": "script_executor", + "name": "process_request_id", "in": "path", - "description": "ID of script executor to return", + "description": "ID of process request to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { - "200": { + "204": { "description": "success", "content": { "application/json": { "schema": { - "properties": { - "status": { - "type": "string" - } - }, - "type": "object" + "$ref": "#/components/schemas/processRequest" } } } + }, + "404": { + "$ref": "#/components/responses/404" } } } }, - "/script-executors/cancel": { + "/requests/{process_request_id}/events/{event_id}": { "post": { "tags": [ - "Rebuild Script Executors" + "Process Requests" ], - "summary": "Cancel a script executor", - "description": "Cancel a script executor", - "operationId": "cancelScriptExecutor", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "properties": { - "pidFile": { - "type": "string" - } - }, - "type": "object" - } + "summary": "Update a process request event", + "description": "Trigger a intermediate catch event", + "operationId": "updateProcessRequestEvent", + "parameters": [ + { + "name": "process_request_id", + "in": "path", + "description": "ID of process request to return", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "event_id", + "in": "path", + "description": "ID of process event to return", + "required": true, + "schema": { + "type": "string" } } - }, + ], "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "properties": { - "status": { - "type": "string" - }, - "id": { - "type": "string" - } - }, - "type": "object" - } - } - } + "204": { + "description": "success" } } } }, - "/script-executors/available-languages": { + "/requests/{request_id}/files": { "get": { "tags": [ - "Rebuild Script Executors" + "Request Files" ], - "summary": "Returns all available languages", - "description": "Get a list of available languages.", - "operationId": "getAvailableLanguages", + "summary": "Returns the list of files associated with a request", + "description": "Display a listing of the resource.", + "operationId": "getRequestFiles", "parameters": [ { "$ref": "#/components/parameters/filter" @@ -5585,11 +5907,20 @@ }, { "$ref": "#/components/parameters/per_page" + }, + { + "name": "request_id", + "in": "path", + "description": "ID of the request", + "required": true, + "schema": { + "type": "integer" + } } ], "responses": { "200": { - "description": "list of available languages", + "description": "list of files", "content": { "application/json": { "schema": { @@ -5597,11 +5928,16 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/availableLanguages" + "$ref": "#/components/schemas/media" } }, "meta": { - "type": "object" + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/metadata" + } + ] } }, "type": "object" @@ -5610,45 +5946,63 @@ } } } - } - }, - "/security-logs": { - "get": { + }, + "post": { "tags": [ - "Security Logs" + "Request Files" ], - "summary": "Returns all security logs", - "description": "Get a list of Security Logs.", - "operationId": "getSecurityLogs", + "summary": "Save a new media file to a request", + "description": "Store a newly created resource in storage.", + "operationId": "createRequestFile", "parameters": [ { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" + "name": "request_id", + "in": "path", + "description": "ID of the request", + "required": true, + "schema": { + "type": "integer" + } }, { - "$ref": "#/components/parameters/per_page" + "name": "data_name", + "in": "query", + "description": "Variable name in the request data to use for the file name", + "required": false, + "schema": { + "type": "string" + } } ], + "requestBody": { + "required": true, + "content": { + "multipart/form-data": { + "schema": { + "properties": { + "file": { + "description": "save a new media file", + "type": "string", + "format": "binary" + } + }, + "type": "object" + } + } + } + }, "responses": { "200": { - "description": "list of security logs", + "description": "success", "content": { "application/json": { "schema": { "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/securityLog" - } + "message": { + "type": "string" }, - "meta": { - "type": "object" + "fileUploadId": { + "type": "integer" } }, "type": "object" @@ -5659,150 +6013,104 @@ } } }, - "/security-logs/{securityLog}": { + "/requests/{request_id}/files/{file_id}": { "get": { "tags": [ - "Security Logs" + "Request Files" ], - "summary": "Get single security log by ID", + "summary": "Get a file uploaded to a request", "description": "Display the specified resource.", - "operationId": "getSecurityLog", + "operationId": "getRequestFilesById", "parameters": [ { - "name": "securityLog", + "name": "request_id", "in": "path", - "description": "ID of security log to return", + "description": "ID of the request", "required": true, "schema": { - "type": "string" + "type": "integer" + } + }, + { + "name": "file_id", + "in": "path", + "description": "ID of the file to return", + "required": true, + "schema": { + "type": "integer" } } ], "responses": { "200": { - "description": "Successfully found the security log", + "description": "File stream", "content": { - "application/json": { + "application/octet-stream": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/securityLog" - } - } - }, - "type": "object" + "type": "string", + "format": "binary" } } } + }, + "404": { + "$ref": "#/components/responses/404" } } - } - }, - "/settings": { - "get": { + }, + "delete": { "tags": [ - "Settings" + "Request Files" ], - "summary": "Returns all settings", - "description": "Display a listing of the resource.", - "operationId": "getSettings", + "summary": "Delete all media associated with a request", + "description": "Remove the specified resource from storage.", + "operationId": "deleteRequestFile", "parameters": [ { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" - } - ], - "responses": { - "200": { - "description": "list of settings", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/settings" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" - } - } + "name": "file_id", + "in": "path", + "description": "ID of the file", + "required": true, + "schema": { + "type": "integer" } - } - } - } - }, - "/settings/{setting_id}": { - "put": { - "tags": [ - "Settings" - ], - "summary": "Update a setting", - "description": "Update a setting", - "operationId": "updateSetting", - "parameters": [ + }, { - "name": "setting_id", + "name": "request_id", "in": "path", - "description": "ID of setting to return", + "description": "ID of the request", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/settingsEditable" - } - } - } - }, "responses": { "204": { "description": "success" }, "404": { "$ref": "#/components/responses/404" - }, - "422": { - "$ref": "#/components/responses/422" } } } }, - "/signals": { + "/screen_categories": { "get": { "tags": [ - "Signals" + "Screen Categories" ], - "summary": "Returns all signals", - "description": "Display a listing of the resource.", - "operationId": "getSignals", + "summary": "Returns all screens categories that the user has access to", + "description": "Display a listing of the Screen Categories.", + "operationId": "getScreenCategories", "parameters": [ { - "$ref": "#/components/parameters/filter" + "name": "filter", + "in": "query", + "description": "Filter results by string. Searches Name, Description, and Status. All fields must match exactly.", + "schema": { + "type": "string" + } }, { "$ref": "#/components/parameters/order_by" @@ -5816,7 +6124,7 @@ ], "responses": { "200": { - "description": "list of signals", + "description": "list of screens categories", "content": { "application/json": { "schema": { @@ -5824,7 +6132,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/signals" + "$ref": "#/components/schemas/ScreenCategory" } }, "meta": { @@ -5840,17 +6148,17 @@ }, "post": { "tags": [ - "Signals" + "Screen Categories" ], - "summary": "Creates a new Global Signal", - "description": "Creates a new global signal", - "operationId": "createSignal", + "summary": "Save a new Screen Category", + "description": "Store a newly created Screen Category in storage", + "operationId": "createScreenCategory", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/signalsEditable" + "$ref": "#/components/schemas/ScreenCategoryEditable" } } } @@ -5861,7 +6169,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/signals" + "$ref": "#/components/schemas/ScreenCategory" } } } @@ -5869,19 +6177,19 @@ } } }, - "/signals/{signal_id}": { + "/screen_categories/{screen_category_id}": { "get": { "tags": [ - "Signals" + "Screen Categories" ], - "summary": "Get a single signal by ID", - "description": "Display the specified resource.", - "operationId": "getSignalsById", + "summary": "Get single screen category by ID", + "description": "Display the specified screen category.", + "operationId": "getScreenCategoryById", "parameters": [ { - "name": "signal_id", + "name": "screen_category_id", "in": "path", - "description": "signal id", + "description": "ID of screen category to return", "required": true, "schema": { "type": "string" @@ -5890,11 +6198,11 @@ ], "responses": { "200": { - "description": "success", + "description": "Successfully found the screen", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/signals" + "$ref": "#/components/schemas/ScreenCategory" } } } @@ -5903,15 +6211,16 @@ }, "put": { "tags": [ - "Signals" + "Screen Categories" ], - "summary": "Update a signal", - "operationId": "updateSignal", + "summary": "Update a screen Category", + "description": "Updates the current element", + "operationId": "updateScreenCategory", "parameters": [ { - "name": "signal_id", + "name": "screen_category_id", "in": "path", - "description": "ID of signal to update", + "description": "ID of screen category to return", "required": true, "schema": { "type": "string" @@ -5923,7 +6232,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/signalsEditable" + "$ref": "#/components/schemas/ScreenCategoryEditable" } } } @@ -5934,7 +6243,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/signals" + "$ref": "#/components/schemas/ScreenCategory" } } } @@ -5943,15 +6252,16 @@ }, "delete": { "tags": [ - "Signals" + "Screen Categories" ], - "summary": "Delete a signal", - "operationId": "deleteSignal", + "summary": "Delete a screen category", + "description": "Remove the specified resource from storage.", + "operationId": "deleteScreenCategory", "parameters": [ { - "name": "signal_id", + "name": "screen_category_id", "in": "path", - "description": "ID of signal to delete", + "description": "ID of screen category to return", "required": true, "schema": { "type": "string" @@ -5965,14 +6275,14 @@ } } }, - "/task_assignments": { + "/screens": { "get": { "tags": [ - "Task Assignments" + "Screens" ], - "summary": "Returns all task assignments", - "description": "Display a listing of the resource.", - "operationId": "getTaskAssignments", + "summary": "Returns all screens that the user has access to", + "description": "Get a list of Screens.", + "operationId": "getScreens", "parameters": [ { "$ref": "#/components/parameters/filter" @@ -5985,11 +6295,23 @@ }, { "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" + }, + { + "name": "exclude", + "in": "query", + "description": "Comma separated list of fields to exclude from the response", + "schema": { + "type": "string", + "default": "" + } } ], "responses": { "200": { - "description": "list of task assignments", + "description": "list of screens", "content": { "application/json": { "schema": { @@ -5997,7 +6319,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/taskAssignments" + "$ref": "#/components/schemas/screens" } }, "meta": { @@ -6013,17 +6335,17 @@ }, "post": { "tags": [ - "Task Assignments" + "Screens" ], - "summary": "Save a new Task Assignment", - "description": "Store a newly created task assignment in storage.", - "operationId": "createTaskAssignments", + "summary": "Save a new screens", + "description": "Create a new Screen.", + "operationId": "createScreen", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/taskAssignmentsEditable" + "$ref": "#/components/schemas/screensEditable" } } } @@ -6034,73 +6356,61 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/taskAssignments" + "$ref": "#/components/schemas/screens" } } } - }, - "422": { - "$ref": "#/components/responses/422" } } } }, - "/task_assignments/{task_assignment}": { - "put": { + "/screens/{screens_id}": { + "get": { "tags": [ - "Task Assignments" + "Screens" ], - "summary": "Update a Task Assignment", - "description": "Update a task assignment", - "operationId": "updateTaskAssignments", + "summary": "Get single screens by ID", + "description": "Get a single Screen.", + "operationId": "getScreensById", "parameters": [ { - "name": "task_assignment", + "name": "screens_id", "in": "path", - "description": "ID of task assignment to update", + "description": "ID of screens to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/taskAssignmentsEditable" + "responses": { + "200": { + "description": "Successfully found the screen", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/screens" + } } } } - }, - "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "422": { - "$ref": "#/components/responses/422" - } } }, - "delete": { + "put": { "tags": [ - "Task Assignments" + "Screens" ], - "summary": "Delete a Task Assignment", - "description": "Remove an assignment", - "operationId": "deleteTaskAssignments", + "summary": "Update a screen", + "description": "Update a Screen.", + "operationId": "updateScreen", "parameters": [ { - "name": "task_assignment", + "name": "screens_id", "in": "path", - "description": "ID of task assignment to delete", + "description": "ID of screen to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], @@ -6109,142 +6419,94 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/taskAssignmentsEditable" + "$ref": "#/components/schemas/screensEditable" } } } }, "responses": { - "200": { + "204": { "description": "success" } } - } - }, - "/tasks": { - "get": { + }, + "delete": { "tags": [ - "Tasks" + "Screens" ], - "summary": "Returns all tasks that the user has access to", - "description": "Display a listing of the resource.", - "operationId": "getTasks", + "summary": "Delete a screen", + "description": "Delete a Screen.", + "operationId": "deleteScreen", "parameters": [ { - "name": "process_request_id", - "in": "query", - "description": "Process request id", - "required": false, - "schema": { - "type": "integer" - } - }, - { - "name": "all_tasks", - "in": "query", - "description": "Return all task types. Not just user tasks.", - "required": false, + "name": "screens_id", + "in": "path", + "description": "ID of screen to return", + "required": true, "schema": { - "type": "boolean" + "type": "string" } - }, - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/include" } ], "responses": { - "200": { - "description": "list of tasks", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/processRequestToken" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" - } - } - } + "204": { + "description": "success" } } } }, - "/tasks/{task_id}": { - "get": { + "/screens/{screens_id}/draft": { + "put": { "tags": [ - "Tasks" + "Screens" ], - "summary": "Get a single task by ID", - "description": "Display the specified resource.", - "operationId": "getTasksById", + "summary": "Update a draft screen", + "description": "Update a draft Screen.", + "operationId": "updateDraftScreen", "parameters": [ { - "name": "task_id", + "name": "screens_id", "in": "path", - "description": "task id", + "description": "ID of screen to return", "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "include", - "in": "query", - "description": "include", - "required": false, "schema": { "type": "string" } } ], - "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/processRequestToken" - } + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/screensEditable" } } - }, - "404": { - "$ref": "#/components/responses/404" + } + }, + "responses": { + "204": { + "description": "success" } } - }, + } + }, + "/screens/{screens_id}/duplicate": { "put": { "tags": [ - "Tasks" + "Screens" ], - "summary": "Update a task", - "description": "Updates the current element", - "operationId": "updateTask", + "summary": "duplicate a screen", + "description": "duplicate a Screen.", + "operationId": "duplicateScreen", "parameters": [ { - "name": "task_id", + "name": "screens_id", "in": "path", - "description": "ID of task to update", + "description": "ID of screen to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], @@ -6253,123 +6515,79 @@ "content": { "application/json": { "schema": { - "required": [ - "status", - "data" - ], - "properties": { - "status": { - "type": "string", - "example": "COMPLETED" - }, - "data": { - "type": "object" - } - }, - "type": "object" + "$ref": "#/components/schemas/screensEditable" } } } }, "responses": { - "200": { + "201": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/processRequestToken" + "$ref": "#/components/schemas/screens" } } } - }, - "404": { - "$ref": "#/components/responses/404" - }, - "422": { - "$ref": "#/components/responses/422" } } } }, - "/users": { - "get": { + "/screens/{screensId}/export": { + "post": { "tags": [ - "Users" + "Screens" ], - "summary": "Returns all users", - "description": "Display a listing of the resource.", - "operationId": "getUsers", + "summary": "Export a single screen by ID", + "description": "Export the specified screen.", + "operationId": "exportScreen", "parameters": [ { - "$ref": "#/components/parameters/status" - }, - { - "name": "filter", - "in": "query", - "description": "Filter results by string. Searches First Name, Last Name, Email and Username.", + "name": "screensId", + "in": "path", + "description": "ID of screen to return", + "required": true, "schema": { "type": "string" } - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" - }, - { - "name": "exclude_ids", - "in": "query", - "description": "Comma separated list of IDs to exclude from the response", - "schema": { - "type": "string", - "default": "" - } } ], "responses": { "200": { - "description": "list of users", + "description": "Successfully exported the screen", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/users" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" + "$ref": "#/components/schemas/screenExported" } } } } } - }, + } + }, + "/screens/import": { "post": { "tags": [ - "Users" + "Screens" ], - "summary": "Save a new users", - "description": "Store a newly created resource in storage.", - "operationId": "createUser", + "summary": "Import a new screen", + "description": "Import the specified screen.", + "operationId": "importScreen", "requestBody": { "required": true, "content": { - "application/json": { + "multipart/form-data": { "schema": { - "$ref": "#/components/schemas/usersEditable" + "properties": { + "file": { + "description": "file to import", + "type": "string", + "format": "binary" + } + }, + "type": "object" } } } @@ -6380,47 +6598,137 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/users" + "properties": { + "status": { + "type": "object" + } + }, + "type": "object" } } } - }, - "422": { - "$ref": "#/components/responses/422" } } } }, - "/users_task_count": { - "get": { + "/screens/preview": { + "post": { "tags": [ - "Users" + "Screens" ], - "summary": "Returns all users and their total tasks", - "description": "Display a listing of users and their task counts.", - "operationId": "getUsersTaskCount", + "summary": "Preview a screen", + "description": "Get preview a screen", + "operationId": "preview", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "config": { + "type": "object" + }, + "watchers": { + "type": "object" + }, + "computed": { + "type": "object" + }, + "custom_css": { + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "description": "Successfully found the screen", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/screens" + } + } + } + } + } + } + }, + "/screens/{screen_id}/translate/{language}": { + "get": { + "tags": [ + "Screens" + ], + "summary": "Translates the screen to the desired language", + "description": "Translates the controls inside a screen", + "operationId": "translateScreen", "parameters": [ { - "name": "filter", - "in": "query", - "description": "Filter results by string. Searches First Name, Last Name, Email, or Username.", + "name": "screen_id", + "in": "path", + "description": "ID of the screen", + "required": true, "schema": { "type": "string" } }, { - "name": "include_ids", + "name": "language", + "in": "path", + "description": "Language used for the translation of the string", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Successfully found the screen", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/screens" + } + } + } + } + } + } + }, + "/script_categories": { + "get": { + "tags": [ + "Script Categories" + ], + "summary": "Returns all scripts categories that the user has access to", + "description": "Display a listing of the Script Categories.", + "operationId": "getScriptCategories", + "parameters": [ + { + "name": "filter", "in": "query", - "description": "Comma separated list of user IDs to include in the response. Eg. 1,2,3", + "description": "Filter results by string. Searches Name, Description, and Status. All fields must match exactly.", "schema": { - "type": "string", - "default": "" + "type": "string" } + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "List of users with task counts", + "description": "list of scripts categories", "content": { "application/json": { "schema": { @@ -6428,11 +6736,11 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/users" + "$ref": "#/components/schemas/ScriptCategory" } }, "meta": { - "$ref": "#/components/schemas/metadata" + "type": "object" } }, "type": "object" @@ -6441,58 +6749,85 @@ } } } + }, + "post": { + "tags": [ + "Script Categories" + ], + "summary": "Save a new Script Category", + "description": "Store a newly created Script Category in storage", + "operationId": "createScriptCategory", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScriptCategoryEditable" + } + } + } + }, + "responses": { + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScriptCategory" + } + } + } + } + } } }, - "/users/{user_id}": { + "/script_categories/{script_category_id}": { "get": { "tags": [ - "Users" + "Script Categories" ], - "summary": "Get single user by ID", - "description": "Display the specified resource.", - "operationId": "getUserById", + "summary": "Get single script category by ID", + "description": "Display the specified script category.", + "operationId": "getScriptCategoryById", "parameters": [ { - "name": "user_id", + "name": "script_category_id", "in": "path", - "description": "ID of user to return", + "description": "ID of script category to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { "200": { - "description": "Successfully found the process", + "description": "Successfully found the script", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/users" + "$ref": "#/components/schemas/ScriptCategory" } } } - }, - "404": { - "$ref": "#/components/responses/404" } } }, "put": { "tags": [ - "Users" + "Script Categories" ], - "summary": "Update a user", - "description": "Update a user", - "operationId": "updateUser", + "summary": "Update a script Category", + "description": "Updates the current element", + "operationId": "updateScriptCategory", "parameters": [ { - "name": "user_id", + "name": "script_category_id", "in": "path", - "description": "ID of user to return", + "description": "ID of script category to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], @@ -6501,142 +6836,141 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/usersEditable" + "$ref": "#/components/schemas/ScriptCategoryEditable" } } } }, "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "422": { - "$ref": "#/components/responses/422" + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScriptCategory" + } + } + } } } }, "delete": { "tags": [ - "Users" + "Script Categories" ], - "summary": "Delete a user", - "description": "Delete a user", - "operationId": "deleteUser", + "summary": "Delete a script category", + "description": "Remove the specified resource from storage.", + "operationId": "deleteScriptCategory", "parameters": [ { - "name": "user_id", + "name": "script_category_id", "in": "path", - "description": "ID of user to delete", + "description": "ID of script category to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { "204": { "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" } } } }, - "/users/{user_id}/get_pinned_controls": { + "/scripts": { "get": { "tags": [ - "Users" + "Scripts" ], - "summary": "Get the pinned BPMN elements of a specific user", - "description": "Return the user's pinned nodes.", - "operationId": "getPinnnedControls", + "summary": "Returns all scripts that the user has access to", + "description": "Get a list of scripts in a process.", + "operationId": "getScripts", "parameters": [ { - "name": "user_id", - "in": "path", - "description": "ID of user to return the pinned nodes of", - "required": true, - "schema": { - "type": "integer" - } + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "Pinned nodes returned succesfully", + "description": "list of scripts", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/users" - } - } - } - }, - "404": { - "$ref": "#/components/responses/404" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/scripts" + } + }, + "meta": { + "type": "object" + } + }, + "type": "object" + } + } + } } } - } - }, - "/users/{user_id}/update_pinned_controls": { - "put": { + }, + "post": { "tags": [ - "Users" - ], - "summary": "Update a user's pinned BPMN elements on Modeler", - "description": "Update a user's pinned BPMN elements on Modeler", - "operationId": "updatePinnedControls", - "parameters": [ - { - "name": "user_id", - "in": "path", - "description": "ID of user to return", - "required": true, - "schema": { - "type": "integer" - } - } + "Scripts" ], + "summary": "Save a new script", + "description": "Create a new script in a process.", + "operationId": "createScript", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/usersEditable" + "$ref": "#/components/schemas/scriptsEditable" } } } }, "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "422": { - "$ref": "#/components/responses/422" + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/scripts" + } + } + } } } } }, - "/users/{user_id}/groups": { - "put": { + "/scripts/{script_id}/preview": { + "post": { "tags": [ - "Users" + "Scripts" ], - "summary": "Set the groups a users belongs to", - "description": "Update a user's groups", - "operationId": "updateUserGroups", + "summary": "Test script code without saving it", + "description": "Previews executing a script, with sample data/config data", + "operationId": "previewScript", "parameters": [ { - "name": "user_id", + "name": "script_id", "in": "path", - "description": "ID of user", "required": true, "schema": { "type": "integer" @@ -6644,93 +6978,98 @@ } ], "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/updateUserGroups" - } - } - } - }, - "responses": { - "204": { - "description": "success" - } - } - } - }, - "/users/restore": { - "put": { - "tags": [ - "Users" - ], - "summary": "Restore a soft deleted user", - "description": "Reverses the soft delete of a user", - "operationId": "restoreUser", - "requestBody": { - "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/restoreUser" + "properties": { + "data": { + "type": "object" + }, + "config": { + "type": "object" + }, + "code": { + "type": "string" + }, + "nonce": { + "type": "string" + } + }, + "type": "object" } } } }, "responses": { "200": { - "description": "success" + "description": "success if the script was queued" } } } }, - "/users/get_filter_configuration/{name}": { - "get": { + "/scripts/execute/{script_id}": { + "post": { "tags": [ - "Users" + "Scripts" ], - "summary": "Get filter configuration by name", - "description": "Get filter configuration.", - "operationId": "getFilterConfiguration", + "summary": "Execute script", + "description": "Executes a script, with sample data/config data", + "operationId": "executeScript", "parameters": [ { - "name": "name", + "name": "script_id", "in": "path", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "object" + }, + "config": { + "type": "object" + }, + "sync": { + "type": "boolean" + } + }, + "type": "object" + } + } + } + }, "responses": { "200": { - "description": "Success", + "description": "success if the script was queued", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/users" + "$ref": "#/components/schemas/scriptsPreview" } } } - }, - "404": { - "$ref": "#/components/responses/404" } } } }, - "/users/store_filter_configuration/{name}": { + "/scripts/execution/{key}": { "get": { "tags": [ - "Users" + "Scripts" ], - "summary": "Store filter configuration by name", - "description": "Store filter configuration.", - "operationId": "storeFilterConfiguration", + "summary": "Get the response of a script execution by execution key", + "description": "Get the response of a script execution", + "operationId": "getScriptExecutionResponse", "parameters": [ { - "name": "name", + "name": "key", "in": "path", "required": true, "schema": { @@ -6740,82 +7079,63 @@ ], "responses": { "200": { - "description": "Success", + "description": "response of a script execution", "content": { "application/json": { - "schema": { - "$ref": "#/components/schemas/users" - } + "schema": {} } } - }, - "404": { - "$ref": "#/components/responses/404" } } } }, - "/users/{user_id}/tokens": { + "/scripts/{script_id}": { "get": { "tags": [ - "Personal Tokens" + "Scripts" ], - "summary": "Display listing of access tokens for the specified user.", - "description": "Display listing of access tokens for the specified user.", - "operationId": "getTokens", + "summary": "Get single script by ID", + "description": "Get a single script in a process.", + "operationId": "getScriptsById", "parameters": [ { - "name": "user_id", + "name": "script_id", "in": "path", - "description": "User id", + "description": "ID of script to return", "required": true, "schema": { - "type": "integer" + "type": "string" } - }, - { - "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "List of tokens.", + "description": "Successfully found the script", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/UserToken" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" + "$ref": "#/components/schemas/scripts" } } } } } }, - "post": { + "put": { "tags": [ - "Personal Tokens" + "Scripts" ], - "summary": "Create new token for a specific user", - "description": "Create a new personal access token for the user.", - "operationId": "createTokens", + "summary": "Update a script", + "description": "Update a script in a process.", + "operationId": "updateScript", "parameters": [ { - "name": "user_id", + "name": "script_id", "in": "path", - "description": "User id", + "description": "ID of script to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], @@ -6824,92 +7144,265 @@ "content": { "application/json": { "schema": { - "properties": { - "name": { - "type": "string" - } - }, - "type": "object" + "$ref": "#/components/schemas/scriptsEditable" } } } }, "responses": { - "201": { - "description": "New token instance", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserToken" - } - } - } + "204": { + "description": "success" } } - } - }, - "/users/{user_id}/tokens/{token_id}": { - "get": { + }, + "delete": { "tags": [ - "Personal Tokens" + "Scripts" ], - "summary": "Get single token by ID", - "description": "Show a personal access token for the user", - "operationId": "getTokenById", + "summary": "Delete a script", + "description": "Delete a script in a process.", + "operationId": "deleteScript", "parameters": [ { - "name": "user_id", + "name": "script_id", "in": "path", - "description": "ID of user", + "description": "ID of script to return", "required": true, "schema": { - "type": "integer" + "type": "string" } - }, + } + ], + "responses": { + "204": { + "description": "success" + } + } + } + }, + "/scripts/{script_id}/draft": { + "put": { + "tags": [ + "Scripts" + ], + "summary": "Update a draft script", + "description": "Update a draft script.", + "operationId": "updateDraftScript", + "parameters": [ { - "name": "token_id", + "name": "script_id", "in": "path", - "description": "ID of token to return", + "description": "ID of script to return", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/scriptsEditable" + } + } + } + }, + "responses": { + "204": { + "description": "success" + } + } + } + }, + "/scripts/{scripts_id}/duplicate": { + "put": { + "tags": [ + "Scripts" + ], + "summary": "duplicate a script", + "description": "Duplicate a Script.", + "operationId": "duplicateScript", + "parameters": [ + { + "name": "scripts_id", + "in": "path", + "description": "ID of script to return", "required": true, "schema": { "type": "string" } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/scriptsEditable" + } + } + } + }, + "responses": { + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/scripts" + } + } + } + } + } + } + }, + "/script-executors": { + "get": { + "tags": [ + "Rebuild Script Executors" + ], + "summary": "Returns all script executors that the user has access to", + "description": "Get a list of script executors.", + "operationId": "getScriptExecutors", + "parameters": [ + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + } + ], "responses": { "200": { - "description": "Successfully found the token", + "description": "list of script executors", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/UserToken" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/scriptExecutors" + } + }, + "meta": { + "type": "object" + } + }, + "type": "object" } } } } } }, - "delete": { + "post": { "tags": [ - "Personal Tokens" + "Rebuild Script Executors" ], - "summary": "Delete a token", - "description": "Delete the given token for a user", - "operationId": "deleteToken", + "summary": "Create a script executor", + "description": "Create a script executor", + "operationId": "createScriptExecutor", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/scriptExecutorsEditable" + } + } + } + }, + "responses": { + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "properties": { + "status": { + "type": "string" + }, + "id": { + "type": "string" + } + }, + "type": "object" + } + } + } + } + } + } + }, + "/script-executors/{script_executor}": { + "put": { + "tags": [ + "Rebuild Script Executors" + ], + "summary": "Update script executor", + "description": "Update and rebuild the script executor", + "operationId": "updateScriptExecutor", "parameters": [ { - "name": "user_id", + "name": "script_executor", "in": "path", - "description": "User ID", + "description": "ID of script executor to return", "required": true, "schema": { - "type": "integer" + "type": "string" } - }, + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/scriptExecutorsEditable" + } + } + } + }, + "responses": { + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "properties": { + "status": { + "type": "string" + } + }, + "type": "object" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Rebuild Script Executors" + ], + "summary": "Delete a script executor", + "description": "Delete a script executor", + "operationId": "deleteScriptExecutor", + "parameters": [ { - "name": "token_id", + "name": "script_executor", "in": "path", - "description": "Token ID", + "description": "ID of script executor to return", "required": true, "schema": { "type": "string" @@ -6917,68 +7410,1884 @@ } ], "responses": { - "204": { - "description": "success" + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "properties": { + "status": { + "type": "string" + } + }, + "type": "object" + } + } + } } } } - } - }, - "components": { - "schemas": { - "DateTime": { - "properties": { - "date": { - "type": "string" + }, + "/script-executors/cancel": { + "post": { + "tags": [ + "Rebuild Script Executors" + ], + "summary": "Cancel a script executor", + "description": "Cancel a script executor", + "operationId": "cancelScriptExecutor", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "pidFile": { + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "properties": { + "status": { + "type": "string" + }, + "id": { + "type": "string" + } + }, + "type": "object" + } + } + } + } + } + } + }, + "/script-executors/available-languages": { + "get": { + "tags": [ + "Rebuild Script Executors" + ], + "summary": "Returns all available languages", + "description": "Get a list of available languages.", + "operationId": "getAvailableLanguages", + "parameters": [ + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + } + ], + "responses": { + "200": { + "description": "list of available languages", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/availableLanguages" + } + }, + "meta": { + "type": "object" + } + }, + "type": "object" + } + } + } + } + } + } + }, + "/security-logs": { + "get": { + "tags": [ + "Security Logs" + ], + "summary": "Returns all security logs", + "description": "Get a list of Security Logs.", + "operationId": "getSecurityLogs", + "parameters": [ + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + } + ], + "responses": { + "200": { + "description": "list of security logs", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/securityLog" + } + }, + "meta": { + "type": "object" + } + }, + "type": "object" + } + } + } + } + } + } + }, + "/security-logs/{securityLog}": { + "get": { + "tags": [ + "Security Logs" + ], + "summary": "Get single security log by ID", + "description": "Display the specified resource.", + "operationId": "getSecurityLog", + "parameters": [ + { + "name": "securityLog", + "in": "path", + "description": "ID of security log to return", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Successfully found the security log", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/securityLog" + } + } + }, + "type": "object" + } + } + } + } + } + } + }, + "/settings": { + "get": { + "tags": [ + "Settings" + ], + "summary": "Returns all settings", + "description": "Display a listing of the resource.", + "operationId": "getSettings", + "parameters": [ + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" + } + ], + "responses": { + "200": { + "description": "list of settings", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/settings" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" + } + } + } + } + } + } + }, + "/settings/{setting_id}": { + "put": { + "tags": [ + "Settings" + ], + "summary": "Update a setting", + "description": "Update a setting", + "operationId": "updateSetting", + "parameters": [ + { + "name": "setting_id", + "in": "path", + "description": "ID of setting to return", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/settingsEditable" + } + } + } + }, + "responses": { + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "422": { + "$ref": "#/components/responses/422" + } + } + } + }, + "/signals": { + "get": { + "tags": [ + "Signals" + ], + "summary": "Returns all signals", + "description": "Display a listing of the resource.", + "operationId": "getSignals", + "parameters": [ + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + } + ], + "responses": { + "200": { + "description": "list of signals", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/signals" + } + }, + "meta": { + "type": "object" + } + }, + "type": "object" + } + } + } + } + } + }, + "post": { + "tags": [ + "Signals" + ], + "summary": "Creates a new Global Signal", + "description": "Creates a new global signal", + "operationId": "createSignal", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/signalsEditable" + } + } + } + }, + "responses": { + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/signals" + } + } + } + } + } + } + }, + "/signals/{signal_id}": { + "get": { + "tags": [ + "Signals" + ], + "summary": "Get a single signal by ID", + "description": "Display the specified resource.", + "operationId": "getSignalsById", + "parameters": [ + { + "name": "signal_id", + "in": "path", + "description": "signal id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/signals" + } + } + } + } + } + }, + "put": { + "tags": [ + "Signals" + ], + "summary": "Update a signal", + "operationId": "updateSignal", + "parameters": [ + { + "name": "signal_id", + "in": "path", + "description": "ID of signal to update", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/signalsEditable" + } + } + } + }, + "responses": { + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/signals" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Signals" + ], + "summary": "Delete a signal", + "operationId": "deleteSignal", + "parameters": [ + { + "name": "signal_id", + "in": "path", + "description": "ID of signal to delete", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "success" + } + } + } + }, + "/task_assignments": { + "get": { + "tags": [ + "Task Assignments" + ], + "summary": "Returns all task assignments", + "description": "Display a listing of the resource.", + "operationId": "getTaskAssignments", + "parameters": [ + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + } + ], + "responses": { + "200": { + "description": "list of task assignments", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/taskAssignments" + } + }, + "meta": { + "type": "object" + } + }, + "type": "object" + } + } + } + } + } + }, + "post": { + "tags": [ + "Task Assignments" + ], + "summary": "Save a new Task Assignment", + "description": "Store a newly created task assignment in storage.", + "operationId": "createTaskAssignments", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/taskAssignmentsEditable" + } + } + } + }, + "responses": { + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/taskAssignments" + } + } + } + }, + "422": { + "$ref": "#/components/responses/422" + } + } + } + }, + "/task_assignments/{task_assignment}": { + "put": { + "tags": [ + "Task Assignments" + ], + "summary": "Update a Task Assignment", + "description": "Update a task assignment", + "operationId": "updateTaskAssignments", + "parameters": [ + { + "name": "task_assignment", + "in": "path", + "description": "ID of task assignment to update", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/taskAssignmentsEditable" + } + } + } + }, + "responses": { + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "422": { + "$ref": "#/components/responses/422" + } + } + }, + "delete": { + "tags": [ + "Task Assignments" + ], + "summary": "Delete a Task Assignment", + "description": "Remove an assignment", + "operationId": "deleteTaskAssignments", + "parameters": [ + { + "name": "task_assignment", + "in": "path", + "description": "ID of task assignment to delete", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/taskAssignmentsEditable" + } + } + } + }, + "responses": { + "200": { + "description": "success" + } + } + } + }, + "/tasks": { + "get": { + "tags": [ + "Tasks" + ], + "summary": "Returns all tasks that the user has access to", + "description": "Display a listing of the resource.", + "operationId": "getTasks", + "parameters": [ + { + "name": "process_request_id", + "in": "query", + "description": "Process request id", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "all_tasks", + "in": "query", + "description": "Return all task types. Not just user tasks.", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/include" + } + ], + "responses": { + "200": { + "description": "list of tasks", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/processRequestToken" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" + } + } + } + } + } + } + }, + "/tasks/{task_id}": { + "get": { + "tags": [ + "Tasks" + ], + "summary": "Get a single task by ID", + "description": "Display the specified resource.", + "operationId": "getTasksById", + "parameters": [ + { + "name": "task_id", + "in": "path", + "description": "task id", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "include", + "in": "query", + "description": "include", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/processRequestToken" + } + } + } + }, + "404": { + "$ref": "#/components/responses/404" + } + } + }, + "put": { + "tags": [ + "Tasks" + ], + "summary": "Update a task", + "description": "Updates the current element", + "operationId": "updateTask", + "parameters": [ + { + "name": "task_id", + "in": "path", + "description": "ID of task to update", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "required": [ + "status", + "data" + ], + "properties": { + "status": { + "type": "string", + "example": "COMPLETED" + }, + "data": { + "type": "object" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/processRequestToken" + } + } + } + }, + "404": { + "$ref": "#/components/responses/404" + }, + "422": { + "$ref": "#/components/responses/422" + } + } + } + }, + "/users": { + "get": { + "tags": [ + "Users" + ], + "summary": "Returns all users", + "description": "Display a listing of the resource.", + "operationId": "getUsers", + "parameters": [ + { + "$ref": "#/components/parameters/status" + }, + { + "name": "filter", + "in": "query", + "description": "Filter results by string. Searches First Name, Last Name, Email and Username.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" + }, + { + "name": "exclude_ids", + "in": "query", + "description": "Comma separated list of IDs to exclude from the response", + "schema": { + "type": "string", + "default": "" + } + } + ], + "responses": { + "200": { + "description": "list of users", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/users" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" + } + } + } + } + } + }, + "post": { + "tags": [ + "Users" + ], + "summary": "Save a new users", + "description": "Store a newly created resource in storage.", + "operationId": "createUser", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/usersEditable" + } + } + } + }, + "responses": { + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/users" + } + } + } + }, + "422": { + "$ref": "#/components/responses/422" + } + } + } + }, + "/users_task_count": { + "get": { + "tags": [ + "Users" + ], + "summary": "Returns all users and their total tasks", + "description": "Display a listing of users and their task counts.", + "operationId": "getUsersTaskCount", + "parameters": [ + { + "name": "filter", + "in": "query", + "description": "Filter results by string. Searches First Name, Last Name, Email, or Username.", + "schema": { + "type": "string" + } + }, + { + "name": "include_ids", + "in": "query", + "description": "Comma separated list of user IDs to include in the response. Eg. 1,2,3", + "schema": { + "type": "string", + "default": "" + } + } + ], + "responses": { + "200": { + "description": "List of users with task counts", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/users" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" + } + } + } + } + } + }, + "post": { + "tags": [ + "Users" + ], + "summary": "Returns all users and their total tasks (POST version for large form_data)", + "operationId": "postUsersTaskCount", + "requestBody": { + "description": "Request body for filtering users", + "content": { + "application/json": { + "schema": { + "properties": { + "filter": { + "description": "Filter results by string. Searches First Name, Last Name, Email, or Username.", + "type": "string" + }, + "include_ids": { + "description": "Comma separated list of user IDs to include in the response. Eg. 1,2,3", + "type": "string" + }, + "assignable_for_task_id": { + "description": "Task ID to get assignable users for", + "type": "integer" + }, + "form_data": { + "description": "Form data used to evaluate rule expressions for task assignment", + "type": "object" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "description": "List of users with task counts", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/users" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" + } + } + } + } + } + } + }, + "/users/{user_id}": { + "get": { + "tags": [ + "Users" + ], + "summary": "Get single user by ID", + "description": "Display the specified resource.", + "operationId": "getUserById", + "parameters": [ + { + "name": "user_id", + "in": "path", + "description": "ID of user to return", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Successfully found the process", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/users" + } + } + } + }, + "404": { + "$ref": "#/components/responses/404" + } + } + }, + "put": { + "tags": [ + "Users" + ], + "summary": "Update a user", + "description": "Update a user", + "operationId": "updateUser", + "parameters": [ + { + "name": "user_id", + "in": "path", + "description": "ID of user to return", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/usersEditable" + } + } + } + }, + "responses": { + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "422": { + "$ref": "#/components/responses/422" + } + } + }, + "delete": { + "tags": [ + "Users" + ], + "summary": "Delete a user", + "description": "Delete a user", + "operationId": "deleteUser", + "parameters": [ + { + "name": "user_id", + "in": "path", + "description": "ID of user to delete", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" + } + } + } + }, + "/users/{user_id}/get_pinned_controls": { + "get": { + "tags": [ + "Users" + ], + "summary": "Get the pinned BPMN elements of a specific user", + "description": "Return the user's pinned nodes.", + "operationId": "getPinnnedControls", + "parameters": [ + { + "name": "user_id", + "in": "path", + "description": "ID of user to return the pinned nodes of", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Pinned nodes returned succesfully", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/users" + } + } + } + }, + "404": { + "$ref": "#/components/responses/404" + } + } + } + }, + "/users/{user_id}/update_pinned_controls": { + "put": { + "tags": [ + "Users" + ], + "summary": "Update a user's pinned BPMN elements on Modeler", + "description": "Update a user's pinned BPMN elements on Modeler", + "operationId": "updatePinnedControls", + "parameters": [ + { + "name": "user_id", + "in": "path", + "description": "ID of user to return", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/usersEditable" + } + } + } + }, + "responses": { + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "422": { + "$ref": "#/components/responses/422" + } + } + } + }, + "/users/{user_id}/groups": { + "put": { + "tags": [ + "Users" + ], + "summary": "Set the groups a users belongs to", + "description": "Update a user's groups", + "operationId": "updateUserGroups", + "parameters": [ + { + "name": "user_id", + "in": "path", + "description": "ID of user", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/updateUserGroups" + } + } + } + }, + "responses": { + "204": { + "description": "success" + } + } + } + }, + "/users/restore": { + "put": { + "tags": [ + "Users" + ], + "summary": "Restore a soft deleted user", + "description": "Reverses the soft delete of a user", + "operationId": "restoreUser", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/restoreUser" + } + } + } + }, + "responses": { + "200": { + "description": "success" + } + } + } + }, + "/users/get_filter_configuration/{name}": { + "get": { + "tags": [ + "Users" + ], + "summary": "Get filter configuration by name", + "description": "Get filter configuration.", + "operationId": "getFilterConfiguration", + "parameters": [ + { + "name": "name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/users" + } + } + } + }, + "404": { + "$ref": "#/components/responses/404" + } + } + } + }, + "/users/store_filter_configuration/{name}": { + "get": { + "tags": [ + "Users" + ], + "summary": "Store filter configuration by name", + "description": "Store filter configuration.", + "operationId": "storeFilterConfiguration", + "parameters": [ + { + "name": "name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/users" + } + } + } + }, + "404": { + "$ref": "#/components/responses/404" + } + } + } + }, + "/users/{user_id}/tokens": { + "get": { + "tags": [ + "Personal Tokens" + ], + "summary": "Display listing of access tokens for the specified user.", + "description": "Display listing of access tokens for the specified user.", + "operationId": "getTokens", + "parameters": [ + { + "name": "user_id", + "in": "path", + "description": "User id", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "$ref": "#/components/parameters/per_page" + } + ], + "responses": { + "200": { + "description": "List of tokens.", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UserToken" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" + } + } + } + } + } + }, + "post": { + "tags": [ + "Personal Tokens" + ], + "summary": "Create new token for a specific user", + "description": "Create a new personal access token for the user.", + "operationId": "createTokens", + "parameters": [ + { + "name": "user_id", + "in": "path", + "description": "User id", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "name": { + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "201": { + "description": "New token instance", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserToken" + } + } + } + } + } + } + }, + "/users/{user_id}/tokens/{token_id}": { + "get": { + "tags": [ + "Personal Tokens" + ], + "summary": "Get single token by ID", + "description": "Show a personal access token for the user", + "operationId": "getTokenById", + "parameters": [ + { + "name": "user_id", + "in": "path", + "description": "ID of user", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "token_id", + "in": "path", + "description": "ID of token to return", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Successfully found the token", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserToken" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Personal Tokens" + ], + "summary": "Delete a token", + "description": "Delete the given token for a user", + "operationId": "deleteToken", + "parameters": [ + { + "name": "user_id", + "in": "path", + "description": "User ID", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "token_id", + "in": "path", + "description": "Token ID", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "success" + } + } + } + }, + "/processes/variables": { + "get": { + "tags": [ + "Processes Variables" + ], + "summary": "Get variables for multiple processes with pagination", + "operationId": "660c9459febd17c58400be4b4d49a152", + "parameters": [ + { + "name": "processIds", + "in": "query", + "description": "Comma-separated list of process IDs", + "required": false, + "schema": { + "type": "string", + "example": "1,2,3", + "nullable": true + } + }, + { + "name": "page", + "in": "query", + "description": "Page number", + "required": false, + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "per_page", + "in": "query", + "description": "Items per page", + "required": false, + "schema": { + "type": "integer", + "default": 20 + } + } + ], + "responses": { + "200": { + "description": "Successful response", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Variable" + } + }, + "meta": { + "$ref": "#/components/schemas/PaginationMeta" + } + }, + "type": "object" + } + } + } + } + }, + "servers": [ + { + "url": "https://fvborzj2wz.sharedwithexpose.com/api/1.1", + "description": "API v1.1 Server" + } + ] + } + } + }, + "components": { + "schemas": { + "DateTime": { + "properties": { + "date": { + "type": "string" + } + }, + "type": "object" + }, + "analyticsReportingEditable": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "link": { + "type": "string" + } + }, + "type": "object" + }, + "analyticsReporting": { + "allOf": [ + { + "$ref": "#/components/schemas/analyticsReportingEditable" + }, + { + "properties": { + "id": { + "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "created_by_id": { + "type": "string", + "format": "id" + }, + "updated_by_id": { + "type": "string", + "format": "id" + } + }, + "type": "object" + } + ] + }, + "collectionsEditable": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "custom_title": { + "type": "string" + }, + "create_screen_id": { + "type": "string", + "format": "id" + }, + "read_screen_id": { + "type": "string", + "format": "id" + }, + "update_screen_id": { + "type": "string", + "format": "id" + }, + "signal_create": { + "type": "boolean" + }, + "signal_update": { + "type": "boolean" + }, + "signal_delete": { + "type": "boolean" + } + }, + "type": "object" + }, + "collections": { + "allOf": [ + { + "$ref": "#/components/schemas/collectionsEditable" + }, + { + "properties": { + "id": { + "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "created_by_id": { + "type": "string", + "format": "id" + }, + "updated_by_id": { + "type": "string", + "format": "id" + }, + "columns": { + "type": "array", + "items": { + "type": "object" + } + } + }, + "type": "object" + } + ] + }, + "recordsEditable": { + "properties": { + "data": { + "type": "object" + } + }, + "type": "object" + }, + "records": { + "allOf": [ + { + "$ref": "#/components/schemas/recordsEditable" + }, + { + "properties": { + "id": { + "type": "integer" + }, + "collection_id": { + "type": "string", + "format": "id" + } + }, + "type": "object" + } + ] + }, + "DataSourceCallParameters": { + "properties": { + "endpoint": { + "type": "string" + }, + "dataMapping": { + "type": "array", + "items": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + } + }, + "outboundConfig": { + "type": "array", + "items": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + } + } + }, + "type": "object" + }, + "DataSourceResponse": { + "properties": { + "status": { + "type": "integer" + }, + "response": { + "type": "object" + } + }, + "type": "object" + }, + "dataSourceEditable": { + "properties": { + "id": { + "description": "Class DataSource", + "type": "string", + "format": "id" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "endpoints": { + "type": "string" + }, + "mappings": { + "type": "string" + }, + "authtype": { + "type": "string" + }, + "credentials": { + "type": "string" + }, + "status": { + "type": "string" + }, + "data_source_category_id": { + "type": "string" + } + }, + "type": "object" + }, + "dataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/dataSourceEditable" + }, + { + "properties": { + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "type": "object" + } + ] + }, + "dataSourceCategoryEditable": { + "properties": { + "name": { + "description": "Represents a business data Source category definition.", + "type": "string" + }, + "status": { + "type": "string", + "enum": [ + "ACTIVE", + "INACTIVE" + ] + } + }, + "type": "object" + }, + "DataSourceCategory": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/dataSourceCategoryEditable" + }, + { + "properties": { + "id": { + "type": "string", + "format": "id" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "type": "object" } - }, - "type": "object" + ] }, - "collectionsEditable": { + "decisionTableEditable": { "properties": { + "id": { + "description": "Class Screen", + "type": "string", + "format": "id" + }, "name": { "type": "string" }, "description": { "type": "string" }, - "custom_title": { + "definition": { "type": "string" }, - "create_screen_id": { - "type": "string", - "format": "id" - }, - "read_screen_id": { - "type": "string", - "format": "id" - }, - "update_screen_id": { - "type": "string", - "format": "id" - }, - "signal_create": { - "type": "boolean" - }, - "signal_update": { - "type": "boolean" - }, - "signal_delete": { - "type": "boolean" + "decision_table_categories_id": { + "type": "string" } }, "type": "object" }, - "collections": { + "decisionTable": { + "type": "object", "allOf": [ { - "$ref": "#/components/schemas/collectionsEditable" + "$ref": "#/components/schemas/decisionTableEditable" }, { "properties": { - "id": { - "type": "integer" - }, "created_at": { "type": "string", "format": "date-time" @@ -6986,47 +9295,55 @@ "updated_at": { "type": "string", "format": "date-time" - }, - "created_by_id": { - "type": "string", - "format": "id" - }, - "updated_by_id": { - "type": "string", - "format": "id" - }, - "columns": { - "type": "array", - "items": { - "type": "object" - } } }, "type": "object" } ] }, - "recordsEditable": { + "DecisionTableExported": { "properties": { - "data": { - "type": "object" + "url": { + "type": "string" } }, "type": "object" }, - "records": { + "decisionTableCategoryEditable": { + "properties": { + "name": { + "description": "Represents a business decision Table category definition.", + "type": "string" + }, + "status": { + "type": "string", + "enum": [ + "ACTIVE", + "INACTIVE" + ] + } + }, + "type": "object" + }, + "DecisionTableCategory": { + "type": "object", "allOf": [ { - "$ref": "#/components/schemas/recordsEditable" + "$ref": "#/components/schemas/decisionTableCategoryEditable" }, { "properties": { "id": { - "type": "integer" - }, - "collection_id": { "type": "string", "format": "id" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" } }, "type": "object" @@ -7297,6 +9614,132 @@ }, "type": "object" }, + "Variable": { + "properties": { + "id": { + "type": "integer", + "example": 1 + }, + "process_id": { + "type": "integer", + "example": 1 + }, + "uuid": { + "type": "string", + "format": "uuid", + "example": "550e8400-e29b-41d4-a716-446655440000" + }, + "field": { + "type": "string", + "example": "string", + "enum": [ + "string", + "number", + "boolean", + "array" + ] + }, + "label": { + "type": "string", + "example": "Variable 1 for Process 1" + }, + "name": { + "type": "string", + "example": "var_1_1" + }, + "asset": { + "properties": { + "id": { + "type": "string", + "example": "asset_1_1" + }, + "type": { + "type": "string", + "example": "sensor", + "enum": [ + "sensor", + "actuator", + "controller", + "device" + ] + }, + "name": { + "type": "string", + "example": "Asset 1 for Process 1" + }, + "uuid": { + "type": "string", + "format": "uuid", + "example": "550e8400-e29b-41d4-a716-446655440000" + } + }, + "type": "object" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "type": "object" + }, + "PaginationMeta": { + "properties": { + "current_page": { + "type": "integer", + "example": 1 + }, + "from": { + "type": "integer", + "example": 1 + }, + "last_page": { + "type": "integer", + "example": 5 + }, + "path": { + "type": "string", + "example": "http://processmaker.com/processes/variables" + }, + "per_page": { + "type": "integer", + "example": 20 + }, + "to": { + "type": "integer", + "example": 20 + }, + "total": { + "type": "integer", + "example": 100 + }, + "links": { + "properties": { + "first": { + "type": "string", + "example": "http://processmaker.com/processes/variables?page=1" + }, + "last": { + "type": "string", + "example": "http://processmaker.com/processes/variables?page=5" + }, + "prev": { + "type": "string", + "nullable": true + }, + "next": { + "type": "string", + "example": "http://processmaker.com/processes/variables?page=2" + } + }, + "type": "object" + } + }, + "type": "object" + }, "metadata": { "properties": { "filter": { @@ -7982,8 +10425,11 @@ "type": "object" }, "manager_id": { - "type": "integer", - "format": "id" + "type": "array", + "items": { + "type": "integer", + "format": "id" + } } }, "type": "object" @@ -8632,6 +11078,9 @@ }, "key": { "type": "string" + }, + "output": { + "type": "object" } }, "type": "object" @@ -9002,6 +11451,9 @@ }, "force_change_password": { "type": "boolean" + }, + "email_task_notification": { + "type": "boolean" } }, "type": "object" @@ -9194,9 +11646,9 @@ "description": "Laravel passport oauth2 security.", "flows": { "authorizationCode": { - "authorizationUrl": "http://processmaker.test/oauth/authorize", - "tokenUrl": "http://processmaker.test/oauth/token", - "refreshUrl": "http://processmaker.test/token/refresh", + "authorizationUrl": "https://fvborzj2wz.sharedwithexpose.com/oauth/authorize", + "tokenUrl": "https://fvborzj2wz.sharedwithexpose.com/oauth/token", + "refreshUrl": "https://fvborzj2wz.sharedwithexpose.com/token/refresh", "scopes": {} } } @@ -9208,6 +11660,152 @@ } } }, + "tags": [ + { + "name": "AnalyticsReporting", + "description": "AnalyticsReporting" + }, + { + "name": "Collections", + "description": "Collections" + }, + { + "name": "Screens", + "description": "Screens" + }, + { + "name": "Comments", + "description": "Comments" + }, + { + "name": "DataSourcesCategories", + "description": "DataSourcesCategories" + }, + { + "name": "DataSources", + "description": "DataSources" + }, + { + "name": "DecisionTableCategories", + "description": "DecisionTableCategories" + }, + { + "name": "DecisionTables", + "description": "DecisionTables" + }, + { + "name": "SavedSearchCharts", + "description": "SavedSearchCharts" + }, + { + "name": "Reports", + "description": "Reports" + }, + { + "name": "SavedSearches", + "description": "SavedSearches" + }, + { + "name": "Users", + "description": "Users" + }, + { + "name": "Groups", + "description": "Groups" + }, + { + "name": "Version History", + "description": "Version History" + }, + { + "name": "Cases", + "description": "Cases" + }, + { + "name": "CssSettings", + "description": "CssSettings" + }, + { + "name": "Environment Variables", + "description": "Environment Variables" + }, + { + "name": "Files", + "description": "Files" + }, + { + "name": "Group Members", + "description": "Group Members" + }, + { + "name": "Notifications", + "description": "Notifications" + }, + { + "name": "Permissions", + "description": "Permissions" + }, + { + "name": "Process Categories", + "description": "Process Categories" + }, + { + "name": "Processes", + "description": "Processes" + }, + { + "name": "Process Requests", + "description": "Process Requests" + }, + { + "name": "Request Files", + "description": "Request Files" + }, + { + "name": "Screen Categories", + "description": "Screen Categories" + }, + { + "name": "Script Categories", + "description": "Script Categories" + }, + { + "name": "Scripts", + "description": "Scripts" + }, + { + "name": "Rebuild Script Executors", + "description": "Rebuild Script Executors" + }, + { + "name": "Security Logs", + "description": "Security Logs" + }, + { + "name": "Settings", + "description": "Settings" + }, + { + "name": "Signals", + "description": "Signals" + }, + { + "name": "Task Assignments", + "description": "Task Assignments" + }, + { + "name": "Tasks", + "description": "Tasks" + }, + { + "name": "Personal Tokens", + "description": "Personal Tokens" + }, + { + "name": "Processes Variables", + "description": "Processes Variables" + } + ], "security": [ { "passport": [], From 8e3bad81b46926bc787d65e9f45f2dc86cb1bbf7 Mon Sep 17 00:00:00 2001 From: sanja <52755494+sanjacornelius@users.noreply.github.com> Date: Thu, 4 Jun 2026 10:44:36 -0700 Subject: [PATCH 4/4] Revert "Update API docs" This reverts commit 85da8421a9fa20cb30caff6204d5ed577acfd330. --- storage/api-docs/api-docs.json | 8546 +++++++++++--------------------- 1 file changed, 2974 insertions(+), 5572 deletions(-) diff --git a/storage/api-docs/api-docs.json b/storage/api-docs/api-docs.json index 47f822767e..3755004f8f 100644 --- a/storage/api-docs/api-docs.json +++ b/storage/api-docs/api-docs.json @@ -18,177 +18,6 @@ } ], "paths": { - "/analytics-reporting": { - "get": { - "tags": [ - "AnalyticsReporting" - ], - "summary": "Returns all analytics reporting that the user has access to", - "description": "Get a list of Analytics Reporting.", - "operationId": "getAnalyticsReporting", - "parameters": [ - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" - } - ], - "responses": { - "200": { - "description": "list of analytics reporting", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/analyticsReporting" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" - } - } - } - } - } - }, - "post": { - "tags": [ - "AnalyticsReporting" - ], - "summary": "Save a new Analytics Reporting", - "description": "Create a new Analytics Reporting.", - "operationId": "createAnalyticsReporting", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/analyticsReportingEditable" - } - } - } - }, - "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/analyticsReporting" - } - } - } - } - } - } - }, - "/analytics-reporting/{analytic_reporting_id}": { - "get": { - "tags": [ - "AnalyticsReporting" - ], - "summary": "Get single analytic reporting by ID", - "description": "Get a single Analytic Reporting.", - "operationId": "getAnalyticReportingById", - "parameters": [ - { - "name": "analytic_reporting_id", - "in": "path", - "description": "ID of analytic reporting to return", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Successfully found the analytics reporting", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/analyticsReporting" - } - } - } - } - } - }, - "put": { - "tags": [ - "AnalyticsReporting" - ], - "summary": "Update a analytic reporting", - "description": "Update a Analytics Reporting.", - "operationId": "updateAnalyticReporting", - "parameters": [ - { - "name": "analytic_reporting_id", - "in": "path", - "description": "ID of analytic reporting to update", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/analyticsReportingEditable" - } - } - } - }, - "responses": { - "204": { - "description": "success" - } - } - }, - "delete": { - "tags": [ - "AnalyticsReporting" - ], - "summary": "Delete an analytic reporting", - "description": "Delete a Analytics Reporting.", - "operationId": "deleteAnalyticReporting", - "parameters": [ - { - "name": "analytic_reporting_id", - "in": "path", - "description": "ID of analytic reporting to return", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "success" - } - } - } - }, "/collections": { "get": { "tags": [ @@ -725,84 +554,48 @@ } } }, - "/comments/tasks": { + "/saved-searches/{saved_search_id}/charts": { "get": { "tags": [ - "Comments" + "SavedSearchCharts" ], - "summary": "Returns all the tasks that are active.", - "description": "Display a listing of the resource.", - "operationId": "getCommentTasks", + "summary": "Returns all saved search charts that the user has access to", + "description": "Get a list of SavedSearchCharts.", + "operationId": "getSavedSearchCharts", "parameters": [ { - "name": "process_request_id", + "$ref": "#/components/parameters/filter" + }, + { + "name": "type", "in": "query", - "description": "Process request id", + "description": "Only return saved searches by type", "required": false, "schema": { - "type": "integer" + "type": "string", + "enum": [ + "request", + "task", + "collection" + ] } }, - { - "$ref": "#/components/parameters/filter" - }, { "$ref": "#/components/parameters/order_by" }, { "$ref": "#/components/parameters/order_direction" - } - ], - "responses": { - "200": { - "description": "list all tasks taht are active", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/processRequestToken" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" - } - } - } - } - } - } - }, - "/data_source_categories": { - "get": { - "tags": [ - "DataSourcesCategories" - ], - "summary": "Returns all Data Connectors categories that the user has access to", - "description": "Display a listing of the Data Connector Categories.", - "operationId": "getDataSourceCategories", - "parameters": [ - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" }, { - "$ref": "#/components/parameters/order_direction" + "$ref": "#/components/parameters/per_page" }, { - "$ref": "#/components/parameters/per_page" + "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "list of Data Connectors categories", + "description": "list of saved search charts", "content": { "application/json": { "schema": { @@ -810,7 +603,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/DataSourceCategory" + "$ref": "#/components/schemas/SavedSearchChart" } }, "meta": { @@ -829,63 +622,111 @@ } } }, - "post": { + "put": { "tags": [ - "DataSourcesCategories" + "SavedSearchCharts" + ], + "summary": "Update several saved search charts at once", + "description": "Batch update several SavedSearchCharts.", + "operationId": "batchUpdateSavedSearchCharts", + "parameters": [ + { + "name": "saved_search_id", + "in": "path", + "description": "ID of saved search to which these charts will be saved", + "required": true, + "schema": { + "type": "string" + } + } ], - "summary": "Save a new Data Connector Category", - "description": "Store a newly created Data Connector Category in storage", - "operationId": "createDataSourceCategory", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/dataSourceCategoryEditable" + "type": "array", + "items": { + "$ref": "#/components/schemas/SavedSearchChart" + } } } } }, "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/DataSourceCategory" - } - } - } + "204": { + "description": "success" } } - } - }, - "/data_source_categories/{data_source_category_id}": { - "get": { + }, + "post": { "tags": [ - "DataSourcesCategories" + "SavedSearchCharts" ], - "summary": "Get single Data Connector category by ID", - "description": "Display the specified data Source category.", - "operationId": "getDatasourceCategoryById", + "summary": "Save a new saved search chart", + "description": "Create a new SavedSearchChart.", + "operationId": "createSavedSearchChart", "parameters": [ { - "name": "data_source_category_id", + "name": "saved_search_id", "in": "path", - "description": "ID of Data Connector category to return", + "description": "ID of saved search to which this chart will be saved", "required": true, "schema": { "type": "string" } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SavedSearchChartEditable" + } + } + } + }, "responses": { - "200": { - "description": "Successfully found the Data Connector", + "201": { + "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/DataSourceCategory" + "$ref": "#/components/schemas/SavedSearchChart" + } + } + } + } + } + } + }, + "/saved-searches/charts/{chart_id}": { + "get": { + "tags": [ + "SavedSearchCharts" + ], + "summary": "Get single saved search chart by ID", + "description": "Get a single SavedSearchChart.", + "operationId": "getSavedSearchChartById", + "parameters": [ + { + "name": "chart_id", + "in": "path", + "description": "ID of chart to return", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Successfully found the saved search chart", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SavedSearchChart" } } } @@ -894,16 +735,16 @@ }, "put": { "tags": [ - "DataSourcesCategories" + "SavedSearchCharts" ], - "summary": "Update a Data Connector Category", - "description": "Updates the current element", - "operationId": "updateDatasourceCategory", + "summary": "Update a saved search chart", + "description": "Update a SavedSearchChart.", + "operationId": "updateSavedSearchChart", "parameters": [ { - "name": "data_source_category_id", + "name": "chart_id", "in": "path", - "description": "ID of Data Connector category to return", + "description": "ID of chart to return", "required": true, "schema": { "type": "string" @@ -915,7 +756,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/dataSourceCategoryEditable" + "$ref": "#/components/schemas/SavedSearchChartEditable" } } } @@ -926,7 +767,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/DataSourceCategory" + "$ref": "#/components/schemas/SavedSearchChart" } } } @@ -935,16 +776,16 @@ }, "delete": { "tags": [ - "DataSourcesCategories" + "SavedSearchCharts" ], - "summary": "Delete a Data Connector category", - "description": "Remove the specified resource from storage.", - "operationId": "deleteDataSourceCategory", + "summary": "Delete a saved search chart", + "description": "Delete a SavedSearchChart.", + "operationId": "deleteSavedSearchChart", "parameters": [ { - "name": "data_source_category_id", + "name": "chart_id", "in": "path", - "description": "ID of Data Connector category to return", + "description": "ID of chart to return", "required": true, "schema": { "type": "string" @@ -958,73 +799,52 @@ } } }, - "/data_sources": { + "/saved-searches/charts/{chart_id}/fields": { "get": { "tags": [ - "DataSources" + "SavedSearchCharts" ], - "summary": "Returns all Data Connectors that the user has access to", - "description": "Get the list of records of a Data Connector", - "operationId": "getDataSources", + "summary": "Get available chart fields for a Saved Search by ID", + "description": "Get available chart fields for a Saved Search.", + "operationId": "getSavedSearchFieldsById", "parameters": [ { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" + "name": "chart_id", + "in": "path", + "description": "ID of Saved Search to return", + "required": true, + "schema": { + "type": "string" + } } ], "responses": { "200": { - "description": "list of Data Connectors", + "description": "Successfully found the saved search", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/dataSource" - } - }, - "meta": { - "type": "object", - "allOf": [ - { - "$ref": "#/components/schemas/metadata" - } - ] - } - }, - "type": "object" + "$ref": "#/components/schemas/SavedSearch" } } } } } - }, + } + }, + "/saved-searches/reports": { "post": { "tags": [ - "DataSources" + "Reports" ], - "summary": "Save a new Data Connector", - "description": "Create a new Data Connector.", - "operationId": "createDataSource", + "summary": "Save a new report", + "operationId": "createReport", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/dataSourceEditable" + "$ref": "#/components/schemas/ReportEditable" } } } @@ -1035,7 +855,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/dataSource" + "$ref": "#/components/schemas/Report" } } } @@ -1043,91 +863,174 @@ } } }, - "/data_sources/{data_source_id}": { - "get": { + "/saved-searches/reports/{reportId}": { + "put": { "tags": [ - "DataSources" + "SavedSearches" ], - "summary": "Get single Data Connector by ID", - "description": "Get a single Data Connector.", - "operationId": "getDataSourceById", + "summary": "Update a saved search", + "description": "Update a Report", + "operationId": "updateReport", "parameters": [ { - "name": "data_source_id", + "name": "reportId", "in": "path", - "description": "ID of Data Connector to return", + "description": "ID of report", "required": true, "schema": { "type": "string" } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SavedSearchEditable" + } + } + } + }, "responses": { "200": { - "description": "Successfully found the Data Connector", + "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/dataSource" + "$ref": "#/components/schemas/SavedSearch" } } } } } - }, - "put": { + } + }, + "/saved-searches": { + "get": { "tags": [ - "DataSources" + "SavedSearches" ], - "summary": "Update a Data Connector", - "description": "Update a Data Connector.", - "operationId": "updateDataSource", + "summary": "Returns all saved searches that the user has access to", + "description": "Get a list of SavedSearches.", + "operationId": "getSavedSearches", "parameters": [ { - "name": "data_source_id", - "in": "path", - "description": "ID of Data Connector to return", - "required": true, + "$ref": "#/components/parameters/filter" + }, + { + "name": "type", + "in": "query", + "description": "Only return saved searches by type", + "required": false, "schema": { - "type": "string" + "type": "string", + "enum": [ + "request", + "task", + "collection" + ] + } + }, + { + "name": "subset", + "in": "query", + "description": "Only return saved searches that are yours or those that have been shared with you", + "required": false, + "schema": { + "type": "string", + "enum": [ + "mine", + "shared" + ] + } + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" + } + ], + "responses": { + "200": { + "description": "list of saved searches", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SavedSearch" + } + }, + "meta": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/metadata" + } + ] + } + }, + "type": "object" + } + } } } + } + }, + "post": { + "tags": [ + "SavedSearches" ], + "summary": "Save a new saved search", + "description": "Create a new SavedSearch.", + "operationId": "createSavedSearch", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/dataSourceEditable" + "$ref": "#/components/schemas/SavedSearchEditable" } } } }, "responses": { - "204": { + "201": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/dataSource" + "$ref": "#/components/schemas/SavedSearch" } } } } } - }, - "delete": { + } + }, + "/saved-searches/{savedSearchId}": { + "get": { "tags": [ - "DataSources" + "SavedSearches" ], - "summary": "Delete a Data Connector", - "description": "Delete a Data Connector.", - "operationId": "deleteDataSource", + "summary": "Get single saved searches by ID", + "description": "Get a single SavedSearch.", + "operationId": "getSavedSearchById", "parameters": [ { - "name": "data_source_id", + "name": "savedSearchId", "in": "path", - "description": "ID of Data Connector to return", + "description": "ID of saved search to return", "required": true, "schema": { "type": "string" @@ -1135,32 +1038,30 @@ } ], "responses": { - "204": { - "description": "success", + "200": { + "description": "Successfully found the saved search", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/dataSource" + "$ref": "#/components/schemas/SavedSearch" } } } } } - } - }, - "/data_sources/{data_source_id}/test": { - "post": { + }, + "put": { "tags": [ - "DataSources" + "SavedSearches" ], - "summary": "Send a Data Connector request", - "description": "Send a Data Connector request.", - "operationId": "sendDataSource", + "summary": "Update a saved search", + "description": "Update a SavedSearch.", + "operationId": "updateSavedSearch", "parameters": [ { - "name": "data_source_id", + "name": "savedSearchId", "in": "path", - "description": "ID of Data Connector to return", + "description": "ID of saved search to return", "required": true, "schema": { "type": "string" @@ -1172,18 +1073,18 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/dataSourceEditable" + "$ref": "#/components/schemas/SavedSearchEditable" } } } }, "responses": { - "204": { + "200": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/dataSource" + "$ref": "#/components/schemas/SavedSearch" } } } @@ -1191,56 +1092,76 @@ } } }, - "/requests/{request_id}/data_sources/{data_source_id}": { - "post": { + "/saved-searches/{savedSearchId}/columns": { + "get": { "tags": [ - "DataSources" + "SavedSearches" ], - "summary": "execute Data Source", - "description": "Execute a data Source endpoint", - "operationId": "executeDataSourceForRequest", + "summary": "Returns all columns associated with a Saved Search", + "description": "Display a listing of columns.", + "operationId": "getSavedSearchColumns", "parameters": [ { - "name": "request_id", + "name": "savedSearchId", "in": "path", - "description": "ID of the request in whose context the datasource will be executed", + "description": "ID of saved search to return", "required": true, "schema": { "type": "string" } }, { - "name": "data_source_id", - "in": "path", - "description": "ID of DataSource to be run", - "required": true, + "name": "include", + "in": "query", + "description": "Include specific categories. Comma separated list.", "schema": { - "type": "string" + "type": "array", + "items": { + "type": "string", + "enum": [ + "current", + "default", + "available", + "data" + ] + }, + "uniqueItems": false } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "properties": { - "config": { - "$ref": "#/components/schemas/DataSourceCallParameters" - } - }, - "type": "object" - } - } - } - }, "responses": { "200": { - "description": "success", + "description": "Categorized list of columns", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/DataSourceResponse" + "properties": { + "current": { + "type": "array", + "items": { + "$ref": "#/components/schemas/columns" + } + }, + "default": { + "type": "array", + "items": { + "$ref": "#/components/schemas/columns" + } + }, + "available": { + "type": "array", + "items": { + "$ref": "#/components/schemas/columns" + } + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/columns" + } + } + }, + "type": "object" } } } @@ -1248,49 +1169,110 @@ } } }, - "/requests/data_sources/{data_source_id}": { - "post": { + "/saved-searches/{savedSearchId}/users": { + "get": { "tags": [ - "DataSources" + "Users" ], - "summary": "execute Data Source", - "operationId": "executeDataSource", + "summary": "Returns all users", + "description": "Display a listing of the resource.", + "operationId": "getSavedSearchUsers", "parameters": [ { - "name": "data_source_id", + "name": "savedSearchId", "in": "path", - "description": "ID of DataSource to be run", + "description": "ID of saved search to return", "required": true, "schema": { "type": "string" } + }, + { + "name": "filter", + "in": "query", + "description": "Filter results by string. Searches First Name, Last Name, Email and Username.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "properties": { - "config": { - "$ref": "#/components/schemas/DataSourceCallParameters" + "responses": { + "200": { + "description": "list of users", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/users" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } }, - "data": { - "type": "object" - } - }, - "type": "object" + "type": "object" + } } } } - }, + } + } + }, + "/saved-searches/{savedSearchId}/groups": { + "get": { + "tags": [ + "Groups" + ], + "summary": "Returns all groups that the user has access to", + "description": "Display a listing of the resource.", + "operationId": "getSavedSearchGroups", + "parameters": [ + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" + } + ], "responses": { "200": { - "description": "success", + "description": "list of groups", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/DataSourceResponse" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/groups" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" } } } @@ -1298,40 +1280,68 @@ } } }, - "/requests/data_sources/{data_source_id}/resources/{endpoint}/data": { - "post": { + "/saved-searches/{saved_search_id}": { + "delete": { "tags": [ - "DataSources" + "SavedSearches" ], - "summary": "Get Data from Data Source", - "operationId": "getDataFromDataSource", + "summary": "Delete a saved search", + "description": "Delete a SavedSearch.", + "operationId": "deleteSavedSearch", "parameters": [ { - "name": "data_source_id", + "name": "saved_search_id", "in": "path", - "description": "ID of DataSource to be run", + "description": "ID of saved search to return", "required": true, "schema": { "type": "string" } - }, + } + ], + "responses": { + "204": { + "description": "success" + } + } + } + }, + "/saved-searches/icons": { + "get": { + "tags": [ + "SavedSearches" + ], + "summary": "Returns all icons for saved searches", + "description": "Get a list of icons available for SavedSearches.", + "operationId": "getSavedSearchesIcons", + "parameters": [ { - "name": "endpoint", - "in": "path", - "description": "Endpoint of the data source", - "required": true, - "schema": { - "type": "string" - } + "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "success", + "description": "list of icons for saved searches", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/DataSourceResponse" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SavedSearchIcon" + } + }, + "meta": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/metadata" + } + ] + } + }, + "type": "object" } } } @@ -1339,14 +1349,14 @@ } } }, - "/decision_table_categories": { + "/version_histories": { "get": { "tags": [ - "DecisionTableCategories" + "Version History" ], - "summary": "Returns all Decision Tables categories that the user has access to", - "description": "Display a listing of the Decision Tables Categories.", - "operationId": "getDecisionTableCategories", + "summary": "Return all version History according to the model", + "description": "Get the list of records of Version History", + "operationId": "getVersionHistories", "parameters": [ { "$ref": "#/components/parameters/filter" @@ -1359,11 +1369,14 @@ }, { "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "list of Decision Tables categories", + "description": "list of Version History", "content": { "application/json": { "schema": { @@ -1371,7 +1384,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/DecisionTableCategory" + "$ref": "#/components/schemas/versionHistory" } }, "meta": { @@ -1392,17 +1405,17 @@ }, "post": { "tags": [ - "DecisionTableCategories" + "Version History" ], - "summary": "Save a new Decision Table Category", - "description": "Store a newly created Decision Tables Category in storage", - "operationId": "createDecisionTableCategory", + "summary": "Save a new Version History", + "description": "Create a new Version History.", + "operationId": "createVersion", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/decisionTableCategoryEditable" + "$ref": "#/components/schemas/versionHistoryEditable" } } } @@ -1413,7 +1426,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/DecisionTableCategory" + "$ref": "#/components/schemas/versionHistory" } } } @@ -1421,19 +1434,19 @@ } } }, - "/decision_table_categories/{decision_table_categories_id}": { + "/version_histories/{version_history_id}": { "get": { "tags": [ - "DecisionTableCategories" + "Version History" ], - "summary": "Get single Decision Table category by ID", - "description": "Display the specified decision Tables category.", - "operationId": "getDecisionTableCategoryById", + "summary": "Get single Version History by ID", + "description": "Get a single Version History.", + "operationId": "getVersionHistoryById", "parameters": [ { - "name": "decision_table_categories_id", + "name": "version_history_id", "in": "path", - "description": "ID of Decision Table category to return", + "description": "ID of Version History to return", "required": true, "schema": { "type": "string" @@ -1442,11 +1455,11 @@ ], "responses": { "200": { - "description": "Successfully found the Decision Table", + "description": "Successfully found the Version History", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/DecisionTableCategory" + "$ref": "#/components/schemas/versionHistory" } } } @@ -1455,16 +1468,16 @@ }, "put": { "tags": [ - "DecisionTableCategories" + "Version History" ], - "summary": "Update a Decision Table Category", - "description": "Updates the current element", - "operationId": "updateDecisionTableCategory", + "summary": "Update a Version History", + "description": "Update a Version History.", + "operationId": "updateVersion", "parameters": [ { - "name": "decision_table_categories_id", + "name": "version_history_id", "in": "path", - "description": "ID of Decision Table category to return", + "description": "ID of Version History to return", "required": true, "schema": { "type": "string" @@ -1476,18 +1489,18 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/decisionTableCategoryEditable" + "$ref": "#/components/schemas/versionHistoryEditable" } } } }, "responses": { - "200": { + "204": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/DecisionTableCategory" + "$ref": "#/components/schemas/versionHistory" } } } @@ -1496,16 +1509,16 @@ }, "delete": { "tags": [ - "DecisionTableCategories" + "Version History" ], - "summary": "Delete a Decision Table category", - "description": "Remove the specified resource from storage.", - "operationId": "deleteDecisionTableCategory", + "summary": "Delete a Version History", + "description": "Delete a Version History.", + "operationId": "deleteVersion", "parameters": [ { - "name": "decision_table_categories_id", + "name": "version_history_id", "in": "path", - "description": "ID of Decision Table category to return", + "description": "ID of Version History to return", "required": true, "schema": { "type": "string" @@ -1514,19 +1527,98 @@ ], "responses": { "204": { - "description": "success" - } + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/versionHistory" + } + } + } + } + } + } + }, + "/version_histories/clone": { + "post": { + "tags": [ + "Version History" + ], + "summary": "Clone a new Version History", + "description": "Clone a new Version History.", + "operationId": "cloneVersion", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/versionHistoryEditable" + } + } + } + }, + "responses": { + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/versionHistory" + } + } + } + } + } + } + }, + "/customize-ui": { + "post": { + "tags": [ + "CssSettings" + ], + "summary": "Create or update a new setting", + "description": "Create a new Settings css-override", + "operationId": "updateCssSetting", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "variables": { + "type": "string" + }, + "sansSerifFont": { + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/settings" + } + } + } + } } } }, - "/decision_tables": { + "/environment_variables": { "get": { "tags": [ - "DecisionTables" + "Environment Variables" ], - "summary": "Returns all Decision tables that the user has access to", - "description": "Display a listing of the resource.", - "operationId": "getDecisionTables", + "summary": "Returns all environmentVariables that the user has access to. For security, values are not included.", + "description": "Fetch a collection of variables based on paged request and filter if provided", + "operationId": "getEnvironmentVariables", "parameters": [ { "$ref": "#/components/parameters/filter" @@ -1546,7 +1638,7 @@ ], "responses": { "200": { - "description": "list of Decision Tables", + "description": "list of environmentVariables", "content": { "application/json": { "schema": { @@ -1554,16 +1646,11 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/decisionTable" + "$ref": "#/components/schemas/EnvironmentVariable" } }, "meta": { - "type": "object", - "allOf": [ - { - "$ref": "#/components/schemas/metadata" - } - ] + "type": "object" } }, "type": "object" @@ -1575,17 +1662,17 @@ }, "post": { "tags": [ - "DecisionTables" + "Environment Variables" ], - "summary": "Save a new Decision Table", - "description": "Store a newly created resource in storage.", - "operationId": "createDecisionTable", + "summary": "Create a new environment variable", + "description": "Creates a new global Environment Variable in the system", + "operationId": "createEnvironmentVariable", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/decisionTableEditable" + "$ref": "#/components/schemas/EnvironmentVariableEditable" } } } @@ -1596,7 +1683,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/decisionTable" + "$ref": "#/components/schemas/EnvironmentVariable" } } } @@ -1604,32 +1691,32 @@ } } }, - "/decision_tables/{decision_table_id}": { + "/environment_variables/{environment_variable_id}": { "get": { "tags": [ - "DecisionTables" + "Environment Variables" ], - "summary": "Get single Decision Table by ID", - "description": "Display the specified resource.", - "operationId": "getDecisionTableById", + "summary": "Get an environment variable by id. For security, the value is not included.", + "description": "Return an environment variable instance\nUsing implicit model binding, will automatically return 404 if variable now found", + "operationId": "getEnvironmentVariableById", "parameters": [ { - "name": "decision_table_id", + "name": "environment_variable_id", "in": "path", - "description": "ID of Decision Table to return", + "description": "ID of environment_variables to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { - "200": { - "description": "Successfully found the Decision Table", + "201": { + "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/decisionTable" + "$ref": "#/components/schemas/EnvironmentVariable" } } } @@ -1638,19 +1725,19 @@ }, "put": { "tags": [ - "DecisionTables" + "Environment Variables" ], - "summary": "Update a Decision Table", - "description": "Update a Decision table", - "operationId": "updateDecisionTable", + "summary": "Update an environment variable", + "description": "Update an environment variable", + "operationId": "updateEnvironmentVariable", "parameters": [ { - "name": "decision_table_id", + "name": "environment_variable_id", "in": "path", - "description": "ID of Decision Table to return", + "description": "ID of environment variables to update", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], @@ -1659,18 +1746,18 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/decisionTableEditable" + "$ref": "#/components/schemas/EnvironmentVariableEditable" } } } }, "responses": { - "204": { + "200": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/decisionTable" + "$ref": "#/components/schemas/EnvironmentVariable" } } } @@ -1679,96 +1766,117 @@ }, "delete": { "tags": [ - "DecisionTables" + "Environment Variables" ], - "summary": "Delete a Decision Table", - "description": "Delete a Decision tables", - "operationId": "deleteDecisionTable", + "summary": "Delete an environment variable", + "operationId": "deleteEnvironmentVariable", "parameters": [ { - "name": "decision_table_id", + "name": "environment_variable_id", "in": "path", - "description": "ID of Decision Table to return", + "description": "ID of environment_variables to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { - "204": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/decisionTable" - } - } - } + "200": { + "description": "success" } } } }, - "/decision_tables/{decision_table_id}/duplicate": { - "put": { + "/files": { + "get": { "tags": [ - "DecisionTables" + "Files" ], - "summary": "duplicate a Decision Table", - "description": "duplicate a Decision table.", - "operationId": "duplicateDecisionTable", + "summary": "Returns the list of files", + "description": "Display a listing of the resource.", + "operationId": "getFiles", "parameters": [ { - "name": "decision_table_id", - "in": "path", - "description": "ID of Decision Table to return", - "required": true, - "schema": { - "type": "string" - } + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/decisionTableEditable" - } - } - } - }, "responses": { - "201": { - "description": "success", + "200": { + "description": "list of files", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/decisionTable" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/media" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" } } } } } - } - }, - "/decision_tables/{decision_table_id}/excel-import": { + }, "post": { "tags": [ - "DecisionTables" + "Files" ], - "summary": "Import a new decision table", - "description": "Import a Decision table from excel", - "operationId": "importExcel", + "summary": "Save a new media file. Note: To upload files to a request, use createRequestFile in the RequestFile API", + "description": "Store a newly created resource in storage.", + "operationId": "createFile", "parameters": [ { - "name": "decision_table_id", - "in": "path", - "description": "ID of Decision Table to return", + "name": "model_id", + "in": "query", + "description": "ID of the model to which the file will be associated", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "model", + "in": "query", + "description": "Full namespaced class of the model to associate", "required": true, "schema": { "type": "string" } + }, + { + "name": "data_name", + "in": "query", + "description": "Name of the variable used in a request", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "collection", + "in": "query", + "description": "Media collection name. For requests, use 'default'", + "required": false, + "schema": { + "type": "string" + } } ], "requestBody": { @@ -1778,7 +1886,7 @@ "schema": { "properties": { "file": { - "description": "file to import", + "description": "save a new media file", "type": "string", "format": "binary" } @@ -1789,14 +1897,23 @@ } }, "responses": { - "201": { + "200": { "description": "success", "content": { "application/json": { "schema": { "properties": { - "status": { - "type": "object" + "id": { + "type": "string" + }, + "model_id": { + "type": "string" + }, + "file_name": { + "type": "string" + }, + "mime_type": { + "type": "string" } }, "type": "object" @@ -1807,139 +1924,120 @@ } } }, - "/decision_tables/{decision_table_id}/export": { - "post": { + "/files/{file_id}": { + "get": { "tags": [ - "DecisionTables" + "Files" ], - "summary": "Export a single Decision Table by ID", - "description": "Export the specified screen.", - "operationId": "exportDecisionTable", + "summary": "Get the metadata of a file. To actually fetch the file see Get File Contents", + "description": "Get a single media file.", + "operationId": "getFileById", "parameters": [ { - "name": "decision_table_id", + "name": "file_id", "in": "path", - "description": "ID of Decision Table to return", + "description": "ID of the file to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { "200": { - "description": "Successfully exported the decision table", + "description": "Successfully found the file", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/DecisionTableExported" + "$ref": "#/components/schemas/media" } } } + }, + "404": { + "$ref": "#/components/responses/404" } } - } - }, - "/decision_tables/import": { - "post": { + }, + "delete": { "tags": [ - "DecisionTables" + "Files" ], - "summary": "Import a new Decision Table", - "description": "Import the specified Decision Table.", - "operationId": "importDecisionTable", - "requestBody": { - "required": true, - "content": { - "multipart/form-data": { - "schema": { - "properties": { - "file": { - "description": "file to import", - "type": "string", - "format": "binary" - } - }, - "type": "object" - } + "summary": "Delete a media file", + "description": "Remove the specified resource from storage.", + "operationId": "deleteFile", + "parameters": [ + { + "name": "file_id", + "in": "path", + "description": "ID of the file", + "required": true, + "schema": { + "type": "integer" } } - }, + ], "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "properties": { - "status": { - "type": "object" - } - }, - "type": "object" - } - } - } + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" } } } }, - "/decision_tables/{decision_table_id}/execute": { - "post": { + "/files/{file_id}/contents": { + "get": { "tags": [ - "DecisionTables" + "Files" ], - "summary": "Execute a Decision Table definition", - "description": "Execute a Decision Table definition", - "operationId": "previewDecisionTable", + "summary": "Get the contents of a file", + "description": "Display the specified resource.", + "operationId": "getFileContentsById", "parameters": [ { - "name": "decision_table_id", + "name": "file_id", "in": "path", - "description": "Decision Table unique Identifier", + "description": "ID of the file to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { "200": { - "description": "Successfully executed", + "description": "File stream", "content": { - "application/json": { - "schema": {} + "application/octet-stream": { + "schema": { + "type": "string", + "format": "binary" + } } } + }, + "404": { + "$ref": "#/components/responses/404" } } } }, - "/saved-searches/{saved_search_id}/charts": { + "/groups": { "get": { "tags": [ - "SavedSearchCharts" + "Groups" ], - "summary": "Returns all saved search charts that the user has access to", - "description": "Get a list of SavedSearchCharts.", - "operationId": "getSavedSearchCharts", + "summary": "Returns all groups that the user has access to", + "description": "Display a listing of the resource.", + "operationId": "getGroups", "parameters": [ { - "$ref": "#/components/parameters/filter" + "$ref": "#/components/parameters/status" }, { - "name": "type", - "in": "query", - "description": "Only return saved searches by type", - "required": false, - "schema": { - "type": "string", - "enum": [ - "request", - "task", - "collection" - ] - } + "$ref": "#/components/parameters/filter" }, { "$ref": "#/components/parameters/order_by" @@ -1956,7 +2054,7 @@ ], "responses": { "200": { - "description": "list of saved search charts", + "description": "list of groups", "content": { "application/json": { "schema": { @@ -1964,16 +2062,11 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/SavedSearchChart" + "$ref": "#/components/schemas/groups" } }, "meta": { - "type": "object", - "allOf": [ - { - "$ref": "#/components/schemas/metadata" - } - ] + "$ref": "#/components/schemas/metadata" } }, "type": "object" @@ -1983,67 +2076,19 @@ } } }, - "put": { - "tags": [ - "SavedSearchCharts" - ], - "summary": "Update several saved search charts at once", - "description": "Batch update several SavedSearchCharts.", - "operationId": "batchUpdateSavedSearchCharts", - "parameters": [ - { - "name": "saved_search_id", - "in": "path", - "description": "ID of saved search to which these charts will be saved", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SavedSearchChart" - } - } - } - } - }, - "responses": { - "204": { - "description": "success" - } - } - }, "post": { "tags": [ - "SavedSearchCharts" - ], - "summary": "Save a new saved search chart", - "description": "Create a new SavedSearchChart.", - "operationId": "createSavedSearchChart", - "parameters": [ - { - "name": "saved_search_id", - "in": "path", - "description": "ID of saved search to which this chart will be saved", - "required": true, - "schema": { - "type": "string" - } - } + "Groups" ], + "summary": "Save a new group", + "description": "Store a newly created resource in storage.", + "operationId": "createGroup", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearchChartEditable" + "$ref": "#/components/schemas/groupsEditable" } } } @@ -2054,61 +2099,67 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearchChart" + "$ref": "#/components/schemas/groups" } } } + }, + "422": { + "$ref": "#/components/responses/422" } } } }, - "/saved-searches/charts/{chart_id}": { + "/groups/{group_id}": { "get": { "tags": [ - "SavedSearchCharts" + "Groups" ], - "summary": "Get single saved search chart by ID", - "description": "Get a single SavedSearchChart.", - "operationId": "getSavedSearchChartById", + "summary": "Get single group by ID", + "description": "Display the specified resource.", + "operationId": "getGroupById", "parameters": [ { - "name": "chart_id", + "name": "group_id", "in": "path", - "description": "ID of chart to return", + "description": "ID of group to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { "200": { - "description": "Successfully found the saved search chart", + "description": "Successfully found the group", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearchChart" + "$ref": "#/components/schemas/groups" } } } + }, + "404": { + "$ref": "#/components/responses/404" } } }, "put": { "tags": [ - "SavedSearchCharts" + "Groups" ], - "summary": "Update a saved search chart", - "description": "Update a SavedSearchChart.", - "operationId": "updateSavedSearchChart", + "summary": "Update a group", + "description": "Update a user", + "operationId": "updateGroup", "parameters": [ { - "name": "chart_id", + "name": "group_id", "in": "path", - "description": "ID of chart to return", + "description": "ID of group to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], @@ -2117,106 +2168,94 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearchChartEditable" + "$ref": "#/components/schemas/groupsEditable" } } } }, "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SavedSearchChart" - } - } - } + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" } } }, "delete": { "tags": [ - "SavedSearchCharts" + "Groups" ], - "summary": "Delete a saved search chart", - "description": "Delete a SavedSearchChart.", - "operationId": "deleteSavedSearchChart", + "summary": "Delete a group", + "description": "Delete a user", + "operationId": "deleteGroup", "parameters": [ { - "name": "chart_id", + "name": "group_id", "in": "path", - "description": "ID of chart to return", + "description": "ID of group to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { "204": { "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" } } } }, - "/saved-searches/charts/{chart_id}/fields": { + "/groups/{group_id}/users": { "get": { "tags": [ - "SavedSearchCharts" + "Groups" ], - "summary": "Get available chart fields for a Saved Search by ID", - "description": "Get available chart fields for a Saved Search.", - "operationId": "getSavedSearchFieldsById", + "summary": "Returns all users of a group", + "description": "Display the list of users in a group", + "operationId": "getGroupUsers", "parameters": [ { - "name": "chart_id", + "name": "group_id", "in": "path", - "description": "ID of Saved Search to return", + "description": "ID of group", "required": true, "schema": { - "type": "string" + "type": "integer" } + }, + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "Successfully found the saved search", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SavedSearch" - } - } - } - } - } - } - }, - "/saved-searches/reports": { - "post": { - "tags": [ - "Reports" - ], - "summary": "Save a new report", - "operationId": "createReport", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ReportEditable" - } - } - } - }, - "responses": { - "201": { - "description": "success", + "description": "list of members of a group", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Report" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/users" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" } } } @@ -2224,42 +2263,52 @@ } } }, - "/saved-searches/reports/{reportId}": { - "put": { + "/groups/{group_id}/groups": { + "get": { "tags": [ - "SavedSearches" + "Groups" ], - "summary": "Update a saved search", - "description": "Update a Report", - "operationId": "updateReport", + "summary": "Returns all users of a group", + "description": "Display the list of groups in a group", + "operationId": "getGroupGroupss", "parameters": [ { - "name": "reportId", + "name": "group_id", "in": "path", - "description": "ID of report", + "description": "ID of group", "required": true, "schema": { - "type": "string" + "type": "integer" } + }, + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SavedSearchEditable" - } - } - } - }, "responses": { "200": { - "description": "success", + "description": "list of members of a group", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearch" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/groups" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" } } } @@ -2267,44 +2316,17 @@ } } }, - "/saved-searches": { + "/group_members": { "get": { "tags": [ - "SavedSearches" + "Group Members" ], - "summary": "Returns all saved searches that the user has access to", - "description": "Get a list of SavedSearches.", - "operationId": "getSavedSearches", + "summary": "Returns all groups for a given member", + "description": "Display a listing of the resource.", + "operationId": "getGroupMembers", "parameters": [ { - "$ref": "#/components/parameters/filter" - }, - { - "name": "type", - "in": "query", - "description": "Only return saved searches by type", - "required": false, - "schema": { - "type": "string", - "enum": [ - "request", - "task", - "collection" - ] - } - }, - { - "name": "subset", - "in": "query", - "description": "Only return saved searches that are yours or those that have been shared with you", - "required": false, - "schema": { - "type": "string", - "enum": [ - "mine", - "shared" - ] - } + "$ref": "#/components/parameters/member_id" }, { "$ref": "#/components/parameters/order_by" @@ -2314,14 +2336,11 @@ }, { "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "list of saved searches", + "description": "list of group_members", "content": { "application/json": { "schema": { @@ -2329,16 +2348,11 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/SavedSearch" + "$ref": "#/components/schemas/groupMembers" } }, "meta": { - "type": "object", - "allOf": [ - { - "$ref": "#/components/schemas/metadata" - } - ] + "$ref": "#/components/schemas/metadata" } }, "type": "object" @@ -2350,17 +2364,17 @@ }, "post": { "tags": [ - "SavedSearches" + "Group Members" ], - "summary": "Save a new saved search", - "description": "Create a new SavedSearch.", - "operationId": "createSavedSearch", + "summary": "Save a new group member", + "description": "Store a newly created resource in storage.", + "operationId": "createGroupMember", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearchEditable" + "$ref": "#/components/schemas/groupMembersEditable" } } } @@ -2371,7 +2385,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearch" + "$ref": "#/components/schemas/createGroupMembers" } } } @@ -2379,19 +2393,19 @@ } } }, - "/saved-searches/{savedSearchId}": { + "/group_members/{group_member_id}": { "get": { "tags": [ - "SavedSearches" + "Group Members" ], - "summary": "Get single saved searches by ID", - "description": "Get a single SavedSearch.", - "operationId": "getSavedSearchById", + "summary": "Get single group member by ID", + "description": "Display the specified resource.", + "operationId": "getGroupMemberById", "parameters": [ { - "name": "savedSearchId", + "name": "group_member_id", "in": "path", - "description": "ID of saved search to return", + "description": "ID of group members to return", "required": true, "schema": { "type": "string" @@ -2400,161 +2414,71 @@ ], "responses": { "200": { - "description": "Successfully found the saved search", + "description": "Successfully found the group members", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SavedSearch" + "$ref": "#/components/schemas/getGroupMembersById" } } } } } }, - "put": { + "delete": { "tags": [ - "SavedSearches" + "Group Members" ], - "summary": "Update a saved search", - "description": "Update a SavedSearch.", - "operationId": "updateSavedSearch", + "summary": "Delete a group member", + "description": "Delete a group membership", + "operationId": "deleteGroupMember", "parameters": [ { - "name": "savedSearchId", + "name": "group_member_id", "in": "path", - "description": "ID of saved search to return", + "description": "ID of group_members to return", "required": true, "schema": { "type": "string" } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SavedSearchEditable" - } - } - } - }, "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SavedSearch" - } - } - } + "204": { + "description": "success" } } } }, - "/saved-searches/{savedSearchId}/columns": { + "/group_members_available": { "get": { "tags": [ - "SavedSearches" + "Group Members" ], - "summary": "Returns all columns associated with a Saved Search", - "description": "Display a listing of columns.", - "operationId": "getSavedSearchColumns", + "summary": "Returns all groups available for a given member", + "description": "Display a listing of groups available", + "operationId": "getGroupMembersAvailable", "parameters": [ { - "name": "savedSearchId", + "name": "member_id", "in": "path", - "description": "ID of saved search to return", + "description": "ID of group member to return", "required": true, "schema": { "type": "string" } }, { - "name": "include", - "in": "query", - "description": "Include specific categories. Comma separated list.", - "schema": { - "type": "array", - "items": { - "type": "string", - "enum": [ - "current", - "default", - "available", - "data" - ] - }, - "uniqueItems": false - } - } - ], - "responses": { - "200": { - "description": "Categorized list of columns", - "content": { - "application/json": { - "schema": { - "properties": { - "current": { - "type": "array", - "items": { - "$ref": "#/components/schemas/columns" - } - }, - "default": { - "type": "array", - "items": { - "$ref": "#/components/schemas/columns" - } - }, - "available": { - "type": "array", - "items": { - "$ref": "#/components/schemas/columns" - } - }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/columns" - } - } - }, - "type": "object" - } - } - } - } - } - } - }, - "/saved-searches/{savedSearchId}/users": { - "get": { - "tags": [ - "Users" - ], - "summary": "Returns all users", - "description": "Display a listing of the resource.", - "operationId": "getSavedSearchUsers", - "parameters": [ - { - "name": "savedSearchId", + "name": "member_type", "in": "path", - "description": "ID of saved search to return", + "description": "type of group member to return", "required": true, "schema": { "type": "string" } }, { - "name": "filter", - "in": "query", - "description": "Filter results by string. Searches First Name, Last Name, Email and Username.", - "schema": { - "type": "string" - } + "$ref": "#/components/parameters/filter" }, { "$ref": "#/components/parameters/order_by" @@ -2564,14 +2488,11 @@ }, { "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "list of users", + "description": "list of groups available to be assigned as member", "content": { "application/json": { "schema": { @@ -2579,7 +2500,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/users" + "$ref": "#/components/schemas/availableGroupMembers" } }, "meta": { @@ -2594,15 +2515,32 @@ } } }, - "/saved-searches/{savedSearchId}/groups": { + "/user_members_available": { "get": { "tags": [ - "Groups" + "Group Members" ], - "summary": "Returns all groups that the user has access to", - "description": "Display a listing of the resource.", - "operationId": "getSavedSearchGroups", + "summary": "Returns all users available for a given group", + "description": "Display a listing of users available", + "operationId": "getUserMembersAvailable", "parameters": [ + { + "name": "group_id", + "in": "path", + "description": "ID of group to return", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filter", + "in": "query", + "description": "Filter results by string. Searches Name. Can be a substring.", + "schema": { + "type": "string" + } + }, { "$ref": "#/components/parameters/order_by" }, @@ -2611,14 +2549,11 @@ }, { "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "list of groups", + "description": "list of users available to be assigned as member", "content": { "application/json": { "schema": { @@ -2626,7 +2561,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/groups" + "$ref": "#/components/schemas/users" } }, "meta": { @@ -2641,84 +2576,24 @@ } } }, - "/saved-searches/{saved_search_id}": { - "delete": { + "/notifications": { + "get": { "tags": [ - "SavedSearches" + "Notifications" ], - "summary": "Delete a saved search", - "description": "Delete a SavedSearch.", - "operationId": "deleteSavedSearch", + "summary": "Returns all notifications that the user has access to", + "description": "Display a listing of the resource.", + "operationId": "getNotifications", "parameters": [ { - "name": "saved_search_id", - "in": "path", - "description": "ID of saved search to return", - "required": true, + "name": "status", + "in": "query", + "description": "Only return notifications by status (unread, all, etc.)", + "required": false, "schema": { "type": "string" } - } - ], - "responses": { - "204": { - "description": "success" - } - } - } - }, - "/saved-searches/icons": { - "get": { - "tags": [ - "SavedSearches" - ], - "summary": "Returns all icons for saved searches", - "description": "Get a list of icons available for SavedSearches.", - "operationId": "getSavedSearchesIcons", - "parameters": [ - { - "$ref": "#/components/parameters/per_page" - } - ], - "responses": { - "200": { - "description": "list of icons for saved searches", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SavedSearchIcon" - } - }, - "meta": { - "type": "object", - "allOf": [ - { - "$ref": "#/components/schemas/metadata" - } - ] - } - }, - "type": "object" - } - } - } - } - } - } - }, - "/version_histories": { - "get": { - "tags": [ - "Version History" - ], - "summary": "Return all version History according to the model", - "description": "Get the list of records of Version History", - "operationId": "getVersionHistories", - "parameters": [ + }, { "$ref": "#/components/parameters/filter" }, @@ -2737,7 +2612,7 @@ ], "responses": { "200": { - "description": "list of Version History", + "description": "list of notifications", "content": { "application/json": { "schema": { @@ -2745,17 +2620,10 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/versionHistory" + "$ref": "#/components/schemas/Notification" } }, - "meta": { - "type": "object", - "allOf": [ - { - "$ref": "#/components/schemas/metadata" - } - ] - } + "meta": {} }, "type": "object" } @@ -2766,17 +2634,17 @@ }, "post": { "tags": [ - "Version History" + "Notifications" ], - "summary": "Save a new Version History", - "description": "Create a new Version History.", - "operationId": "createVersion", + "summary": "Save a new notifications", + "description": "Store a newly created resource in storage.", + "operationId": "createNotification", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/versionHistoryEditable" + "$ref": "#/components/schemas/NotificationEditable" } } } @@ -2787,7 +2655,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/versionHistory" + "$ref": "#/components/schemas/Notification" } } } @@ -2795,19 +2663,19 @@ } } }, - "/version_histories/{version_history_id}": { + "/notifications/{notification_id}": { "get": { "tags": [ - "Version History" + "Notifications" ], - "summary": "Get single Version History by ID", - "description": "Get a single Version History.", - "operationId": "getVersionHistoryById", + "summary": "Get single notification by ID", + "description": "Display the specified resource.", + "operationId": "getNotificationById", "parameters": [ { - "name": "version_history_id", + "name": "notification_id", "in": "path", - "description": "ID of Version History to return", + "description": "ID of notification to return", "required": true, "schema": { "type": "string" @@ -2816,11 +2684,11 @@ ], "responses": { "200": { - "description": "Successfully found the Version History", + "description": "Successfully found the notification", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/versionHistory" + "$ref": "#/components/schemas/Notification" } } } @@ -2829,16 +2697,16 @@ }, "put": { "tags": [ - "Version History" + "Notifications" ], - "summary": "Update a Version History", - "description": "Update a Version History.", - "operationId": "updateVersion", + "summary": "Update a notification", + "description": "Update a user", + "operationId": "updateNotification", "parameters": [ { - "name": "version_history_id", + "name": "notification_id", "in": "path", - "description": "ID of Version History to return", + "description": "ID of notification to return", "required": true, "schema": { "type": "string" @@ -2850,36 +2718,29 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/versionHistoryEditable" + "$ref": "#/components/schemas/NotificationEditable" } } } }, "responses": { "204": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/versionHistory" - } - } - } + "description": "success" } } }, "delete": { "tags": [ - "Version History" + "Notifications" ], - "summary": "Delete a Version History", - "description": "Delete a Version History.", - "operationId": "deleteVersion", + "summary": "Delete a notification", + "description": "Delete a notification", + "operationId": "deleteNotification", "parameters": [ { - "name": "version_history_id", + "name": "notification_id", "in": "path", - "description": "ID of Version History to return", + "description": "ID of notification to return", "required": true, "schema": { "type": "string" @@ -2888,106 +2749,113 @@ ], "responses": { "204": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/versionHistory" - } - } - } + "description": "success" } } } }, - "/version_histories/clone": { - "post": { + "/read_notifications": { + "put": { "tags": [ - "Version History" + "Notifications" ], - "summary": "Clone a new Version History", - "description": "Clone a new Version History.", - "operationId": "cloneVersion", + "summary": "Mark notifications as read by the user", + "description": "Update notification as read", + "operationId": "markNotificationAsRead", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/versionHistoryEditable" + "properties": { + "message_ids": { + "description": "list of message ids that will be marked as read", + "type": "array", + "items": { + "type": "string" + } + }, + "routes": { + "description": "all messages that has an url that is in this list will be marked as read", + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" } } } }, "responses": { "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/versionHistory" - } - } - } + "description": "success" } } } }, - "/cases/{case_number}": { - "delete": { + "/unread_notifications": { + "put": { "tags": [ - "Cases" + "Notifications" ], - "summary": "Delete a case and its related requests", - "description": "Delete a case and its related requests.", - "operationId": "deleteCase", - "parameters": [ - { - "name": "case_number", - "in": "path", - "description": "Case number to delete", - "required": true, - "schema": { - "type": "string" + "summary": "Mark notifications as unread by the user", + "description": "Update notifications as unread", + "operationId": "markNotificationAsUnread", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "message_ids": { + "description": "list of message ids that will be marked as read", + "type": "array", + "items": { + "type": "string" + } + }, + "routes": { + "description": "all messages that has an url that is in this list will be marked as read", + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" + } } } - ], + }, "responses": { - "204": { + "201": { "description": "success" - }, - "401": { - "description": "Unauthorized" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "description": "Conflict" - }, - "500": { - "description": "Internal Server Error" } } } }, - "/customize-ui": { - "post": { + "/read_all_notifications": { + "put": { "tags": [ - "CssSettings" + "Notifications" ], - "summary": "Create or update a new setting", - "description": "Create a new Settings css-override", - "operationId": "updateCssSetting", + "summary": "Mark notifications as read by id and type", + "description": "Update all notification as read.", + "operationId": "markAllAsRead", "requestBody": { "required": true, "content": { "application/json": { "schema": { "properties": { - "variables": { - "type": "string" + "id": { + "description": "Polymorphic relation id", + "type": "integer" }, - "sansSerifFont": { + "type": { + "description": "Polymorphic relation type", "type": "string" } }, @@ -2998,29 +2866,73 @@ }, "responses": { "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/settings" - } + "description": "success" + } + } + } + }, + "/permissions": { + "put": { + "tags": [ + "Permissions" + ], + "summary": "Update the permissions of a user", + "description": "Update permissions", + "operationId": "51b3555fb753f44324bf5c3880e01454", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "user_id": { + "description": "ID of the user whose permissions are configured", + "type": "integer" + }, + "group_id": { + "description": "ID of the group whose permissions are configured", + "type": "integer" + }, + "is_administrator": { + "description": "Whether the user should have Super Admin privileges", + "type": "boolean", + "default": false + }, + "permission_names": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" } } } + }, + "responses": { + "204": { + "description": "success" + } } } }, - "/environment_variables": { + "/process_categories": { "get": { "tags": [ - "Environment Variables" + "Process Categories" ], - "summary": "Returns all environmentVariables that the user has access to. For security, values are not included.", - "description": "Fetch a collection of variables based on paged request and filter if provided", - "operationId": "getEnvironmentVariables", + "summary": "Returns all processes categories that the user has access to", + "description": "Display a listing of the Process Categories.", + "operationId": "getProcessCategories", "parameters": [ { - "$ref": "#/components/parameters/filter" + "name": "filter", + "in": "query", + "description": "Filter results by string. Searches Name and Status. All fields must match exactly.", + "schema": { + "type": "string" + } }, { "$ref": "#/components/parameters/order_by" @@ -3030,14 +2942,11 @@ }, { "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "list of environmentVariables", + "description": "list of processes categories", "content": { "application/json": { "schema": { @@ -3045,7 +2954,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/EnvironmentVariable" + "$ref": "#/components/schemas/ProcessCategory" } }, "meta": { @@ -3061,17 +2970,17 @@ }, "post": { "tags": [ - "Environment Variables" + "Process Categories" ], - "summary": "Create a new environment variable", - "description": "Creates a new global Environment Variable in the system", - "operationId": "createEnvironmentVariable", + "summary": "Save a new process Category", + "description": "Store a newly created Process Category in storage", + "operationId": "createProcessCategory", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvironmentVariableEditable" + "$ref": "#/components/schemas/ProcessCategoryEditable" } } } @@ -3082,7 +2991,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvironmentVariable" + "$ref": "#/components/schemas/ProcessCategory" } } } @@ -3090,19 +2999,19 @@ } } }, - "/environment_variables/{environment_variable_id}": { + "/process_categories/{process_category_id}": { "get": { "tags": [ - "Environment Variables" + "Process Categories" ], - "summary": "Get an environment variable by id. For security, the value is not included.", - "description": "Return an environment variable instance\nUsing implicit model binding, will automatically return 404 if variable now found", - "operationId": "getEnvironmentVariableById", + "summary": "Get single process category by ID", + "description": "Display the specified Process category.", + "operationId": "getProcessCategoryById", "parameters": [ { - "name": "environment_variable_id", + "name": "process_category_id", "in": "path", - "description": "ID of environment_variables to return", + "description": "ID of process category to return", "required": true, "schema": { "type": "integer" @@ -3110,12 +3019,12 @@ } ], "responses": { - "201": { - "description": "success", + "200": { + "description": "Successfully found the process", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvironmentVariable" + "$ref": "#/components/schemas/ProcessCategory" } } } @@ -3124,16 +3033,16 @@ }, "put": { "tags": [ - "Environment Variables" + "Process Categories" ], - "summary": "Update an environment variable", - "description": "Update an environment variable", - "operationId": "updateEnvironmentVariable", + "summary": "Update a process Category", + "description": "Updates the current element", + "operationId": "updateProcessCategory", "parameters": [ { - "name": "environment_variable_id", + "name": "process_category_id", "in": "path", - "description": "ID of environment variables to update", + "description": "ID of process category to return", "required": true, "schema": { "type": "integer" @@ -3145,7 +3054,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvironmentVariableEditable" + "$ref": "#/components/schemas/ProcessCategoryEditable" } } } @@ -3156,7 +3065,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvironmentVariable" + "$ref": "#/components/schemas/ProcessCategory" } } } @@ -3165,15 +3074,16 @@ }, "delete": { "tags": [ - "Environment Variables" + "Process Categories" ], - "summary": "Delete an environment variable", - "operationId": "deleteEnvironmentVariable", + "summary": "Delete a process category", + "description": "Remove the specified resource from storage.", + "operationId": "deleteProcessCategory", "parameters": [ { - "name": "environment_variable_id", + "name": "process_category_id", "in": "path", - "description": "ID of environment_variables to return", + "description": "ID of process category to return", "required": true, "schema": { "type": "integer" @@ -3181,20 +3091,27 @@ } ], "responses": { - "200": { - "description": "success" + "204": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Process" + } + } + } } } } }, - "/files": { + "/processes": { "get": { "tags": [ - "Files" + "Processes" ], - "summary": "Returns the list of files", - "description": "Display a listing of the resource.", - "operationId": "getFiles", + "summary": "Returns all processes that the user has access to", + "description": "Get list Process", + "operationId": "getProcesses", "parameters": [ { "$ref": "#/components/parameters/filter" @@ -3207,11 +3124,26 @@ }, { "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/status" + }, + { + "$ref": "#/components/parameters/include" + }, + { + "name": "simplified_data_for_selector", + "in": "query", + "description": "Comma separated list of fields to include in the response", + "schema": { + "type": "string", + "default": "" + } } ], "responses": { "200": { - "description": "list of files", + "description": "list of processes", "content": { "application/json": { "schema": { @@ -3219,7 +3151,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/media" + "$ref": "#/components/schemas/Process" } }, "meta": { @@ -3235,87 +3167,28 @@ }, "post": { "tags": [ - "Files" + "Processes" ], - "summary": "Save a new media file. Note: To upload files to a request, use createRequestFile in the RequestFile API", + "summary": "Save a new process", "description": "Store a newly created resource in storage.", - "operationId": "createFile", - "parameters": [ - { - "name": "model_id", - "in": "query", - "description": "ID of the model to which the file will be associated", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "model", - "in": "query", - "description": "Full namespaced class of the model to associate", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "data_name", - "in": "query", - "description": "Name of the variable used in a request", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "collection", - "in": "query", - "description": "Media collection name. For requests, use 'default'", - "required": false, - "schema": { - "type": "string" - } - } - ], + "operationId": "createProcess", "requestBody": { "required": true, "content": { - "multipart/form-data": { + "application/json": { "schema": { - "properties": { - "file": { - "description": "save a new media file", - "type": "string", - "format": "binary" - } - }, - "type": "object" + "$ref": "#/components/schemas/ProcessEditable" } } } }, "responses": { - "200": { + "201": { "description": "success", "content": { "application/json": { "schema": { - "properties": { - "id": { - "type": "string" - }, - "model_id": { - "type": "string" - }, - "file_name": { - "type": "string" - }, - "mime_type": { - "type": "string" - } - }, - "type": "object" + "$ref": "#/components/schemas/Process" } } } @@ -3323,82 +3196,94 @@ } } }, - "/files/{file_id}": { + "/processes/{processId}": { "get": { "tags": [ - "Files" + "Processes" ], - "summary": "Get the metadata of a file. To actually fetch the file see Get File Contents", - "description": "Get a single media file.", - "operationId": "getFileById", + "summary": "Get single process by ID", + "description": "Display the specified resource.", + "operationId": "getProcessById", "parameters": [ { - "name": "file_id", + "name": "processId", "in": "path", - "description": "ID of the file to return", + "description": "ID of process to return", "required": true, "schema": { "type": "integer" } + }, + { + "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "Successfully found the file", + "description": "Successfully found the process", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/media" + "$ref": "#/components/schemas/Process" } } } - }, - "404": { - "$ref": "#/components/responses/404" } } }, - "delete": { + "put": { "tags": [ - "Files" + "Processes" ], - "summary": "Delete a media file", - "description": "Remove the specified resource from storage.", - "operationId": "deleteFile", + "summary": "Update a process", + "description": "Updates the current element.", + "operationId": "updateProcess", "parameters": [ { - "name": "file_id", + "name": "processId", "in": "path", - "description": "ID of the file", + "description": "ID of process to return", "required": true, "schema": { "type": "integer" } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProcessEditable" + } + } + } + }, "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Process" + } + } + } } } - } - }, - "/files/{file_id}/contents": { - "get": { + }, + "delete": { "tags": [ - "Files" + "Processes" ], - "summary": "Get the contents of a file", - "description": "Display the specified resource.", - "operationId": "getFileContentsById", + "summary": "Delete a process", + "description": "Remove the specified resource from storage.", + "operationId": "deleteProcess", "parameters": [ { - "name": "file_id", + "name": "processId", "in": "path", - "description": "ID of the file to return", + "description": "ID of process to return", "required": true, "schema": { "type": "integer" @@ -3406,46 +3291,29 @@ } ], "responses": { - "200": { - "description": "File stream", - "content": { - "application/octet-stream": { - "schema": { - "type": "string", - "format": "binary" - } - } - } - }, - "404": { - "$ref": "#/components/responses/404" + "204": { + "description": "success" } } } }, - "/groups": { + "/processes/{processId}/start_events": { "get": { "tags": [ - "Groups" + "Processes" ], - "summary": "Returns all groups that the user has access to", - "description": "Display a listing of the resource.", - "operationId": "getGroups", + "summary": "Get start events of a process by Id", + "description": "Display the specified resource.", + "operationId": "getStartEventsProcessById", "parameters": [ { - "$ref": "#/components/parameters/status" - }, - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" + "name": "processId", + "in": "path", + "description": "ID of process to return", + "required": true, + "schema": { + "type": "integer" + } }, { "$ref": "#/components/parameters/include" @@ -3453,7 +3321,7 @@ ], "responses": { "200": { - "description": "list of groups", + "description": "Successfully found the start events process", "content": { "application/json": { "schema": { @@ -3461,7 +3329,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/groups" + "$ref": "#/components/schemas/ProcessStartEvents" } }, "meta": { @@ -3474,88 +3342,21 @@ } } } - }, - "post": { - "tags": [ - "Groups" - ], - "summary": "Save a new group", - "description": "Store a newly created resource in storage.", - "operationId": "createGroup", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/groupsEditable" - } - } - } - }, - "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/groups" - } - } - } - }, - "422": { - "$ref": "#/components/responses/422" - } - } } }, - "/groups/{group_id}": { - "get": { - "tags": [ - "Groups" - ], - "summary": "Get single group by ID", - "description": "Display the specified resource.", - "operationId": "getGroupById", - "parameters": [ - { - "name": "group_id", - "in": "path", - "description": "ID of group to return", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "200": { - "description": "Successfully found the group", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/groups" - } - } - } - }, - "404": { - "$ref": "#/components/responses/404" - } - } - }, + "/processes/{processId}/draft": { "put": { "tags": [ - "Groups" + "Processes" ], - "summary": "Update a group", - "description": "Update a user", - "operationId": "updateGroup", + "summary": "Update a draft process", + "description": "Update draft process.", + "operationId": "updateDraftProcess", "parameters": [ { - "name": "group_id", + "name": "processId", "in": "path", - "description": "ID of group to return", + "description": "ID of process to return", "required": true, "schema": { "type": "integer" @@ -3567,79 +3368,62 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/groupsEditable" + "$ref": "#/components/schemas/ProcessEditable" } } } }, "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" - } - } - }, - "delete": { - "tags": [ - "Groups" - ], - "summary": "Delete a group", - "description": "Delete a user", - "operationId": "deleteGroup", - "parameters": [ - { - "name": "group_id", - "in": "path", - "description": "ID of group to return", - "required": true, - "schema": { - "type": "integer" + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Process" + } + } } } - ], - "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" - } } } }, - "/groups/{group_id}/users": { + "/start_processes": { "get": { "tags": [ - "Groups" + "Processes" ], - "summary": "Returns all users of a group", - "description": "Display the list of users in a group", - "operationId": "getGroupUsers", + "summary": "Returns the list of processes that the user can start", + "description": "Returns the list of processes that the user can start.", + "operationId": "startProcesses", "parameters": [ { - "name": "group_id", - "in": "path", - "description": "ID of group", - "required": true, - "schema": { - "type": "integer" - } + "$ref": "#/components/parameters/filter" }, { - "$ref": "#/components/parameters/filter" + "$ref": "#/components/parameters/order_by" }, { "$ref": "#/components/parameters/order_direction" }, { "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" + }, + { + "name": "without_event_definitions", + "in": "path", + "description": "If true return only processes that haven't start event definitions", + "required": false, + "schema": { + "type": "boolean" + } } ], "responses": { "200": { - "description": "list of members of a group", + "description": "list of processes that the user can start", "content": { "application/json": { "schema": { @@ -3647,7 +3431,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/users" + "$ref": "#/components/schemas/ProcessWithStartEvents" } }, "meta": { @@ -3662,52 +3446,32 @@ } } }, - "/groups/{group_id}/groups": { - "get": { + "/processes/{processId}/restore": { + "put": { "tags": [ - "Groups" + "Processes" ], - "summary": "Returns all users of a group", - "description": "Display the list of groups in a group", - "operationId": "getGroupGroupss", + "summary": "Restore an inactive process", + "description": "Reverses the soft delete of the element.", + "operationId": "restoreProcess", "parameters": [ { - "name": "group_id", + "name": "processId", "in": "path", - "description": "ID of group", + "description": "ID of process to return", "required": true, "schema": { "type": "integer" } - }, - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "list of members of a group", + "description": "success", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/groups" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" + "$ref": "#/components/schemas/Process" } } } @@ -3715,43 +3479,34 @@ } } }, - "/group_members": { - "get": { + "/processes/{processId}/export": { + "post": { "tags": [ - "Group Members" + "Processes" ], - "summary": "Returns all groups for a given member", - "description": "Display a listing of the resource.", - "operationId": "getGroupMembers", + "summary": "Export a single process by ID and return a URL to download it", + "description": "Export the specified process.", + "operationId": "exportProcess", "parameters": [ { - "$ref": "#/components/parameters/member_id" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" + "name": "processId", + "in": "path", + "description": "ID of process to export", + "required": true, + "schema": { + "type": "integer" + } } ], "responses": { "200": { - "description": "list of group_members", + "description": "Successfully built the process for export", "content": { "application/json": { "schema": { "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/groupMembers" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" + "url": { + "type": "string" } }, "type": "object" @@ -3760,31 +3515,40 @@ } } } - }, + } + }, + "/processes/import/validation": { "post": { "tags": [ - "Group Members" + "Processes" ], - "summary": "Save a new group member", - "description": "Store a newly created resource in storage.", - "operationId": "createGroupMember", + "summary": "Validate a import", + "description": "Validate the specified process before importing.", + "operationId": "validateImport", "requestBody": { "required": true, "content": { - "application/json": { + "multipart/form-data": { "schema": { - "$ref": "#/components/schemas/groupMembersEditable" - } - } - } - }, - "responses": { - "201": { + "properties": { + "file": { + "description": "file to import", + "type": "string", + "format": "binary" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/createGroupMembers" + "$ref": "#/components/schemas/ProcessImport" } } } @@ -3792,118 +3556,111 @@ } } }, - "/group_members/{group_member_id}": { - "get": { + "/processes/import": { + "post": { "tags": [ - "Group Members" + "Processes" ], - "summary": "Get single group member by ID", - "description": "Display the specified resource.", - "operationId": "getGroupMemberById", - "parameters": [ - { - "name": "group_member_id", - "in": "path", - "description": "ID of group members to return", - "required": true, - "schema": { - "type": "string" + "summary": "Import a new process", + "description": "Import the specified process.", + "operationId": "importProcess", + "requestBody": { + "required": true, + "content": { + "multipart/form-data": { + "schema": { + "properties": { + "file": { + "description": "file to import", + "type": "string", + "format": "binary" + } + }, + "type": "object" + } } } - ], + }, "responses": { "200": { - "description": "Successfully found the group members", + "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/getGroupMembersById" + "$ref": "#/components/schemas/ProcessImport" } } } } } - }, - "delete": { + } + }, + "/processes/{processId}/bpmn": { + "get": { "tags": [ - "Group Members" + "Processes" ], - "summary": "Delete a group member", - "description": "Delete a group membership", - "operationId": "deleteGroupMember", + "summary": "Download the BPMN definition of a process", + "description": "Download the BPMN definition of a process", + "operationId": "processBpmn", "parameters": [ { - "name": "group_member_id", + "name": "processId", "in": "path", - "description": "ID of group_members to return", + "description": "ID of process", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { - "204": { - "description": "success" + "200": { + "description": "Successfully built the process for export", + "content": { + "application/json": { + "schema": { + "properties": { + "url": { + "type": "string" + } + }, + "type": "object" + } + } + } } } } }, - "/group_members_available": { - "get": { + "/processes/import/{code}/is_ready": { + "head": { "tags": [ - "Group Members" + "Processes" ], - "summary": "Returns all groups available for a given member", - "description": "Display a listing of groups available", - "operationId": "getGroupMembersAvailable", + "summary": "Check if the import is ready", + "description": "Check if the import is ready", + "operationId": "6a131993b7c879ddcd3d3a291dd8380f", "parameters": [ { - "name": "member_id", - "in": "path", - "description": "ID of group member to return", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "member_type", + "name": "code", "in": "path", - "description": "type of group member to return", + "description": "Import code", "required": true, "schema": { "type": "string" } - }, - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "list of groups available to be assigned as member", + "description": "check is import is ready", "content": { "application/json": { "schema": { "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/availableGroupMembers" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" + "ready": { + "type": "boolean" } }, "type": "object" @@ -3914,60 +3671,88 @@ } } }, - "/user_members_available": { - "get": { + "/processes/{process_id}/import/assignments": { + "post": { "tags": [ - "Group Members" + "Processes" ], - "summary": "Returns all users available for a given group", - "description": "Display a listing of users available", - "operationId": "getUserMembersAvailable", + "summary": "Update assignments after import", + "description": "Import Assignments of process.", + "operationId": "assignmentProcess", "parameters": [ { - "name": "group_id", + "name": "process_id", "in": "path", - "description": "ID of group to return", + "description": "ID of process to return", "required": true, "schema": { - "type": "string" + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProcessAssignments" + } + } + } + }, + "responses": { + "204": { + "description": "success" + } + } + } + }, + "/process_events/{process_id}": { + "post": { + "tags": [ + "Processes" + ], + "summary": "Start a new process", + "description": "Trigger an start event within a process.", + "operationId": "triggerStartEvent", + "parameters": [ + { + "name": "process_id", + "in": "path", + "description": "ID of process to return", + "required": true, + "schema": { + "type": "integer" } }, { - "name": "filter", + "name": "event", "in": "query", - "description": "Filter results by string. Searches Name. Can be a substring.", + "description": "Node ID of the start event", + "required": true, "schema": { "type": "string" } - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" } ], + "requestBody": { + "description": "data that will be stored as part of the created request", + "required": false, + "content": { + "application/json": { + "schema": { + "type": "object" + } + } + } + }, "responses": { "200": { - "description": "list of users available to be assigned as member", + "description": "success", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/users" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" + "$ref": "#/components/schemas/processRequest" } } } @@ -3975,22 +3760,28 @@ } } }, - "/notifications": { + "/requests": { "get": { "tags": [ - "Notifications" + "Process Requests" ], - "summary": "Returns all notifications that the user has access to", + "summary": "Returns all process Requests that the user has access to", "description": "Display a listing of the resource.", - "operationId": "getNotifications", + "operationId": "getProcessesRequests", "parameters": [ { - "name": "status", + "name": "type", "in": "query", - "description": "Only return notifications by status (unread, all, etc.)", + "description": "Only return requests by type (all|in_progress|completed)", "required": false, "schema": { - "type": "string" + "type": "string", + "enum": [ + "all", + "in_progress", + "completed", + "started_me" + ] } }, { @@ -4011,7 +3802,7 @@ ], "responses": { "200": { - "description": "list of notifications", + "description": "list of processes", "content": { "application/json": { "schema": { @@ -4019,10 +3810,12 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/Notification" + "$ref": "#/components/schemas/processRequest" } }, - "meta": {} + "meta": { + "$ref": "#/components/schemas/metadata" + } }, "type": "object" } @@ -4030,85 +3823,61 @@ } } } - }, - "post": { - "tags": [ - "Notifications" - ], - "summary": "Save a new notifications", - "description": "Store a newly created resource in storage.", - "operationId": "createNotification", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/NotificationEditable" - } - } - } - }, - "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Notification" - } - } - } - } - } } }, - "/notifications/{notification_id}": { + "/requests/{process_request_id}": { "get": { "tags": [ - "Notifications" + "Process Requests" ], - "summary": "Get single notification by ID", + "summary": "Get single process request by ID", "description": "Display the specified resource.", - "operationId": "getNotificationById", + "operationId": "getProcessRequestById", "parameters": [ { - "name": "notification_id", + "name": "process_request_id", "in": "path", - "description": "ID of notification to return", + "description": "ID of process request to return", "required": true, "schema": { - "type": "string" + "type": "integer" } + }, + { + "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "Successfully found the notification", + "description": "Successfully found the process", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Notification" + "$ref": "#/components/schemas/processRequest" } } } + }, + "404": { + "$ref": "#/components/responses/404" } } }, "put": { "tags": [ - "Notifications" + "Process Requests" ], - "summary": "Update a notification", - "description": "Update a user", - "operationId": "updateNotification", + "summary": "Update a process request", + "description": "Update a request", + "operationId": "updateProcessRequest", "parameters": [ { - "name": "notification_id", + "name": "process_request_id", "in": "path", - "description": "ID of notification to return", + "description": "ID of process request to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], @@ -4117,7 +3886,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/NotificationEditable" + "$ref": "#/components/schemas/processRequestEditable" } } } @@ -4125,137 +3894,179 @@ "responses": { "204": { "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" } } }, "delete": { "tags": [ - "Notifications" + "Process Requests" ], - "summary": "Delete a notification", - "description": "Delete a notification", - "operationId": "deleteNotification", + "summary": "Delete a process request", + "description": "Delete a request", + "operationId": "deleteProcessRequest", "parameters": [ { - "name": "notification_id", + "name": "process_request_id", "in": "path", - "description": "ID of notification to return", + "description": "ID of process request to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { "204": { - "description": "success" + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/processRequest" + } + } + } + }, + "404": { + "$ref": "#/components/responses/404" } } } }, - "/read_notifications": { - "put": { + "/requests/{process_request_id}/events/{event_id}": { + "post": { "tags": [ - "Notifications" + "Process Requests" ], - "summary": "Mark notifications as read by the user", - "description": "Update notification as read", - "operationId": "markNotificationAsRead", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "properties": { - "message_ids": { - "description": "list of message ids that will be marked as read", - "type": "array", - "items": { - "type": "string" - } - }, - "routes": { - "description": "all messages that has an url that is in this list will be marked as read", - "type": "array", - "items": { - "type": "string" - } - } - }, - "type": "object" - } + "summary": "Update a process request event", + "description": "Trigger a intermediate catch event", + "operationId": "updateProcessRequestEvent", + "parameters": [ + { + "name": "process_request_id", + "in": "path", + "description": "ID of process request to return", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "event_id", + "in": "path", + "description": "ID of process event to return", + "required": true, + "schema": { + "type": "string" } } - }, + ], "responses": { - "201": { + "204": { "description": "success" } } } }, - "/unread_notifications": { - "put": { + "/requests/{request_id}/files": { + "get": { "tags": [ - "Notifications" + "Request Files" ], - "summary": "Mark notifications as unread by the user", - "description": "Update notifications as unread", - "operationId": "markNotificationAsUnread", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "properties": { - "message_ids": { - "description": "list of message ids that will be marked as read", - "type": "array", - "items": { - "type": "string" + "summary": "Returns the list of files associated with a request", + "description": "Display a listing of the resource.", + "operationId": "getRequestFiles", + "parameters": [ + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "name": "request_id", + "in": "path", + "description": "ID of the request", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "list of files", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/media" + } + }, + "meta": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/metadata" + } + ] } }, - "routes": { - "description": "all messages that has an url that is in this list will be marked as read", - "type": "array", - "items": { - "type": "string" - } - } - }, - "type": "object" + "type": "object" + } } } } - }, - "responses": { - "201": { - "description": "success" - } } - } - }, - "/read_all_notifications": { - "put": { + }, + "post": { "tags": [ - "Notifications" + "Request Files" + ], + "summary": "Save a new media file to a request", + "description": "Store a newly created resource in storage.", + "operationId": "createRequestFile", + "parameters": [ + { + "name": "request_id", + "in": "path", + "description": "ID of the request", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "data_name", + "in": "query", + "description": "Variable name in the request data to use for the file name", + "required": false, + "schema": { + "type": "string" + } + } ], - "summary": "Mark notifications as read by id and type", - "description": "Update all notification as read.", - "operationId": "markAllAsRead", "requestBody": { "required": true, "content": { - "application/json": { + "multipart/form-data": { "schema": { "properties": { - "id": { - "description": "Polymorphic relation id", - "type": "integer" - }, - "type": { - "description": "Polymorphic relation type", - "type": "string" + "file": { + "description": "save a new media file", + "type": "string", + "format": "binary" } }, "type": "object" @@ -4264,71 +4075,122 @@ } }, "responses": { - "201": { - "description": "success" + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "properties": { + "message": { + "type": "string" + }, + "fileUploadId": { + "type": "integer" + } + }, + "type": "object" + } + } + } } } } }, - "/permissions": { - "put": { + "/requests/{request_id}/files/{file_id}": { + "get": { "tags": [ - "Permissions" + "Request Files" ], - "summary": "Update the permissions of a user", - "description": "Update permissions", - "operationId": "51b3555fb753f44324bf5c3880e01454", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "properties": { - "user_id": { - "description": "ID of the user whose permissions are configured", - "type": "integer" - }, - "group_id": { - "description": "ID of the group whose permissions are configured", - "type": "integer" - }, - "is_administrator": { - "description": "Whether the user should have Super Admin privileges", - "type": "boolean", - "default": false - }, - "permission_names": { - "type": "array", - "items": { - "type": "string" - } - } - }, - "type": "object" + "summary": "Get a file uploaded to a request", + "description": "Display the specified resource.", + "operationId": "getRequestFilesById", + "parameters": [ + { + "name": "request_id", + "in": "path", + "description": "ID of the request", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "file_id", + "in": "path", + "description": "ID of the file to return", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "File stream", + "content": { + "application/octet-stream": { + "schema": { + "type": "string", + "format": "binary" + } } } + }, + "404": { + "$ref": "#/components/responses/404" } - }, + } + }, + "delete": { + "tags": [ + "Request Files" + ], + "summary": "Delete all media associated with a request", + "description": "Remove the specified resource from storage.", + "operationId": "deleteRequestFile", + "parameters": [ + { + "name": "file_id", + "in": "path", + "description": "ID of the file", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "request_id", + "in": "path", + "description": "ID of the request", + "required": true, + "schema": { + "type": "string" + } + } + ], "responses": { "204": { "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" } } } }, - "/process_categories": { + "/screen_categories": { "get": { "tags": [ - "Process Categories" + "Screen Categories" ], - "summary": "Returns all processes categories that the user has access to", - "description": "Display a listing of the Process Categories.", - "operationId": "getProcessCategories", + "summary": "Returns all screens categories that the user has access to", + "description": "Display a listing of the Screen Categories.", + "operationId": "getScreenCategories", "parameters": [ { "name": "filter", "in": "query", - "description": "Filter results by string. Searches Name and Status. All fields must match exactly.", + "description": "Filter results by string. Searches Name, Description, and Status. All fields must match exactly.", "schema": { "type": "string" } @@ -4345,7 +4207,7 @@ ], "responses": { "200": { - "description": "list of processes categories", + "description": "list of screens categories", "content": { "application/json": { "schema": { @@ -4353,7 +4215,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/ProcessCategory" + "$ref": "#/components/schemas/ScreenCategory" } }, "meta": { @@ -4369,17 +4231,17 @@ }, "post": { "tags": [ - "Process Categories" + "Screen Categories" ], - "summary": "Save a new process Category", - "description": "Store a newly created Process Category in storage", - "operationId": "createProcessCategory", + "summary": "Save a new Screen Category", + "description": "Store a newly created Screen Category in storage", + "operationId": "createScreenCategory", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessCategoryEditable" + "$ref": "#/components/schemas/ScreenCategoryEditable" } } } @@ -4390,7 +4252,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessCategory" + "$ref": "#/components/schemas/ScreenCategory" } } } @@ -4398,32 +4260,32 @@ } } }, - "/process_categories/{process_category_id}": { + "/screen_categories/{screen_category_id}": { "get": { "tags": [ - "Process Categories" + "Screen Categories" ], - "summary": "Get single process category by ID", - "description": "Display the specified Process category.", - "operationId": "getProcessCategoryById", + "summary": "Get single screen category by ID", + "description": "Display the specified screen category.", + "operationId": "getScreenCategoryById", "parameters": [ { - "name": "process_category_id", + "name": "screen_category_id", "in": "path", - "description": "ID of process category to return", + "description": "ID of screen category to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { "200": { - "description": "Successfully found the process", + "description": "Successfully found the screen", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessCategory" + "$ref": "#/components/schemas/ScreenCategory" } } } @@ -4432,19 +4294,19 @@ }, "put": { "tags": [ - "Process Categories" + "Screen Categories" ], - "summary": "Update a process Category", + "summary": "Update a screen Category", "description": "Updates the current element", - "operationId": "updateProcessCategory", + "operationId": "updateScreenCategory", "parameters": [ { - "name": "process_category_id", + "name": "screen_category_id", "in": "path", - "description": "ID of process category to return", + "description": "ID of screen category to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], @@ -4453,7 +4315,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessCategoryEditable" + "$ref": "#/components/schemas/ScreenCategoryEditable" } } } @@ -4464,7 +4326,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessCategory" + "$ref": "#/components/schemas/ScreenCategory" } } } @@ -4473,44 +4335,37 @@ }, "delete": { "tags": [ - "Process Categories" + "Screen Categories" ], - "summary": "Delete a process category", + "summary": "Delete a screen category", "description": "Remove the specified resource from storage.", - "operationId": "deleteProcessCategory", + "operationId": "deleteScreenCategory", "parameters": [ { - "name": "process_category_id", + "name": "screen_category_id", "in": "path", - "description": "ID of process category to return", + "description": "ID of screen category to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { "204": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Process" - } - } - } + "description": "success" } } } }, - "/processes": { + "/screens": { "get": { "tags": [ - "Processes" + "Screens" ], - "summary": "Returns all processes that the user has access to", - "description": "Get list Process", - "operationId": "getProcesses", + "summary": "Returns all screens that the user has access to", + "description": "Get a list of Screens.", + "operationId": "getScreens", "parameters": [ { "$ref": "#/components/parameters/filter" @@ -4525,15 +4380,12 @@ "$ref": "#/components/parameters/per_page" }, { - "$ref": "#/components/parameters/status" + "$ref": "#/components/parameters/include" }, { - "$ref": "#/components/parameters/include" - }, - { - "name": "simplified_data_for_selector", + "name": "exclude", "in": "query", - "description": "Comma separated list of fields to include in the response", + "description": "Comma separated list of fields to exclude from the response", "schema": { "type": "string", "default": "" @@ -4542,7 +4394,7 @@ ], "responses": { "200": { - "description": "list of processes", + "description": "list of screens", "content": { "application/json": { "schema": { @@ -4550,11 +4402,11 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/Process" + "$ref": "#/components/schemas/screens" } }, "meta": { - "$ref": "#/components/schemas/metadata" + "type": "object" } }, "type": "object" @@ -4566,17 +4418,17 @@ }, "post": { "tags": [ - "Processes" + "Screens" ], - "summary": "Save a new process", - "description": "Store a newly created resource in storage.", - "operationId": "createProcess", + "summary": "Save a new screens", + "description": "Create a new Screen.", + "operationId": "createScreen", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessEditable" + "$ref": "#/components/schemas/screensEditable" } } } @@ -4587,7 +4439,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Process" + "$ref": "#/components/schemas/screens" } } } @@ -4595,51 +4447,32 @@ } } }, - "/processes/{processId}": { + "/screens/{screens_id}": { "get": { "tags": [ - "Processes" + "Screens" ], - "summary": "Get single process by ID", - "description": "Display the specified resource.", - "operationId": "getProcessById", + "summary": "Get single screens by ID", + "description": "Get a single Screen.", + "operationId": "getScreensById", "parameters": [ { - "name": "processId", + "name": "screens_id", "in": "path", - "description": "ID of process to return", + "description": "ID of screens to return", "required": true, "schema": { - "type": "integer" + "type": "string" } - }, - { - "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "Successfully found the process", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Process" - } - } - } - }, - "204": { - "description": "Process not found", + "description": "Successfully found the screen", "content": { "application/json": { "schema": { - "properties": { - "message": { - "type": "string", - "example": "The requested process was not found" - } - }, - "type": "object" + "$ref": "#/components/schemas/screens" } } } @@ -4648,19 +4481,19 @@ }, "put": { "tags": [ - "Processes" + "Screens" ], - "summary": "Update a process", - "description": "Updates the current element.", - "operationId": "updateProcess", + "summary": "Update a screen", + "description": "Update a Screen.", + "operationId": "updateScreen", "parameters": [ { - "name": "processId", + "name": "screens_id", "in": "path", - "description": "ID of process to return", + "description": "ID of screen to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], @@ -4669,39 +4502,32 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessEditable" + "$ref": "#/components/schemas/screensEditable" } } } }, "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Process" - } - } - } + "204": { + "description": "success" } } }, "delete": { "tags": [ - "Processes" + "Screens" ], - "summary": "Delete a process", - "description": "Remove the specified resource from storage.", - "operationId": "deleteProcess", + "summary": "Delete a screen", + "description": "Delete a Screen.", + "operationId": "deleteScreen", "parameters": [ { - "name": "processId", + "name": "screens_id", "in": "path", - "description": "ID of process to return", + "description": "ID of screen to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], @@ -4712,69 +4538,58 @@ } } }, - "/processes/{processId}/start_events": { - "get": { + "/screens/{screens_id}/draft": { + "put": { "tags": [ - "Processes" + "Screens" ], - "summary": "Get start events of a process by Id", - "description": "Display the specified resource.", - "operationId": "getStartEventsProcessById", + "summary": "Update a draft screen", + "description": "Update a draft Screen.", + "operationId": "updateDraftScreen", "parameters": [ { - "name": "processId", + "name": "screens_id", "in": "path", - "description": "ID of process to return", + "description": "ID of screen to return", "required": true, "schema": { - "type": "integer" + "type": "string" } - }, - { - "$ref": "#/components/parameters/include" } ], - "responses": { - "200": { - "description": "Successfully found the start events process", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProcessStartEvents" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" - } + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/screensEditable" } } } + }, + "responses": { + "204": { + "description": "success" + } } } }, - "/processes/{processId}/draft": { + "/screens/{screens_id}/duplicate": { "put": { "tags": [ - "Processes" + "Screens" ], - "summary": "Update a draft process", - "description": "Update draft process.", - "operationId": "updateDraftProcess", + "summary": "duplicate a screen", + "description": "duplicate a Screen.", + "operationId": "duplicateScreen", "parameters": [ { - "name": "processId", + "name": "screens_id", "in": "path", - "description": "ID of process to return", + "description": "ID of screen to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], @@ -4783,18 +4598,18 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessEditable" + "$ref": "#/components/schemas/screensEditable" } } } }, "responses": { - "200": { + "201": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Process" + "$ref": "#/components/schemas/screens" } } } @@ -4802,58 +4617,32 @@ } } }, - "/start_processes": { - "get": { + "/screens/{screensId}/export": { + "post": { "tags": [ - "Processes" + "Screens" ], - "summary": "Returns the list of processes that the user can start", - "description": "Returns the list of processes that the user can start.", - "operationId": "startProcesses", + "summary": "Export a single screen by ID", + "description": "Export the specified screen.", + "operationId": "exportScreen", "parameters": [ { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" - }, - { - "name": "without_event_definitions", + "name": "screensId", "in": "path", - "description": "If true return only processes that haven't start event definitions", - "required": false, + "description": "ID of screen to return", + "required": true, "schema": { - "type": "boolean" + "type": "string" } } ], "responses": { "200": { - "description": "list of processes that the user can start", + "description": "Successfully exported the screen", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProcessWithStartEvents" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" + "$ref": "#/components/schemas/screenExported" } } } @@ -4861,85 +4650,14 @@ } } }, - "/processes/{processId}/restore": { - "put": { + "/screens/import": { + "post": { "tags": [ - "Processes" - ], - "summary": "Restore an inactive process", - "description": "Reverses the soft delete of the element.", - "operationId": "restoreProcess", - "parameters": [ - { - "name": "processId", - "in": "path", - "description": "ID of process to return", - "required": true, - "schema": { - "type": "integer" - } - } + "Screens" ], - "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Process" - } - } - } - } - } - } - }, - "/processes/{processId}/export": { - "post": { - "tags": [ - "Processes" - ], - "summary": "Export a single process by ID and return a URL to download it", - "description": "Export the specified process.", - "operationId": "exportProcess", - "parameters": [ - { - "name": "processId", - "in": "path", - "description": "ID of process to export", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "200": { - "description": "Successfully built the process for export", - "content": { - "application/json": { - "schema": { - "properties": { - "url": { - "type": "string" - } - }, - "type": "object" - } - } - } - } - } - } - }, - "/processes/import/validation": { - "post": { - "tags": [ - "Processes" - ], - "summary": "Validate a import", - "description": "Validate the specified process before importing.", - "operationId": "validateImport", + "summary": "Import a new screen", + "description": "Import the specified screen.", + "operationId": "importScreen", "requestBody": { "required": true, "content": { @@ -4958,12 +4676,17 @@ } }, "responses": { - "200": { + "201": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessImport" + "properties": { + "status": { + "type": "object" + } + }, + "type": "object" } } } @@ -4971,24 +4694,31 @@ } } }, - "/processes/import": { + "/screens/preview": { "post": { "tags": [ - "Processes" + "Screens" ], - "summary": "Import a new process", - "description": "Import the specified process.", - "operationId": "importProcess", + "summary": "Preview a screen", + "description": "Get preview a screen", + "operationId": "preview", "requestBody": { "required": true, "content": { - "multipart/form-data": { + "application/json": { "schema": { "properties": { - "file": { - "description": "file to import", - "type": "string", - "format": "binary" + "config": { + "type": "object" + }, + "watchers": { + "type": "object" + }, + "computed": { + "type": "object" + }, + "custom_css": { + "type": "string" } }, "type": "object" @@ -4998,11 +4728,11 @@ }, "responses": { "200": { - "description": "success", + "description": "Successfully found the screen", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessImport" + "$ref": "#/components/schemas/screens" } } } @@ -5010,37 +4740,41 @@ } } }, - "/processes/{processId}/bpmn": { + "/screens/{screen_id}/translate/{language}": { "get": { "tags": [ - "Processes" + "Screens" ], - "summary": "Download the BPMN definition of a process", - "description": "Download the BPMN definition of a process", - "operationId": "processBpmn", + "summary": "Translates the screen to the desired language", + "description": "Translates the controls inside a screen", + "operationId": "translateScreen", "parameters": [ { - "name": "processId", + "name": "screen_id", "in": "path", - "description": "ID of process", + "description": "ID of the screen", "required": true, "schema": { - "type": "integer" + "type": "string" + } + }, + { + "name": "language", + "in": "path", + "description": "Language used for the translation of the string", + "required": true, + "schema": { + "type": "string" } } ], "responses": { "200": { - "description": "Successfully built the process for export", + "description": "Successfully found the screen", "content": { "application/json": { "schema": { - "properties": { - "url": { - "type": "string" - } - }, - "type": "object" + "$ref": "#/components/schemas/screens" } } } @@ -5048,34 +4782,48 @@ } } }, - "/processes/import/{code}/is_ready": { - "head": { + "/script_categories": { + "get": { "tags": [ - "Processes" + "Script Categories" ], - "summary": "Check if the import is ready", - "description": "Check if the import is ready", - "operationId": "6a131993b7c879ddcd3d3a291dd8380f", + "summary": "Returns all scripts categories that the user has access to", + "description": "Display a listing of the Script Categories.", + "operationId": "getScriptCategories", "parameters": [ { - "name": "code", - "in": "path", - "description": "Import code", - "required": true, + "name": "filter", + "in": "query", + "description": "Filter results by string. Searches Name, Description, and Status. All fields must match exactly.", "schema": { "type": "string" } + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "check is import is ready", + "description": "list of scripts categories", "content": { "application/json": { "schema": { "properties": { - "ready": { - "type": "boolean" + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ScriptCategory" + } + }, + "meta": { + "type": "object" } }, "type": "object" @@ -5084,201 +4832,176 @@ } } } - } - }, - "/processes/{process_id}/import/assignments": { + }, "post": { "tags": [ - "Processes" - ], - "summary": "Update assignments after import", - "description": "Import Assignments of process.", - "operationId": "assignmentProcess", - "parameters": [ - { - "name": "process_id", - "in": "path", - "description": "ID of process to return", - "required": true, - "schema": { - "type": "integer" - } - } + "Script Categories" ], + "summary": "Save a new Script Category", + "description": "Store a newly created Script Category in storage", + "operationId": "createScriptCategory", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProcessAssignments" + "$ref": "#/components/schemas/ScriptCategoryEditable" } } } }, "responses": { - "204": { - "description": "success" + "201": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScriptCategory" + } + } + } } } } }, - "/process_events/{process_id}": { - "post": { + "/script_categories/{script_category_id}": { + "get": { "tags": [ - "Processes" + "Script Categories" ], - "summary": "Start a new process", - "description": "Trigger an start event within a process.", - "operationId": "triggerStartEvent", + "summary": "Get single script category by ID", + "description": "Display the specified script category.", + "operationId": "getScriptCategoryById", "parameters": [ { - "name": "process_id", + "name": "script_category_id", "in": "path", - "description": "ID of process to return", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "event", - "in": "query", - "description": "Node ID of the start event", + "description": "ID of script category to return", "required": true, "schema": { "type": "string" } } ], - "requestBody": { - "description": "data that will be stored as part of the created request", - "required": false, - "content": { - "application/json": { - "schema": { - "type": "object" - } - } - } - }, "responses": { "200": { - "description": "success", + "description": "Successfully found the script", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/processRequest" + "$ref": "#/components/schemas/ScriptCategory" } } } } } - } - }, - "/processes/{process}/stages": { - "get": { + }, + "put": { "tags": [ - "Processes" + "Script Categories" ], - "summary": "Get the list of stages for a process", - "description": "Get stages of a process", - "operationId": "b40606bf1f4f04479be88823f470626f", + "summary": "Update a script Category", + "description": "Updates the current element", + "operationId": "updateScriptCategory", "parameters": [ { - "name": "process", + "name": "script_category_id", "in": "path", - "description": "ID of the process", + "description": "ID of script category to return", "required": true, "schema": { - "type": "integer" - } - }, - { - "name": "alternative", - "in": "query", - "description": "Alternative version (A or B)", - "required": false, - "schema": { - "type": "string" + "type": "string" } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScriptCategoryEditable" + } + } + } + }, "responses": { "200": { - "description": "List of stages", + "description": "success", "content": { "application/json": { "schema": { - "type": "array", - "items": { - "properties": { - "id": { - "type": "integer" - }, - "order": { - "type": "integer" - }, - "name": { - "type": "string" - }, - "selected": { - "type": "boolean" - } - }, - "type": "object" - } + "$ref": "#/components/schemas/ScriptCategory" } } } } } }, - "post": { + "delete": { "tags": [ - "Processes" + "Script Categories" ], - "summary": "Save or update the list of stages for a process", - "description": "Save stages for a process", - "operationId": "eb23a62117463592164d70f29aecdf9b", + "summary": "Delete a script category", + "description": "Remove the specified resource from storage.", + "operationId": "deleteScriptCategory", "parameters": [ { - "name": "process", + "name": "script_category_id", "in": "path", - "description": "ID of the process", + "description": "ID of script category to return", "required": true, "schema": { - "type": "integer" + "type": "string" } + } + ], + "responses": { + "204": { + "description": "success" + } + } + } + }, + "/scripts": { + "get": { + "tags": [ + "Scripts" + ], + "summary": "Returns all scripts that the user has access to", + "description": "Get a list of scripts in a process.", + "operationId": "getScripts", + "parameters": [ + { + "$ref": "#/components/parameters/filter" }, { - "name": "alternative", - "in": "query", - "description": "Alternative version (A or B)", - "required": false, - "schema": { - "type": "string" - } + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { + "responses": { + "200": { + "description": "list of scripts", + "content": { + "application/json": { + "schema": { "properties": { - "id": { - "type": "integer" - }, - "order": { - "type": "integer" - }, - "label": { - "type": "string" + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/scripts" + } }, - "selected": { - "type": "boolean" + "meta": { + "type": "object" } }, "type": "object" @@ -5286,31 +5009,32 @@ } } } + } + }, + "post": { + "tags": [ + "Scripts" + ], + "summary": "Save a new script", + "description": "Create a new script in a process.", + "operationId": "createScript", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/scriptsEditable" + } + } + } }, "responses": { - "200": { - "description": "Updated stages", + "201": { + "description": "success", "content": { "application/json": { "schema": { - "type": "array", - "items": { - "properties": { - "id": { - "type": "integer" - }, - "order": { - "type": "integer" - }, - "name": { - "type": "string" - }, - "selected": { - "type": "boolean" - } - }, - "type": "object" - } + "$ref": "#/components/schemas/scripts" } } } @@ -5318,56 +5042,72 @@ } } }, - "/processes/{process}/aggregation": { - "get": { + "/scripts/{script_id}/preview": { + "post": { "tags": [ - "Processes" + "Scripts" ], - "summary": "Get the aggregation configuration for a process", - "description": "Get aggregation for a process", - "operationId": "ecf07de0e8ce9b5876c72ea0133d83a4", + "summary": "Test script code without saving it", + "description": "Previews executing a script, with sample data/config data", + "operationId": "previewScript", "parameters": [ { - "name": "process", + "name": "script_id", "in": "path", - "description": "ID of the process", "required": true, "schema": { "type": "integer" } } ], - "responses": { - "200": { - "description": "Aggregation configuration", - "content": { - "application/json": { - "schema": { - "properties": { - "aggregation": { - "description": "string containing var aggregation", - "type": "string" + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "type": "object" } }, - "type": "object" - } + "config": { + "type": "array", + "items": { + "type": "object" + } + }, + "code": { + "type": "string" + }, + "nonce": { + "type": "string" + } + }, + "type": "object" } } } + }, + "responses": { + "200": { + "description": "success if the script was queued" + } } - }, + } + }, + "/scripts/execute/{script_id}": { "post": { "tags": [ - "Processes" + "Scripts" ], - "summary": "Save or update the aggregation field for a process", - "description": "Updates the aggregation field of a process. If no aggregation is provided, defaults to 'amount'.", - "operationId": "8b6d8704835d8571bc50e31938fd7ded", + "summary": "Execute script", + "description": "Executes a script, with sample data/config data", + "operationId": "executeScript", "parameters": [ { - "name": "process", + "name": "script_id", "in": "path", - "description": "ID of the process", "required": true, "schema": { "type": "integer" @@ -5375,15 +5115,21 @@ } ], "requestBody": { - "required": false, "content": { "application/json": { "schema": { "properties": { - "aggregation": { - "description": "Field name to use for aggregation (defaults to 'amount' if not provided)", - "type": "string", - "example": "amount" + "data": { + "type": "array", + "items": { + "type": "object" + } + }, + "config": { + "type": "array", + "items": { + "type": "object" + } } }, "type": "object" @@ -5393,283 +5139,211 @@ }, "responses": { "200": { - "description": "Updated aggregation field", + "description": "success if the script was queued", "content": { "application/json": { "schema": { - "properties": { - "data": { - "description": "The saved aggregation field value", - "type": "string", - "example": "amount" - } - }, - "type": "object" + "$ref": "#/components/schemas/scriptsPreview" } } } - }, - "404": { - "description": "Process not found" } } } }, - "/processes/{process}/stage-mapping": { + "/scripts/execution/{key}": { "get": { "tags": [ - "Processes" + "Scripts" ], - "summary": "Get process stages configuration", - "description": "Retrieves and formats the stages configuration for a specific process, including total counts and individual stages.", - "operationId": "getStageMapping", + "summary": "Get the response of a script execution by execution key", + "description": "Get the response of a script execution", + "operationId": "getScriptExecutionResponse", "parameters": [ { - "name": "process", + "name": "key", "in": "path", - "description": "ID of the process", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { "200": { - "description": "Successful operation", + "description": "response of a script execution", "content": { "application/json": { - "schema": { - "properties": { - "data": { - "properties": { - "total": { - "properties": { - "stage_id": { - "type": "number", - "example": "0" - }, - "stage_name": { - "type": "string", - "example": "Total Cases" - }, - "percentage": { - "type": "number", - "example": 100 - }, - "percentage_format": { - "type": "string", - "example": "100%" - }, - "agregation_sum": { - "type": "number", - "example": 50000 - }, - "agregation_count": { - "type": "number", - "example": 150 - } - }, - "type": "object" - }, - "stages": { - "type": "array", - "items": { - "properties": { - "stage_id": { - "type": "number", - "example": "1" - }, - "stage_name": { - "type": "string", - "example": "In progress" - }, - "percentage": { - "type": "number", - "example": 60, - "nullable": true - }, - "percentage_format": { - "type": "string", - "example": "60%" - }, - "agregation_sum": { - "type": "number", - "example": 28678, - "nullable": true - }, - "agregation_count": { - "type": "number", - "example": 100, - "nullable": true - } - }, - "type": "object" - } - } - }, - "type": "object" - } - }, - "type": "object" - } + "schema": {} } } } } } }, - "/api/processes/{process}/default-stages": { + "/scripts/{script_id}": { "get": { "tags": [ - "Processes" + "Scripts" ], - "summary": "Get default process stages configuration", - "description": "Retrieves and formats the default stages configuration for a process.", - "operationId": "getDefaultStagesPerProcess", + "summary": "Get single script by ID", + "description": "Get a single script in a process.", + "operationId": "getScriptsById", "parameters": [ { - "name": "process", + "name": "script_id", "in": "path", - "description": "ID of the process", + "description": "ID of script to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { "200": { - "description": "Successful operation", + "description": "Successfully found the script", "content": { "application/json": { "schema": { - "type": "array", - "items": { - "properties": { - "stage_id": { - "type": "number", - "example": "1" - }, - "stage_name": { - "type": "string", - "example": "In progress" - }, - "percentage": { - "type": "number", - "example": 60, - "nullable": true - }, - "percentage_format": { - "type": "string", - "example": "60%" - }, - "agregation_sum": { - "type": "number", - "example": 28678, - "nullable": true - }, - "agregation_count": { - "type": "number", - "example": 100, - "nullable": true - } - }, - "type": "object" - } + "$ref": "#/components/schemas/scripts" } } } } } + }, + "put": { + "tags": [ + "Scripts" + ], + "summary": "Update a script", + "description": "Update a script in a process.", + "operationId": "updateScript", + "parameters": [ + { + "name": "script_id", + "in": "path", + "description": "ID of script to return", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/scriptsEditable" + } + } + } + }, + "responses": { + "204": { + "description": "success" + } + } + }, + "delete": { + "tags": [ + "Scripts" + ], + "summary": "Delete a script", + "description": "Delete a script in a process.", + "operationId": "deleteScript", + "parameters": [ + { + "name": "script_id", + "in": "path", + "description": "ID of script to return", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "success" + } + } } }, - "/api/processes/{process}/metrics": { - "get": { + "/scripts/{script_id}/draft": { + "put": { "tags": [ - "Processes" + "Scripts" ], - "summary": "Get process metrics configuration", - "description": "Retrieves and formats the metrics configuration for a specific process. Supports different formats like 'student' or default metrics.", - "operationId": "getMetricsPerProcess", + "summary": "Update a draft script", + "description": "Update a draft script.", + "operationId": "updateDraftScript", "parameters": [ { - "name": "process", + "name": "script_id", "in": "path", - "description": "ID of the process", + "description": "ID of script to return", "required": true, "schema": { - "type": "integer" + "type": "string" } - }, + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/scriptsEditable" + } + } + } + }, + "responses": { + "204": { + "description": "success" + } + } + } + }, + "/scripts/{scripts_id}/duplicate": { + "put": { + "tags": [ + "Scripts" + ], + "summary": "duplicate a script", + "description": "Duplicate a Script.", + "operationId": "duplicateScript", + "parameters": [ { - "name": "format", - "in": "query", - "description": "Format type of the metrics (e.g., 'student')", - "required": false, + "name": "scripts_id", + "in": "path", + "description": "ID of script to return", + "required": true, "schema": { - "type": "string", - "default": "student", - "enum": [ - "student", - "default" - ] + "type": "string" } } ], - "responses": { - "200": { - "description": "Successful operation", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "properties": { - "id": { - "type": "integer", - "example": 1 - }, - "metric_description": { - "type": "string", - "example": "Max amount available" - }, - "metric_count": { - "type": "integer", - "example": 10, - "nullable": true - }, - "metric_count_description": { - "type": "string", - "example": "Across 10 applicants" - }, - "metric_value": { - "type": "number", - "example": 84000 - }, - "metric_value_unit": { - "type": "string", - "example": "k" - } - }, - "type": "object" - } - } + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/scriptsEditable" } } - }, - "400": { - "description": "Invalid format parameter", + } + }, + "responses": { + "201": { + "description": "success", "content": { "application/json": { "schema": { - "properties": { - "error": { - "type": "string", - "example": "Invalid format parameter" - } - }, - "type": "object" + "$ref": "#/components/schemas/scripts" } } } @@ -5677,30 +5351,15 @@ } } }, - "/requests": { + "/script-executors": { "get": { "tags": [ - "Process Requests" + "Rebuild Script Executors" ], - "summary": "Returns all process Requests that the user has access to", - "description": "Display a listing of the resource.", - "operationId": "getProcessesRequests", + "summary": "Returns all script executors that the user has access to", + "description": "Get a list of script executors.", + "operationId": "getScriptExecutors", "parameters": [ - { - "name": "type", - "in": "query", - "description": "Only return requests by type (all|in_progress|completed)", - "required": false, - "schema": { - "type": "string", - "enum": [ - "all", - "in_progress", - "completed", - "started_me" - ] - } - }, { "$ref": "#/components/parameters/filter" }, @@ -5712,14 +5371,11 @@ }, { "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" } ], "responses": { "200": { - "description": "list of processes", + "description": "list of script executors", "content": { "application/json": { "schema": { @@ -5727,11 +5383,11 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/processRequest" + "$ref": "#/components/schemas/scriptExecutors" } }, "meta": { - "$ref": "#/components/schemas/metadata" + "type": "object" } }, "type": "object" @@ -5740,61 +5396,62 @@ } } } - } - }, - "/requests/{process_request_id}": { - "get": { + }, + "post": { "tags": [ - "Process Requests" + "Rebuild Script Executors" ], - "summary": "Get single process request by ID", - "description": "Display the specified resource.", - "operationId": "getProcessRequestById", - "parameters": [ - { - "name": "process_request_id", - "in": "path", - "description": "ID of process request to return", - "required": true, - "schema": { - "type": "integer" + "summary": "Create a script executor", + "description": "Create a script executor", + "operationId": "createScriptExecutor", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/scriptExecutorsEditable" + } } - }, - { - "$ref": "#/components/parameters/include" } - ], + }, "responses": { "200": { - "description": "Successfully found the process", + "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/processRequest" + "properties": { + "status": { + "type": "string" + }, + "id": { + "type": "string" + } + }, + "type": "object" } } } - }, - "404": { - "$ref": "#/components/responses/404" } } - }, + } + }, + "/script-executors/{script_executor}": { "put": { "tags": [ - "Process Requests" + "Rebuild Script Executors" ], - "summary": "Update a process request", - "description": "Update a request", - "operationId": "updateProcessRequest", + "summary": "Update script executor", + "description": "Update and rebuild the script executor", + "operationId": "updateScriptExecutor", "parameters": [ { - "name": "process_request_id", + "name": "script_executor", "in": "path", - "description": "ID of process request to return", + "description": "ID of script executor to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], @@ -5803,98 +5460,119 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/processRequestEditable" + "$ref": "#/components/schemas/scriptExecutorsEditable" } } } }, "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "properties": { + "status": { + "type": "string" + } + }, + "type": "object" + } + } + } } } }, "delete": { "tags": [ - "Process Requests" + "Rebuild Script Executors" ], - "summary": "Delete a process request", - "description": "Delete a request", - "operationId": "deleteProcessRequest", + "summary": "Delete a script executor", + "description": "Delete a script executor", + "operationId": "deleteScriptExecutor", "parameters": [ { - "name": "process_request_id", + "name": "script_executor", "in": "path", - "description": "ID of process request to return", + "description": "ID of script executor to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { - "204": { + "200": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/processRequest" + "properties": { + "status": { + "type": "string" + } + }, + "type": "object" } } } - }, - "404": { - "$ref": "#/components/responses/404" } } } }, - "/requests/{process_request_id}/events/{event_id}": { + "/script-executors/cancel": { "post": { "tags": [ - "Process Requests" + "Rebuild Script Executors" ], - "summary": "Update a process request event", - "description": "Trigger a intermediate catch event", - "operationId": "updateProcessRequestEvent", - "parameters": [ - { - "name": "process_request_id", - "in": "path", - "description": "ID of process request to return", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "event_id", - "in": "path", - "description": "ID of process event to return", - "required": true, - "schema": { - "type": "string" + "summary": "Cancel a script executor", + "description": "Cancel a script executor", + "operationId": "cancelScriptExecutor", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "pidFile": { + "type": "string" + } + }, + "type": "object" + } } } - ], + }, "responses": { - "204": { - "description": "success" + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "properties": { + "status": { + "type": "string" + }, + "id": { + "type": "string" + } + }, + "type": "object" + } + } + } } } } }, - "/requests/{request_id}/files": { + "/script-executors/available-languages": { "get": { "tags": [ - "Request Files" + "Rebuild Script Executors" ], - "summary": "Returns the list of files associated with a request", - "description": "Display a listing of the resource.", - "operationId": "getRequestFiles", + "summary": "Returns all available languages", + "description": "Get a list of available languages.", + "operationId": "getAvailableLanguages", "parameters": [ { "$ref": "#/components/parameters/filter" @@ -5907,20 +5585,11 @@ }, { "$ref": "#/components/parameters/per_page" - }, - { - "name": "request_id", - "in": "path", - "description": "ID of the request", - "required": true, - "schema": { - "type": "integer" - } } ], "responses": { "200": { - "description": "list of files", + "description": "list of available languages", "content": { "application/json": { "schema": { @@ -5928,16 +5597,11 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/media" + "$ref": "#/components/schemas/availableLanguages" } }, "meta": { - "type": "object", - "allOf": [ - { - "$ref": "#/components/schemas/metadata" - } - ] + "type": "object" } }, "type": "object" @@ -5946,63 +5610,45 @@ } } } - }, - "post": { + } + }, + "/security-logs": { + "get": { "tags": [ - "Request Files" + "Security Logs" ], - "summary": "Save a new media file to a request", - "description": "Store a newly created resource in storage.", - "operationId": "createRequestFile", + "summary": "Returns all security logs", + "description": "Get a list of Security Logs.", + "operationId": "getSecurityLogs", "parameters": [ { - "name": "request_id", - "in": "path", - "description": "ID of the request", - "required": true, - "schema": { - "type": "integer" - } + "$ref": "#/components/parameters/filter" }, { - "name": "data_name", - "in": "query", - "description": "Variable name in the request data to use for the file name", - "required": false, - "schema": { - "type": "string" - } + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" } ], - "requestBody": { - "required": true, - "content": { - "multipart/form-data": { - "schema": { - "properties": { - "file": { - "description": "save a new media file", - "type": "string", - "format": "binary" - } - }, - "type": "object" - } - } - } - }, "responses": { "200": { - "description": "success", + "description": "list of security logs", "content": { "application/json": { "schema": { "properties": { - "message": { - "type": "string" + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/securityLog" + } }, - "fileUploadId": { - "type": "integer" + "meta": { + "type": "object" } }, "type": "object" @@ -6013,104 +5659,150 @@ } } }, - "/requests/{request_id}/files/{file_id}": { + "/security-logs/{securityLog}": { "get": { "tags": [ - "Request Files" + "Security Logs" ], - "summary": "Get a file uploaded to a request", + "summary": "Get single security log by ID", "description": "Display the specified resource.", - "operationId": "getRequestFilesById", + "operationId": "getSecurityLog", "parameters": [ { - "name": "request_id", - "in": "path", - "description": "ID of the request", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "file_id", + "name": "securityLog", "in": "path", - "description": "ID of the file to return", + "description": "ID of security log to return", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], "responses": { "200": { - "description": "File stream", + "description": "Successfully found the security log", "content": { - "application/octet-stream": { + "application/json": { "schema": { - "type": "string", - "format": "binary" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/securityLog" + } + } + }, + "type": "object" } } } - }, - "404": { - "$ref": "#/components/responses/404" } } - }, - "delete": { + } + }, + "/settings": { + "get": { "tags": [ - "Request Files" + "Settings" ], - "summary": "Delete all media associated with a request", - "description": "Remove the specified resource from storage.", - "operationId": "deleteRequestFile", + "summary": "Returns all settings", + "description": "Display a listing of the resource.", + "operationId": "getSettings", "parameters": [ { - "name": "file_id", - "in": "path", - "description": "ID of the file", - "required": true, - "schema": { - "type": "integer" - } + "$ref": "#/components/parameters/filter" }, { - "name": "request_id", + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" + } + ], + "responses": { + "200": { + "description": "list of settings", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/settings" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" + } + } + } + } + } + } + }, + "/settings/{setting_id}": { + "put": { + "tags": [ + "Settings" + ], + "summary": "Update a setting", + "description": "Update a setting", + "operationId": "updateSetting", + "parameters": [ + { + "name": "setting_id", "in": "path", - "description": "ID of the request", + "description": "ID of setting to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/settingsEditable" + } + } + } + }, "responses": { "204": { "description": "success" }, "404": { "$ref": "#/components/responses/404" + }, + "422": { + "$ref": "#/components/responses/422" } } } }, - "/screen_categories": { + "/signals": { "get": { "tags": [ - "Screen Categories" + "Signals" ], - "summary": "Returns all screens categories that the user has access to", - "description": "Display a listing of the Screen Categories.", - "operationId": "getScreenCategories", + "summary": "Returns all signals", + "description": "Display a listing of the resource.", + "operationId": "getSignals", "parameters": [ { - "name": "filter", - "in": "query", - "description": "Filter results by string. Searches Name, Description, and Status. All fields must match exactly.", - "schema": { - "type": "string" - } + "$ref": "#/components/parameters/filter" }, { "$ref": "#/components/parameters/order_by" @@ -6124,7 +5816,7 @@ ], "responses": { "200": { - "description": "list of screens categories", + "description": "list of signals", "content": { "application/json": { "schema": { @@ -6132,7 +5824,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/ScreenCategory" + "$ref": "#/components/schemas/signals" } }, "meta": { @@ -6148,17 +5840,17 @@ }, "post": { "tags": [ - "Screen Categories" + "Signals" ], - "summary": "Save a new Screen Category", - "description": "Store a newly created Screen Category in storage", - "operationId": "createScreenCategory", + "summary": "Creates a new Global Signal", + "description": "Creates a new global signal", + "operationId": "createSignal", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScreenCategoryEditable" + "$ref": "#/components/schemas/signalsEditable" } } } @@ -6169,7 +5861,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScreenCategory" + "$ref": "#/components/schemas/signals" } } } @@ -6177,19 +5869,19 @@ } } }, - "/screen_categories/{screen_category_id}": { + "/signals/{signal_id}": { "get": { "tags": [ - "Screen Categories" + "Signals" ], - "summary": "Get single screen category by ID", - "description": "Display the specified screen category.", - "operationId": "getScreenCategoryById", + "summary": "Get a single signal by ID", + "description": "Display the specified resource.", + "operationId": "getSignalsById", "parameters": [ { - "name": "screen_category_id", + "name": "signal_id", "in": "path", - "description": "ID of screen category to return", + "description": "signal id", "required": true, "schema": { "type": "string" @@ -6198,11 +5890,11 @@ ], "responses": { "200": { - "description": "Successfully found the screen", + "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScreenCategory" + "$ref": "#/components/schemas/signals" } } } @@ -6211,16 +5903,15 @@ }, "put": { "tags": [ - "Screen Categories" + "Signals" ], - "summary": "Update a screen Category", - "description": "Updates the current element", - "operationId": "updateScreenCategory", + "summary": "Update a signal", + "operationId": "updateSignal", "parameters": [ { - "name": "screen_category_id", + "name": "signal_id", "in": "path", - "description": "ID of screen category to return", + "description": "ID of signal to update", "required": true, "schema": { "type": "string" @@ -6232,7 +5923,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScreenCategoryEditable" + "$ref": "#/components/schemas/signalsEditable" } } } @@ -6243,7 +5934,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScreenCategory" + "$ref": "#/components/schemas/signals" } } } @@ -6252,16 +5943,15 @@ }, "delete": { "tags": [ - "Screen Categories" + "Signals" ], - "summary": "Delete a screen category", - "description": "Remove the specified resource from storage.", - "operationId": "deleteScreenCategory", + "summary": "Delete a signal", + "operationId": "deleteSignal", "parameters": [ { - "name": "screen_category_id", + "name": "signal_id", "in": "path", - "description": "ID of screen category to return", + "description": "ID of signal to delete", "required": true, "schema": { "type": "string" @@ -6275,14 +5965,14 @@ } } }, - "/screens": { + "/task_assignments": { "get": { "tags": [ - "Screens" + "Task Assignments" ], - "summary": "Returns all screens that the user has access to", - "description": "Get a list of Screens.", - "operationId": "getScreens", + "summary": "Returns all task assignments", + "description": "Display a listing of the resource.", + "operationId": "getTaskAssignments", "parameters": [ { "$ref": "#/components/parameters/filter" @@ -6295,23 +5985,11 @@ }, { "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" - }, - { - "name": "exclude", - "in": "query", - "description": "Comma separated list of fields to exclude from the response", - "schema": { - "type": "string", - "default": "" - } } ], "responses": { "200": { - "description": "list of screens", + "description": "list of task assignments", "content": { "application/json": { "schema": { @@ -6319,7 +5997,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/screens" + "$ref": "#/components/schemas/taskAssignments" } }, "meta": { @@ -6335,17 +6013,17 @@ }, "post": { "tags": [ - "Screens" + "Task Assignments" ], - "summary": "Save a new screens", - "description": "Create a new Screen.", - "operationId": "createScreen", + "summary": "Save a new Task Assignment", + "description": "Store a newly created task assignment in storage.", + "operationId": "createTaskAssignments", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screensEditable" + "$ref": "#/components/schemas/taskAssignmentsEditable" } } } @@ -6356,61 +6034,73 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screens" + "$ref": "#/components/schemas/taskAssignments" } } } + }, + "422": { + "$ref": "#/components/responses/422" } } } }, - "/screens/{screens_id}": { - "get": { + "/task_assignments/{task_assignment}": { + "put": { "tags": [ - "Screens" + "Task Assignments" ], - "summary": "Get single screens by ID", - "description": "Get a single Screen.", - "operationId": "getScreensById", + "summary": "Update a Task Assignment", + "description": "Update a task assignment", + "operationId": "updateTaskAssignments", "parameters": [ { - "name": "screens_id", + "name": "task_assignment", "in": "path", - "description": "ID of screens to return", + "description": "ID of task assignment to update", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], - "responses": { - "200": { - "description": "Successfully found the screen", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/screens" - } + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/taskAssignmentsEditable" } } } + }, + "responses": { + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "422": { + "$ref": "#/components/responses/422" + } } }, - "put": { + "delete": { "tags": [ - "Screens" + "Task Assignments" ], - "summary": "Update a screen", - "description": "Update a Screen.", - "operationId": "updateScreen", + "summary": "Delete a Task Assignment", + "description": "Remove an assignment", + "operationId": "deleteTaskAssignments", "parameters": [ { - "name": "screens_id", + "name": "task_assignment", "in": "path", - "description": "ID of screen to return", + "description": "ID of task assignment to delete", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], @@ -6419,94 +6109,142 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screensEditable" + "$ref": "#/components/schemas/taskAssignmentsEditable" } } } }, "responses": { - "204": { + "200": { "description": "success" } } - }, - "delete": { + } + }, + "/tasks": { + "get": { "tags": [ - "Screens" + "Tasks" ], - "summary": "Delete a screen", - "description": "Delete a Screen.", - "operationId": "deleteScreen", + "summary": "Returns all tasks that the user has access to", + "description": "Display a listing of the resource.", + "operationId": "getTasks", "parameters": [ { - "name": "screens_id", - "in": "path", - "description": "ID of screen to return", - "required": true, + "name": "process_request_id", + "in": "query", + "description": "Process request id", + "required": false, "schema": { - "type": "string" + "type": "integer" + } + }, + { + "name": "all_tasks", + "in": "query", + "description": "Return all task types. Not just user tasks.", + "required": false, + "schema": { + "type": "boolean" } + }, + { + "$ref": "#/components/parameters/filter" + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/include" } ], "responses": { - "204": { - "description": "success" + "200": { + "description": "list of tasks", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/processRequestToken" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" + } + } + } } } } }, - "/screens/{screens_id}/draft": { - "put": { + "/tasks/{task_id}": { + "get": { "tags": [ - "Screens" + "Tasks" ], - "summary": "Update a draft screen", - "description": "Update a draft Screen.", - "operationId": "updateDraftScreen", + "summary": "Get a single task by ID", + "description": "Display the specified resource.", + "operationId": "getTasksById", "parameters": [ { - "name": "screens_id", + "name": "task_id", "in": "path", - "description": "ID of screen to return", + "description": "task id", "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "include", + "in": "query", + "description": "include", + "required": false, "schema": { "type": "string" } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/screensEditable" + "responses": { + "200": { + "description": "success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/processRequestToken" + } } } - } - }, - "responses": { - "204": { - "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" } } - } - }, - "/screens/{screens_id}/duplicate": { + }, "put": { "tags": [ - "Screens" + "Tasks" ], - "summary": "duplicate a screen", - "description": "duplicate a Screen.", - "operationId": "duplicateScreen", + "summary": "Update a task", + "description": "Updates the current element", + "operationId": "updateTask", "parameters": [ { - "name": "screens_id", + "name": "task_id", "in": "path", - "description": "ID of screen to return", + "description": "ID of task to update", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], @@ -6515,79 +6253,123 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screensEditable" + "required": [ + "status", + "data" + ], + "properties": { + "status": { + "type": "string", + "example": "COMPLETED" + }, + "data": { + "type": "object" + } + }, + "type": "object" } } } }, "responses": { - "201": { + "200": { "description": "success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screens" + "$ref": "#/components/schemas/processRequestToken" } } } + }, + "404": { + "$ref": "#/components/responses/404" + }, + "422": { + "$ref": "#/components/responses/422" } } } }, - "/screens/{screensId}/export": { - "post": { + "/users": { + "get": { "tags": [ - "Screens" + "Users" ], - "summary": "Export a single screen by ID", - "description": "Export the specified screen.", - "operationId": "exportScreen", + "summary": "Returns all users", + "description": "Display a listing of the resource.", + "operationId": "getUsers", "parameters": [ { - "name": "screensId", - "in": "path", - "description": "ID of screen to return", - "required": true, + "$ref": "#/components/parameters/status" + }, + { + "name": "filter", + "in": "query", + "description": "Filter results by string. Searches First Name, Last Name, Email and Username.", "schema": { "type": "string" } + }, + { + "$ref": "#/components/parameters/order_by" + }, + { + "$ref": "#/components/parameters/order_direction" + }, + { + "$ref": "#/components/parameters/per_page" + }, + { + "$ref": "#/components/parameters/include" + }, + { + "name": "exclude_ids", + "in": "query", + "description": "Comma separated list of IDs to exclude from the response", + "schema": { + "type": "string", + "default": "" + } } ], "responses": { "200": { - "description": "Successfully exported the screen", + "description": "list of users", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/screenExported" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/users" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" } } } } } - } - }, - "/screens/import": { + }, "post": { "tags": [ - "Screens" + "Users" ], - "summary": "Import a new screen", - "description": "Import the specified screen.", - "operationId": "importScreen", + "summary": "Save a new users", + "description": "Store a newly created resource in storage.", + "operationId": "createUser", "requestBody": { "required": true, "content": { - "multipart/form-data": { + "application/json": { "schema": { - "properties": { - "file": { - "description": "file to import", - "type": "string", - "format": "binary" - } - }, - "type": "object" + "$ref": "#/components/schemas/usersEditable" } } } @@ -6598,137 +6380,47 @@ "content": { "application/json": { "schema": { - "properties": { - "status": { - "type": "object" - } - }, - "type": "object" + "$ref": "#/components/schemas/users" } } } + }, + "422": { + "$ref": "#/components/responses/422" } } } }, - "/screens/preview": { - "post": { + "/users_task_count": { + "get": { "tags": [ - "Screens" + "Users" ], - "summary": "Preview a screen", - "description": "Get preview a screen", - "operationId": "preview", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "properties": { - "config": { - "type": "object" - }, - "watchers": { - "type": "object" - }, - "computed": { - "type": "object" - }, - "custom_css": { - "type": "string" - } - }, - "type": "object" - } - } - } - }, - "responses": { - "200": { - "description": "Successfully found the screen", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/screens" - } - } - } - } - } - } - }, - "/screens/{screen_id}/translate/{language}": { - "get": { - "tags": [ - "Screens" - ], - "summary": "Translates the screen to the desired language", - "description": "Translates the controls inside a screen", - "operationId": "translateScreen", + "summary": "Returns all users and their total tasks", + "description": "Display a listing of users and their task counts.", + "operationId": "getUsersTaskCount", "parameters": [ { - "name": "screen_id", - "in": "path", - "description": "ID of the screen", - "required": true, + "name": "filter", + "in": "query", + "description": "Filter results by string. Searches First Name, Last Name, Email, or Username.", "schema": { "type": "string" } }, { - "name": "language", - "in": "path", - "description": "Language used for the translation of the string", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Successfully found the screen", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/screens" - } - } - } - } - } - } - }, - "/script_categories": { - "get": { - "tags": [ - "Script Categories" - ], - "summary": "Returns all scripts categories that the user has access to", - "description": "Display a listing of the Script Categories.", - "operationId": "getScriptCategories", - "parameters": [ - { - "name": "filter", + "name": "include_ids", "in": "query", - "description": "Filter results by string. Searches Name, Description, and Status. All fields must match exactly.", + "description": "Comma separated list of user IDs to include in the response. Eg. 1,2,3", "schema": { - "type": "string" + "type": "string", + "default": "" } - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "list of scripts categories", + "description": "List of users with task counts", "content": { "application/json": { "schema": { @@ -6736,11 +6428,11 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/ScriptCategory" + "$ref": "#/components/schemas/users" } }, "meta": { - "type": "object" + "$ref": "#/components/schemas/metadata" } }, "type": "object" @@ -6749,85 +6441,58 @@ } } } - }, - "post": { - "tags": [ - "Script Categories" - ], - "summary": "Save a new Script Category", - "description": "Store a newly created Script Category in storage", - "operationId": "createScriptCategory", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ScriptCategoryEditable" - } - } - } - }, - "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ScriptCategory" - } - } - } - } - } } }, - "/script_categories/{script_category_id}": { + "/users/{user_id}": { "get": { "tags": [ - "Script Categories" + "Users" ], - "summary": "Get single script category by ID", - "description": "Display the specified script category.", - "operationId": "getScriptCategoryById", + "summary": "Get single user by ID", + "description": "Display the specified resource.", + "operationId": "getUserById", "parameters": [ { - "name": "script_category_id", + "name": "user_id", "in": "path", - "description": "ID of script category to return", + "description": "ID of user to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { "200": { - "description": "Successfully found the script", + "description": "Successfully found the process", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScriptCategory" + "$ref": "#/components/schemas/users" } } } + }, + "404": { + "$ref": "#/components/responses/404" } } }, "put": { "tags": [ - "Script Categories" + "Users" ], - "summary": "Update a script Category", - "description": "Updates the current element", - "operationId": "updateScriptCategory", + "summary": "Update a user", + "description": "Update a user", + "operationId": "updateUser", "parameters": [ { - "name": "script_category_id", + "name": "user_id", "in": "path", - "description": "ID of script category to return", + "description": "ID of user to return", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], @@ -6836,141 +6501,142 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ScriptCategoryEditable" + "$ref": "#/components/schemas/usersEditable" } } } }, "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ScriptCategory" - } - } - } + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "422": { + "$ref": "#/components/responses/422" } } }, "delete": { "tags": [ - "Script Categories" + "Users" ], - "summary": "Delete a script category", - "description": "Remove the specified resource from storage.", - "operationId": "deleteScriptCategory", + "summary": "Delete a user", + "description": "Delete a user", + "operationId": "deleteUser", "parameters": [ { - "name": "script_category_id", + "name": "user_id", "in": "path", - "description": "ID of script category to return", + "description": "ID of user to delete", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], "responses": { "204": { "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" } } } }, - "/scripts": { + "/users/{user_id}/get_pinned_controls": { "get": { "tags": [ - "Scripts" + "Users" ], - "summary": "Returns all scripts that the user has access to", - "description": "Get a list of scripts in a process.", - "operationId": "getScripts", + "summary": "Get the pinned BPMN elements of a specific user", + "description": "Return the user's pinned nodes.", + "operationId": "getPinnnedControls", "parameters": [ { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" + "name": "user_id", + "in": "path", + "description": "ID of user to return the pinned nodes of", + "required": true, + "schema": { + "type": "integer" + } } ], "responses": { "200": { - "description": "list of scripts", + "description": "Pinned nodes returned succesfully", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/scripts" - } - }, - "meta": { - "type": "object" - } - }, - "type": "object" + "$ref": "#/components/schemas/users" } } } + }, + "404": { + "$ref": "#/components/responses/404" } } - }, - "post": { + } + }, + "/users/{user_id}/update_pinned_controls": { + "put": { "tags": [ - "Scripts" + "Users" + ], + "summary": "Update a user's pinned BPMN elements on Modeler", + "description": "Update a user's pinned BPMN elements on Modeler", + "operationId": "updatePinnedControls", + "parameters": [ + { + "name": "user_id", + "in": "path", + "description": "ID of user to return", + "required": true, + "schema": { + "type": "integer" + } + } ], - "summary": "Save a new script", - "description": "Create a new script in a process.", - "operationId": "createScript", "requestBody": { "required": true, "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/scriptsEditable" + "$ref": "#/components/schemas/usersEditable" } } } }, "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/scripts" - } - } - } + "204": { + "description": "success" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "422": { + "$ref": "#/components/responses/422" } } } }, - "/scripts/{script_id}/preview": { - "post": { + "/users/{user_id}/groups": { + "put": { "tags": [ - "Scripts" + "Users" ], - "summary": "Test script code without saving it", - "description": "Previews executing a script, with sample data/config data", - "operationId": "previewScript", + "summary": "Set the groups a users belongs to", + "description": "Update a user's groups", + "operationId": "updateUserGroups", "parameters": [ { - "name": "script_id", + "name": "user_id", "in": "path", + "description": "ID of user", "required": true, "schema": { "type": "integer" @@ -6978,98 +6644,93 @@ } ], "requestBody": { + "required": true, "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "object" - }, - "config": { - "type": "object" - }, - "code": { - "type": "string" - }, - "nonce": { - "type": "string" - } - }, - "type": "object" + "$ref": "#/components/schemas/updateUserGroups" + } + } + } + }, + "responses": { + "204": { + "description": "success" + } + } + } + }, + "/users/restore": { + "put": { + "tags": [ + "Users" + ], + "summary": "Restore a soft deleted user", + "description": "Reverses the soft delete of a user", + "operationId": "restoreUser", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/restoreUser" } } } }, "responses": { "200": { - "description": "success if the script was queued" + "description": "success" } } } }, - "/scripts/execute/{script_id}": { - "post": { + "/users/get_filter_configuration/{name}": { + "get": { "tags": [ - "Scripts" + "Users" ], - "summary": "Execute script", - "description": "Executes a script, with sample data/config data", - "operationId": "executeScript", + "summary": "Get filter configuration by name", + "description": "Get filter configuration.", + "operationId": "getFilterConfiguration", "parameters": [ { - "name": "script_id", + "name": "name", "in": "path", "required": true, "schema": { - "type": "integer" + "type": "string" } } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "object" - }, - "config": { - "type": "object" - }, - "sync": { - "type": "boolean" - } - }, - "type": "object" - } - } - } - }, "responses": { "200": { - "description": "success if the script was queued", + "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/scriptsPreview" + "$ref": "#/components/schemas/users" } } } + }, + "404": { + "$ref": "#/components/responses/404" } } } }, - "/scripts/execution/{key}": { + "/users/store_filter_configuration/{name}": { "get": { "tags": [ - "Scripts" + "Users" ], - "summary": "Get the response of a script execution by execution key", - "description": "Get the response of a script execution", - "operationId": "getScriptExecutionResponse", + "summary": "Store filter configuration by name", + "description": "Store filter configuration.", + "operationId": "storeFilterConfiguration", "parameters": [ { - "name": "key", + "name": "name", "in": "path", "required": true, "schema": { @@ -7079,63 +6740,82 @@ ], "responses": { "200": { - "description": "response of a script execution", + "description": "Success", "content": { "application/json": { - "schema": {} + "schema": { + "$ref": "#/components/schemas/users" + } } } + }, + "404": { + "$ref": "#/components/responses/404" } } } }, - "/scripts/{script_id}": { + "/users/{user_id}/tokens": { "get": { "tags": [ - "Scripts" + "Personal Tokens" ], - "summary": "Get single script by ID", - "description": "Get a single script in a process.", - "operationId": "getScriptsById", + "summary": "Display listing of access tokens for the specified user.", + "description": "Display listing of access tokens for the specified user.", + "operationId": "getTokens", "parameters": [ { - "name": "script_id", + "name": "user_id", "in": "path", - "description": "ID of script to return", + "description": "User id", "required": true, "schema": { - "type": "string" + "type": "integer" } + }, + { + "$ref": "#/components/parameters/per_page" } ], "responses": { "200": { - "description": "Successfully found the script", + "description": "List of tokens.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/scripts" + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UserToken" + } + }, + "meta": { + "$ref": "#/components/schemas/metadata" + } + }, + "type": "object" } } } } } }, - "put": { + "post": { "tags": [ - "Scripts" + "Personal Tokens" ], - "summary": "Update a script", - "description": "Update a script in a process.", - "operationId": "updateScript", + "summary": "Create new token for a specific user", + "description": "Create a new personal access token for the user.", + "operationId": "createTokens", "parameters": [ { - "name": "script_id", + "name": "user_id", "in": "path", - "description": "ID of script to return", + "description": "User id", "required": true, "schema": { - "type": "string" + "type": "integer" } } ], @@ -7144,265 +6824,92 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/scriptsEditable" + "properties": { + "name": { + "type": "string" + } + }, + "type": "object" } } } }, "responses": { - "204": { - "description": "success" + "201": { + "description": "New token instance", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserToken" + } + } + } } } - }, - "delete": { + } + }, + "/users/{user_id}/tokens/{token_id}": { + "get": { "tags": [ - "Scripts" + "Personal Tokens" ], - "summary": "Delete a script", - "description": "Delete a script in a process.", - "operationId": "deleteScript", + "summary": "Get single token by ID", + "description": "Show a personal access token for the user", + "operationId": "getTokenById", "parameters": [ { - "name": "script_id", + "name": "user_id", "in": "path", - "description": "ID of script to return", + "description": "ID of user", "required": true, "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "success" - } - } - } - }, - "/scripts/{script_id}/draft": { - "put": { - "tags": [ - "Scripts" - ], - "summary": "Update a draft script", - "description": "Update a draft script.", - "operationId": "updateDraftScript", - "parameters": [ - { - "name": "script_id", - "in": "path", - "description": "ID of script to return", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/scriptsEditable" - } + "type": "integer" } - } - }, - "responses": { - "204": { - "description": "success" - } - } - } - }, - "/scripts/{scripts_id}/duplicate": { - "put": { - "tags": [ - "Scripts" - ], - "summary": "duplicate a script", - "description": "Duplicate a Script.", - "operationId": "duplicateScript", - "parameters": [ + }, { - "name": "scripts_id", + "name": "token_id", "in": "path", - "description": "ID of script to return", + "description": "ID of token to return", "required": true, "schema": { "type": "string" } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/scriptsEditable" - } - } - } - }, - "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/scripts" - } - } - } - } - } - } - }, - "/script-executors": { - "get": { - "tags": [ - "Rebuild Script Executors" - ], - "summary": "Returns all script executors that the user has access to", - "description": "Get a list of script executors.", - "operationId": "getScriptExecutors", - "parameters": [ - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - } - ], "responses": { "200": { - "description": "list of script executors", + "description": "Successfully found the token", "content": { "application/json": { "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/scriptExecutors" - } - }, - "meta": { - "type": "object" - } - }, - "type": "object" + "$ref": "#/components/schemas/UserToken" } } } } } }, - "post": { - "tags": [ - "Rebuild Script Executors" - ], - "summary": "Create a script executor", - "description": "Create a script executor", - "operationId": "createScriptExecutor", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/scriptExecutorsEditable" - } - } - } - }, - "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "properties": { - "status": { - "type": "string" - }, - "id": { - "type": "string" - } - }, - "type": "object" - } - } - } - } - } - } - }, - "/script-executors/{script_executor}": { - "put": { + "delete": { "tags": [ - "Rebuild Script Executors" + "Personal Tokens" ], - "summary": "Update script executor", - "description": "Update and rebuild the script executor", - "operationId": "updateScriptExecutor", + "summary": "Delete a token", + "description": "Delete the given token for a user", + "operationId": "deleteToken", "parameters": [ { - "name": "script_executor", + "name": "user_id", "in": "path", - "description": "ID of script executor to return", + "description": "User ID", "required": true, "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/scriptExecutorsEditable" - } - } - } - }, - "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "properties": { - "status": { - "type": "string" - } - }, - "type": "object" - } - } + "type": "integer" } - } - } - }, - "delete": { - "tags": [ - "Rebuild Script Executors" - ], - "summary": "Delete a script executor", - "description": "Delete a script executor", - "operationId": "deleteScriptExecutor", - "parameters": [ + }, { - "name": "script_executor", + "name": "token_id", "in": "path", - "description": "ID of script executor to return", + "description": "Token ID", "required": true, "schema": { "type": "string" @@ -7410,1884 +6917,68 @@ } ], "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "properties": { - "status": { - "type": "string" - } - }, - "type": "object" - } - } - } + "204": { + "description": "success" } } } - }, - "/script-executors/cancel": { - "post": { - "tags": [ - "Rebuild Script Executors" - ], - "summary": "Cancel a script executor", - "description": "Cancel a script executor", - "operationId": "cancelScriptExecutor", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "properties": { - "pidFile": { - "type": "string" - } - }, - "type": "object" - } - } - } - }, - "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "properties": { - "status": { - "type": "string" - }, - "id": { - "type": "string" - } - }, - "type": "object" - } - } - } - } - } - } - }, - "/script-executors/available-languages": { - "get": { - "tags": [ - "Rebuild Script Executors" - ], - "summary": "Returns all available languages", - "description": "Get a list of available languages.", - "operationId": "getAvailableLanguages", - "parameters": [ - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - } - ], - "responses": { - "200": { - "description": "list of available languages", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/availableLanguages" - } - }, - "meta": { - "type": "object" - } - }, - "type": "object" - } - } - } - } - } - } - }, - "/security-logs": { - "get": { - "tags": [ - "Security Logs" - ], - "summary": "Returns all security logs", - "description": "Get a list of Security Logs.", - "operationId": "getSecurityLogs", - "parameters": [ - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - } - ], - "responses": { - "200": { - "description": "list of security logs", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/securityLog" - } - }, - "meta": { - "type": "object" - } - }, - "type": "object" - } - } - } - } - } - } - }, - "/security-logs/{securityLog}": { - "get": { - "tags": [ - "Security Logs" - ], - "summary": "Get single security log by ID", - "description": "Display the specified resource.", - "operationId": "getSecurityLog", - "parameters": [ - { - "name": "securityLog", - "in": "path", - "description": "ID of security log to return", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Successfully found the security log", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/securityLog" - } - } - }, - "type": "object" - } - } - } - } - } - } - }, - "/settings": { - "get": { - "tags": [ - "Settings" - ], - "summary": "Returns all settings", - "description": "Display a listing of the resource.", - "operationId": "getSettings", - "parameters": [ - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" - } - ], - "responses": { - "200": { - "description": "list of settings", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/settings" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" - } - } - } - } - } - } - }, - "/settings/{setting_id}": { - "put": { - "tags": [ - "Settings" - ], - "summary": "Update a setting", - "description": "Update a setting", - "operationId": "updateSetting", - "parameters": [ - { - "name": "setting_id", - "in": "path", - "description": "ID of setting to return", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/settingsEditable" - } - } - } - }, - "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "422": { - "$ref": "#/components/responses/422" - } - } - } - }, - "/signals": { - "get": { - "tags": [ - "Signals" - ], - "summary": "Returns all signals", - "description": "Display a listing of the resource.", - "operationId": "getSignals", - "parameters": [ - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - } - ], - "responses": { - "200": { - "description": "list of signals", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/signals" - } - }, - "meta": { - "type": "object" - } - }, - "type": "object" - } - } - } - } - } - }, - "post": { - "tags": [ - "Signals" - ], - "summary": "Creates a new Global Signal", - "description": "Creates a new global signal", - "operationId": "createSignal", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/signalsEditable" - } - } - } - }, - "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/signals" - } - } - } - } - } - } - }, - "/signals/{signal_id}": { - "get": { - "tags": [ - "Signals" - ], - "summary": "Get a single signal by ID", - "description": "Display the specified resource.", - "operationId": "getSignalsById", - "parameters": [ - { - "name": "signal_id", - "in": "path", - "description": "signal id", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/signals" - } - } - } - } - } - }, - "put": { - "tags": [ - "Signals" - ], - "summary": "Update a signal", - "operationId": "updateSignal", - "parameters": [ - { - "name": "signal_id", - "in": "path", - "description": "ID of signal to update", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/signalsEditable" - } - } - } - }, - "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/signals" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Signals" - ], - "summary": "Delete a signal", - "operationId": "deleteSignal", - "parameters": [ - { - "name": "signal_id", - "in": "path", - "description": "ID of signal to delete", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "success" - } - } - } - }, - "/task_assignments": { - "get": { - "tags": [ - "Task Assignments" - ], - "summary": "Returns all task assignments", - "description": "Display a listing of the resource.", - "operationId": "getTaskAssignments", - "parameters": [ - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - } - ], - "responses": { - "200": { - "description": "list of task assignments", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/taskAssignments" - } - }, - "meta": { - "type": "object" - } - }, - "type": "object" - } - } - } - } - } - }, - "post": { - "tags": [ - "Task Assignments" - ], - "summary": "Save a new Task Assignment", - "description": "Store a newly created task assignment in storage.", - "operationId": "createTaskAssignments", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/taskAssignmentsEditable" - } - } - } - }, - "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/taskAssignments" - } - } - } - }, - "422": { - "$ref": "#/components/responses/422" - } - } - } - }, - "/task_assignments/{task_assignment}": { - "put": { - "tags": [ - "Task Assignments" - ], - "summary": "Update a Task Assignment", - "description": "Update a task assignment", - "operationId": "updateTaskAssignments", - "parameters": [ - { - "name": "task_assignment", - "in": "path", - "description": "ID of task assignment to update", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/taskAssignmentsEditable" - } - } - } - }, - "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "422": { - "$ref": "#/components/responses/422" - } - } - }, - "delete": { - "tags": [ - "Task Assignments" - ], - "summary": "Delete a Task Assignment", - "description": "Remove an assignment", - "operationId": "deleteTaskAssignments", - "parameters": [ - { - "name": "task_assignment", - "in": "path", - "description": "ID of task assignment to delete", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/taskAssignmentsEditable" - } - } - } - }, - "responses": { - "200": { - "description": "success" - } - } - } - }, - "/tasks": { - "get": { - "tags": [ - "Tasks" - ], - "summary": "Returns all tasks that the user has access to", - "description": "Display a listing of the resource.", - "operationId": "getTasks", - "parameters": [ - { - "name": "process_request_id", - "in": "query", - "description": "Process request id", - "required": false, - "schema": { - "type": "integer" - } - }, - { - "name": "all_tasks", - "in": "query", - "description": "Return all task types. Not just user tasks.", - "required": false, - "schema": { - "type": "boolean" - } - }, - { - "$ref": "#/components/parameters/filter" - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/include" - } - ], - "responses": { - "200": { - "description": "list of tasks", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/processRequestToken" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" - } - } - } - } - } - } - }, - "/tasks/{task_id}": { - "get": { - "tags": [ - "Tasks" - ], - "summary": "Get a single task by ID", - "description": "Display the specified resource.", - "operationId": "getTasksById", - "parameters": [ - { - "name": "task_id", - "in": "path", - "description": "task id", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "include", - "in": "query", - "description": "include", - "required": false, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/processRequestToken" - } - } - } - }, - "404": { - "$ref": "#/components/responses/404" - } - } - }, - "put": { - "tags": [ - "Tasks" - ], - "summary": "Update a task", - "description": "Updates the current element", - "operationId": "updateTask", - "parameters": [ - { - "name": "task_id", - "in": "path", - "description": "ID of task to update", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "required": [ - "status", - "data" - ], - "properties": { - "status": { - "type": "string", - "example": "COMPLETED" - }, - "data": { - "type": "object" - } - }, - "type": "object" - } - } - } - }, - "responses": { - "200": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/processRequestToken" - } - } - } - }, - "404": { - "$ref": "#/components/responses/404" - }, - "422": { - "$ref": "#/components/responses/422" - } - } - } - }, - "/users": { - "get": { - "tags": [ - "Users" - ], - "summary": "Returns all users", - "description": "Display a listing of the resource.", - "operationId": "getUsers", - "parameters": [ - { - "$ref": "#/components/parameters/status" - }, - { - "name": "filter", - "in": "query", - "description": "Filter results by string. Searches First Name, Last Name, Email and Username.", - "schema": { - "type": "string" - } - }, - { - "$ref": "#/components/parameters/order_by" - }, - { - "$ref": "#/components/parameters/order_direction" - }, - { - "$ref": "#/components/parameters/per_page" - }, - { - "$ref": "#/components/parameters/include" - }, - { - "name": "exclude_ids", - "in": "query", - "description": "Comma separated list of IDs to exclude from the response", - "schema": { - "type": "string", - "default": "" - } - } - ], - "responses": { - "200": { - "description": "list of users", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/users" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" - } - } - } - } - } - }, - "post": { - "tags": [ - "Users" - ], - "summary": "Save a new users", - "description": "Store a newly created resource in storage.", - "operationId": "createUser", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/usersEditable" - } - } - } - }, - "responses": { - "201": { - "description": "success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/users" - } - } - } - }, - "422": { - "$ref": "#/components/responses/422" - } - } - } - }, - "/users_task_count": { - "get": { - "tags": [ - "Users" - ], - "summary": "Returns all users and their total tasks", - "description": "Display a listing of users and their task counts.", - "operationId": "getUsersTaskCount", - "parameters": [ - { - "name": "filter", - "in": "query", - "description": "Filter results by string. Searches First Name, Last Name, Email, or Username.", - "schema": { - "type": "string" - } - }, - { - "name": "include_ids", - "in": "query", - "description": "Comma separated list of user IDs to include in the response. Eg. 1,2,3", - "schema": { - "type": "string", - "default": "" - } - } - ], - "responses": { - "200": { - "description": "List of users with task counts", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/users" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" - } - } - } - } - } - }, - "post": { - "tags": [ - "Users" - ], - "summary": "Returns all users and their total tasks (POST version for large form_data)", - "operationId": "postUsersTaskCount", - "requestBody": { - "description": "Request body for filtering users", - "content": { - "application/json": { - "schema": { - "properties": { - "filter": { - "description": "Filter results by string. Searches First Name, Last Name, Email, or Username.", - "type": "string" - }, - "include_ids": { - "description": "Comma separated list of user IDs to include in the response. Eg. 1,2,3", - "type": "string" - }, - "assignable_for_task_id": { - "description": "Task ID to get assignable users for", - "type": "integer" - }, - "form_data": { - "description": "Form data used to evaluate rule expressions for task assignment", - "type": "object" - } - }, - "type": "object" - } - } - } - }, - "responses": { - "200": { - "description": "List of users with task counts", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/users" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" - } - } - } - } - } - } - }, - "/users/{user_id}": { - "get": { - "tags": [ - "Users" - ], - "summary": "Get single user by ID", - "description": "Display the specified resource.", - "operationId": "getUserById", - "parameters": [ - { - "name": "user_id", - "in": "path", - "description": "ID of user to return", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "200": { - "description": "Successfully found the process", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/users" - } - } - } - }, - "404": { - "$ref": "#/components/responses/404" - } - } - }, - "put": { - "tags": [ - "Users" - ], - "summary": "Update a user", - "description": "Update a user", - "operationId": "updateUser", - "parameters": [ - { - "name": "user_id", - "in": "path", - "description": "ID of user to return", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/usersEditable" - } - } - } - }, - "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "422": { - "$ref": "#/components/responses/422" - } - } - }, - "delete": { - "tags": [ - "Users" - ], - "summary": "Delete a user", - "description": "Delete a user", - "operationId": "deleteUser", - "parameters": [ - { - "name": "user_id", - "in": "path", - "description": "ID of user to delete", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" - } - } - } - }, - "/users/{user_id}/get_pinned_controls": { - "get": { - "tags": [ - "Users" - ], - "summary": "Get the pinned BPMN elements of a specific user", - "description": "Return the user's pinned nodes.", - "operationId": "getPinnnedControls", - "parameters": [ - { - "name": "user_id", - "in": "path", - "description": "ID of user to return the pinned nodes of", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "200": { - "description": "Pinned nodes returned succesfully", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/users" - } - } - } - }, - "404": { - "$ref": "#/components/responses/404" - } - } - } - }, - "/users/{user_id}/update_pinned_controls": { - "put": { - "tags": [ - "Users" - ], - "summary": "Update a user's pinned BPMN elements on Modeler", - "description": "Update a user's pinned BPMN elements on Modeler", - "operationId": "updatePinnedControls", - "parameters": [ - { - "name": "user_id", - "in": "path", - "description": "ID of user to return", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/usersEditable" - } - } - } - }, - "responses": { - "204": { - "description": "success" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "422": { - "$ref": "#/components/responses/422" - } - } - } - }, - "/users/{user_id}/groups": { - "put": { - "tags": [ - "Users" - ], - "summary": "Set the groups a users belongs to", - "description": "Update a user's groups", - "operationId": "updateUserGroups", - "parameters": [ - { - "name": "user_id", - "in": "path", - "description": "ID of user", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/updateUserGroups" - } - } - } - }, - "responses": { - "204": { - "description": "success" - } - } - } - }, - "/users/restore": { - "put": { - "tags": [ - "Users" - ], - "summary": "Restore a soft deleted user", - "description": "Reverses the soft delete of a user", - "operationId": "restoreUser", - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/restoreUser" - } - } - } - }, - "responses": { - "200": { - "description": "success" - } - } - } - }, - "/users/get_filter_configuration/{name}": { - "get": { - "tags": [ - "Users" - ], - "summary": "Get filter configuration by name", - "description": "Get filter configuration.", - "operationId": "getFilterConfiguration", - "parameters": [ - { - "name": "name", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/users" - } - } - } - }, - "404": { - "$ref": "#/components/responses/404" - } - } - } - }, - "/users/store_filter_configuration/{name}": { - "get": { - "tags": [ - "Users" - ], - "summary": "Store filter configuration by name", - "description": "Store filter configuration.", - "operationId": "storeFilterConfiguration", - "parameters": [ - { - "name": "name", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/users" - } - } - } - }, - "404": { - "$ref": "#/components/responses/404" - } - } - } - }, - "/users/{user_id}/tokens": { - "get": { - "tags": [ - "Personal Tokens" - ], - "summary": "Display listing of access tokens for the specified user.", - "description": "Display listing of access tokens for the specified user.", - "operationId": "getTokens", - "parameters": [ - { - "name": "user_id", - "in": "path", - "description": "User id", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "$ref": "#/components/parameters/per_page" - } - ], - "responses": { - "200": { - "description": "List of tokens.", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/UserToken" - } - }, - "meta": { - "$ref": "#/components/schemas/metadata" - } - }, - "type": "object" - } - } - } - } - } - }, - "post": { - "tags": [ - "Personal Tokens" - ], - "summary": "Create new token for a specific user", - "description": "Create a new personal access token for the user.", - "operationId": "createTokens", - "parameters": [ - { - "name": "user_id", - "in": "path", - "description": "User id", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "properties": { - "name": { - "type": "string" - } - }, - "type": "object" - } - } - } - }, - "responses": { - "201": { - "description": "New token instance", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserToken" - } - } - } - } - } - } - }, - "/users/{user_id}/tokens/{token_id}": { - "get": { - "tags": [ - "Personal Tokens" - ], - "summary": "Get single token by ID", - "description": "Show a personal access token for the user", - "operationId": "getTokenById", - "parameters": [ - { - "name": "user_id", - "in": "path", - "description": "ID of user", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "token_id", - "in": "path", - "description": "ID of token to return", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Successfully found the token", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserToken" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Personal Tokens" - ], - "summary": "Delete a token", - "description": "Delete the given token for a user", - "operationId": "deleteToken", - "parameters": [ - { - "name": "user_id", - "in": "path", - "description": "User ID", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "token_id", - "in": "path", - "description": "Token ID", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "success" - } - } - } - }, - "/processes/variables": { - "get": { - "tags": [ - "Processes Variables" - ], - "summary": "Get variables for multiple processes with pagination", - "operationId": "660c9459febd17c58400be4b4d49a152", - "parameters": [ - { - "name": "processIds", - "in": "query", - "description": "Comma-separated list of process IDs", - "required": false, - "schema": { - "type": "string", - "example": "1,2,3", - "nullable": true - } - }, - { - "name": "page", - "in": "query", - "description": "Page number", - "required": false, - "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "per_page", - "in": "query", - "description": "Items per page", - "required": false, - "schema": { - "type": "integer", - "default": 20 - } - } - ], - "responses": { - "200": { - "description": "Successful response", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Variable" - } - }, - "meta": { - "$ref": "#/components/schemas/PaginationMeta" - } - }, - "type": "object" - } - } - } - } - }, - "servers": [ - { - "url": "https://fvborzj2wz.sharedwithexpose.com/api/1.1", - "description": "API v1.1 Server" - } - ] - } - } - }, - "components": { - "schemas": { - "DateTime": { - "properties": { - "date": { - "type": "string" - } - }, - "type": "object" - }, - "analyticsReportingEditable": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "link": { - "type": "string" - } - }, - "type": "object" - }, - "analyticsReporting": { - "allOf": [ - { - "$ref": "#/components/schemas/analyticsReportingEditable" - }, - { - "properties": { - "id": { - "type": "integer" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "created_by_id": { - "type": "string", - "format": "id" - }, - "updated_by_id": { - "type": "string", - "format": "id" - } - }, - "type": "object" - } - ] - }, - "collectionsEditable": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "custom_title": { - "type": "string" - }, - "create_screen_id": { - "type": "string", - "format": "id" - }, - "read_screen_id": { - "type": "string", - "format": "id" - }, - "update_screen_id": { - "type": "string", - "format": "id" - }, - "signal_create": { - "type": "boolean" - }, - "signal_update": { - "type": "boolean" - }, - "signal_delete": { - "type": "boolean" - } - }, - "type": "object" - }, - "collections": { - "allOf": [ - { - "$ref": "#/components/schemas/collectionsEditable" - }, - { - "properties": { - "id": { - "type": "integer" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "created_by_id": { - "type": "string", - "format": "id" - }, - "updated_by_id": { - "type": "string", - "format": "id" - }, - "columns": { - "type": "array", - "items": { - "type": "object" - } - } - }, - "type": "object" - } - ] - }, - "recordsEditable": { - "properties": { - "data": { - "type": "object" - } - }, - "type": "object" - }, - "records": { - "allOf": [ - { - "$ref": "#/components/schemas/recordsEditable" - }, - { - "properties": { - "id": { - "type": "integer" - }, - "collection_id": { - "type": "string", - "format": "id" - } - }, - "type": "object" - } - ] - }, - "DataSourceCallParameters": { - "properties": { - "endpoint": { - "type": "string" - }, - "dataMapping": { - "type": "array", - "items": { - "properties": { - "key": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "type": "object" - } - }, - "outboundConfig": { - "type": "array", - "items": { - "properties": { - "key": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "type": "object" - } - } - }, - "type": "object" - }, - "DataSourceResponse": { - "properties": { - "status": { - "type": "integer" - }, - "response": { - "type": "object" - } - }, - "type": "object" - }, - "dataSourceEditable": { - "properties": { - "id": { - "description": "Class DataSource", - "type": "string", - "format": "id" - }, - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "endpoints": { - "type": "string" - }, - "mappings": { - "type": "string" - }, - "authtype": { - "type": "string" - }, - "credentials": { - "type": "string" - }, - "status": { - "type": "string" - }, - "data_source_category_id": { - "type": "string" - } - }, - "type": "object" - }, - "dataSource": { - "type": "object", - "allOf": [ - { - "$ref": "#/components/schemas/dataSourceEditable" - }, - { - "properties": { - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - } - }, - "type": "object" - } - ] - }, - "dataSourceCategoryEditable": { - "properties": { - "name": { - "description": "Represents a business data Source category definition.", - "type": "string" - }, - "status": { - "type": "string", - "enum": [ - "ACTIVE", - "INACTIVE" - ] - } - }, - "type": "object" - }, - "DataSourceCategory": { - "type": "object", - "allOf": [ - { - "$ref": "#/components/schemas/dataSourceCategoryEditable" - }, - { - "properties": { - "id": { - "type": "string", - "format": "id" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - } - }, - "type": "object" + } + }, + "components": { + "schemas": { + "DateTime": { + "properties": { + "date": { + "type": "string" } - ] + }, + "type": "object" }, - "decisionTableEditable": { + "collectionsEditable": { "properties": { - "id": { - "description": "Class Screen", - "type": "string", - "format": "id" - }, "name": { "type": "string" }, "description": { "type": "string" }, - "definition": { + "custom_title": { "type": "string" }, - "decision_table_categories_id": { - "type": "string" + "create_screen_id": { + "type": "string", + "format": "id" + }, + "read_screen_id": { + "type": "string", + "format": "id" + }, + "update_screen_id": { + "type": "string", + "format": "id" + }, + "signal_create": { + "type": "boolean" + }, + "signal_update": { + "type": "boolean" + }, + "signal_delete": { + "type": "boolean" } }, "type": "object" }, - "decisionTable": { - "type": "object", + "collections": { "allOf": [ { - "$ref": "#/components/schemas/decisionTableEditable" + "$ref": "#/components/schemas/collectionsEditable" }, { "properties": { + "id": { + "type": "integer" + }, "created_at": { "type": "string", "format": "date-time" @@ -9295,55 +6986,47 @@ "updated_at": { "type": "string", "format": "date-time" + }, + "created_by_id": { + "type": "string", + "format": "id" + }, + "updated_by_id": { + "type": "string", + "format": "id" + }, + "columns": { + "type": "array", + "items": { + "type": "object" + } } }, "type": "object" } ] }, - "DecisionTableExported": { - "properties": { - "url": { - "type": "string" - } - }, - "type": "object" - }, - "decisionTableCategoryEditable": { + "recordsEditable": { "properties": { - "name": { - "description": "Represents a business decision Table category definition.", - "type": "string" - }, - "status": { - "type": "string", - "enum": [ - "ACTIVE", - "INACTIVE" - ] + "data": { + "type": "object" } }, "type": "object" }, - "DecisionTableCategory": { - "type": "object", + "records": { "allOf": [ { - "$ref": "#/components/schemas/decisionTableCategoryEditable" + "$ref": "#/components/schemas/recordsEditable" }, { "properties": { "id": { - "type": "string", - "format": "id" - }, - "created_at": { - "type": "string", - "format": "date-time" + "type": "integer" }, - "updated_at": { + "collection_id": { "type": "string", - "format": "date-time" + "format": "id" } }, "type": "object" @@ -9614,132 +7297,6 @@ }, "type": "object" }, - "Variable": { - "properties": { - "id": { - "type": "integer", - "example": 1 - }, - "process_id": { - "type": "integer", - "example": 1 - }, - "uuid": { - "type": "string", - "format": "uuid", - "example": "550e8400-e29b-41d4-a716-446655440000" - }, - "field": { - "type": "string", - "example": "string", - "enum": [ - "string", - "number", - "boolean", - "array" - ] - }, - "label": { - "type": "string", - "example": "Variable 1 for Process 1" - }, - "name": { - "type": "string", - "example": "var_1_1" - }, - "asset": { - "properties": { - "id": { - "type": "string", - "example": "asset_1_1" - }, - "type": { - "type": "string", - "example": "sensor", - "enum": [ - "sensor", - "actuator", - "controller", - "device" - ] - }, - "name": { - "type": "string", - "example": "Asset 1 for Process 1" - }, - "uuid": { - "type": "string", - "format": "uuid", - "example": "550e8400-e29b-41d4-a716-446655440000" - } - }, - "type": "object" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - } - }, - "type": "object" - }, - "PaginationMeta": { - "properties": { - "current_page": { - "type": "integer", - "example": 1 - }, - "from": { - "type": "integer", - "example": 1 - }, - "last_page": { - "type": "integer", - "example": 5 - }, - "path": { - "type": "string", - "example": "http://processmaker.com/processes/variables" - }, - "per_page": { - "type": "integer", - "example": 20 - }, - "to": { - "type": "integer", - "example": 20 - }, - "total": { - "type": "integer", - "example": 100 - }, - "links": { - "properties": { - "first": { - "type": "string", - "example": "http://processmaker.com/processes/variables?page=1" - }, - "last": { - "type": "string", - "example": "http://processmaker.com/processes/variables?page=5" - }, - "prev": { - "type": "string", - "nullable": true - }, - "next": { - "type": "string", - "example": "http://processmaker.com/processes/variables?page=2" - } - }, - "type": "object" - } - }, - "type": "object" - }, "metadata": { "properties": { "filter": { @@ -10425,11 +7982,8 @@ "type": "object" }, "manager_id": { - "type": "array", - "items": { - "type": "integer", - "format": "id" - } + "type": "integer", + "format": "id" } }, "type": "object" @@ -11078,9 +8632,6 @@ }, "key": { "type": "string" - }, - "output": { - "type": "object" } }, "type": "object" @@ -11451,9 +9002,6 @@ }, "force_change_password": { "type": "boolean" - }, - "email_task_notification": { - "type": "boolean" } }, "type": "object" @@ -11646,9 +9194,9 @@ "description": "Laravel passport oauth2 security.", "flows": { "authorizationCode": { - "authorizationUrl": "https://fvborzj2wz.sharedwithexpose.com/oauth/authorize", - "tokenUrl": "https://fvborzj2wz.sharedwithexpose.com/oauth/token", - "refreshUrl": "https://fvborzj2wz.sharedwithexpose.com/token/refresh", + "authorizationUrl": "http://processmaker.test/oauth/authorize", + "tokenUrl": "http://processmaker.test/oauth/token", + "refreshUrl": "http://processmaker.test/token/refresh", "scopes": {} } } @@ -11660,152 +9208,6 @@ } } }, - "tags": [ - { - "name": "AnalyticsReporting", - "description": "AnalyticsReporting" - }, - { - "name": "Collections", - "description": "Collections" - }, - { - "name": "Screens", - "description": "Screens" - }, - { - "name": "Comments", - "description": "Comments" - }, - { - "name": "DataSourcesCategories", - "description": "DataSourcesCategories" - }, - { - "name": "DataSources", - "description": "DataSources" - }, - { - "name": "DecisionTableCategories", - "description": "DecisionTableCategories" - }, - { - "name": "DecisionTables", - "description": "DecisionTables" - }, - { - "name": "SavedSearchCharts", - "description": "SavedSearchCharts" - }, - { - "name": "Reports", - "description": "Reports" - }, - { - "name": "SavedSearches", - "description": "SavedSearches" - }, - { - "name": "Users", - "description": "Users" - }, - { - "name": "Groups", - "description": "Groups" - }, - { - "name": "Version History", - "description": "Version History" - }, - { - "name": "Cases", - "description": "Cases" - }, - { - "name": "CssSettings", - "description": "CssSettings" - }, - { - "name": "Environment Variables", - "description": "Environment Variables" - }, - { - "name": "Files", - "description": "Files" - }, - { - "name": "Group Members", - "description": "Group Members" - }, - { - "name": "Notifications", - "description": "Notifications" - }, - { - "name": "Permissions", - "description": "Permissions" - }, - { - "name": "Process Categories", - "description": "Process Categories" - }, - { - "name": "Processes", - "description": "Processes" - }, - { - "name": "Process Requests", - "description": "Process Requests" - }, - { - "name": "Request Files", - "description": "Request Files" - }, - { - "name": "Screen Categories", - "description": "Screen Categories" - }, - { - "name": "Script Categories", - "description": "Script Categories" - }, - { - "name": "Scripts", - "description": "Scripts" - }, - { - "name": "Rebuild Script Executors", - "description": "Rebuild Script Executors" - }, - { - "name": "Security Logs", - "description": "Security Logs" - }, - { - "name": "Settings", - "description": "Settings" - }, - { - "name": "Signals", - "description": "Signals" - }, - { - "name": "Task Assignments", - "description": "Task Assignments" - }, - { - "name": "Tasks", - "description": "Tasks" - }, - { - "name": "Personal Tokens", - "description": "Personal Tokens" - }, - { - "name": "Processes Variables", - "description": "Processes Variables" - } - ], "security": [ { "passport": [],