Connectors
Connectors are components that allow CMDBuild to integrate with external systems and services.
Their purpose is to:
- Retrieve data from an external source, such as APIs, databases, cloud services, or third-party applications.
- Process and transform the retrieved data into a format compatible with CMDBuild.
- Import or update the information within CMDBuild.
Connectors are designed to operate in a read-only manner with respect to external systems. They retrieve information from the configured source and synchronize it into CMDBuild, but they do not modify, create, or delete data in the external service.
The main goal of a connector is to automate data synchronization between different systems, reducing manual activities and ensuring data consistency across platforms. A task that executes the connector every morning is created automatically but is inactive by default, so no synchronization runs until it is explicitly activated. The task is intended as a starting point: its execution time and frequency can be customized before or after activating it, allowing the synchronization process to be aligned with the update cycle of the external system and business requirements.
Connector Instances
A connector can be configured through one or more instances.
An instance represents a specific data extraction configuration and defines how the connector reads information from an external source. It typically specifies:
- The source from which data should be retrieved.
- Authentication credentials.
- Connection settings.
- Data selection and filtering parameters.
Each instance corresponds to a specific read operation. For example, multiple instances of the same connector may be configured to read data from different environments, tenants, accounts, or endpoints.
The data retrieved by each instance is processed independently and can then be imported into CMDBuild according to the configured synchronization rules.
Execution Types
Connectors support two execution modes:
Instance Execution
An instance execution runs the synchronization process for a single connector instance.
This execution mode is typically used when a single instance needs to be synchronized on demand or for troubleshooting purposes.
Batch Execution
A batch execution runs the synchronization process for all connector instances that are marked as Active. Instances are processed synchronously, one after another, and for each instance the complete synchronization flow is executed.
This execution mode is typically used for scheduled synchronizations, ensuring that all active connector instances are updated in a single operation.
Execution Structure
The execution of a connector instance is divided into two separate branches:
- System Branch
- Application Branch
This separation allows the same extracted data to be managed in two different ways: as a standard representation of the source data and as application-specific data integrated into the CMDBuild data model.
System Branch
When the connector plugin is installed, it automatically creates a set of dedicated classes managed by the plugin itself.
The System Branch populates these classes with a standardized representation of the data extracted from the external source. This representation closely reflects the structure of the source system and provides a consistent way to inspect and browse the retrieved information within CMDBuild.
The classes managed by the System Branch are independent of the application's business model and are intended to provide a default view of the imported data, regardless of how that data will eventually be used.
Application Branch
The Application Branch is responsible for integrating the extracted data into the application's data model.
During this phase, data retrieved from the external system can be transformed and mapped to the CMDBuild classes and relationships defined by the application.
While the System Branch provides a default and source-oriented representation of the extracted information, the Application Branch populates the business entities that users interact with as part of their CMDBuild application.
Available Connectors Plugins
The following connector plugins are available: