# Docs ## Docs - [Add new Kafka exchange mock](https://docs.flowx.ai/3.x/docs/api/add-kafka-mock) - [Download a file](https://docs.flowx.ai/3.x/docs/api/download-file) - [List buckets](https://docs.flowx.ai/3.x/docs/api/list-buckets): The Documents Plugin provides the following REST API endpoints for interacting with the stored files. - [List objects in a bucket](https://docs.flowx.ai/3.x/docs/api/list-objects-in-buckets) - [Process status](https://docs.flowx.ai/3.x/docs/api/rest) - [Start process](https://docs.flowx.ai/3.x/docs/api/rest2) - [Start process and inherit values](https://docs.flowx.ai/3.x/docs/api/rest3) - [Execute action](https://docs.flowx.ai/3.x/docs/api/rest4) - [View Kafka exchanges](https://docs.flowx.ai/3.x/docs/api/view-kafka-exchanges) - [Overview](https://docs.flowx.ai/3.x/docs/building-blocks/actions/actions): The activity that a node has to handle is defined using an **action** . These can have various types, they can be used to specify the communication details for plugins or integrations. - [Append params to parent process](https://docs.flowx.ai/3.x/docs/building-blocks/actions/append-params-to-parent-process): It is a type of **action** that allows you to send data from a [subprocess](../process/subprocess) to a parent [process](../process/process). - [Business rules types](https://docs.flowx.ai/3.x/docs/building-blocks/actions/business-rule-action/business-rule-action): A business rule is an action type that allows you to configure a script on a BPMN task node ). When the **process instance token** reaches this task, the defined script will be executed. - [Configuring a DMN business rule action](https://docs.flowx.ai/3.x/docs/building-blocks/actions/business-rule-action/dmn-business-rule-action): If you're new to the concept of **Decision Model and Notation (DMN)** , you can get started with a brief overview in the [Intro to DMN](../../../platform-overview/frameworks-and-standards/business-process-industry-standards/intro-to-dmn) section. - [Kafka send action](https://docs.flowx.ai/3.x/docs/building-blocks/actions/kafka-send-action): The FlowX Designer offers various options to configure the Kafka Send Action through the **Actions** tab at the node level. - [Send data to user interface](https://docs.flowx.ai/3.x/docs/building-blocks/actions/send-data-to-user-interface): Send data to user interface **action** is based on Server-Sent Events (SSE), a web technology that enables servers to push real-time updates or events to clients over a single, long-lived HTTP connection. It provides a unidirectional communication channel from the server to the client, allowing the server to send updates to the client without the need for the client to continuously make requests. - [Start subprocess action](https://docs.flowx.ai/3.x/docs/building-blocks/actions/start-subprocess-action): A **Start subprocess action** is an **action** that allows you to start a **subprocess** from another (parent) **process**. - [Upload file action](https://docs.flowx.ai/3.x/docs/building-blocks/actions/upload-file-action): An **Upload File action** is an **action** type that allows you to upload a file to a service available on **Kafka**. - [Exclusive gateway](https://docs.flowx.ai/3.x/docs/building-blocks/node/exclusive-gateway-node): In the world of process flows, decisions play a crucial role, and that's where the Exclusive Gateway comes into play. This powerful tool enables you to create conditional pathways with ease. - [Message catch boundary events](https://docs.flowx.ai/3.x/docs/building-blocks/node/message-events/message-catch-boundary-event): Boundary events are integral components linked to **user tasks** within a process flow. Specifically, Message Catch Boundary Events are triggered by incoming messages and can be configured as either interrupting or non-interrupting based on your requirements. - [Message catch start event](https://docs.flowx.ai/3.x/docs/building-blocks/node/message-events/message-catch-start-event): Message Catch Start Event node represents the starting point for a process instance based on the receipt of a specific message. When this event is triggered by receiving the designated message, it initiates the execution of the associated process. - [Overview](https://docs.flowx.ai/3.x/docs/building-blocks/node/message-events/message-events) - [Intermediate message events in business processes](https://docs.flowx.ai/3.x/docs/building-blocks/node/message-events/message-intermediate/example-intermediate-message-events): Business processes often involve dynamic communication and coordination between different stages or departments. Intermediate Message Events play an important role in orchestrating information exchange, ensuring effective synchronization, and enhancing the overall efficiency of these processes. - [Message catch intermediate event](https://docs.flowx.ai/3.x/docs/building-blocks/node/message-events/message-intermediate/message-catch-intermediate-event): A Message Catch Intermediate Event is a type of event in a process that waits for a specific message before continuing with the process flow. - [Overview](https://docs.flowx.ai/3.x/docs/building-blocks/node/message-events/message-intermediate/message-intermediate) - [Message throw intermediate event](https://docs.flowx.ai/3.x/docs/building-blocks/node/message-events/message-intermediate/message-throw-intermediate-event): Using a Throw intermediate event is like throwing a message to tell someone about something. After throwing the message, the process keeps going, and other parts of the process can listen to that message. - [Send message/receive message tasks](https://docs.flowx.ai/3.x/docs/building-blocks/node/message-send-received-task-node): Send message task and Receive message task nodes are used to handle the interaction between a running process and external systems. This is done using [**Kafka**](../../platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-kafka-concepts). - [Milestone nodes](https://docs.flowx.ai/3.x/docs/building-blocks/node/milestone-node): A **milestone node** is used to define how [user tasks](../node/user-task-node.md) (which are placed between two milestones - **start milestone** and **end milestone**) will be displayed. - [BPMN nodes](https://docs.flowx.ai/3.x/docs/building-blocks/node/node): A BPMN node is a visual representation of a point in your **process**. Nodes are added at specific process points to denote the entrance or transition of a record within the process. - [Parallel gateway](https://docs.flowx.ai/3.x/docs/building-blocks/node/parallel-gateway): When you have multiple operations that can be executed concurrently, the Parallel Gateway becomes a valuable tool. This type of node creates a parallel section within the **process**, particularly useful for tasks that can run independently without waiting for each other. It's essential to close each parallel section with another Parallel Gateway node. - [Start/end nodes](https://docs.flowx.ai/3.x/docs/building-blocks/node/start-end-node): Let's go through all the options for configuring start and end nodes for a process definition. - [Subprocess run node](https://docs.flowx.ai/3.x/docs/building-blocks/node/subprocess-run-node): Suprocess run node is a node that provides advanced options for starting **subprocesses**. - [Task node](https://docs.flowx.ai/3.x/docs/building-blocks/node/task-node): A task **node** refers to a task that utilizes various services, such as Web services, automated applications, or other similar services, to accomplish a particular task. - [Timer boundary event](https://docs.flowx.ai/3.x/docs/building-blocks/node/timer-events/timer-boundary-event) - [Overview](https://docs.flowx.ai/3.x/docs/building-blocks/node/timer-events/timer-events): Timer event nodes are a powerful feature in BPMN that allow you to introduce time-based behavior into your processes. These nodes enable you to trigger specific actions or events at predefined time intervals, durations, or cycles. With timer event nodes, you can design processes that respond to time-related conditions, ensuring smoother workflow execution and enhanced automation." - [Timer expressions](https://docs.flowx.ai/3.x/docs/building-blocks/node/timer-events/timer-expressions) - [Timer intermediate event](https://docs.flowx.ai/3.x/docs/building-blocks/node/timer-events/timer-intermediate-event): A Timer Intermediate Event is an event that is triggered based on a specified time duration or date. It is placed within the flow of a process and serves as a point of interruption and continuation. - [Timer start event (interrupting)](https://docs.flowx.ai/3.x/docs/building-blocks/node/timer-events/timer-start-event): A Timer Start Event initiates a process instance based on a specified time or schedule. - [User task node](https://docs.flowx.ai/3.x/docs/building-blocks/node/user-task-node): This node represents an interaction with the user. It is used to display a piece of UI (defined in the [UI Designer](../ui-designer/ui-designer)) or a [custom Angular component](../ui-designer/ui-component-types/root-components/custom). You can also define **actions** available for the users to interact with the process. - [Process Designer](https://docs.flowx.ai/3.x/docs/building-blocks/process/process): The FlowX Process Designer workspace is designed for creating and editing business processes, the menu contains all elements required to create a process. - [Process definition](https://docs.flowx.ai/3.x/docs/building-blocks/process/process-definition): The core of the platform is the process definition, which is the blueprint of the business process made up of [nodes](../node/node) that are linked by sequences. - [Process instance](https://docs.flowx.ai/3.x/docs/building-blocks/process/process-instance): A process instance is a specific execution of a business process that is defined on the FlowX.AI platform. Once a process definition is added to the platform, it can be executed, monitored, and optimized by creating an instance of the definition. - [Subprocess](https://docs.flowx.ai/3.x/docs/building-blocks/process/subprocess): Sub-processes are smaller process flows that can be triggered by actions in the main process. They can also inherit some process parameter values from the parent process and send their results back to the parent process when they are completed. The subprocesses will communicate with the front-end apps using the same connection details as their parent process. - [Versioning](https://docs.flowx.ai/3.x/docs/building-blocks/process/versioning): With versioning, you can easily track your process definition's evolution. - [Supported scripts](https://docs.flowx.ai/3.x/docs/building-blocks/supported-scripts): Scripts are used to define and run [actions](./actions/actions) but also properties inside [nodes](./node/node). For now, the following script languages are supported. - [Token](https://docs.flowx.ai/3.x/docs/building-blocks/token): Token is the concept that describes the current position in the process flow. When you start the process you have a graph of [nodes](./node/node) and based on the configuration you will go from one to another based on the defined sequence (connection between nodes). - [Dynamic & computed values](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/dynamic-and-computed-values): In modern application development, the ability to create dynamic and interactive user interfaces is essential for delivering personalized and responsive experiences to users. Dynamic values and computed values are powerful features that enable developers to achieve this level of flexibility and interactivity. - [Layout configuration](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/layout-configuration): Layout settings will be available for all components that can group other types of elements (for example, [Container](./ui-component-types/root-components/container) or [Card](./ui-component-types/root-components/card)). - [UI actions](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-actions): Multiple UI elements can be linked to an [action](../actions/actions) via a UI Action. If the action is just a method to interact with the process, the UI Action adds information about how that UI should react. For example, should a loader appear after executing the action, should a modal be dismissed, or if some default data should be sent back to the process. - [Buttons](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/buttons): There are two types of buttons available, each with a different purpose. - [Collection](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/collection/collection): The Collection component is similar to a [container element](../root-components/container), allowing you to iterate through a list of elements and display them according to their configuration. - [Collection prototype](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/collection/collection_prototype): A Collection prototype is an additional container type that allows you to define multiple prototypes for a single Collection. This feature enables you to display elements from the same collection differently. - [File preview](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/file-preview): The File Preview UI element is a user interface component that enables users to preview the contents of files quickly and easily without fully opening them. It can save time and enhance productivity, providing a glimpse of what's inside a file without having to launch it entirely. - [Checkbox](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/checkbox-form-field): A checkbox form field is an interactive element in a web form that provides users with multiple selectable options. It allows users to choose one or more options from a pre-determined set by simply checking the corresponding checkboxes. - [Datepicker](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/datepicker-form-field): The datepicker (Calendar Picker) is a lightweight component that allows end users to enter or select a date value. - [Input](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/input-form-field): An input field is a form element that enables users to input data with validations and can be hidden or disabled. - [Radio](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/radio-form-field): Radio buttons are normally presented in radio groups (a collection of radio buttons describing a set of related options). Only one radio button in a group can be selected at the same time. - [Segmented button](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/segmented-button): It allows users to pick only one option from a group of options, and you can choose to have between 2 and 5 options in the group. The segmented button is easy to use, and can help make your application easier for people to use. - [Select](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/select-form-field): The Select form field is an element that enables users to make a choice from a list of predefined options. It consists of multiple values, each of which is defined by a label that is displayed in the dropdown menu, and a code that is saved. - [Slider](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/slider): It allows users to pick only one option from a group of options, and you can choose to have between 2 and 5 options in the group. The segmented button is easy to use, and can help make your application easier for people to use. - [Switch](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/switch-form-field): A switch, a toggle switch, is another form element that can be utilized to create an intuitive user interface. The switch allows users to select a response by toggling it between two states. Based on the selection made by the user, the corresponding Boolean value of either true or false will be recorded and stored in the process instance values for future reference. - [Text area](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/text-area): A text area is a form element used to capture multi-line input from users in a conversational interface. The text area component is typically used for longer inputs such as descriptions, comments, or feedback, providing users with more space to type their responses. - [Image](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/image): Image UI elements are graphical components of a user interface that display a static or dynamic visual representation of an object, concept, or content. - [Indicators](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/indicators): The indicators (Message UI elements) allow you to display different types of messages. - [Card](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/root-components/card): A card in Flowx is a graphical component designed for the purpose of grouping and aligning various elements. It offers added functionality by incorporating an accordion feature, allowing users to expand and collapse content as needed. - [Container](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/root-components/container): A container in Flowx is a versatile building block that empowers you to group components and arrange them as needed, providing flexibility in UI design. It can also serve as the root component for your design. - [Custom component](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/root-components/custom): Custom components are developed in the web application and referenced here by component identifier. This will dictate where the component is displayed in the component hierarchy and what actions are available for the component. - [What are root components?](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/root-components/root-components): Root components, also known as layout elements, are used to group different types of components, each serving a specific purpose - [Typography](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-component-types/typography): Typography is an important aspect of design that greatly influences how users perceive and interact with your content. In this section, we'll explore how to effectively utilize two essential UI elements, "Text" and "Link." - [Overview](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/ui-designer): The FlowX platform offers a variety of ready-to-use [UI components](./ui-designer#ui-component-types) that can be used to create rich web interfaces. These include common form elements like [input fields](./ui-component-types/form-elements/input-form-field), [dynamic dropdown menus](./ui-component-types/form-elements/select-form-field#example---dynamic-dropdowns), [checkboxes](./ui-component-types/form-elements/checkbox-form-field), [radio](./ui-component-types/form-elements/radio-form-field), and [switch buttons](./ui-component-types/form-elements/switch-form-field), as well as other UI elements like image, text, anchor links, etc. The properties of each component can be customized further using the details tab, and [design flexibility](./#styling) is achieved by adding styles or CSS classes to the pre-defined components. The UI templates are built in a hierarchical structure, with a root component at the top. - [Validators](https://docs.flowx.ai/3.x/docs/building-blocks/ui-designer/validators): Validators are an essential part of building robust and reliable applications. They ensure that the data entered by the user is accurate, complete, and consistent. In Angular applications, validators provide a set of pre-defined validation rules that can be used to validate various form inputs such as text fields, number fields, email fields, date fields, and more. - [Adding a new node](https://docs.flowx.ai/3.x/docs/flowx-designer/managing-a-process-flow/adding-a-new-node): Once you create a new **process definition**, you can start configuring it by adding new **nodes**. - [Adding an action to a node](https://docs.flowx.ai/3.x/docs/flowx-designer/managing-a-process-flow/adding-an-action-to-a-node): We use actions to add business decisions to the **flow** or link the process to custom integrations and **plugins**. - [Adding more flow branches](https://docs.flowx.ai/3.x/docs/flowx-designer/managing-a-process-flow/adding-more-flow-branches) - [Creating a new process definition](https://docs.flowx.ai/3.x/docs/flowx-designer/managing-a-process-flow/creating-a-new-process-definition): The first step of defining your business process in the **FlowX Designer** is adding a new [process definition](../../building-blocks/process/process-definition) for it. - [Creating a user interface](https://docs.flowx.ai/3.x/docs/flowx-designer/managing-a-process-flow/creating-a-user-interface) - [Exporting / importing a process definition](https://docs.flowx.ai/3.x/docs/flowx-designer/managing-a-process-flow/export-import-a-process-definition): To copy **process definitions** and move them between different environments, you can use the export/import feature. - [Handling decisions in the flow](https://docs.flowx.ai/3.x/docs/flowx-designer/managing-a-process-flow/handling-decisions-in-the-flow): To add business decisions in the flow and use them to pick between a flow branch or another, we can use [exclusive gateways](../../building-blocks/node/exclusive-gateway-node). - [Moving a token backwards in a process](https://docs.flowx.ai/3.x/docs/flowx-designer/managing-a-process-flow/moving-a-token-backwards-in-a-process): Back in process is a functionality that allows you to go back in a business process redo a series of previous **actions** in the process. - [Initiating processes](https://docs.flowx.ai/3.x/docs/flowx-designer/managing-a-process-flow/starting-a-process): Entering the realm of FlowxX unlocks a spectrum of possibilities for elevating processes and workflows. From automation to data-driven decision-making, several straightforward approaches pave the way for leveraging this platform efficiently. Let's delve into the ways to kickstart a process. - [FlowX.AI Designer](https://docs.flowx.ai/3.x/docs/flowx-designer/overview): The FLOWX.AI Designer is a collaborative, no-code, web-based application development environment, designed to facilitate the creation of web and mobile applications without the need for coding expertise. - [Building with FlowX.AI](https://docs.flowx.ai/3.x/docs/getting-started/building-your-first-proc): Let's explore how you can build amazing things with FlowX. - [Learn more](https://docs.flowx.ai/3.x/docs/getting-started/learn-more): Based on what you need to accomplish and understand, find below-suggested tracks you can follow. Choose the track that suits you best. - [Introduction](https://docs.flowx.ai/3.x/docs/introduction): FlowX.AI is an AI multi-experience development platform that sits on top of legacy systems and creates unified, scalable digital experiences. - [Advancing controller](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-components/advancing-controller): The Advancing Controller is a support service for the [Process Engine](./flowx-engine) that enhances the efficiency of advancing operations. It facilitates equal distribution and redistribution of the workload during scale-up and scale-down scenarios. - [Events gateway](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-components/events-gateway): Events Gateway a service that centralizes the communication with SSE (Server-sent Events) messages from Backend to Frontend. - [FlowX Engine](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-components/flowx-engine): The engine is the core of the platform, it is the service that runs instances of the process definitions, generates UI, communicates with the frontend and also with custom integrations and plugins. It keeps track of all currently running process instances and makes sure the process flows run correctly. - [Audit](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/audit): The Audit log service provides a centralized location for all audit events. The following details are available for each event. - [FlowX CMS](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/content-management/content-management): The Headless Content Management System is part of the core components of the **FlowX.AI** platform. It can be easily added to your custom FLOWX deployment to **enhance the core platform capabilities with functionality specific to taxonomies and managing various content types**. - [Content models](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/content-management/content-models): Content models are used to create complex content collections using customizable pieces of content. For example, you can define content models for an article that will be displayed on a page, creating customizable content. - [Enumerations](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/content-management/enumerations): A collection of values that can be utilized as content in UI components or templates is managed using **enumerations**. Values can be defined for certain [source systems](./source-systems) or [languages](./languages). - [Fonts management](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/content-management/font-files): Fonts management allows you to upload and manage multiple font files, which can be later utilized when configuring UI templates using the UI Designer. - [Languages](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/content-management/languages): The FLOWX Headless CMS can store and manage languages. You can add a language and use it in almost any content management configuration. - [Media library](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/content-management/media-library): The media library serves as a centralized hub for managing and organizing various types of media files, including images, GIFs, and more. It encompasses all the files that have been uploaded to the **processes**, providing a convenient location to view, organize, and upload new media files. - [Source systems](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/content-management/source-systems): If multiple **enumerations** values are needed to communicate with other systems, source systems can be used. - [Substitution tags](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/content-management/substitution-tags): Substitution tags are used to generate dynamic content across the platform. As **enumerations**, substitution tags can be defined for each language set for the solution. - [Generic parameters](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/generic-parameters): Generic parameters are variables or settings that are used to control the behavior of a software application or system. These parameters are designed to be flexible and adaptable, allowing users to customize the software to their specific needs. - [Access rights for Integration management](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/integration-management/configuring-access-rights-for-intgr-mngmnt): Granular access rights can be configured for restricting access to the Integration Management plugin component. These access rights must be configured in the Designer (admin) deployment. - [Overview](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/integration-management/integration-management-overview): Integration management helps you configure integrations between the following components, **FlowX Engine**, **plugins** or different adapters. - [null](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/license-engine) - [Scheduler](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/scheduler): The Scheduler is part of the core extensions of the **FlowX.AI platform**. It can be easily added to your custom FlowX deployment to **enhance the core platform capabilities with functionality specific to scheduling messages.** - [Search data](https://docs.flowx.ai/3.x/docs/platform-deep-dive/core-extensions/search-data-service): The Search data service is a microservice that enables data searches within other processes. It facilitates the creation of processes capable of conducting searches and retrieving data by utilizing [Kafka send/ Kafka receive](../../building-blocks/node/message-send-received-task-node) actions in tandem with Elasticsearch mechanisms. - [null](https://docs.flowx.ai/3.x/docs/platform-deep-dive/integrations/building-a-connector): Connectors are the vital gateway to enhancing FLOWX.AI's capabilities. They seamlessly integrate external systems, introducing new functionalities by operating as independently deployable, self-contained microservices. - [Creating a Kafka consumer](https://docs.flowx.ai/3.x/docs/platform-deep-dive/integrations/creating-a-kafka-consumer): This guide focuses on creating a **Kafka** consumer using Spring Boot. - [Creating a Kafka producer](https://docs.flowx.ai/3.x/docs/platform-deep-dive/integrations/creating-a-kafka-producer): This guide focuses on creating a **Kafka** producer using Spring Boot. - [Overview](https://docs.flowx.ai/3.x/docs/platform-deep-dive/integrations/integrations-overview): Integrations play a crucial role in **connecting legacy systems** or **third-party applications** to the **FlowX Engine**. They enable seamless communication by leveraging custom code and the **Kafka** messaging system. - [Jaeger setup for microservices](https://docs.flowx.ai/3.x/docs/platform-deep-dive/integrations/jaeger-setup-for-microservices): The scope of this document is to present some basic information on how to include Jaeger tracing into a Java based project. - [Mock integrations](https://docs.flowx.ai/3.x/docs/platform-deep-dive/integrations/mock-integrations): If you need to test the business process flow but haven't completed all integrations, you can still do so by utilizing the mock integrations server included in the platform. - [FlowX custom plugins](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins): Adding new capabilities to the core platform can be easily done by using plugins. FlowX plugins represent already-built functionality that can be added to a FlowX.AI platform deployment. - [Business flow example](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/customer-management/crm-plugin-example): We will explore an example in which we integrate a customer search in a business flow. - [Overview](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/customer-management/customer-management-overview): Customer management plugin uses a search engine (for example, [elasticSearch](https://www.elastic.co/) engine) to retrieve user details using partial match on big databases. - [Converting files](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/converting-documents-to-different-formats) - [Deleting files](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/deleting-a-file): The Documents plugin provides functionality for deleting files. - [Overview](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/documents-plugin-overview): The Documents Plugin can be easily added to your custom FlowX.AI deployment to **enhance the core platform capabilities with functionality specific to document handling**. - [Generating documents](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/generating-from-html-templates): One of the key features of the Documents plugin is the ability to generate **new documents** using **custom templates**, which can be pre-filled with data relevant to the current process instance. - [Getting URLs](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/getting-urls-to-documents): In certain scenarios, obtaining URLs pointing to uploaded documents for use in integrations is essential. This process involves adding a custom action to your workflow that requests URLs from the Documents plugin. - [Listing stored files](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/listing-stored-files): If you are using an S3-compatible cloud storage solution such as [MinIO](https://min.io/), the stored files are organized into buckets. A bucket serves as a container for objects stored in Amazon S3. The Documents Plugin provides a REST API that allows you to easily view the files stored in the buckets. - [Managing templates](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/managing-html-templates): The Documents plugin provides the flexibility to define and manage HTML templates for document generation, enabling customization through various parameter types. - [Splitting documents](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/splitting-a-document): You can split a document into multiple parts using the Documents plugin. - [Uploading a new document](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/uploading-a-new-document): This guide provides a detailed walkthrough for seamlessly integrating document uploads into a **process definition** by incorporating a user task node with an **Upload action**. This feature empowers users to actively engage with the process and select the desired file for upload. - [Forwarding notifications](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/forwarding-notifications-to-an-external-system): If the Notification service is not directly connected to an SMTP / SMS server and you want to use an external system for sending the notifications, you can use the notification plugin just to forward the notifications to your custom implementation. - [Managing notification templates](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/managing-notification-templates): You can create and manage notification templates using FlowX.AI Designer by accessing the dedicated section. - [Overview](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/notifications-plugin-overview): Notifications plugin can be easily added to your custom FlowX.AI deployment. The plugin will **enhance the core platform capabilities with functionality specific to sending various notifications**. - [Generate OTP](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/otp-flow/generate-otp): There are some cases when you will need to generate an OTP (One Time Password) from a business flow, for example when validating an email account. - [Handling OTP](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/otp-flow/otp-flow): The notifications plugin can also be used for handling the one time password (OTP) generation and validation flow. - [Validate OTP](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/otp-flow/validate-otp) - [Sending a notification](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/sending-a-notification): The plugin can be used for sending many kinds of notifications such as emails or SMS notifications. It can be easily integrated in one of your business processes. - [Sending an email](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/sending-an-email-with-attachments): To use the notification plugin for sending emails with attachments, you must define the same topic configuration as for sending regular notifications. A notification template must be created, and the corresponding Kafka topics must be defined. - [OCR plugin](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/ocr-plugin): The OCR (Optical Character Recognition) plugin is a powerful tool that enables you to read barcodes and extract handwritten signatures from .pdf documents with ease. - [Authorization & access roles](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/reporting/access-and-authorization) - [Reporting overview](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/reporting/reporting-overview): Reporting plugin will help you to build and bootstrap custom reports built on generic information about usage and processes using reporting plugin. Multiple reports to meet various needs can be generated. - [Overview](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/task-management/task-management-overview): The Task management plugin is a powerful plugin that enables back-officers and supervisors to efficiently track and assign tasks within a company. It provides a business-oriented view of a **process** defined using **FlowX Designer** and allows for seamless interactions at the assignment level. - [Using allocation rules](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/task-management/using-allocation-rules): Allocation rules are meant to define when tasks should be auto-assigned to users when they reach a [swimlane](../../../user-roles-management/swimlanes) that has a specific role configured (for example, specific tasks will be assigned for the _front office_ and specific tasks for the _back office_ only). - [Using hooks](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/task-management/using-hooks): Hooks allow you to extract stateful logic from a component, so it can be tested and reused independently. - [Using out of office records](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/task-management/using-out-of-office-records): The Out-of-office feature allows you to register users availability to perform a task. It can be allocated manually or automatically. - [Using stages](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/custom-plugins/task-management/using-stages): You can define specific stages during the execution of a process. Stages are configured on each node and they will be used to trigger an event when passing from one stage to another. - [WYSIWYG editor](https://docs.flowx.ai/3.x/docs/platform-deep-dive/plugins/wysiwyg): FlowX Designer's WYSIWYG (**"What You See Is What You Get"**) editor enables you to create and modify [notification](./custom-plugins/notifications-plugin/notifications-plugin-overview) and [document](./custom-plugins/documents-plugin/documents-plugin-overview) templates without the need for complicated coding from the developers. WYSIWYG editors make the creation/editing of any type of document or notification easier for the end-user. - [Third-party components](https://docs.flowx.ai/3.x/docs/platform-deep-dive/third-party-components): FlowX platform uses a number of third-party software components - [Business filters](https://docs.flowx.ai/3.x/docs/platform-deep-dive/user-roles-management/business-filters): An optional attribute, from the authorization token, that can be set in order to restrict access to process instances based on a business specific value (ex. bank branch name). - [Swimlanes](https://docs.flowx.ai/3.x/docs/platform-deep-dive/user-roles-management/swimlanes): Swimlanes provide a way of grouping process nodes by process participants. - [FlowX.AI architecture](https://docs.flowx.ai/3.x/docs/platform-overview/flowx-architecture) - [Intro to BPMN](https://docs.flowx.ai/3.x/docs/platform-overview/frameworks-and-standards/business-process-industry-standards/intro-to-bpmn): The core element of the platform is a process. Think of it as a representation of your business use case, for example making a request for a new credit card, placing an online food order, registering your new car or creating an online fundraiser supporting your cause. - [Intro to DMN](https://docs.flowx.ai/3.x/docs/platform-overview/frameworks-and-standards/business-process-industry-standards/intro-to-dmn): As we've seen in the previous chapter, Business Process Model and Notation ([**BPMN**](intro-to-bpmn/)) is used to define business processes as a sequence of activities. If we need to branch off different process paths, we use gateways. These have rules attached to them in order to decide on which outgoing path should the process continue on. - [Intro to MVEL](https://docs.flowx.ai/3.x/docs/platform-overview/frameworks-and-standards/business-process-industry-standards/intro-to-mvel): We can also **specify the business rules logic using MVEL scripts**. As opposed to DMN, with MVEL you can create complex business rules with multiple parameters and sub-calculations. - [Intro to Elasticsearch](https://docs.flowx.ai/3.x/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-elasticsearch): Elasticsearch itself is not inherently event-driven, it can be integrated into event-driven architectures or workflows. External components or frameworks detect and trigger events, and Elasticsearch is utilized to efficiently index and make the event data searchable. - [Intro to Kafka concepts](https://docs.flowx.ai/3.x/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-kafka-concepts): Apache Kafka is an open-source distributed event streaming platform that can handle a high volume of data and enables you to pass messages from one end-point to another. - [Intro to Kubernetes](https://docs.flowx.ai/3.x/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-kubernetes): Kubernetes is an open-source container orchestration platform that automates many of the manual processes involved in containerized application deployment, management, and scaling. - [Intro to NGINX](https://docs.flowx.ai/3.x/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-nginx): [NGINX](https://www.nginx.com/) is a free, open-source, high-performance web server with a rich feature set, simple configuration, and low resource consumption that can also function as a reverse proxy, load balancer, mail proxy, HTTP cache, and many other things. - [Intro to Redis](https://docs.flowx.ai/3.x/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-redis): Redis is a fast, open-source, in-memory key-value data store that is commonly used as a cache to store frequently accessed data in memory so that applications can be responsive to users. It delivers sub-millisecond response times enabling millions of requests per second for applications. - [Android SDK](https://docs.flowx.ai/3.x/sdks/android-renderer) - [Web SDK (Angular renderer)](https://docs.flowx.ai/3.x/sdks/angular-renderer): FlowxProcessRenderer is a low code library designed to render UI configured via the Flowx Process Editor. - [iOS SDK](https://docs.flowx.ai/3.x/sdks/ios-renderer) - [SDKs overview](https://docs.flowx.ai/3.x/sdks/sdks-overview): FLOWX.AI provides web and native mobile SDKs. These SDKs enable developers to create applications that can be displayed in a browser, embedded in an internet banking interface, or in a mobile banking app. The SDKs automatically generate the user interface (UI) based on the business process and data points created by a business analyst, reducing the need for UX/UI expertise. - [IAM solution](https://docs.flowx.ai/3.x/setup-guides/access-management/access-management-overview): Identity and access management (IAM) is **a framework of business processes, policies and technologies that facilitates the management of electronic or digital identities**. With an IAM framework in place, you can control user access to critical information/components within an organization. - [Admin access rights](https://docs.flowx.ai/3.x/setup-guides/access-management/configuring-access-rights-for-admin): Granular access rights can be configured for restricting access to the Admin component. - [FlowX CMS access rights](https://docs.flowx.ai/3.x/setup-guides/access-management/configuring-access-rights-for-cms): Granular access rights can be configured for restricting access to the CMS component. - [FlowX Engine access rights](https://docs.flowx.ai/3.x/setup-guides/access-management/configuring-access-rights-for-engine): Granular access rights can be configured for restricting access to the Engine component. - [License Engine access rights](https://docs.flowx.ai/3.x/setup-guides/access-management/configuring-access-rights-for-license): Granular access rights can be configured for restricting access to the License component. - [Configuring an IAM solution](https://docs.flowx.ai/3.x/setup-guides/access-management/configuring-an-iam-solution) - [Default roles](https://docs.flowx.ai/3.x/setup-guides/access-management/default-roles): Below you can find the list of all the default roles that you can add or import into the Identity and Access Management solution to properly manage the access to all the FlowX.AI microservices. - [Admin](https://docs.flowx.ai/3.x/setup-guides/admin-setup-guide): The admin part manages process-related entities and provides the REST API used by the **FlowX Designer**. The processes defined here will be handled by the [**FlowX Engine**](../docs/platform-deep-dive/core-components/flowx-engine). - [Advancing controller](https://docs.flowx.ai/3.x/setup-guides/advancing-controller-setup-guide): This guide provides step-by-step instructions to help you configure and deploy the Advancing Controller effectively. - [Audit](https://docs.flowx.ai/3.x/setup-guides/audit-setup-guide): This guide will walk you through the process of setting up the Audit service and configuring it to meet your needs. - [FlowX CMS](https://docs.flowx.ai/3.x/setup-guides/cms-setup): The CMS service is a microservice that allows managing taxonomies and contents. It is available as a Docker image and is designed to make it easy to edit and analyze content. This guide will walk you through the process of setting up the service and configuring it to meet your needs. - [FlowX Designer](https://docs.flowx.ai/3.x/setup-guides/designer-setup-guide): To set up FlowX Designer in your environment, follow this guide. - [Events gateway](https://docs.flowx.ai/3.x/setup-guides/events-gateway-setup): This guide will walk you through the process of setting up the events-gateway service. - [Configuring access roles for processes](https://docs.flowx.ai/3.x/setup-guides/flowx-engine-setup-guide/configuring-access-roles-for-processes) - [Configuring elasticsearch indexing](https://docs.flowx.ai/3.x/setup-guides/flowx-engine-setup-guide/configuring-elasticsearch-indexing/elasticsearch-indexing): This section provides configuration steps for enabling process instance indexing using the Kafka transport strategy. - [Indexing config guidelines](https://docs.flowx.ai/3.x/setup-guides/flowx-engine-setup-guide/configuring-elasticsearch-indexing/process-instance-indexing-config-guidelines): The configuration of Elasticsearch for process instances indexing depends on various factors related to the application load, the number of process instances, parallel requests, and indexed keys per process. Although the best approach to sizing and configuring Elasticsearch is through testing and monitoring under load, here are some guidelines to help you get started - [FlowX Engine setup](https://docs.flowx.ai/3.x/setup-guides/flowx-engine-setup-guide/engine-setup): This guide will provide instructions on how to set up and configure the FlowX Engine to meet your specific requirements. - [Partitioning & archiving](https://docs.flowx.ai/3.x/setup-guides/flowx-engine-setup-guide/process-instance-data-archiving): Improving data management using data partitioning and the archival processes. - [License Engine](https://docs.flowx.ai/3.x/setup-guides/license-engine-setup): The License Engine is a service that can be set up using a Docker image. This guide will walk you through the process of setting up the License service and configuring it to meet your needs. - [Documents plugin access rights](https://docs.flowx.ai/3.x/setup-guides/plugins-access-rights/configuring-access-rights-for-documents): Granular access rights can be configured for restricting access to the Documents plugin component. - [Notifications plugin access rights](https://docs.flowx.ai/3.x/setup-guides/plugins-access-rights/configuring-access-rights-for-notifications): Granular access rights can be configured for restricting access to the Notification plugin component. - [Task management plugin access rights](https://docs.flowx.ai/3.x/setup-guides/plugins-access-rights/configuring-access-rights-for-task-management): Granular access rights can be configured for restricting access to the Task management plugin component. - [Customer management](https://docs.flowx.ai/3.x/setup-guides/plugins-setup-guide/customer-management-plugin-configuration): The Customer management plugin is available as a docker image so we need to configure. - [Documents plugin](https://docs.flowx.ai/3.x/setup-guides/plugins-setup-guide/documents-plugin-setup): The Documents plugin provides functionality for generating, persisting, combining, and manipulating documents within the **FlowX.AI** system. - [Notifications plugin](https://docs.flowx.ai/3.x/setup-guides/plugins-setup-guide/notifications-plugin-setup): The Notifications plugin is available as a docker image, and it has the following dependencies. - [OCR plugin](https://docs.flowx.ai/3.x/setup-guides/plugins-setup-guide/ocr-plugin-setup): The OCR plugin is a docker image that can be deployed using the following infrastructure prerequisites. - [Overview](https://docs.flowx.ai/3.x/setup-guides/plugins-setup-guide/plugins-setup-guide-overview): To set up a plugin in your environment, you must go through the next steps. - [Reporting](https://docs.flowx.ai/3.x/setup-guides/plugins-setup-guide/reporting-setup): The Reporting setup guide assists in configuring the reporting plugin, relying on specific dependencies and configurations. - [Task management](https://docs.flowx.ai/3.x/setup-guides/plugins-setup-guide/task-management-plugin-setup): The plugin is available as a docker image. - [Scheduler](https://docs.flowx.ai/3.x/setup-guides/scheduler-setup-guide): This guide will walk you through the process of setting up the Scheduler service using a Docker image. - [Search data](https://docs.flowx.ai/3.x/setup-guides/search-data-service-setup-guide): This guide will walk you through the process of setting up the Search Data service using a Docker image. - [Overview](https://docs.flowx.ai/3.x/setup-guides/setup-guides-overview): Deploying microservices typically involves breaking down the application into smaller, modular components. Each microservice should be independently deployable, with all the necessary dependencies and configurations included. - [Add new Kafka exchange mock](https://docs.flowx.ai/4.0/docs/api/add-kafka-mock) - [Enable misconfigurations](https://docs.flowx.ai/4.0/docs/api/add-misconfigurations): To enable and to compute warnings for already existing processes from previous FlowX versions (< 4.1), you must use the following endpoint to compute all the warnings. - [Clear cache](https://docs.flowx.ai/4.0/docs/api/clear-cache4.0) - [Download a file](https://docs.flowx.ai/4.0/docs/api/download-file) - [Process status](https://docs.flowx.ai/4.0/docs/api/flowx-engine-api/rest) - [Start process](https://docs.flowx.ai/4.0/docs/api/flowx-engine-api/rest2) - [Start process and inherit values](https://docs.flowx.ai/4.0/docs/api/flowx-engine-api/rest3) - [Execute action](https://docs.flowx.ai/4.0/docs/api/flowx-engine-api/rest4) - [List buckets](https://docs.flowx.ai/4.0/docs/api/list-buckets): The Documents Plugin provides the following REST API endpoints for interacting with the stored files. - [List objects in a bucket](https://docs.flowx.ai/4.0/docs/api/list-objects-in-buckets) - [View Kafka exchanges](https://docs.flowx.ai/4.0/docs/api/view-kafka-exchanges) - [Node actions](https://docs.flowx.ai/4.0/docs/building-blocks/actions/actions): The activity that a node has to handle is defined using an action. These can have various types, they can be used to specify the communication details for plugins or integrations. - [Append params to parent process](https://docs.flowx.ai/4.0/docs/building-blocks/actions/append-params-to-parent-process): It is a type of action that allows you to send data from a subprocess to a parent process. - [Business rules types](https://docs.flowx.ai/4.0/docs/building-blocks/actions/business-rule-action/business-rule-action): A business rule is an action type that allows you to configure a script on a BPMN node. It is a graphical representation used to specify business processes in a business process model. - [Configuring a DMN business rule action](https://docs.flowx.ai/4.0/docs/building-blocks/actions/business-rule-action/dmn-business-rule-action): Decision Model and Notation is a graphical language used to specify business decisions. DMN helps convert complex decision-making code into easily readable diagrams. - [Kafka send action](https://docs.flowx.ai/4.0/docs/building-blocks/actions/kafka-send-action): The FlowX Designer offers various options to configure the Kafka Send Action through the Actions tab at the node level. - [Send data to user interface](https://docs.flowx.ai/4.0/docs/building-blocks/actions/send-data-to-user-interface): Send data to user interface action is based on Server-Sent Events (SSE), a web technology that enables servers to push real-time updates or events to clients over a single, long-lived HTTP connection. It provides a unidirectional communication channel from the server to the client, allowing the server to send updates to the client without the need for the client to continuously make requests. - [Start subprocess action](https://docs.flowx.ai/4.0/docs/building-blocks/actions/start-subprocess-action): A Start subprocess action is an action that allows you to start a subprocess from another (parent) process. - [Upload file action](https://docs.flowx.ai/4.0/docs/building-blocks/actions/upload-file-action): An Upload File action is an action type that allows you to upload a file to a service available on Kafka. - [Call activity node](https://docs.flowx.ai/4.0/docs/building-blocks/node/call-subprocess-tasks/call-activity-node): Call activity is a node that provides advanced options for starting subprocesses. - [Start embedded subprocess](https://docs.flowx.ai/4.0/docs/building-blocks/node/call-subprocess-tasks/start-embedded-subprocess): The Start Embedded Subprocess node initiates subprocesses within a parent process, allowing for encapsulated functionality and enhanced process management. - [Error events](https://docs.flowx.ai/4.0/docs/building-blocks/node/error-events): Error Events expand the capabilities of process modeling and error handling within BPMN processing. These Error Event nodes enhance the BPMN standard and offer improved control over error management. - [Exclusive gateway](https://docs.flowx.ai/4.0/docs/building-blocks/node/exclusive-gateway-node): In the world of process flows, decisions play a crucial role, and that's where the Exclusive Gateway comes into play. This powerful tool enables you to create conditional pathways with ease. - [Message catch boundary events](https://docs.flowx.ai/4.0/docs/building-blocks/node/message-events/message-catch-boundary-event): Boundary events are integral components linked to **user tasks** within a process flow. Specifically, Message Catch Boundary Events are triggered by incoming messages and can be configured as either interrupting or non-interrupting based on your requirements. - [Message catch start event](https://docs.flowx.ai/4.0/docs/building-blocks/node/message-events/message-catch-start-event): Message Catch Start Event node represents the starting point for a process instance based on the receipt of a specific message. When this event is triggered by receiving the designated message, it initiates the execution of the associated process. - [Message Events](https://docs.flowx.ai/4.0/docs/building-blocks/node/message-events/message-events): Message events serve as a means to incorporate messaging capabilities into business process modeling. These events are specifically designed to capture the interaction between different process participants by referencing messages. - [Intermediate message events in business processes](https://docs.flowx.ai/4.0/docs/building-blocks/node/message-events/message-intermediate/example-intermediate-message-events): Business processes often involve dynamic communication and coordination between different stages or departments. Intermediate Message Events play an important role in orchestrating information exchange, ensuring effective synchronization, and enhancing the overall efficiency of these processes. - [Message catch intermediate event](https://docs.flowx.ai/4.0/docs/building-blocks/node/message-events/message-intermediate/message-catch-intermediate-event): A Message Catch Intermediate Event is a type of event in a process that waits for a specific message before continuing with the process flow. - [Overview](https://docs.flowx.ai/4.0/docs/building-blocks/node/message-events/message-intermediate/message-intermediate) - [Message throw intermediate event](https://docs.flowx.ai/4.0/docs/building-blocks/node/message-events/message-intermediate/message-throw-intermediate-event): Using a Throw intermediate event is like throwing a message to tell someone about something. After throwing the message, the process keeps going, and other parts of the process can listen to that message. - [Send message/receive message tasks](https://docs.flowx.ai/4.0/docs/building-blocks/node/message-send-received-task-node): Send message task and Receive message task nodes are used to handle the interaction between a running process and external systems. This is done using Kafka. - [BPMN nodes](https://docs.flowx.ai/4.0/docs/building-blocks/node/node): A Business Process Model and Notation (BPMN) node is a visual representation of a point in your process. Nodes are added at specific process points to denote the entrance or transition of a record within the process. - [Parallel gateway](https://docs.flowx.ai/4.0/docs/building-blocks/node/parallel-gateway): When you have multiple operations that can be executed concurrently, the Parallel Gateway becomes a valuable tool. This type of node creates a parallel section within the process, particularly useful for tasks that can run independently without waiting for each other. It's essential to close each parallel section with another Parallel Gateway node. - [Start/end nodes](https://docs.flowx.ai/4.0/docs/building-blocks/node/start-end-node): Let's go through all the options for configuring start and end nodes for a process definition. - [Task node](https://docs.flowx.ai/4.0/docs/building-blocks/node/task-node): A task node refers to a task that utilizes various services, such as Web services, automated applications, or other similar services, to accomplish a particular task. - [Timer boundary event](https://docs.flowx.ai/4.0/docs/building-blocks/node/timer-events/timer-boundary-event) - [Timer events](https://docs.flowx.ai/4.0/docs/building-blocks/node/timer-events/timer-events): Timer event nodes are a powerful feature in BPMN that allow you to introduce time-based behavior into your processes. These nodes enable you to trigger specific actions or events at predefined time intervals, durations, or cycles. With timer event nodes, you can design processes that respond to time-related conditions, ensuring smoother workflow execution and enhanced automation. - [Timer expressions](https://docs.flowx.ai/4.0/docs/building-blocks/node/timer-events/timer-expressions) - [Timer Intermediate Event (interrupting)](https://docs.flowx.ai/4.0/docs/building-blocks/node/timer-events/timer-intermediate-event): A Timer Intermediate Event (interrupting) is an event that is triggered based on a specified time duration or date. It is placed within the flow of a process and serves as a point of interruption and continuation. - [Timer Start Event (interrupting)](https://docs.flowx.ai/4.0/docs/building-blocks/node/timer-events/timer-start-event): A Timer Start Event initiates a process instance based on a specified time or schedule. - [User task node](https://docs.flowx.ai/4.0/docs/building-blocks/node/user-task-node): This node represents an interaction with the user. It is used to display a piece of UI (defined in the UI Designer or a custom Angular component. You can also define actions available for the users to interact with the process. - [Navigation areas](https://docs.flowx.ai/4.0/docs/building-blocks/process/navigation-areas): Navigation areas play a pivotal role in user interface design. They enhance the user experience by providing a structured, organized, and efficient way for users to interact with and explore various features and solutions. - [Process Designer](https://docs.flowx.ai/4.0/docs/building-blocks/process/process): The Process Designer workspace is tailored for creating and editing business processes, featuring a menu with all the essential elements needed to design a process. - [Process definition](https://docs.flowx.ai/4.0/docs/building-blocks/process/process-definition): The core of the platform is the process definition, which is the blueprint of the business process made up of nodes that are linked by sequences. - [Process instance](https://docs.flowx.ai/4.0/docs/building-blocks/process/process-instance): A process instance is a specific execution of a business process that is defined on the FlowX.AI platform. Once a process definition is added to the platform, it can be executed, monitored, and optimized by creating an instance of the definition. - [Subprocess management](https://docs.flowx.ai/4.0/docs/building-blocks/process/subprocess): Learn how to configure, start, and execute subprocesses efficiently within your process flow. - [Versioning](https://docs.flowx.ai/4.0/docs/building-blocks/process/versioning): With versioning, you can easily track your process definition's evolution. - [Supported scripts](https://docs.flowx.ai/4.0/docs/building-blocks/supported-scripts): Scripts are used to define and run actions but also properties inside nodes. For now, the following script languages are supported. - [Token](https://docs.flowx.ai/4.0/docs/building-blocks/token): Token is the concept that describes the current position in the process flow. When you start the process you have a graph of nodes and based on the configuration you will go from one to another based on the defined sequence (connection between nodes). - [Dynamic & computed values](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/dynamic-and-computed-values): In modern application development, the ability to create dynamic and interactive user interfaces is essential for delivering personalized and responsive experiences to users. Dynamic values and computed values are powerful features that enable developers to achieve this level of flexibility and interactivity. - [Layout configuration](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/layout-configuration): Layout settings will be available for all components that can group other types of elements (for example, Containers or Cards). - [UI actions](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-actions): Multiple UI elements can be linked to a specific action via a UI action. If the action is just a method to interact with the process, the UI Action adds information about how that UI should react. For example, should a loader appear after executing the action, should a modal be dismissed, or if some default data should be sent back to the process. - [Buttons](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/buttons): There are two types of buttons available, each with a different purpose. - [Collection](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/collection/collection): The Collection component is similar to a container element, allowing you to iterate through a list of elements and display them according to their configuration. - [Collection prototype](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/collection/collection_prototype): A Collection prototype is an additional container type that allows you to define multiple prototypes for a single Collection. This feature enables you to display elements from the same collection differently. - [File preview](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/file-preview): The File Preview UI element is a user interface component that enables users to preview the contents of files quickly and easily without fully opening them. It can save time and enhance productivity, providing a glimpse of what's inside a file without having to launch it entirely. - [Checkbox](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/checkbox-form-field): A checkbox form field is an interactive element in a web form that provides users with multiple selectable options. It allows users to choose one or more options from a pre-determined set by simply checking the corresponding checkboxes. - [Datepicker](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/datepicker-form-field): The datepicker (Calendar Picker) is a lightweight component that allows end users to enter or select a date value. - [Input](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/input-form-field): An input field is a form element that enables users to input data with validations and can be hidden or disabled. - [Radio](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/radio-form-field): Radio buttons are normally presented in radio groups (a collection of radio buttons describing a set of related options). Only one radio button in a group can be selected at the same time. - [Segmented button](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/segmented-button): It allows users to pick only one option from a group of options, and you can choose to have between 2 and 5 options in the group. The segmented button is easy to use, and can help make your application easier for people to use. - [Select](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/select-form-field): The Select form field is an element that allows users to choose from a list of predefined options. Each option consists of a label, which is displayed in the dropdown menu, and a corresponding value, which is stored upon selection. - [Slider](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/slider): It allows users to pick only one option from a group of options, and you can choose to have between 2 and 5 options in the group. The segmented button is easy to use, and can help make your application easier for people to use. - [Switch](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/switch-form-field): A switch, a toggle switch, is another form element that can be utilized to create an intuitive user interface. The switch allows users to select a response by toggling it between two states. Based on the selection made by the user, the corresponding Boolean value of either true or false will be recorded and stored in the process instance values for future reference. - [Text area](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/text-area): A text area is a form element used to capture multi-line input from users in a conversational interface. The text area component is typically used for longer inputs such as descriptions, comments, or feedback, providing users with more space to type their responses. - [Image](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/image): Image UI elements are graphical components of a user interface that display a static or dynamic visual representation of an object, concept, or content. - [Indicators](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/indicators): The indicators (Message UI elements) allow you to display different types of messages. - [Card](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/root-components/card): A card in FlowX.AI is a graphical component designed for the purpose of grouping and aligning various elements. It offers added functionality by incorporating an accordion feature, allowing users to expand and collapse content as needed. - [Container](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/root-components/container): A container in Flowx is a versatile building block that empowers you to group components and arrange them as needed, providing flexibility in UI design. It can also serve as the root component for your design. - [Custom component](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/root-components/custom): Custom components are developed in the web application and referenced here by component identifier. This will dictate where the component is displayed in the component hierarchy and what actions are available for the component. - [Root Components in UI Design](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/root-components/root-components): Root components serve as the foundation for structuring user interfaces, providing the framework for arranging and configuring different types of components. - [Typography](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-component-types/typography): Typography is an important aspect of design that greatly influences how users perceive and interact with your content. In this section, we'll explore how to effectively utilize two essential UI elements, "Text" and "Link." - [UI Designer](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/ui-designer): The FlowX platform offers a variety of ready-to-use UI components that can be used to create rich web interfaces. These include common form elements like input fields, dynamic dropdown menus, checkboxes, radio and switch buttons, as well as other UI elements like image, text, anchor links, etc. The properties of each component can be customized further using the details tab, and design flexibility is achieved by adding styles or CSS classes to the pre-defined components. The UI templates are built in a hierarchical structure, with a root component at the top. - [Validators](https://docs.flowx.ai/4.0/docs/building-blocks/ui-designer/validators): Validators are an essential part of building robust and reliable applications. They ensure that the data entered by the user is accurate, complete, and consistent. In Angular applications, validators provide a set of pre-defined validation rules that can be used to validate various form inputs such as text fields, number fields, email fields, date fields, and more. - [Adding a new node](https://docs.flowx.ai/4.0/docs/flowx-designer/managing-a-process-flow/adding-a-new-node): Once you create a new process definition, you can start configuring it by adding new nodes. - [Adding an action to a node](https://docs.flowx.ai/4.0/docs/flowx-designer/managing-a-process-flow/adding-an-action-to-a-node): We use actions to add business decisions to the flow or link the process to custom integrations and plugins. - [Adding more flow branches](https://docs.flowx.ai/4.0/docs/flowx-designer/managing-a-process-flow/adding-more-flow-branches) - [Creating a new process definition](https://docs.flowx.ai/4.0/docs/flowx-designer/managing-a-process-flow/creating-a-new-process-definition): The first step of defining your business process in the FlowX.AI Designer is adding a new process definition for it. - [Creating a user interface](https://docs.flowx.ai/4.0/docs/flowx-designer/managing-a-process-flow/creating-a-user-interface) - [Exporting / importing a process definition version](https://docs.flowx.ai/4.0/docs/flowx-designer/managing-a-process-flow/export-import-a-process-definition): To export process definitions versions and move them between different environments, you can use the export version/ import process feature. - [Handling decisions in the flow](https://docs.flowx.ai/4.0/docs/flowx-designer/managing-a-process-flow/handling-decisions-in-the-flow): To add business decisions in the flow and use them to pick between a flow branch or another, we can use exclusive gateways. - [Moving a token backwards in a process](https://docs.flowx.ai/4.0/docs/flowx-designer/managing-a-process-flow/moving-a-token-backwards-in-a-process): Back in steps is a functionality that allows you to go back in a business process redo a series of previous actions in the process. - [Initiating processes](https://docs.flowx.ai/4.0/docs/flowx-designer/managing-a-process-flow/starting-a-process): Entering the realm of FlowxX unlocks a spectrum of possibilities for elevating processes and workflows. From automation to data-driven decision-making, several straightforward approaches pave the way for leveraging this platform efficiently. Let's delve into the ways to kickstart a process. - [FlowX.AI Designer](https://docs.flowx.ai/4.0/docs/flowx-designer/overview): The FlowX.AI Designer is a collaborative, no-code, web-based application development environment, designed to facilitate the creation of web and mobile applications without the need for coding expertise. - [Building with FlowX.AI](https://docs.flowx.ai/4.0/docs/getting-started/building-your-first-proc): Let's explore how to build innovative solutions with FlowX.AI. - [Learn more](https://docs.flowx.ai/4.0/docs/getting-started/learn-more): Based on what you need to accomplish and understand, find below-suggested tracks you can follow. Choose the track that suits you best. - [Introduction](https://docs.flowx.ai/4.0/docs/introduction): FlowX.AI is an AI multi-experience development platform that sits on top of legacy systems and creates unified, scalable digital experiences. - [FlowX.AI Advancing Controller](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-components/advancing-controller): The Advancing Controller is a support service for the FlowX.AI Engine that enhances the efficiency of advancing operations. It facilitates equal distribution and redistribution of the workload during scale-up and scale-down scenarios. - [FlowX.AI Events Gateway](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-components/events-gateway): The FlowX Events Gateway is a service that centralizes the communication with Server-Sent Events (SSE) messages from Backend to Frontend. - [FlowX.AI Engine](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-components/flowx-engine): The engine is the core of the platform, it is the service that runs instances of the process definitions, generates UI, communicates with the frontend and also with custom integrations and plugins. It keeps track of all currently running process instances and makes sure the process flows run correctly. - [FlowX.AI Audit](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/audit): The Audit service provides a centralized location for all audit events. The following details are available for each event. - [FlowX.AI CMS](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/content-management/content-management): The FlowX.AI Headless Content Management System (CMS) is a core component of the FlowX.AI platform, designed to enhance the platform's capabilities with specialized functionalities for managing taxonomies and diverse content types. - [Content models](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/content-management/content-models): Content models are used to create complex content collections using customizable pieces of content. For example, you can define content models for an article that will be displayed on a page, creating customizable content. - [Enumerations](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/content-management/enumerations): A collection of values that can be utilized as content in UI components or templates is managed using enumerations. Values can be defined for certain source systems or languages. - [Fonts management](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/content-management/font-files): Fonts management allows you to upload and manage multiple font files, which can be later utilized when configuring UI templates using the UI Designer. - [Languages](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/content-management/languages): The FLOWX Headless CMS can store and manage languages. You can add a language and use it in almost any content management configuration. - [Media library](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/content-management/media-library): The media library serves as a centralized hub for managing and organizing various types of media files, including images, GIFs, and more. It encompasses all the files that have been uploaded to the **processes**, providing a convenient location to view, organize, and upload new media files. - [Source systems](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/content-management/source-systems): If multiple **enumerations** values are needed to communicate with other systems, source systems can be used. - [Substitution tags](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/content-management/substitution-tags): Substitution tags are used to generate dynamic content across the platform. As **enumerations**, substitution tags can be defined for each language set for the solution. - [Theme management](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/content-management/themes): Theme management feature enables you to easily change the appearance and styling of your application. You can personalize the look and feel of your application to your branding, preferences, or specific requirements. - [Generic parameters](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/generic-parameters): Generic parameters are variables or settings that are used to control the behavior of a software application or system. These parameters are designed to be flexible and adaptable, allowing users to customize the software to their specific needs. - [Access rights for Integration management](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/integration-management/configuring-access-rights-for-intgr-mngmnt): Granular access rights can be configured for restricting access to the Integration Management plugin component. These access rights must be configured in the Designer (admin) deployment. - [Integration Management](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/integration-management/integration-management-overview): Integration management helps you configure integrations between the following components, FlowX Engine, plugins or different adapters. - [FlowX.AI License Engine](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/license-engine): The License Engine is part of the core extensions of the FlowX.AI platform. It is used for displaying reports regarding the usage of the platform in the FlowX.AI Designer. - [FlowX.AI Scheduler](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/scheduler): The Scheduler is part of the core extensions of the FlowX.AI platform. It can be easily added to your custom FlowX deployment to enhance the core platform capabilities with functionality specific to scheduling messages. - [FlowX.AI Data Search](https://docs.flowx.ai/4.0/docs/platform-deep-dive/core-extensions/search-data-service): The Data Search service is a microservice that enables data searches within other processes. It facilitates the creation of processes capable of conducting searches and retrieving data by utilizing Kafka actions in tandem with Elasticsearch mechanisms. - [null](https://docs.flowx.ai/4.0/docs/platform-deep-dive/integrations/building-a-connector): Connectors are the vital gateway to enhancing FlowX.AI's capabilities. They seamlessly integrate external systems, introducing new functionalities by operating as independently deployable, self-contained microservices. - [Creating a Kafka consumer](https://docs.flowx.ai/4.0/docs/platform-deep-dive/integrations/creating-a-kafka-consumer): This guide focuses on creating a **Kafka** consumer using Spring Boot. - [Creating a Kafka producer](https://docs.flowx.ai/4.0/docs/platform-deep-dive/integrations/creating-a-kafka-producer): This guide focuses on creating a **Kafka** producer using Spring Boot. - [Overview](https://docs.flowx.ai/4.0/docs/platform-deep-dive/integrations/integrations-overview): Integrations play a crucial role in connecting legacy systems or third-party applications to the FlowX Engine. They enable seamless communication by leveraging custom code and the Kafka messaging system. - [Jaeger setup for microservices](https://docs.flowx.ai/4.0/docs/platform-deep-dive/integrations/jaeger-setup-for-microservices): The scope of this document is to present some basic information on how to include Jaeger tracing into a Java based project. - [Mock integrations](https://docs.flowx.ai/4.0/docs/platform-deep-dive/integrations/mock-integrations): If you need to test the business process flow but haven't completed all integrations, you can still do so by utilizing the mock integrations server included in the platform. - [FlowX AI Agents](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/ai-agents): Get ready to revolutionize your journey with our upcoming AI-powered agents. - [FlowX custom plugins](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins): Adding new capabilities to the core platform can be easily done by using plugins. FlowX plugins represent already-built functionality that can be added to a FlowX.AI platform deployment. - [Converting files](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/converting-documents-to-different-formats) - [Deleting files](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/deleting-a-file): The Documents plugin provides functionality for deleting files. - [Documents plugin](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/documents-plugin-overview): The Documents Plugin can be easily added to your custom FlowX.AI deployment to enhance the core platform capabilities with functionality specific to document handling. - [Generating documents](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/generating-from-html-templates): One of the key features of the Documents plugin is the ability to generate new documents using custom templates, which can be pre-filled with data relevant to the current process instance. - [Getting URLs](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/getting-urls-to-documents): In certain scenarios, obtaining URLs pointing to uploaded documents for use in integrations is essential. This process involves adding a custom action to your workflow that requests URLs from the Documents plugin. - [Listing stored files](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/listing-stored-files): If you are using an S3-compatible cloud storage solution such as MinIO, the stored files are organized into buckets. A bucket serves as a container for objects stored in Amazon S3. The Documents Plugin provides a REST API that allows you to easily view the files stored in the buckets. - [Managing templates](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/managing-html-templates): The Documents plugin provides the flexibility to define and manage HTML templates for document generation, enabling customization through various parameter types. - [Splitting documents](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/splitting-a-document): You can split a document into multiple parts using the Documents plugin. - [Uploading a new document](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/uploading-a-new-document): This guide provides a detailed walkthrough for seamlessly integrating document uploads into a process definition by incorporating a user task node with an Upload action. This feature empowers users to actively engage with the process and select the desired file for upload. - [Forwarding notifications](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/forwarding-notifications-to-an-external-system): If the Notification service is not directly connected to an SMTP / SMS server and you want to use an external system for sending the notifications, you can use the notification plugin just to forward the notifications to your custom implementation. - [Managing notification templates](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/managing-notification-templates): You can create and manage notification templates using FlowX.AI Designer by accessing the dedicated section. - [Notifications plugin](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/notifications-plugin-overview): Notifications plugin can be easily added to your custom FlowX.AI deployment. The plugin will **enhance the core platform capabilities with functionality specific to sending various notifications**. - [Generate OTP](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/otp-flow/generate-otp): There are some cases when you will need to generate an OTP (One Time Password) from a business flow, for example when validating an email account. - [Handling OTP](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/otp-flow/otp-flow): The notifications plugin can also be used for handling the one time password (OTP) generation and validation flow. - [Validate OTP](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/otp-flow/validate-otp) - [Sending a notification](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/sending-a-notification): The plugin can be used for sending many kinds of notifications such as emails or SMS notifications. It can be easily integrated in one of your business processes. - [Sending an email](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/sending-an-email-with-attachments): To use the notification plugin for sending emails with attachments, you must define the same topic configuration as for sending regular notifications. A notification template must be created, and the corresponding Kafka topics must be defined. - [OCR plugin](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/ocr-plugin): The OCR (Optical Character Recognition) plugin is a powerful tool that enables you to read barcodes and extract handwritten signatures from .pdf documents with ease. - [Authorization & access roles](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/reporting/access-and-authorization) - [Reporting plugin](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/reporting/reporting-overview): The FlowX.AI Reporting plugin helps you build and bootstrap custom reports using data from your BPMN processes. Moreover, it supports technical reports based on process instance data. Integrated with the FlowX.AI Engine, this plugin transforms raw data into actionable insights, enhancing decision-making and optimizing business processes. - [Task management](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/task-management/task-management-overview): The Task management plugin is a powerful plugin that enables back-officers and supervisors to efficiently track and assign tasks within a company. It provides a business-oriented view of a **process** defined using FlowX Designer and allows for seamless interactions at the assignment level. - [Using allocation rules](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/task-management/using-allocation-rules): Allocation rules are meant to define when tasks should be auto-assigned to users when they reach a swimlane that has a specific role configured (for example, specific tasks will be assigned for the _front office_ and specific tasks for the _back office_ only). - [Using hooks](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/task-management/using-hooks): Hooks allow you to extract stateful logic from a component, so it can be tested and reused independently. - [Using out of office records](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/task-management/using-out-of-office-records): The Out-of-office feature allows you to register users availability to perform a task. It can be allocated manually or automatically. - [Using stages](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/custom-plugins/task-management/using-stages): You can define specific stages during the execution of a process. Stages are configured on each node and they will be used to trigger an event when passing from one stage to another. - [WYSIWYG editor](https://docs.flowx.ai/4.0/docs/platform-deep-dive/plugins/wysiwyg): FlowX Designer's WYSIWYG ("What You See Is What You Get") editor enables you to create and modify notification and document templates without the need for complicated coding from the developers. WYSIWYG editors make the creation/editing of any type of document or notification easier for the end-user. - [Third-party components](https://docs.flowx.ai/4.0/docs/platform-deep-dive/third-party-components): FlowX.AI uses a number of third-party software components - [Business filters](https://docs.flowx.ai/4.0/docs/platform-deep-dive/user-roles-management/business-filters): An optional attribute, from the authorization token, that can be set in order to restrict access to process instances based on a business specific value (ex. bank branch name). - [Swimlanes](https://docs.flowx.ai/4.0/docs/platform-deep-dive/user-roles-management/swimlanes): Swimlanes provide a way of grouping process nodes by process participants. - [FlowX.AI architecture](https://docs.flowx.ai/4.0/docs/platform-overview/flowx-architecture) - [Intro to BPMN](https://docs.flowx.ai/4.0/docs/platform-overview/frameworks-and-standards/business-process-industry-standards/intro-to-bpmn): The core element of the platform is a process. Think of it as a representation of your business use case, for example making a request for a new credit card, placing an online food order, registering your new car or creating an online fundraiser supporting your cause. - [Intro to DMN](https://docs.flowx.ai/4.0/docs/platform-overview/frameworks-and-standards/business-process-industry-standards/intro-to-dmn): As we've seen in the previous chapter, Business Process Model and Notation BPMN is used to define business processes as a sequence of activities. If we need to branch off different process paths, we use gateways. These have rules attached to them in order to decide on which outgoing path should the process continue on. - [Intro to MVEL](https://docs.flowx.ai/4.0/docs/platform-overview/frameworks-and-standards/business-process-industry-standards/intro-to-mvel): We can also specify the business rules logic using MVEL scripts. As opposed to DMN, with MVEL you can create complex business rules with multiple parameters and sub-calculations. - [Intro to Elasticsearch](https://docs.flowx.ai/4.0/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-elasticsearch): Elasticsearch itself is not inherently event-driven, it can be integrated into event-driven architectures or workflows. External components or frameworks detect and trigger events, and Elasticsearch is utilized to efficiently index and make the event data searchable. - [Intro to Kafka concepts](https://docs.flowx.ai/4.0/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-kafka-concepts): Apache Kafka is an open-source distributed event streaming platform that can handle a high volume of data and enables you to pass messages from one end-point to another. - [Intro to Kubernetes](https://docs.flowx.ai/4.0/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-kubernetes): Kubernetes is an open-source container orchestration platform that automates many of the manual processes involved in containerized application deployment, management, and scaling. - [Intro to NGINX](https://docs.flowx.ai/4.0/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-nginx): NGINX is a free, open-source, high-performance web server with a rich feature set, simple configuration, and low resource consumption that can also function as a reverse proxy, load balancer, mail proxy, HTTP cache, and many other things. - [Intro to Redis](https://docs.flowx.ai/4.0/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-redis): Redis is a fast, open-source, in-memory key-value data store that is commonly used as a cache to store frequently accessed data in memory so that applications can be responsive to users. It delivers sub-millisecond response times enabling millions of requests per second for applications. - [Android SDK](https://docs.flowx.ai/4.0/sdks/android-renderer) - [Web SDK (Angular renderer)](https://docs.flowx.ai/4.0/sdks/angular-renderer): FlowxProcessRenderer is a low code library designed to render UI configured via the Flowx Process Editor. - [iOS SDK](https://docs.flowx.ai/4.0/sdks/ios-renderer) - [SDKs overview](https://docs.flowx.ai/4.0/sdks/sdks-overview): FLOWX.AI provides web and native mobile SDKs. These SDKs enable developers to create applications that can be displayed in a browser, embedded in an internet banking interface, or in a mobile banking app. The SDKs automatically generate the user interface (UI) based on the business process and data points created by a business analyst, reducing the need for UX/UI expertise. - [IAM solution](https://docs.flowx.ai/4.0/setup-guides/access-management/access-management-overview): Identity and access management (IAM) is a framework of business processes, policies and technologies that facilitates the management of electronic or digital identities. With an IAM framework in place, you can control user access to critical information/components within an organization. - [Admin access rights](https://docs.flowx.ai/4.0/setup-guides/access-management/configuring-access-rights-for-admin): Granular access rights can be configured for restricting access to the Admin component. - [FlowX CMS access rights](https://docs.flowx.ai/4.0/setup-guides/access-management/configuring-access-rights-for-cms): Granular access rights can be configured for restricting access to the CMS component. - [FlowX Engine access rights](https://docs.flowx.ai/4.0/setup-guides/access-management/configuring-access-rights-for-engine): Granular access rights can be configured for restricting access to the Engine component. - [License Engine access rights](https://docs.flowx.ai/4.0/setup-guides/access-management/configuring-access-rights-for-license): Granular access rights can be configured for restricting access to the License component. - [Configuring an IAM solution](https://docs.flowx.ai/4.0/setup-guides/access-management/configuring-an-iam-solution): This guide provides step-by-step instructions for configuring a minimal Keycloak setup to manage users, roles, and applications efficiently. - [Default roles](https://docs.flowx.ai/4.0/setup-guides/access-management/default-roles): Below you can find the list of all the default roles that you can add or import into the Identity and Access Management solution to properly manage the access to all the FlowX.AI microservices. - [FlowX Admin setup](https://docs.flowx.ai/4.0/setup-guides/admin-setup-guide): The FlowX.AI Admin microservice manages process-related entities and provides the REST API used by the FlowX.AI Designer. The processes defined here will be handled by the FlowX.AI Engine. The Admin microservice uses most of the same resources as the FlowX.AI Engine. - [FlowX Advancing Controller setup](https://docs.flowx.ai/4.0/setup-guides/advancing-controller-setup-guide): This guide provides step-by-step instructions to help you configure and deploy the Advancing Controller effectively. - [Audit setup](https://docs.flowx.ai/4.0/setup-guides/audit-setup-guide): This guide will walk you through the process of setting up the Audit service and configuring it to meet your needs. - [FlowX CMS setup](https://docs.flowx.ai/4.0/setup-guides/cms-setup): The CMS service is a microservice that allows managing taxonomies and contents. It is available as a Docker image and is designed to make it easy to edit and analyze content. This guide will walk you through the process of setting up the service and configuring it to meet your needs. - [FlowX Designer](https://docs.flowx.ai/4.0/setup-guides/designer-setup-guide): To set up FlowX Designer in your environment, follow this guide. - [FlowX Events Gateway setup](https://docs.flowx.ai/4.0/setup-guides/events-gateway-setup): This guide will walk you through the process of setting up the events-gateway service. - [Configuring access roles for processes](https://docs.flowx.ai/4.0/setup-guides/flowx-engine-setup-guide/configuring-access-roles-for-processes) - [Configuring Elasticsearch indexing](https://docs.flowx.ai/4.0/setup-guides/flowx-engine-setup-guide/configuring-elasticsearch-indexing/elasticsearch-indexing): This section provides configuration steps for enabling process instance indexing using the Kafka transport strategy. - [Indexing config guidelines](https://docs.flowx.ai/4.0/setup-guides/flowx-engine-setup-guide/configuring-elasticsearch-indexing/process-instance-indexing-config-guidelines): The configuration of Elasticsearch for process instances indexing depends on various factors related to the application load, the number of process instances, parallel requests, and indexed keys per process. Although the best approach to sizing and configuring Elasticsearch is through testing and monitoring under load, here are some guidelines to help you get started - [FlowX Engine setup](https://docs.flowx.ai/4.0/setup-guides/flowx-engine-setup-guide/engine-setup): This guide provides instructions on how to set up and configure the FlowX.AI Engine to meet specific requirements. - [License Engine setup](https://docs.flowx.ai/4.0/setup-guides/license-engine-setup): The License Engine is a service that can be set up using a Docker image. This guide will walk you through the process of setting up the License service and configuring it to meet your needs. - [Documents plugin access rights](https://docs.flowx.ai/4.0/setup-guides/plugins-access-rights/configuring-access-rights-for-documents): Granular access rights can be configured for restricting access to the Documents plugin component. - [Notifications plugin access rights](https://docs.flowx.ai/4.0/setup-guides/plugins-access-rights/configuring-access-rights-for-notifications): Granular access rights can be configured for restricting access to the Notification plugin component. - [Task management plugin access rights](https://docs.flowx.ai/4.0/setup-guides/plugins-access-rights/configuring-access-rights-for-task-management): Granular access rights can be configured for restricting access to the Task management plugin component. - [Documents plugin](https://docs.flowx.ai/4.0/setup-guides/plugins-setup-guide/documents-plugin-setup): The Documents plugin provides functionality for generating, persisting, combining, and manipulating documents within the FlowX.AI system. - [Notifications plugin](https://docs.flowx.ai/4.0/setup-guides/plugins-setup-guide/notifications-plugin-setup): The Notifications plugin is available as a docker image, and it has the following dependencies. - [OCR plugin](https://docs.flowx.ai/4.0/setup-guides/plugins-setup-guide/ocr-plugin-setup): The OCR plugin is a docker image that can be deployed using the following infrastructure prerequisites. - [Plugins setup](https://docs.flowx.ai/4.0/setup-guides/plugins-setup-guide/plugins-setup-guide-overview): To set up a plugin in your environment, you must go through the next steps. - [Reporting](https://docs.flowx.ai/4.0/setup-guides/plugins-setup-guide/reporting-setup): The Reporting setup guide assists in configuring the reporting plugin, relying on specific dependencies and configurations. - [Task management](https://docs.flowx.ai/4.0/setup-guides/plugins-setup-guide/task-management-plugin-setup): The plugin is available as a docker image. - [Scheduler setup](https://docs.flowx.ai/4.0/setup-guides/scheduler-setup-guide): This guide will walk you through the process of setting up the Scheduler service. - [FlowX Data Search setup](https://docs.flowx.ai/4.0/setup-guides/search-data-service-setup-guide): This guide will walk you through the process of setting up the Data Search service using a Docker image. - [Setup guides](https://docs.flowx.ai/4.0/setup-guides/setup-guides-overview): Deploying microservices involves breaking down an application into smaller, modular components that can be independently deployed. Each microservice should include all necessary dependencies and configurations to ensure smooth and reliable operation. - [Add new Kafka exchange mock](https://docs.flowx.ai/4.1.x/docs/api/add-kafka-mock) - [Enable misconfigurations](https://docs.flowx.ai/4.1.x/docs/api/add-misconfigurations): To enable and to compute warnings for already existing processes from previous FlowX versions (< 4.1), you must use the following endpoint to compute all the warnings. - [Download a file](https://docs.flowx.ai/4.1.x/docs/api/download-file) - [Process status](https://docs.flowx.ai/4.1.x/docs/api/flowx-engine-api/rest) - [Start process](https://docs.flowx.ai/4.1.x/docs/api/flowx-engine-api/rest2) - [Start process and inherit values](https://docs.flowx.ai/4.1.x/docs/api/flowx-engine-api/rest3) - [Execute action](https://docs.flowx.ai/4.1.x/docs/api/flowx-engine-api/rest4) - [List buckets](https://docs.flowx.ai/4.1.x/docs/api/list-buckets): The Documents Plugin provides the following REST API endpoints for interacting with the stored files. - [List objects in a bucket](https://docs.flowx.ai/4.1.x/docs/api/list-objects-in-buckets) - [View Kafka exchanges](https://docs.flowx.ai/4.1.x/docs/api/view-kafka-exchanges) - [Node actions](https://docs.flowx.ai/4.1.x/docs/building-blocks/actions/actions): The activity that a node has to handle is defined using an action. These can have various types, they can be used to specify the communication details for plugins or integrations. - [Append params to parent process](https://docs.flowx.ai/4.1.x/docs/building-blocks/actions/append-params-to-parent-process): It is a type of action that allows you to send data from a subprocess to a parent process. - [Business rules types](https://docs.flowx.ai/4.1.x/docs/building-blocks/actions/business-rule-action/business-rule-action): A business rule is an action type that allows you to configure a script on a BPMN node. It is a graphical representation used to specify business processes in a business process model. - [Configuring a DMN business rule action](https://docs.flowx.ai/4.1.x/docs/building-blocks/actions/business-rule-action/dmn-business-rule-action): Decision Model and Notation is a graphical language used to specify business decisions. DMN helps convert complex decision-making code into easily readable diagrams. - [Kafka send action](https://docs.flowx.ai/4.1.x/docs/building-blocks/actions/kafka-send-action): The FlowX Designer offers various options to configure the Kafka Send Action through the Actions tab at the node level. - [Send data to user interface](https://docs.flowx.ai/4.1.x/docs/building-blocks/actions/send-data-to-user-interface): Send data to user interface action is based on Server-Sent Events (SSE), a web technology that enables servers to push real-time updates or events to clients over a single, long-lived HTTP connection. It provides a unidirectional communication channel from the server to the client, allowing the server to send updates to the client without the need for the client to continuously make requests. - [Start subprocess action](https://docs.flowx.ai/4.1.x/docs/building-blocks/actions/start-subprocess-action): A Start subprocess action is an action that allows you to start a subprocess from another (parent) process. - [Upload file action](https://docs.flowx.ai/4.1.x/docs/building-blocks/actions/upload-file-action): An Upload File action is an action type that allows you to upload a file to a service available on Kafka. - [Call activity node](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/call-subprocess-tasks/call-activity-node): Call activity is a node that provides advanced options for starting subprocesses. - [Start embedded subprocess](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/call-subprocess-tasks/start-embedded-subprocess): The Start Embedded Subprocess node initiates subprocesses within a parent process, allowing for encapsulated functionality and enhanced process management. - [Error events](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/error-events): Error Events expand the capabilities of process modeling and error handling within BPMN processing. These Error Event nodes enhance the BPMN standard and offer improved control over error management. - [Exclusive gateway](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/exclusive-gateway-node): In the world of process flows, decisions play a crucial role, and that's where the Exclusive Gateway comes into play. This powerful tool enables you to create conditional pathways with ease. - [Message catch boundary events](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/message-events/message-catch-boundary-event): Boundary events are integral components linked to **user tasks** within a process flow. Specifically, Message Catch Boundary Events are triggered by incoming messages and can be configured as either interrupting or non-interrupting based on your requirements. - [Message catch start event](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/message-events/message-catch-start-event): Message Catch Start Event node represents the starting point for a process instance based on the receipt of a specific message. When this event is triggered by receiving the designated message, it initiates the execution of the associated process. - [Message Events](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/message-events/message-events): Message events serve as a means to incorporate messaging capabilities into business process modeling. These events are specifically designed to capture the interaction between different process participants by referencing messages. - [Intermediate message events in business processes](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/message-events/message-intermediate/example-intermediate-message-events): Business processes often involve dynamic communication and coordination between different stages or departments. Intermediate Message Events play an important role in orchestrating information exchange, ensuring effective synchronization, and enhancing the overall efficiency of these processes. - [Message catch intermediate event](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/message-events/message-intermediate/message-catch-intermediate-event): A Message Catch Intermediate Event is a type of event in a process that waits for a specific message before continuing with the process flow. - [Overview](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/message-events/message-intermediate/message-intermediate) - [Message throw intermediate event](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/message-events/message-intermediate/message-throw-intermediate-event): Using a Throw intermediate event is like throwing a message to tell someone about something. After throwing the message, the process keeps going, and other parts of the process can listen to that message. - [Send message/receive message tasks](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/message-send-received-task-node): Send message task and Receive message task nodes are used to handle the interaction between a running process and external systems. This is done using Kafka. - [BPMN nodes](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/node): A Business Process Model and Notation (BPMN) node is a visual representation of a point in your process. Nodes are added at specific process points to denote the entrance or transition of a record within the process. - [Parallel gateway](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/parallel-gateway): When you have multiple operations that can be executed concurrently, the Parallel Gateway becomes a valuable tool. This type of node creates a parallel section within the process, particularly useful for tasks that can run independently without waiting for each other. It's essential to close each parallel section with another Parallel Gateway node. - [Start/end nodes](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/start-end-node): Let's go through all the options for configuring start and end nodes for a process definition. - [Task node](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/task-node): A task node refers to a task that utilizes various services, such as Web services, automated applications, or other similar services, to accomplish a particular task. - [Timer boundary event](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/timer-events/timer-boundary-event) - [Timer events](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/timer-events/timer-events): Timer event nodes are a powerful feature in BPMN that allow you to introduce time-based behavior into your processes. These nodes enable you to trigger specific actions or events at predefined time intervals, durations, or cycles. With timer event nodes, you can design processes that respond to time-related conditions, ensuring smoother workflow execution and enhanced automation. - [Timer expressions](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/timer-events/timer-expressions) - [Timer Intermediate Event (interrupting)](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/timer-events/timer-intermediate-event): A Timer Intermediate Event (interrupting) is an event that is triggered based on a specified time duration or date. It is placed within the flow of a process and serves as a point of interruption and continuation. - [Timer start event (interrupting)](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/timer-events/timer-start-event): A Timer Start Event initiates a process instance based on a specified time or schedule. - [User task node](https://docs.flowx.ai/4.1.x/docs/building-blocks/node/user-task-node): This node represents an interaction with the user. It is used to display a piece of UI (defined in the UI Designer or a custom Angular component. You can also define actions available for the users to interact with the process. - [Navigation areas](https://docs.flowx.ai/4.1.x/docs/building-blocks/process/navigation-areas): Navigation areas play a pivotal role in user interface design. They enhance the user experience by providing a structured, organized, and efficient way for users to interact with and explore various features and solutions. - [Process Designer](https://docs.flowx.ai/4.1.x/docs/building-blocks/process/process): The Process Designer workspace is tailored for creating and editing business processes, featuring a menu with all the essential elements needed to design a process. - [Process definition](https://docs.flowx.ai/4.1.x/docs/building-blocks/process/process-definition): The core of the platform is the process definition, which is the blueprint of the business process made up of nodes that are linked by sequences. - [Process instance](https://docs.flowx.ai/4.1.x/docs/building-blocks/process/process-instance): A process instance is a specific execution of a business process that is defined on the FlowX.AI platform. Once a process definition is added to the platform, it can be executed, monitored, and optimized by creating an instance of the definition. - [Subprocess management](https://docs.flowx.ai/4.1.x/docs/building-blocks/process/subprocess): Learn how to configure, start, and execute subprocesses efficiently within your process flow. - [Versioning](https://docs.flowx.ai/4.1.x/docs/building-blocks/process/versioning): With versioning, you can easily track your process definition's evolution. - [Supported scripts](https://docs.flowx.ai/4.1.x/docs/building-blocks/supported-scripts): Scripts are used to define and run actions but also properties inside nodes. For now, the following script languages are supported. - [Token](https://docs.flowx.ai/4.1.x/docs/building-blocks/token): Token is the concept that describes the current position in the process flow. When you start the process you have a graph of nodes and based on the configuration you will go from one to another based on the defined sequence (connection between nodes). - [Dynamic & computed values](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/dynamic-and-computed-values): In modern application development, the ability to create dynamic and interactive user interfaces is essential for delivering personalized and responsive experiences to users. Dynamic values and computed values are powerful features that enable developers to achieve this level of flexibility and interactivity. - [Layout configuration](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/layout-configuration): Layout settings will be available for all components that can group other types of elements (for example, Containers or Cards). - [UI actions](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-actions): Multiple UI elements can be linked to a specific action via a UI action. If the action is just a method to interact with the process, the UI Action adds information about how that UI should react. For example, should a loader appear after executing the action, should a modal be dismissed, or if some default data should be sent back to the process. - [Buttons](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/buttons): There are two types of buttons available, each with a different purpose. - [Collection component](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/collection/collection): The Collection component functions as a versatile container element, allowing you to iterate through a list of elements and display them according to their specific configurations. - [Collection prototype](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/collection/collection_prototype): A Collection prototype is an additional container type that allows you to define multiple prototypes for a single Collection. This feature enables you to display elements from the same collection differently. - [File preview](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/file-preview): The File Preview UI element is a user interface component that enables users to preview the contents of files quickly and easily without fully opening them. It can save time and enhance productivity, providing a glimpse of what's inside a file without having to launch it entirely. - [Checkbox](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/checkbox-form-field): A checkbox form field is an interactive element in a web form that provides users with multiple selectable options. It allows users to choose one or more options from a pre-determined set by simply checking the corresponding checkboxes. - [Datepicker](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/datepicker-form-field): The datepicker (Calendar Picker) is a lightweight component that allows end users to enter or select a date value. - [Input](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/input-form-field): An input field is a form element that enables users to input data with validations and can be hidden or disabled. - [Radio](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/radio-form-field): Radio buttons are normally presented in radio groups (a collection of radio buttons describing a set of related options). Only one radio button in a group can be selected at the same time. - [Segmented button](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/segmented-button): It allows users to pick only one option from a group of options, and you can choose to have between 2 and 5 options in the group. The segmented button is easy to use, and can help make your application easier for people to use. - [Select](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/select-form-field): The Select form field is an element that allows users to choose from a list of predefined options. Each option consists of a label, which is displayed in the dropdown menu, and a corresponding value, which is stored upon selection. - [Slider](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/slider): It allows users to pick only one option from a group of options, and you can choose to have between 2 and 5 options in the group. The segmented button is easy to use, and can help make your application easier for people to use. - [Switch](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/switch-form-field): A switch, a toggle switch, is another form element that can be utilized to create an intuitive user interface. The switch allows users to select a response by toggling it between two states. Based on the selection made by the user, the corresponding Boolean value of either true or false will be recorded and stored in the process instance values for future reference. - [Text area](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/form-elements/text-area): A text area is a form element used to capture multi-line input from users in a conversational interface. The text area component is typically used for longer inputs such as descriptions, comments, or feedback, providing users with more space to type their responses. - [Image](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/image): Image UI elements are graphical components of a user interface that display a static or dynamic visual representation of an object, concept, or content. - [Indicators](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/indicators): The indicators (Message UI elements) allow you to display different types of messages. - [Card](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/root-components/card): A card in FlowX.AI is a graphical component designed for the purpose of grouping and aligning various elements. It offers added functionality by incorporating an accordion feature, allowing users to expand and collapse content as needed. - [Container](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/root-components/container): A container in Flowx is a versatile building block that empowers you to group components and arrange them as needed, providing flexibility in UI design. It can also serve as the root component for your design. - [Custom component](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/root-components/custom): Custom components are developed in the web application and referenced here by component identifier. This will dictate where the component is displayed in the component hierarchy and what actions are available for the component. - [Root Components in UI Design](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/root-components/root-components): Root components serve as the foundation for structuring user interfaces, providing the framework for arranging and configuring different types of components. - [Typography](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-component-types/typography): Typography is an important aspect of design that greatly influences how users perceive and interact with your content. In this section, we'll explore how to effectively utilize two essential UI elements, "Text" and "Link." - [UI Designer](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/ui-designer): The FlowX platform offers a variety of ready-to-use UI components that can be used to create rich web interfaces. These include common form elements like input fields, dynamic dropdown menus, checkboxes, radio and switch buttons, as well as other UI elements like image, text, anchor links, etc. The properties of each component can be customized further using the details tab, and design flexibility is achieved by adding styles or CSS classes to the pre-defined components. The UI templates are built in a hierarchical structure, with a root component at the top. - [Validators](https://docs.flowx.ai/4.1.x/docs/building-blocks/ui-designer/validators): Validators are an essential part of building robust and reliable applications. They ensure that the data entered by the user is accurate, complete, and consistent. In Angular applications, validators provide a set of pre-defined validation rules that can be used to validate various form inputs such as text fields, number fields, email fields, date fields, and more. - [Adding a new node](https://docs.flowx.ai/4.1.x/docs/flowx-designer/managing-a-process-flow/adding-a-new-node): Once you create a new process definition, you can start configuring it by adding new nodes. - [Adding an action to a node](https://docs.flowx.ai/4.1.x/docs/flowx-designer/managing-a-process-flow/adding-an-action-to-a-node): We use actions to add business decisions to the flow or link the process to custom integrations and plugins. - [Adding more flow branches](https://docs.flowx.ai/4.1.x/docs/flowx-designer/managing-a-process-flow/adding-more-flow-branches) - [Creating a new process definition](https://docs.flowx.ai/4.1.x/docs/flowx-designer/managing-a-process-flow/creating-a-new-process-definition): The first step of defining your business process in the FlowX.AI Designer is adding a new process definition for it. - [Creating a user interface](https://docs.flowx.ai/4.1.x/docs/flowx-designer/managing-a-process-flow/creating-a-user-interface) - [Exporting / importing a process definition version](https://docs.flowx.ai/4.1.x/docs/flowx-designer/managing-a-process-flow/export-import-a-process-definition): To export process definitions versions and move them between different environments, you can use the export version/ import process feature. - [Handling decisions in the flow](https://docs.flowx.ai/4.1.x/docs/flowx-designer/managing-a-process-flow/handling-decisions-in-the-flow): To add business decisions in the flow and use them to pick between a flow branch or another, we can use exclusive gateways. - [Moving a token backwards in a process](https://docs.flowx.ai/4.1.x/docs/flowx-designer/managing-a-process-flow/moving-a-token-backwards-in-a-process): Back in steps is a functionality that allows you to go back in a business process redo a series of previous actions in the process. - [Initiating processes](https://docs.flowx.ai/4.1.x/docs/flowx-designer/managing-a-process-flow/starting-a-process): Entering the realm of FlowxX unlocks a spectrum of possibilities for elevating processes and workflows. From automation to data-driven decision-making, several straightforward approaches pave the way for leveraging this platform efficiently. Let's delve into the ways to kickstart a process. - [FlowX.AI Designer](https://docs.flowx.ai/4.1.x/docs/flowx-designer/overview): The FlowX.AI Designer is a collaborative, no-code, web-based application development environment, designed to facilitate the creation of web and mobile applications without the need for coding expertise. - [Building with FlowX.AI](https://docs.flowx.ai/4.1.x/docs/getting-started/building-your-first-proc): Let's explore how to build innovative solutions with FlowX.AI. - [Learn more](https://docs.flowx.ai/4.1.x/docs/getting-started/learn-more): Based on what you need to accomplish and understand, find below-suggested tracks you can follow. Choose the track that suits you best. - [Introduction](https://docs.flowx.ai/4.1.x/docs/introduction): FlowX.AI is an AI multi-experience development platform that sits on top of legacy systems and creates unified, scalable digital experiences. - [FlowX.AI Advancing Controller](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-components/advancing-controller): The Advancing Controller is a support service for the FlowX.AI Engine that enhances the efficiency of advancing operations. It facilitates equal distribution and redistribution of the workload during scale-up and scale-down scenarios. - [FlowX.AI Events Gateway](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-components/events-gateway): The FlowX Events Gateway is a service that centralizes the communication with Server-Sent Events (SSE) messages from Backend to Frontend. - [FlowX.AI Engine](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-components/flowx-engine): The engine is the core of the platform, it is the service that runs instances of the process definitions, generates UI, communicates with the frontend and also with custom integrations and plugins. It keeps track of all currently running process instances and makes sure the process flows run correctly. - [FlowX.AI Audit](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/audit): The Audit service provides a centralized location for all audit events. The following details are available for each event. - [FlowX.AI CMS](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/content-management/content-management): The FlowX.AI Headless Content Management System (CMS) is a core component of the FlowX.AI platform, designed to enhance the platform's capabilities with specialized functionalities for managing taxonomies and diverse content types. - [Content models](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/content-management/content-models): Content models are used to create complex content collections using customizable pieces of content. For example, you can define content models for an article that will be displayed on a page, creating customizable content. - [Enumerations](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/content-management/enumerations): A collection of values that can be utilized as content in UI components or templates is managed using enumerations. Values can be defined for certain source systems or languages. - [Fonts management](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/content-management/font-files): Fonts management allows you to upload and manage multiple font files, which can be later utilized when configuring UI templates using the UI Designer. - [Languages](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/content-management/languages): The FLOWX Headless CMS can store and manage languages. You can add a language and use it in almost any content management configuration. - [Media library](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/content-management/media-library): The media library serves as a centralized hub for managing and organizing various types of media files, including images, GIFs, and more. It encompasses all the files that have been uploaded to the **processes**, providing a convenient location to view, organize, and upload new media files. - [Source systems](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/content-management/source-systems): If multiple **enumerations** values are needed to communicate with other systems, source systems can be used. - [Substitution tags](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/content-management/substitution-tags): Substitution tags are used to generate dynamic content across the platform. As **enumerations**, substitution tags can be defined for each language set for the solution. - [Theme management](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/content-management/themes): Theme management feature enables you to easily change the appearance and styling of your application. You can personalize the look and feel of your application to your branding, preferences, or specific requirements. - [Generic parameters](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/generic-parameters): Generic parameters are variables or settings that are used to control the behavior of a software application or system. These parameters are designed to be flexible and adaptable, allowing users to customize the software to their specific needs. - [Access rights for Integration management](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/integration-management/configuring-access-rights-for-intgr-mngmnt): Granular access rights can be configured for restricting access to the Integration Management plugin component. These access rights must be configured in the Designer (admin) deployment. - [Integration Management](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/integration-management/integration-management-overview): Integration management helps you configure integrations between the following components, FlowX Engine, plugins or different adapters. - [FlowX.AI License Engine](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/license-engine): The License Engine is part of the core extensions of the FlowX.AI platform. It is used for displaying reports regarding the usage of the platform in the FlowX.AI Designer. - [FlowX.AI Scheduler](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/scheduler): The Scheduler is part of the core extensions of the FlowX.AI platform. It can be easily added to your custom FlowX deployment to enhance the core platform capabilities with functionality specific to scheduling messages. - [FlowX.AI Data Search](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/core-extensions/search-data-service): The Data Search service is a microservice that enables data searches within other processes. It facilitates the creation of processes capable of conducting searches and retrieving data by utilizing Kafka actions in tandem with Elasticsearch mechanisms. - [null](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/integrations/building-a-connector): Connectors are the vital gateway to enhancing FlowX.AI's capabilities. They seamlessly integrate external systems, introducing new functionalities by operating as independently deployable, self-contained microservices. - [Creating a Kafka consumer](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/integrations/creating-a-kafka-consumer): This guide focuses on creating a **Kafka** consumer using Spring Boot. - [Creating a Kafka producer](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/integrations/creating-a-kafka-producer): This guide focuses on creating a **Kafka** producer using Spring Boot. - [Overview](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/integrations/integrations-overview): Integrations play a crucial role in connecting legacy systems or third-party applications to the FlowX Engine. They enable seamless communication by leveraging custom code and the Kafka messaging system. - [Mock integrations](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/integrations/mock-integrations): If you need to test the business process flow but haven't completed all integrations, you can still do so by utilizing the mock integrations server included in the platform. - [Observability with OpenTelemetry](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/integrations/open-telemetry) - [FlowX AI Agents](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/ai-agents): Get ready to revolutionize your journey with our upcoming AI-powered agents. - [FlowX custom plugins](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins): Adding new capabilities to the core platform can be easily done by using plugins. FlowX plugins represent already-built functionality that can be added to a FlowX.AI platform deployment. - [Converting files](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/converting-documents-to-different-formats) - [Deleting files](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/deleting-a-file): The Documents plugin provides functionality for deleting files. - [Documents plugin](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/documents-plugin-overview): The Documents plugin can be easily added to your custom FlowX.AI deployment to enhance the core platform capabilities with functionality specific to document handling. - [Generating documents](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/generating-from-html-templates): One of the key features of the Documents plugin is the ability to generate new documents using custom templates, which can be pre-filled with data relevant to the current process instance. - [Getting URLs](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/getting-urls-to-documents): In certain scenarios, obtaining URLs pointing to uploaded documents for use in integrations is essential. This process involves adding a custom action to your workflow that requests URLs from the Documents plugin. - [Listing stored files](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/listing-stored-files): If you are using an S3-compatible cloud storage solution such as MinIO, the stored files are organized into buckets. A bucket serves as a container for objects stored in Amazon S3. The Documents Plugin provides a REST API that allows you to easily view the files stored in the buckets. - [Managing templates](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/managing-html-templates): The Documents plugin provides the flexibility to define and manage HTML templates for document generation, enabling customization through various parameter types. - [Splitting documents](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/splitting-a-document): You can split a document into multiple parts using the Documents plugin. - [Creating and uploading a new document](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/uploading-a-new-document): A comprehensive guide to integrating document creation from templates, managing uploads, and configuring workflows for document processing. - [Forwarding notifications](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/forwarding-notifications-to-an-external-system): If the Notification service is not directly connected to an SMTP / SMS server and you want to use an external system for sending the notifications, you can use the notification plugin just to forward the notifications to your custom implementation. - [Managing notification templates](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/managing-notification-templates): You can create and manage notification templates using FlowX.AI Designer by accessing the dedicated section. - [Notifications plugin](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/notifications-plugin-overview): Notifications plugin can be easily added to your custom FlowX.AI deployment. The plugin will **enhance the core platform capabilities with functionality specific to sending various notifications**. - [Generate OTP](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/otp-flow/generate-otp): There are some cases when you will need to generate an OTP (One Time Password) from a business flow, for example when validating an email account. - [Handling OTP](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/otp-flow/otp-flow): The notifications plugin can also be used for handling the one time password (OTP) generation and validation flow. - [Validate OTP](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/otp-flow/validate-otp) - [Sending a notification](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/sending-a-notification): The plugin can be used for sending many kinds of notifications such as emails or SMS notifications. It can be easily integrated in one of your business processes. - [Sending an email](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/sending-an-email-with-attachments): To use the notification plugin for sending emails with attachments, you must define the same topic configuration as for sending regular notifications. A notification template must be created, and the corresponding Kafka topics must be defined. - [OCR plugin](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/ocr-plugin): The OCR (Optical Character Recognition) plugin is a powerful tool that enables you to read barcodes and extract handwritten signatures from .pdf documents with ease. - [Authorization & access roles](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/reporting/access-and-authorization) - [Reporting plugin](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/reporting/reporting-overview): The FlowX.AI Reporting plugin helps you build and bootstrap custom reports using data from your BPMN processes. Moreover, it supports technical reports based on process instance data. Integrated with the FlowX.AI Engine, this plugin transforms raw data into actionable insights, enhancing decision-making and optimizing business processes. - [Task management](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/task-management/task-management-overview): The Task management plugin is a powerful plugin that enables back-officers and supervisors to efficiently track and assign tasks within a company. It provides a business-oriented view of a **process** defined using FlowX Designer and allows for seamless interactions at the assignment level. - [Using allocation rules](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/task-management/using-allocation-rules): Allocation rules are meant to define when tasks should be auto-assigned to users when they reach a swimlane that has a specific role configured (for example, specific tasks will be assigned for the _front office_ and specific tasks for the _back office_ only). - [Using hooks](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/task-management/using-hooks): Hooks allow you to extract stateful logic from a component, so it can be tested and reused independently. - [Using out of office records](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/task-management/using-out-of-office-records): The Out-of-office feature allows you to register users availability to perform a task. It can be allocated manually or automatically. - [Using stages](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/custom-plugins/task-management/using-stages): You can define specific stages during the execution of a process. Stages are configured on each node and they will be used to trigger an event when passing from one stage to another. - [WYSIWYG editor](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/plugins/wysiwyg): FlowX Designer's WYSIWYG ("What You See Is What You Get") editor enables you to create and modify notification and document templates without the need for complicated coding from the developers. WYSIWYG editors make the creation/editing of any type of document or notification easier for the end-user. - [Third-party components](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/third-party-components): FlowX.AI uses a number of third-party software components - [Business filters](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/user-roles-management/business-filters): An optional attribute, from the authorization token, that can be set in order to restrict access to process instances based on a business specific value (ex. bank branch name). - [Swimlanes](https://docs.flowx.ai/4.1.x/docs/platform-deep-dive/user-roles-management/swimlanes): Swimlanes provide a way of grouping process nodes by process participants. - [FlowX.AI architecture](https://docs.flowx.ai/4.1.x/docs/platform-overview/flowx-architecture) - [Intro to BPMN](https://docs.flowx.ai/4.1.x/docs/platform-overview/frameworks-and-standards/business-process-industry-standards/intro-to-bpmn): The core element of the platform is a process. Think of it as a representation of your business use case, for example making a request for a new credit card, placing an online food order, registering your new car or creating an online fundraiser supporting your cause. - [Intro to DMN](https://docs.flowx.ai/4.1.x/docs/platform-overview/frameworks-and-standards/business-process-industry-standards/intro-to-dmn): As we've seen in the previous chapter, Business Process Model and Notation BPMN is used to define business processes as a sequence of activities. If we need to branch off different process paths, we use gateways. These have rules attached to them in order to decide on which outgoing path should the process continue on. - [Intro to MVEL](https://docs.flowx.ai/4.1.x/docs/platform-overview/frameworks-and-standards/business-process-industry-standards/intro-to-mvel): We can also specify the business rules logic using MVEL scripts. As opposed to DMN, with MVEL you can create complex business rules with multiple parameters and sub-calculations. - [Intro to Elasticsearch](https://docs.flowx.ai/4.1.x/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-elasticsearch): Elasticsearch itself is not inherently event-driven, it can be integrated into event-driven architectures or workflows. External components or frameworks detect and trigger events, and Elasticsearch is utilized to efficiently index and make the event data searchable. - [Intro to Kafka concepts](https://docs.flowx.ai/4.1.x/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-kafka-concepts): Apache Kafka is an open-source distributed event streaming platform that can handle a high volume of data and enables you to pass messages from one end-point to another. - [Intro to Kubernetes](https://docs.flowx.ai/4.1.x/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-kubernetes): Kubernetes is an open-source container orchestration platform that automates many of the manual processes involved in containerized application deployment, management, and scaling. - [Intro to NGINX](https://docs.flowx.ai/4.1.x/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-nginx): NGINX is a free, open-source, high-performance web server with a rich feature set, simple configuration, and low resource consumption that can also function as a reverse proxy, load balancer, mail proxy, HTTP cache, and many other things. - [Intro to Redis](https://docs.flowx.ai/4.1.x/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-redis): Redis is a fast, open-source, in-memory key-value data store that is commonly used as a cache to store frequently accessed data in memory so that applications can be responsive to users. It delivers sub-millisecond response times enabling millions of requests per second for applications. - [Android SDK](https://docs.flowx.ai/4.1.x/sdks/android-renderer) - [Web SDK (Angular renderer)](https://docs.flowx.ai/4.1.x/sdks/angular-renderer): FlowxProcessRenderer is a low code library designed to render UI configured via the Flowx Process Editor. - [iOS SDK](https://docs.flowx.ai/4.1.x/sdks/ios-renderer) - [SDKs overview](https://docs.flowx.ai/4.1.x/sdks/sdks-overview): FLOWX.AI provides web and native mobile SDKs. These SDKs enable developers to create applications that can be displayed in a browser, embedded in an internet banking interface, or in a mobile banking app. The SDKs automatically generate the user interface (UI) based on the business process and data points created by a business analyst, reducing the need for UX/UI expertise. - [IAM solution](https://docs.flowx.ai/4.1.x/setup-guides/access-management/access-management-overview): Identity and access management (IAM) is a framework of business processes, policies and technologies that facilitates the management of electronic or digital identities. With an IAM framework in place, you can control user access to critical information/components within an organization. - [Admin access rights](https://docs.flowx.ai/4.1.x/setup-guides/access-management/configuring-access-rights-for-admin): Granular access rights can be configured for restricting access to the Admin component. - [FlowX CMS access rights](https://docs.flowx.ai/4.1.x/setup-guides/access-management/configuring-access-rights-for-cms): Granular access rights can be configured for restricting access to the CMS component. - [FlowX Engine access rights](https://docs.flowx.ai/4.1.x/setup-guides/access-management/configuring-access-rights-for-engine): Granular access rights can be configured for restricting access to the Engine component. - [License Engine access rights](https://docs.flowx.ai/4.1.x/setup-guides/access-management/configuring-access-rights-for-license): Granular access rights can be configured for restricting access to the License component. - [Configuring an IAM solution](https://docs.flowx.ai/4.1.x/setup-guides/access-management/configuring-an-iam-solution): This guide provides step-by-step instructions for configuring a minimal Keycloak setup to manage users, roles, and applications efficiently. - [Default roles](https://docs.flowx.ai/4.1.x/setup-guides/access-management/default-roles): Below you can find the list of all the default roles that you can add or import into the Identity and Access Management solution to properly manage the access to all the FlowX.AI microservices. - [FlowX Admin setup](https://docs.flowx.ai/4.1.x/setup-guides/admin-setup-guide): The FlowX.AI Admin microservice manages process-related entities and provides the REST API used by the FlowX.AI Designer. The processes defined here will be handled by the FlowX.AI Engine. The Admin microservice uses most of the same resources as the FlowX.AI Engine. - [FlowX Advancing Controller setup](https://docs.flowx.ai/4.1.x/setup-guides/advancing-controller-setup-guide): This guide provides step-by-step instructions to help you configure and deploy the Advancing Controller effectively. - [Audit setup](https://docs.flowx.ai/4.1.x/setup-guides/audit-setup-guide): This guide will walk you through the process of setting up the Audit service and configuring it to meet your needs. - [FlowX CMS setup](https://docs.flowx.ai/4.1.x/setup-guides/cms-setup): The CMS service is a microservice that allows managing taxonomies and contents. It is available as a Docker image and is designed to make it easy to edit and analyze content. This guide will walk you through the process of setting up the service and configuring it to meet your needs. - [FlowX Designer](https://docs.flowx.ai/4.1.x/setup-guides/designer-setup-guide): To set up FlowX Designer in your environment, follow this guide. - [FlowX Events Gateway setup](https://docs.flowx.ai/4.1.x/setup-guides/events-gateway-setup): This guide will walk you through the process of setting up the events-gateway service. - [Configuring access roles for processes](https://docs.flowx.ai/4.1.x/setup-guides/flowx-engine-setup-guide/configuring-access-roles-for-processes) - [Configuring Elasticsearch indexing](https://docs.flowx.ai/4.1.x/setup-guides/flowx-engine-setup-guide/configuring-elasticsearch-indexing/elasticsearch-indexing): This section provides configuration steps for enabling process instance indexing using the Kafka transport strategy. - [Indexing config guidelines](https://docs.flowx.ai/4.1.x/setup-guides/flowx-engine-setup-guide/configuring-elasticsearch-indexing/process-instance-indexing-config-guidelines): The configuration of Elasticsearch for process instances indexing depends on various factors related to the application load, the number of process instances, parallel requests, and indexed keys per process. Although the best approach to sizing and configuring Elasticsearch is through testing and monitoring under load, here are some guidelines to help you get started - [FlowX Engine setup](https://docs.flowx.ai/4.1.x/setup-guides/flowx-engine-setup-guide/engine-setup): This guide provides instructions on how to set up and configure the FlowX.AI Engine to meet specific requirements. - [Partitioning & archiving](https://docs.flowx.ai/4.1.x/setup-guides/flowx-engine-setup-guide/process-instance-data-archiving): Improving data management using data partitioning and the archival processes. - [License Engine setup](https://docs.flowx.ai/4.1.x/setup-guides/license-engine-setup): The License Engine is a service that can be set up using a Docker image. This guide will walk you through the process of setting up the License service and configuring it to meet your needs. - [Deployment configuration for OpenTelemetry](https://docs.flowx.ai/4.1.x/setup-guides/open-telemetry-config): Guide to deploying OpenTelemetry components and configuring associated services. - [Open Telemetry default properties](https://docs.flowx.ai/4.1.x/setup-guides/ot-default-properties) - [Documents plugin access rights](https://docs.flowx.ai/4.1.x/setup-guides/plugins-access-rights/configuring-access-rights-for-documents): Granular access rights can be configured for restricting access to the Documents plugin component. - [Notifications plugin access rights](https://docs.flowx.ai/4.1.x/setup-guides/plugins-access-rights/configuring-access-rights-for-notifications): Granular access rights can be configured for restricting access to the Notification plugin component. - [Task management plugin access rights](https://docs.flowx.ai/4.1.x/setup-guides/plugins-access-rights/configuring-access-rights-for-task-management): Granular access rights can be configured for restricting access to the Task management plugin component. - [Documents plugin setup](https://docs.flowx.ai/4.1.x/setup-guides/plugins-setup-guide/documents-plugin-setup): The Documents plugin provides functionality for generating, persisting, combining, and manipulating documents within the FlowX.AI system. - [Notifications plugin setup](https://docs.flowx.ai/4.1.x/setup-guides/plugins-setup-guide/notifications-plugin-setup): The Notifications plugin is available as a docker image, and it has the following dependencies. - [OCR plugin setup](https://docs.flowx.ai/4.1.x/setup-guides/plugins-setup-guide/ocr-plugin-setup): The OCR plugin is a docker image that can be deployed using the following infrastructure prerequisites. - [Plugins setup](https://docs.flowx.ai/4.1.x/setup-guides/plugins-setup-guide/plugins-setup-guide-overview): To set up a plugin in your environment, you must go through the next steps. - [Reporting setup](https://docs.flowx.ai/4.1.x/setup-guides/plugins-setup-guide/reporting-setup): The Reporting setup guide assists in configuring the reporting plugin, relying on specific dependencies and configurations. - [Task management setup](https://docs.flowx.ai/4.1.x/setup-guides/plugins-setup-guide/task-management-plugin-setup): The plugin is available as a docker image. - [Scheduler setup](https://docs.flowx.ai/4.1.x/setup-guides/scheduler-setup-guide): This guide will walk you through the process of setting up the Scheduler service. - [FlowX Data Search setup](https://docs.flowx.ai/4.1.x/setup-guides/search-data-service-setup-guide): This guide will walk you through the process of setting up the Data Search service using a Docker image. - [Setup guides](https://docs.flowx.ai/4.1.x/setup-guides/setup-guides-overview): Deploying microservices involves breaking down an application into smaller, modular components that can be independently deployed. Each microservice should include all necessary dependencies and configurations to ensure smooth and reliable operation. - [Add new Kafka exchange mock](https://docs.flowx.ai/4.5.0/docs/api/add-kafka-mock) - [Enable misconfigurations](https://docs.flowx.ai/4.5.0/docs/api/add-misconfigurations): To enable and to compute warnings for already existing processes from previous FlowX versions (< 4.1), you must use the following endpoint to compute all the warnings. - [Download a file](https://docs.flowx.ai/4.5.0/docs/api/download-file) - [Process status](https://docs.flowx.ai/4.5.0/docs/api/flowx-engine-api/rest) - [Start process](https://docs.flowx.ai/4.5.0/docs/api/flowx-engine-api/rest2) - [Start process and inherit values](https://docs.flowx.ai/4.5.0/docs/api/flowx-engine-api/rest3) - [Execute action](https://docs.flowx.ai/4.5.0/docs/api/flowx-engine-api/rest4) - [List buckets](https://docs.flowx.ai/4.5.0/docs/api/list-buckets): The Documents Plugin provides the following REST API endpoints for interacting with the stored files. - [List objects in a bucket](https://docs.flowx.ai/4.5.0/docs/api/list-objects-in-buckets) - [View Kafka exchanges](https://docs.flowx.ai/4.5.0/docs/api/view-kafka-exchanges) - [Node actions](https://docs.flowx.ai/4.5.0/docs/building-blocks/actions/actions): The activity that a node has to handle is defined using an action. These can have various types, they can be used to specify the communication details for plugins or integrations. - [Append params to parent process](https://docs.flowx.ai/4.5.0/docs/building-blocks/actions/append-params-to-parent-process): It is a type of action that allows you to send data from a subprocess to a parent process. - [Business rules types](https://docs.flowx.ai/4.5.0/docs/building-blocks/actions/business-rule-action/business-rule-action): A business rule is an action type that allows you to configure a script on a BPMN node. It is a graphical representation used to specify business processes in a business process model. - [Configuring a DMN business rule action](https://docs.flowx.ai/4.5.0/docs/building-blocks/actions/business-rule-action/dmn-business-rule-action): Decision Model and Notation is a graphical language used to specify business decisions. DMN helps convert complex decision-making code into easily readable diagrams. - [Kafka send action](https://docs.flowx.ai/4.5.0/docs/building-blocks/actions/kafka-send-action): The FlowX Designer offers various options to configure the Kafka Send Action through the Actions tab at the node level. - [Send data to user interface](https://docs.flowx.ai/4.5.0/docs/building-blocks/actions/send-data-to-user-interface): Send data to user interface action is based on Server-Sent Events (SSE), a web technology that enables servers to push real-time updates or events to clients over a single, long-lived HTTP connection. It provides a unidirectional communication channel from the server to the client, allowing the server to send updates to the client without the need for the client to continuously make requests. - [Start integration workflow action](https://docs.flowx.ai/4.5.0/docs/building-blocks/actions/start-integration-workflow): The Start Integration Workflow action initiates a configured workflow to enable data processing, transformation, or other tasks across connected systems. - [Start subprocess action](https://docs.flowx.ai/4.5.0/docs/building-blocks/actions/start-subprocess-action): A Start subprocess action is an action that allows you to start a subprocess from another (parent) process. - [Upload file action](https://docs.flowx.ai/4.5.0/docs/building-blocks/actions/upload-file-action): An Upload File action is an action type that allows you to upload a file to a service available on Kafka. - [Call activity node](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/call-subprocess-tasks/call-activity-node): Call activity is a node that provides advanced options for starting subprocesses. - [Start embedded subprocess](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/call-subprocess-tasks/start-embedded-subprocess): The Start Embedded Subprocess node initiates subprocesses within a parent process, allowing for encapsulated functionality and enhanced process management. - [Error events](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/error-events): Error Events expand the capabilities of process modeling and error handling within BPMN processing. These Error Event nodes enhance the BPMN standard and offer improved control over error management. - [Exclusive gateway](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/exclusive-gateway-node): In the world of process flows, decisions play a crucial role, and that's where the Exclusive Gateway comes into play. This powerful tool enables you to create conditional pathways with ease. - [Message catch boundary events](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/message-events/message-catch-boundary-event): Boundary events are integral components linked to **user tasks** within a process flow. Specifically, Message Catch Boundary Events are triggered by incoming messages and can be configured as either interrupting or non-interrupting based on your requirements. - [Message catch start event](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/message-events/message-catch-start-event): Message Catch Start Event node represents the starting point for a process instance based on the receipt of a specific message. When this event is triggered by receiving the designated message, it initiates the execution of the associated process. - [Message Events](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/message-events/message-events): Message events serve as a means to incorporate messaging capabilities into business process modeling. These events are specifically designed to capture the interaction between different process participants by referencing messages. - [Intermediate message events in business processes](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/message-events/message-intermediate/example-intermediate-message-events): Business processes often involve dynamic communication and coordination between different stages or departments. Intermediate Message Events play an important role in orchestrating information exchange, ensuring effective synchronization, and enhancing the overall efficiency of these processes. - [Message catch intermediate event](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/message-events/message-intermediate/message-catch-intermediate-event): A Message Catch Intermediate Event is a type of event in a process that waits for a specific message before continuing with the process flow. - [Overview](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/message-events/message-intermediate/message-intermediate) - [Message throw intermediate event](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/message-events/message-intermediate/message-throw-intermediate-event): Using a Throw intermediate event is like throwing a message to tell someone about something. After throwing the message, the process keeps going, and other parts of the process can listen to that message. - [Send message/receive message tasks](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/message-send-received-task-node): Send message task and Receive message task nodes are used to handle the interaction between a running process and external systems. This is done using Kafka. - [BPMN nodes](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/node): A Business Process Model and Notation (BPMN) node is a visual representation of a point in your process. Nodes are added at specific process points to denote the entrance or transition of a record within the process. - [Parallel gateway](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/parallel-gateway): When you have multiple operations that can be executed concurrently, the Parallel Gateway becomes a valuable tool. This type of node creates a parallel section within the process, particularly useful for tasks that can run independently without waiting for each other. It's essential to close each parallel section with another Parallel Gateway node. - [Start/end nodes](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/start-end-node): Let's go through all the options for configuring start and end nodes for a process definition. - [Task node](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/task-node): A task node refers to a task that utilizes various services, such as Web services, automated applications, or other similar services, to accomplish a particular task. - [Timer boundary event](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/timer-events/timer-boundary-event) - [Timer events](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/timer-events/timer-events): Timer event nodes are a powerful feature in BPMN that allow you to introduce time-based behavior into your processes. These nodes enable you to trigger specific actions or events at predefined time intervals, durations, or cycles. With timer event nodes, you can design processes that respond to time-related conditions, ensuring smoother workflow execution and enhanced automation. - [Timer expressions](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/timer-events/timer-expressions) - [Timer Intermediate Event (interrupting)](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/timer-events/timer-intermediate-event): A Timer Intermediate Event (interrupting) is an event that is triggered based on a specified time duration or date. It is placed within the flow of a process and serves as a point of interruption and continuation. - [Timer start event (interrupting)](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/timer-events/timer-start-event): A Timer Start Event initiates a process instance based on a specified time or schedule. - [User task node](https://docs.flowx.ai/4.5.0/docs/building-blocks/node/user-task-node): This node represents an interaction with the user. It is used to display a piece of UI (defined in the UI Designer or a custom Angular component. You can also define actions available for the users to interact with the process. - [Data model](https://docs.flowx.ai/4.5.0/docs/building-blocks/process/data-model): The Data Model is a centralized configuration feature that enables efficient management of key-value attributes inside process definitions. It supports multiple attribute types, such as strings, numbers, booleans, objects, arrays, and enums, offering users the ability to define, update, delete, and apply data attributes seamlessly. - [Navigation areas](https://docs.flowx.ai/4.5.0/docs/building-blocks/process/navigation-areas): Navigation areas play a pivotal role in user interface design. They enhance the user experience by providing a structured, organized, and efficient way for users to interact with and explore various features and solutions. - [Process Designer](https://docs.flowx.ai/4.5.0/docs/building-blocks/process/process): The Process Designer workspace is tailored for creating and editing business processes, featuring a menu with all the essential elements needed to design a process. - [Process definition](https://docs.flowx.ai/4.5.0/docs/building-blocks/process/process-definition): The core of the platform is the process definition, which is the blueprint of the business process made up of nodes that are linked by sequences. - [Subprocess management](https://docs.flowx.ai/4.5.0/docs/building-blocks/process/subprocess): Learn how to configure, start, and execute subprocesses efficiently within your process flow. - [Versioning](https://docs.flowx.ai/4.5.0/docs/building-blocks/process/versioning): With versioning, you can easily track your process definition's evolution. - [Supported scripts](https://docs.flowx.ai/4.5.0/docs/building-blocks/supported-scripts): Scripts are used to define and run actions but also properties inside nodes. For now, the following script languages are supported. - [Token](https://docs.flowx.ai/4.5.0/docs/building-blocks/token): Token is the concept that describes the current position in the process flow. When you start the process you have a graph of nodes and based on the configuration you will go from one to another based on the defined sequence (connection between nodes). - [Dynamic & computed values](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/dynamic-and-computed-values): In modern application development, the ability to create dynamic and interactive user interfaces is essential for delivering personalized and responsive experiences to users. Dynamic values and computed values are powerful features that enable developers to achieve this level of flexibility and interactivity. - [Layout configuration](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/layout-configuration): Layout settings are available for all components that can group other types of elements (for example, Containers or Cards). - [Localization and internationalization](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/localization-and-i18n): FlowX localization and internationalization adapt applications to different languages, regions, and formats, enhancing the user experience with dynamic date, number and currency formatting. - [UI actions](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-actions): Multiple UI elements can be linked to a specific action via a UI action. If the action is just a method to interact with the process, the UI Action adds information about how that UI should react. For example, should a loader appear after executing the action, should a modal be dismissed, or if some default data should be sent back to the process. - [Buttons](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/buttons): There are two types of buttons available, each with a different purpose. - [Collection component](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/collection/collection): The Collection component functions as a versatile container element, allowing you to iterate through a list of elements and display them according to their specific configurations. - [Collection prototype](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/collection/collection_prototype): A Collection prototype is an additional container type that allows you to define multiple prototypes for a single Collection. This feature enables you to display elements from the same collection differently. - [File preview](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/file-preview): The File Preview UI element is a user interface component that enables users to preview the contents of files quickly and easily without fully opening them. It can save time and enhance productivity, providing a glimpse of what's inside a file without having to launch it entirely. - [Checkbox](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/checkbox-form-field): A checkbox form field is an interactive element in a web form that provides users with multiple selectable options. It allows users to choose one or more options from a pre-determined set by simply checking the corresponding checkboxes. - [Datepicker](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/datepicker-form-field): The datepicker (Calendar Picker) is a lightweight component that allows end users to enter or select a date value. - [Input](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/input-form-field): An input field is a form element that enables users to input data with validations and can be hidden or disabled. - [Radio](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/radio-form-field): Radio buttons are normally presented in radio groups (a collection of radio buttons describing a set of related options). Only one radio button in a group can be selected at the same time. - [Segmented button](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/segmented-button): It allows users to pick only one option from a group of options, and you can choose to have between 2 and 5 options in the group. The segmented button is easy to use, and can help make your application easier for people to use. - [Select](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/select-form-field): The Select form field is an element that allows users to choose from a list of predefined options. Each option consists of a label, which is displayed in the dropdown menu, and a corresponding value, which is stored upon selection. - [Slider](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/slider): It allows users to pick only one option from a group of options, and you can choose to have between 2 and 5 options in the group. The segmented button is easy to use, and can help make your application easier for people to use. - [Switch](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/switch-form-field): A switch, a toggle switch, is another form element that can be utilized to create an intuitive user interface. The switch allows users to select a response by toggling it between two states. Based on the selection made by the user, the corresponding Boolean value of either true or false will be recorded and stored in the process instance values for future reference. - [Text area](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/form-elements/text-area): A text area is a form element used to capture multi-line input from users in a conversational interface. The text area component is typically used for longer inputs such as descriptions, comments, or feedback, providing users with more space to type their responses. - [Image](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/image): Image UI elements are graphical components of a user interface that display a static or dynamic visual representation of an object, concept, or content. - [Indicators](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/indicators): The indicators (Message UI elements) allow you to display different types of messages. - [Card](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/root-components/card): A card in FlowX.AI is a graphical component designed for the purpose of grouping and aligning various elements. It offers added functionality by incorporating an accordion feature, allowing users to expand and collapse content as needed. - [Container](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/root-components/container): A container in Flowx is a versatile building block that empowers you to group components and arrange them as needed, providing flexibility in UI design. It can also serve as the root component for your design. - [Custom component](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/root-components/custom): Custom components are developed in the web application and referenced here by component identifier. This will dictate where the component is displayed in the component hierarchy and what actions are available for the component. - [Root Components in UI Design](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/root-components/root-components): Root components serve as the foundation for structuring user interfaces, providing the framework for arranging and configuring different types of components. - [Table](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/table): The Table component is a versatile UI element allowing structured data display with customizable columns, pagination, filtering, and styling options. - [Typography](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-component-types/typography): Typography is an important aspect of design that greatly influences how users perceive and interact with your content. In this section, we'll explore how to effectively utilize two essential UI elements, "Text" and "Link." - [UI Designer](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/ui-designer): The FlowX platform offers a variety of ready-to-use UI components that can be used to create rich web interfaces. These include common form elements like input fields, dynamic dropdown menus, checkboxes, radio and switch buttons, as well as other UI elements like image, text, anchor links, etc. The properties of each component can be customized further using the details tab, and design flexibility is achieved by adding styles or CSS classes to the pre-defined components. The UI templates are built in a hierarchical structure, with a root component at the top. - [Validators](https://docs.flowx.ai/4.5.0/docs/building-blocks/ui-designer/validators): Validators are an essential part of building robust and reliable applications. They ensure that the data entered by the user is accurate, complete, and consistent. In Angular applications, validators provide a set of pre-defined validation rules that can be used to validate various form inputs such as text fields, number fields, email fields, date fields, and more. - [Fonts](https://docs.flowx.ai/4.5.0/docs/flowx-designer/design-assets/font-files): Fonts management allows you to upload and manage multiple font files, which can be later utilized when configuring UI templates using the UI Designer. - [System assets](https://docs.flowx.ai/4.5.0/docs/flowx-designer/design-assets/system-assets): System assets serve as a centralized hub for managing and organizing various types of media files outside an application, used on themes, including images, GIFs, and more. - [Themes](https://docs.flowx.ai/4.5.0/docs/flowx-designer/design-assets/themes): Theme management feature enables you to easily change the appearance and styling of your application. You can personalize the look and feel of your application to your branding, preferences, or specific requirements. - [Adding a new node](https://docs.flowx.ai/4.5.0/docs/flowx-designer/managing-a-process-flow/adding-a-new-node): Once you create a new process definition, you can start configuring it by adding new nodes. - [Adding an action to a node](https://docs.flowx.ai/4.5.0/docs/flowx-designer/managing-a-process-flow/adding-an-action-to-a-node): We use actions to add business decisions to the flow or link the process to custom integrations and plugins. - [Adding more flow branches](https://docs.flowx.ai/4.5.0/docs/flowx-designer/managing-a-process-flow/adding-more-flow-branches) - [Creating a new process definition](https://docs.flowx.ai/4.5.0/docs/flowx-designer/managing-a-process-flow/creating-a-new-process-definition): The first step of defining your business process in the FlowX.AI Designer is adding a new process definition for it. - [Creating a user interface](https://docs.flowx.ai/4.5.0/docs/flowx-designer/managing-a-process-flow/creating-a-user-interface) - [Exporting / importing a process definition version](https://docs.flowx.ai/4.5.0/docs/flowx-designer/managing-a-process-flow/export-import-a-process-definition): To export process definitions versions and move them between different environments, you can use the export version/ import process feature. - [Handling decisions in the flow](https://docs.flowx.ai/4.5.0/docs/flowx-designer/managing-a-process-flow/handling-decisions-in-the-flow): To add business decisions in the flow and use them to pick between a flow branch or another, we can use exclusive gateways. - [Moving a token backwards in a process](https://docs.flowx.ai/4.5.0/docs/flowx-designer/managing-a-process-flow/moving-a-token-backwards-in-a-process): Back in steps is a functionality that allows you to go back in a business process redo a series of previous actions in the process. - [Initiating processes](https://docs.flowx.ai/4.5.0/docs/flowx-designer/managing-a-process-flow/starting-a-process): Entering the realm of FlowxX unlocks a spectrum of possibilities for elevating processes and workflows. From automation to data-driven decision-making, several straightforward approaches pave the way for leveraging this platform efficiently. Let's delve into the ways to kickstart a process. - [FlowX.AI Designer](https://docs.flowx.ai/4.5.0/docs/flowx-designer/overview): The FlowX.AI Designer is a collaborative, no-code, web-based application development environment, designed to facilitate the creation of web and mobile applications without the need for coding expertise. - [Building with FlowX.AI](https://docs.flowx.ai/4.5.0/docs/getting-started/building-your-first-proc): Let's explore how to build innovative solutions with FlowX.AI. - [Learn more](https://docs.flowx.ai/4.5.0/docs/getting-started/learn-more): Based on what you need to accomplish and understand, find below-suggested tracks you can follow. Choose the track that suits you best. - [Introduction](https://docs.flowx.ai/4.5.0/docs/introduction): FlowX.AI is an AI multi-experience development platform that sits on top of legacy systems and creates unified, scalable digital experiences. - [FlowX.AI Advancing Controller](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-components/advancing-controller): The Advancing Controller is a support service for the FlowX.AI Engine that enhances the efficiency of advancing operations. It facilitates equal distribution and redistribution of the workload during scale-up and scale-down scenarios. - [FlowX.AI Events Gateway](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-components/events-gateway): The FlowX Events Gateway is a service that centralizes the communication with Server-Sent Events (SSE) messages from Backend to Frontend. - [FlowX.AI Engine](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-components/flowx-engine): The engine is the core of the platform, it is the service that runs instances of the process definitions, generates UI, communicates with the frontend and also with custom integrations and plugins. It keeps track of all currently running process instances and makes sure the process flows run correctly. - [FlowX.AI Audit](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/audit): The Audit service provides a centralized location for all audit events. The following details are available for each event. - [FlowX.AI CMS](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/content-management/content-management): The FlowX.AI Headless Content Management System (CMS) is a core component of the FlowX.AI platform, designed to enhance the platform's capabilities with specialized functionalities for managing taxonomies and diverse content types. - [Enumerations](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/content-management/enumerations): A collection of values that can be utilized as content in UI components or templates is managed using enumerations. Values can be defined for certain source systems or languages. - [Media library](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/content-management/media-library): The media library serves as a centralized hub for managing and organizing various types of media files, including images, GIFs, and more. It encompasses all the files that have been uploaded to the **processes**, providing a convenient location to view, organize, and upload new media files. - [Source systems](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/content-management/source-systems): If multiple **enumerations** values are needed to communicate with other systems, source systems can be used. - [Substitution tags](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/content-management/substitution-tags): Substitution tags are used to generate dynamic content across the platform. As **enumerations**, substitution tags can be defined for each language set for the solution. - [Configuration parameters](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/generic-parameters): Configuration parameters allow applications to be dynamic, flexible, and environment-specific. They enable managing variables and values that change across deployment environments (e.g., Development, QA, Production), without requiring hardcoded updates. This feature is particularly valuable for managing sensitive information, environment-specific settings, and configurations for integrations. - [FlowX.AI License Engine](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/license-engine): The License Engine is part of the core extensions of the FlowX.AI platform. It is used for displaying reports regarding the usage of the platform in the FlowX.AI Designer. - [FlowX.AI Scheduler](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/scheduler): The Scheduler is part of the core extensions of the FlowX.AI platform. It can be easily added to your custom FlowX deployment to enhance the core platform capabilities with functionality specific to scheduling messages. - [FlowX.AI Data Search](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/search-data-service): The Data Search service is a microservice that enables data searches within other processes. It facilitates the creation of processes capable of conducting searches and retrieving data by utilizing Kafka actions in tandem with Elasticsearch mechanisms. - [Task management](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/task-management/task-management-overview): Task Management in FlowX.AI is a core functionality that allows users to create, configure, and manage tasks within the platform, providing a structured way to handle work processes. It enables the definition of tasks based on business processes, offers tools for allocating, tracking, and managing tasks across various roles and departments, and supports customization through views, filters, and rules. - [Using allocation rules](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/task-management/using-allocation-rules): Allocation rules are meant to define when tasks should be auto-assigned to users when they reach a swimlane that has a specific role configured (for example, specific tasks will be assigned for the _front office_ and specific tasks for the _back office_ only). - [Using hooks](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/task-management/using-hooks): Hooks allow you to extract stateful logic from a component, so it can be tested and reused independently. - [Using out of office records](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/task-management/using-out-of-office-records): The Out-of-office feature allows you to register users availability to perform a task. It can be allocated manually or automatically. - [Using stages](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/core-extensions/task-management/using-stages): You can define specific stages during the execution of a process. Stages are configured on each node and they will be used to trigger an event when passing from one stage to another. - [null](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/integrations/building-a-connector): Connectors are the vital gateway to enhancing FlowX.AI's capabilities. They seamlessly integrate external systems, introducing new functionalities by operating as independently deployable, self-contained microservices. - [Creating a Kafka consumer](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/integrations/creating-a-kafka-consumer): This guide focuses on creating a **Kafka** consumer using Spring Boot. - [Creating a Kafka producer](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/integrations/creating-a-kafka-producer): This guide focuses on creating a **Kafka** producer using Spring Boot. - [Integration Designer](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/integrations/integration-designer): The Integration Designer simplifies the integration of FlowX with external systems using REST APIs. It offers a user-friendly graphical interface with intuitive drag-and-drop functionality for defining data models, orchestrating workflows, and configuring system endpoints. - [Overview](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/integrations/integrations-overview): Integrations play a crucial role in connecting legacy systems or third-party applications to the FlowX Engine. They enable seamless communication by leveraging custom code and the Kafka messaging system. - [Mock integrations](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/integrations/mock-integrations): If you need to test the business process flow but haven't completed all integrations, you can still do so by utilizing the mock integrations server included in the platform. - [Observability with OpenTelemetry](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/integrations/open-telemetry) - [FlowX AI Agents](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/ai-agents): Get ready to revolutionize your journey with our upcoming AI-powered agents. - [FlowX custom plugins](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins): Adding new capabilities to the core platform can be easily done by using plugins. FlowX plugins represent already-built functionality that can be added to a FlowX.AI platform deployment. - [Converting files](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/converting-documents-to-different-formats) - [Deleting files](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/deleting-a-file): The Documents plugin provides functionality for deleting files. - [Documents plugin](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/documents-plugin-overview): The Documents plugin can be easily added to your custom FlowX.AI deployment to enhance the core platform capabilities with functionality specific to document handling. - [Generating documents](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/generating-from-html-templates): One of the key features of the Documents plugin is the ability to generate new documents using custom templates, which can be pre-filled with data relevant to the current process instance. - [Getting URLs](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/getting-urls-to-documents): In certain scenarios, obtaining URLs pointing to uploaded documents for use in integrations is essential. This process involves adding a custom action to your workflow that requests URLs from the Documents plugin. - [Listing stored files](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/listing-stored-files): If you are using an S3-compatible cloud storage solution such as MinIO, the stored files are organized into buckets. A bucket serves as a container for objects stored in Amazon S3. The Documents Plugin provides a REST API that allows you to easily view the files stored in the buckets. - [Managing templates](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/managing-html-templates): The Documents plugin provides the flexibility to define and manage HTML templates for document generation, enabling customization through various parameter types. - [Splitting documents](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/splitting-a-document): You can split a document into multiple parts using the Documents plugin. - [Creating and uploading a new document](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/documents-plugin/uploading-a-new-document): A comprehensive guide to integrating document creation from templates, managing uploads, and configuring workflows for document processing. - [Forwarding notifications](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/forwarding-notifications-to-an-external-system): If the Notification service is not directly connected to an SMTP / SMS server and you want to use an external system for sending the notifications, you can use the notification plugin just to forward the notifications to your custom implementation. - [Managing notification templates](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/managing-notification-templates): You can create and manage notification templates using FlowX.AI Designer by accessing the dedicated section. - [Notifications plugin](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/notifications-plugin-overview): Notifications plugin can be easily added to your custom FlowX.AI deployment. The plugin will **enhance the core platform capabilities with functionality specific to sending various notifications**. - [Generate OTP](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/otp-flow/generate-otp): There are some cases when you will need to generate an OTP (One Time Password) from a business flow, for example when validating an email account. - [Handling OTP](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/otp-flow/otp-flow): The notifications plugin can also be used for handling the one time password (OTP) generation and validation flow. - [Validate OTP](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/otp-flow/validate-otp) - [Sending a notification](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/sending-a-notification): The plugin can be used for sending many kinds of notifications such as emails or SMS notifications. It can be easily integrated in one of your business processes. - [Sending an email](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/notifications-plugin/sending-an-email-with-attachments): To use the notification plugin for sending emails with attachments, you must define the same topic configuration as for sending regular notifications. A notification template must be created, and the corresponding Kafka topics must be defined. - [OCR plugin](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/ocr-plugin): The OCR (Optical Character Recognition) plugin is a powerful tool that enables you to read barcodes and extract handwritten signatures from .pdf documents with ease. - [Authorization & access roles](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/reporting/access-and-authorization) - [Reporting plugin](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/custom-plugins/reporting/reporting-overview): The FlowX.AI Reporting plugin helps you build and bootstrap custom reports using data from your BPMN processes. Moreover, it supports technical reports based on process instance data. Integrated with the FlowX.AI Engine, this plugin transforms raw data into actionable insights, enhancing decision-making and optimizing business processes. - [Languages](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/languages): You can add a language and use it in document and notification templates. - [WYSIWYG editor](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/plugins/wysiwyg): FlowX Designer's WYSIWYG ("What You See Is What You Get") editor enables you to create and modify notification and document templates without the need for complicated coding from the developers. WYSIWYG editors make the creation/editing of any type of document or notification easier for the end-user. - [Third-party components](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/third-party-components): FlowX.AI uses a number of third-party software components - [Business filters](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/user-roles-management/business-filters): An optional attribute, from the authorization token, that can be set in order to restrict access to process instances based on a business specific value (ex. bank branch name). - [Swimlanes](https://docs.flowx.ai/4.5.0/docs/platform-deep-dive/user-roles-management/swimlanes): Swimlanes provide a way of grouping process nodes by process participants. - [FlowX.AI architecture](https://docs.flowx.ai/4.5.0/docs/platform-overview/flowx-architecture) - [Intro to BPMN](https://docs.flowx.ai/4.5.0/docs/platform-overview/frameworks-and-standards/business-process-industry-standards/intro-to-bpmn): The core element of the platform is a process. Think of it as a representation of your business use case, for example making a request for a new credit card, placing an online food order, registering your new car or creating an online fundraiser supporting your cause. - [Intro to DMN](https://docs.flowx.ai/4.5.0/docs/platform-overview/frameworks-and-standards/business-process-industry-standards/intro-to-dmn): As we've seen in the previous chapter, Business Process Model and Notation BPMN is used to define business processes as a sequence of activities. If we need to branch off different process paths, we use gateways. These have rules attached to them in order to decide on which outgoing path should the process continue on. - [Intro to MVEL](https://docs.flowx.ai/4.5.0/docs/platform-overview/frameworks-and-standards/business-process-industry-standards/intro-to-mvel): We can also specify the business rules logic using MVEL scripts. As opposed to DMN, with MVEL you can create complex business rules with multiple parameters and sub-calculations. - [Intro to Elasticsearch](https://docs.flowx.ai/4.5.0/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-elasticsearch): Elasticsearch itself is not inherently event-driven, it can be integrated into event-driven architectures or workflows. External components or frameworks detect and trigger events, and Elasticsearch is utilized to efficiently index and make the event data searchable. - [Intro to Kafka concepts](https://docs.flowx.ai/4.5.0/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-kafka-concepts): Apache Kafka is an open-source distributed event streaming platform that can handle a high volume of data and enables you to pass messages from one end-point to another. - [Intro to Kubernetes](https://docs.flowx.ai/4.5.0/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-kubernetes): Kubernetes is an open-source container orchestration platform that automates many of the manual processes involved in containerized application deployment, management, and scaling. - [Intro to NGINX](https://docs.flowx.ai/4.5.0/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-nginx): NGINX is a free, open-source, high-performance web server with a rich feature set, simple configuration, and low resource consumption that can also function as a reverse proxy, load balancer, mail proxy, HTTP cache, and many other things. - [Intro to Redis](https://docs.flowx.ai/4.5.0/docs/platform-overview/frameworks-and-standards/event-driven-architecture-frameworks/intro-to-redis): Redis is a fast, open-source, in-memory key-value data store that is commonly used as a cache to store frequently accessed data in memory so that applications can be responsive to users. It delivers sub-millisecond response times enabling millions of requests per second for applications. - [Applications](https://docs.flowx.ai/4.5.0/docs/projects/managing-applications/application): Applications group all resources and dependencies needed to implement an use case. - [Libraries](https://docs.flowx.ai/4.5.0/docs/projects/managing-applications/libraries): Libraries are specialized projects that serve as reusable containers for resources that can be shared across multiple applications. - [Resources](https://docs.flowx.ai/4.5.0/docs/projects/resources): Overview of Global and Application Resources, including their usage, dependencies, promotion, and configuration within the platform. - [Active policy](https://docs.flowx.ai/4.5.0/docs/projects/runtime/active-policy): The Active policy defines the strategy for selecting which build version of an application is active in the runtime environment. - [Failed process start (exceptions)](https://docs.flowx.ai/4.5.0/docs/projects/runtime/active-process/failed-process-start) - [Process instance](https://docs.flowx.ai/4.5.0/docs/projects/runtime/active-process/process-instance): A process instance is a specific execution of a business process that is defined on the FlowX.AI platform. Once a process definition is added to the platform, it can be executed, monitored, and optimized by creating an instance of the definition. - [Builds](https://docs.flowx.ai/4.5.0/docs/projects/runtime/builds): The Build feature allows for the creation of deployable packages of an application, encapsulating all its resources into a single unit. - [Configuration parameters overrides](https://docs.flowx.ai/4.5.0/docs/projects/runtime/configuration-parameters-overrides): The Configuration parameters overrides feature allows you to set environment-specific values for certain parameters within an application. - [Android SDK](https://docs.flowx.ai/4.5.0/sdks/android-renderer) - [Angular SDK](https://docs.flowx.ai/4.5.0/sdks/angular-renderer): FlowxProcessRenderer is a low code library designed to render UI configured via the Flowx Process Editor. - [iOS SDK](https://docs.flowx.ai/4.5.0/sdks/ios-renderer) - [React SDK](https://docs.flowx.ai/4.5.0/sdks/react-renderer): The FlowxProcessRenderer is a low code library designed to render UI configured via the Flowx Process Editor. - [SDKs overview](https://docs.flowx.ai/4.5.0/sdks/sdks-overview): FLOWX.AI provides web and native mobile SDKs. These SDKs enable developers to create applications that can be displayed in a browser, embedded in an internet banking interface, or in a mobile banking app. The SDKs automatically generate the user interface (UI) based on the business process and data points created by a business analyst, reducing the need for UX/UI expertise. - [IAM solution](https://docs.flowx.ai/4.5.0/setup-guides/access-management/access-management-overview): Identity and access management (IAM) is a framework of business processes, policies and technologies that facilitates the management of electronic or digital identities. With an IAM framework in place, you can control user access to critical information/components within an organization. - [Application manager access rights](https://docs.flowx.ai/4.5.0/setup-guides/access-management/app-manager-access-rights): Granular access rights can be configured for restricting access to the Application-manager component. - [Admin access rights](https://docs.flowx.ai/4.5.0/setup-guides/access-management/configuring-access-rights-for-admin): Granular access rights can be configured for restricting access to the Admin component. - [FlowX CMS access rights](https://docs.flowx.ai/4.5.0/setup-guides/access-management/configuring-access-rights-for-cms): Granular access rights can be configured for restricting access to the CMS component. - [FlowX Engine access rights](https://docs.flowx.ai/4.5.0/setup-guides/access-management/configuring-access-rights-for-engine): Granular access rights can be configured for restricting access to the Engine component. - [Integration Designer access rights](https://docs.flowx.ai/4.5.0/setup-guides/access-management/configuring-access-rights-for-integration-designer): Granular access rights can be configured to restrict access to the Integration Designer. - [License Engine access rights](https://docs.flowx.ai/4.5.0/setup-guides/access-management/configuring-access-rights-for-license): Granular access rights can be configured for restricting access to the License component. - [Configuring an IAM solution (Keycloak)](https://docs.flowx.ai/4.5.0/setup-guides/access-management/configuring-an-iam-solution): This guide provides step-by-step instructions for configuring a minimal Keycloak setup to manage users, roles, and applications efficiently. - [Configuring an IAM solution (EntraID)](https://docs.flowx.ai/4.5.0/setup-guides/access-management/configuring-an-iam-solution-entra): This guide provides step-by-step instructions for configuring a minimal EntraId setup to manage users, roles, and applications efficiently. - [Default roles](https://docs.flowx.ai/4.5.0/setup-guides/access-management/default-roles): Below you can find the list of all the default roles that you can add or import into the Identity and Access Management solution to properly manage the access to all the FlowX.AI microservices. - [FlowX Admin setup](https://docs.flowx.ai/4.5.0/setup-guides/admin-setup-guide): The FlowX.AI Admin microservice manages process-related entities and provides the REST API used by the FlowX.AI Designer. The processes defined here will be handled by the FlowX.AI Engine. The Admin microservice uses most of the same resources as the FlowX.AI Engine. - [FlowX Advancing Controller setup](https://docs.flowx.ai/4.5.0/setup-guides/advancing-controller-setup-guide): This guide provides step-by-step instructions to help you configure and deploy the Advancing Controller effectively. - [Application manager setup](https://docs.flowx.ai/4.5.0/setup-guides/application-manager): The Application Manager is a backend microservice for managing FlowX applications, libraries, versions, manifests, configurations, and builds. This guide provides detailed instructions for setting up the service and configuring its components to manage application-related operations effectively. - [Audit setup](https://docs.flowx.ai/4.5.0/setup-guides/audit-setup-guide): This guide will walk you through the process of setting up the Audit service and configuring it to meet your needs. - [FlowX CMS setup](https://docs.flowx.ai/4.5.0/setup-guides/cms-setup): The CMS service is a microservice that allows managing taxonomies and contents. It is available as a Docker image and is designed to make it easy to edit and analyze content. This guide will walk you through the process of setting up the service and configuring it to meet your needs. - [Data-sync job setup guide](https://docs.flowx.ai/4.5.0/setup-guides/data-sync): This guide provides essential environment variables for configuring the Data-Sync Job. You should use these environment variables to set up and run the Job in your Kubernetes environment. - [FlowX Designer setup](https://docs.flowx.ai/4.5.0/setup-guides/designer-setup-guide): To set up FlowX Designer in your environment, follow this guide. - [FlowX Events Gateway setup](https://docs.flowx.ai/4.5.0/setup-guides/events-gateway-setup): This guide will walk you through the process of setting up the events-gateway service. - [Configuring access roles for processes](https://docs.flowx.ai/4.5.0/setup-guides/flowx-engine-setup-guide/configuring-access-roles-for-processes) - [Configuring Elasticsearch indexing](https://docs.flowx.ai/4.5.0/setup-guides/flowx-engine-setup-guide/configuring-elasticsearch-indexing/elasticsearch-indexing): This section provides configuration steps for enabling process instance indexing using the Kafka transport strategy. - [Indexing config guidelines](https://docs.flowx.ai/4.5.0/setup-guides/flowx-engine-setup-guide/configuring-elasticsearch-indexing/process-instance-indexing-config-guidelines): The configuration of Elasticsearch for process instances indexing depends on various factors related to the application load, the number of process instances, parallel requests, and indexed keys per process. Although the best approach to sizing and configuring Elasticsearch is through testing and monitoring under load, here are some guidelines to help you get started - [FlowX Engine setup](https://docs.flowx.ai/4.5.0/setup-guides/flowx-engine-setup-guide/engine-setup): This guide provides instructions on how to set up and configure the FlowX.AI Engine to meet specific requirements. - [Partitioning & archiving](https://docs.flowx.ai/4.5.0/setup-guides/flowx-engine-setup-guide/process-instance-data-archiving): Improving data management using data partitioning and the archival processes. - [Integration designer setup](https://docs.flowx.ai/4.5.0/setup-guides/integration-designer-setup): This guide provides step-by-step instructions to set up and configure the Integration Designer service, including database, Kafka, and OAuth2 authentication settings, to ensure integration and data flow management - [License Engine setup](https://docs.flowx.ai/4.5.0/setup-guides/license-engine-setup): The License Engine is a service that can be set up using a Docker image. This guide will walk you through the process of setting up the License service and configuring it to meet your needs. - [Deployment configuration for OpenTelemetry](https://docs.flowx.ai/4.5.0/setup-guides/open-telemetry-config): Guide to deploying OpenTelemetry components and configuring associated services. - [Open Telemetry default properties](https://docs.flowx.ai/4.5.0/setup-guides/ot-default-properties) - [Documents plugin access rights](https://docs.flowx.ai/4.5.0/setup-guides/plugins-access-rights/configuring-access-rights-for-documents): Granular access rights can be configured for restricting access to the Documents plugin component. - [Notifications plugin access rights](https://docs.flowx.ai/4.5.0/setup-guides/plugins-access-rights/configuring-access-rights-for-notifications): Granular access rights can be configured for restricting access to the Notification plugin component. - [Task management plugin access rights](https://docs.flowx.ai/4.5.0/setup-guides/plugins-access-rights/configuring-access-rights-for-task-management): Granular access rights can be configured for restricting access to the Task management plugin component. - [Documents plugin setup](https://docs.flowx.ai/4.5.0/setup-guides/plugins-setup-guide/documents-plugin-setup): The Documents plugin provides functionality for generating, persisting, combining, and manipulating documents within the FlowX.AI system. - [Notifications plugin setup](https://docs.flowx.ai/4.5.0/setup-guides/plugins-setup-guide/notifications-plugin-setup): The Notifications plugin is available as a docker image, and it has the following dependencies. - [OCR plugin setup](https://docs.flowx.ai/4.5.0/setup-guides/plugins-setup-guide/ocr-plugin-setup): The OCR plugin is a docker image that can be deployed using the following infrastructure prerequisites. - [Plugins setup](https://docs.flowx.ai/4.5.0/setup-guides/plugins-setup-guide/plugins-setup-guide-overview): To set up a plugin in your environment, you must go through the next steps. - [Reporting setup](https://docs.flowx.ai/4.5.0/setup-guides/plugins-setup-guide/reporting-setup): The Reporting setup guide assists in configuring the reporting plugin, relying on specific dependencies and configurations. - [Task management setup](https://docs.flowx.ai/4.5.0/setup-guides/plugins-setup-guide/task-management-plugin-setup): The plugin is available as a docker image. - [Runtime manager setup](https://docs.flowx.ai/4.5.0/setup-guides/runtime-manager): This guide provides a step-by-step process for setting up and configuring the Runtime Manager module, including database, Kafka, and OAuth2 authentication settings to manage runtime and build configurations. - [Scheduler setup](https://docs.flowx.ai/4.5.0/setup-guides/scheduler-setup-guide): This guide will walk you through the process of setting up the Scheduler service. - [FlowX Data Search setup](https://docs.flowx.ai/4.5.0/setup-guides/search-data-service-setup-guide): This guide will walk you through the process of setting up the Data Search service using a Docker image. - [Setup guides](https://docs.flowx.ai/4.5.0/setup-guides/setup-guides-overview): Deploying microservices involves breaking down an application into smaller, modular components that can be independently deployed. Each microservice should include all necessary dependencies and configurations to ensure smooth and reliable operation. - [Release Notes](https://docs.flowx.ai/release-notes/overview) - [Deployment guidelines v3.0](https://docs.flowx.ai/release-notes/v3.x.x/v3.0.0-february-2023/deployment-guidelines-v3.0.0) - [v3.0.0 February 2023](https://docs.flowx.ai/release-notes/v3.x.x/v3.0.0-february-2023/v3.0.0-february-2023): We are excited to announce the release of FLOWX.AI 3.0 🔥, featuring new and improved features that will elevate your workflow experience. From the new theming options to enhanced functionality, this update will take your productivity to the next level. 🚀 - [Deployment guidelines v3.1.0](https://docs.flowx.ai/release-notes/v3.x.x/v3.1.0-march-2023/deployment-guidelines-v3.1.0) - [v3.1.0 March 2023](https://docs.flowx.ai/release-notes/v3.x.x/v3.1.0-march-2023/v3.1.0-march-2023): Drumroll please... 🥁 We are excited to announce **FLOWX.AI 3.1** release 🔥. - [Deployment guidelines v3.2.0](https://docs.flowx.ai/release-notes/v3.x.x/v3.2.0-april-2023/deployment-guidelines-v3.2.0) - [v3.2.0 April 2023](https://docs.flowx.ai/release-notes/v3.x.x/v3.2.0-april-2023/v3.2.0-april-2023): Drumroll please... 🥁 We are excited to announce **FLOWX.AI 3.2** release 🔥. - [Deployment guidelines v3.3.0](https://docs.flowx.ai/release-notes/v3.x.x/v3.3.0-july-2023/deployment-guidelines-v3.3.0) - [v3.3.0 July 2023](https://docs.flowx.ai/release-notes/v3.x.x/v3.3.0-july-2023/v3.3.0-july-2023): We can't reinvent the wheel... but we can certainly give it a whole new spin! Drumroll, please! 🥁 **FLOWX.AI 3.3** has arrived, bringing a new wave of exciting new features and enhancements. - [null](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.0-september-2023/deployment-guidelines-v3.4.0) - [v3.4.0 September 2023](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.0-september-2023/v3.4.0-september-2023) - [Deployment guidelines v3.4.1](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.1-september-2023/deployment-guidelines-v3.4.1) - [v3.4.1 September 2023](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.1-september-2023/v3.4.1-september-2023) - [Deployment guidelines v3.4.2](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.2-october-2023/deployment-guidelines-v3.4.2) - [v3.4.2 October 2023](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.2-october-2023/v3.4.2-october-2023): Welcome to the FLOWX.AI v3.4.2 patch release! This update brings several enhancements and fixes to improve your FLOWX.AI experience. While it may not be a major version update, it's packed with valuable improvements. - [Deployment guidelines v3.4.3](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.3-october-2023/deployment-guidelines-v3.4.3) - [v3.4.3 October 2023](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.3-october-2023/v3.4.3-october-2023): In FLOWX.AI version 3.4.3, we've addressed several bugs to improve the stability and reliability of the platform. Here are the key bug fixes in this release. - [Deployment guidelines v3.4.4](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.4-november-2023/deployment-guidelines-v3.4.4) - [v3.4.4 November 2023](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.4-november-2023/v3.4.4-november-2023) - [Deployment guidelines v3.4.5](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.5-november-2023/deployment-guidelines-v3.4.5) - [v3.4.5 November 2023](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.5-november-2023/v3.4.5-november-2023) - [Deployment guidelines v3.4.6](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.6-december-2023/deployment-guidelines-v3.4.6) - [v3.4.6 December 2023](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.6-december-2023/v3.4.6-december-2023) - [Deployment guidelines v3.4.7](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.7-january-2024/deployment-guidelines-v3.4.7) - [v3.4.7 January 2024](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.7-january-2024/v3.4.7-january-2024) - [Deployment guidelines v3.4.8](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.8-june-2024/deployment-guidelines-v3.4.8) - [v3.4.8 June 2024](https://docs.flowx.ai/release-notes/v3.x.x/v3.4.8-june-2024/v3.4.8-june-2024) - [Deployment guidelines v4.0](https://docs.flowx.ai/release-notes/v4.0.0-april-2024/deployment-guidelines-v4.0.0) - [Deployment changes](https://docs.flowx.ai/release-notes/v4.0.0-april-2024/migrating-from-v3.4.x/migrating-from-v3.4.x): This document outlines the additional configuration changes required for deployment in version 4.0 - [Process configuration](https://docs.flowx.ai/release-notes/v4.0.0-april-2024/migrating-from-v3.4.x/process-configuration): This guide outlines changes in process and UI configuration from v3.4.x to 4.0 version. - [Renderer SDKs](https://docs.flowx.ai/release-notes/v4.0.0-april-2024/migrating-from-v3.4.x/renderers): This guide assists in migrating from FlowX v3.4.x to v4.0. - [UI components - change log](https://docs.flowx.ai/release-notes/v4.0.0-april-2024/ui-components-changelog): This log outlines the changes in component styles and props from version 3.4.x to version 4.0. - [FlowX.AI 4.0 release 🚀](https://docs.flowx.ai/release-notes/v4.0.0-april-2024/v4.0.0-april-2024): 🎉 Welcome to the much-anticipated FlowX.AI 4.0 release! 🚀 Get ready to experience a whole new level of innovation and efficiency with FlowX.AI 4.0. - [Deployment guidelines v4.1](https://docs.flowx.ai/release-notes/v4.1.0-may-2024/deployment-guidelines-v4.1.0) - [Migrating from previous versions to v4.1](https://docs.flowx.ai/release-notes/v4.1.0-may-2024/migrating-from-v3.4.x-to-v4.1) - [Components change log v4.1](https://docs.flowx.ai/release-notes/v4.1.0-may-2024/ui-components-changelog): This log outlines the changes in component styles and props from v4.0 to v4.1. - [FlowX.AI 4.1 LTS release 🚀](https://docs.flowx.ai/release-notes/v4.1.0-may-2024/v4.1.0-may-2024): 🎉 Welcome to the FlowX.AI 4.1 release! - [Deployment guidelines v4.1.1](https://docs.flowx.ai/release-notes/v4.1.1-june-2024/deployment-guidelines-v4.1.1) - [Migrating from previous versions to v4.1.1](https://docs.flowx.ai/release-notes/v4.1.1-june-2024/migrating-from-previous-to-v4.1.1) - [FlowX.AI 4.1.1 LTS Release](https://docs.flowx.ai/release-notes/v4.1.1-june-2024/v4.1.1-june-2024) - [Deployment guidelines v4.1.2](https://docs.flowx.ai/release-notes/v4.1.2-june-2024/deployment-guidelines-v4.1.2) - [Migrating from previous versions to v4.1.2](https://docs.flowx.ai/release-notes/v4.1.2-june-2024/migrating-from-previous-to-v4.1.2) - [FlowX.AI 4.1.2 LTS Release](https://docs.flowx.ai/release-notes/v4.1.2-june-2024/v4.1.2-june-2024) - [Deployment guidelines v4.1.3](https://docs.flowx.ai/release-notes/v4.1.3-august-2024/deployment-guidelines-v4.1.3) - [Migrating from previous versions to v4.1.3](https://docs.flowx.ai/release-notes/v4.1.3-august-2024/migrating-from-previous-to-v4.1.3) - [FlowX.AI 4.1.3 LTS Release](https://docs.flowx.ai/release-notes/v4.1.3-august-2024/v4.1.3-august-2024) - [Deployment guidelines v4.1.4](https://docs.flowx.ai/release-notes/v4.1.4-september-2024/deployment-guidelines-v4.1.4) - [Migrating from previous versions to v4.1.4](https://docs.flowx.ai/release-notes/v4.1.4-september-2024/migrating-from-previous-to-v4.1.4) - [FlowX.AI 4.1.4 LTS Release](https://docs.flowx.ai/release-notes/v4.1.4-september-2024/v4.1.4-september-2024) - [Deployment guidelines v4.1.5](https://docs.flowx.ai/release-notes/v4.1.5-september-2024/deployment-guidelines-v4.1.5) - [Migrating from previous versions to v4.1.5](https://docs.flowx.ai/release-notes/v4.1.5-september-2024/migrating-from-previous-to-v4.1.5) - [FlowX.AI 4.1.5 LTS Release](https://docs.flowx.ai/release-notes/v4.1.5-september-2024/v4.1.5-september-2024) - [Deployment guidelines v4.5.0](https://docs.flowx.ai/release-notes/v4.5.0-october-2024/deployment-guidelines-v4.5.0) - [Deployment changes for v.4.5.0](https://docs.flowx.ai/release-notes/v4.5.0-october-2024/migrating-from-v4.1.x-to-v4.5.0/migrating-from-v4.1.x): This document outlines the configuration and infrastructure changes introduced from v4.1.x to v4.5.0 for deploying the FlowX.AI platform. - [Configuration and migration guide](https://docs.flowx.ai/release-notes/v4.5.0-october-2024/migrating-from-v4.1.x-to-v4.5.0/process-configuration): This guide outlines changes in process and UI configuration from v4.1.x to 4.5.1 version. - [Renderer SDKs](https://docs.flowx.ai/release-notes/v4.5.0-october-2024/migrating-from-v4.1.x-to-v4.5.0/renderers): This guide assists in migrating from FlowX v4.1.x to v4.5.0. - [FlowX.AI 4.5.0 Release](https://docs.flowx.ai/release-notes/v4.5.0-october-2024/v4.5.0-october-2024): FlowX.AI 4.5.0 has landed, and it's epic! 🚀 - [Deployment guidelines v4.5.1](https://docs.flowx.ai/release-notes/v4.5.1-november-2024/deployment-guidelines-v4.5.1) - [Deployment changes for v.4.5.1](https://docs.flowx.ai/release-notes/v4.5.1-november-2024/migrating-from-v4.1.x-to-v4.5.1/migrating-from-v4.1.x): This document outlines the configuration and infrastructure changes introduced from v4.1.x to v4.5.1 for deploying the FlowX.AI platform. - [Configuration and migration guide](https://docs.flowx.ai/release-notes/v4.5.1-november-2024/migrating-from-v4.1.x-to-v4.5.1/process-configuration): This guide outlines changes in process and UI configuration from v4.1.x to 4.5.1 version. - [Renderer SDKs](https://docs.flowx.ai/release-notes/v4.5.1-november-2024/migrating-from-v4.1.x-to-v4.5.1/renderers): This guide assists in migrating from FlowX v4.1.x to v4.5.1. - [FlowX.AI 4.5.1 Release](https://docs.flowx.ai/release-notes/v4.5.1-november-2024/v4.5.1-november-2024): FlowX.AI 4.5.1 brings essential bug fixes and user experience improvements. ## Optional - [Requests](https://flowxai.canny.io/documentation-feedback)