Usage Manual
This page describes how the connector can be used and configured.
Prerequisites
The machine running CMDBuild must be able to reach the GLPI server over HTTP or HTTPS, at the URL configured in the Base URL attribute of the instance. The connector calls the endpoints under api.php/v1 or api.php/v2 of that URL, depending on the configured API version.
The following credentials are required:
- API version 1: a GLPI
UsernameandPassword, or aUser token. - API version 2: a GLPI
UsernameandPassword, together with theClient IDandClient Secretof an OAuth client enabled on the server (password grant,apiscope). - Optionally, the
App tokenconfigured on the server for further authentication.
The authenticated user must be able to read, through the API, the data requested by the connector. The following list reports the endpoints called by the connector, to be used as a reference for the permissions to assign to the user:
API version 1 (base path api.php/v1)
GET /Agent
GET /Computer
GET /Computer/{id} (with infocoms, devices, disks, softwares, connections and networkports)
GET /Computer/{id}/Agent
GET /Computer/{id}/Item_OperatingSystem
GET /DeviceBattery
GET /DeviceFirmware
GET /DeviceGraphicCard
GET /DeviceHardDrive
GET /DeviceMemory
GET /DeviceProcessor
GET /getMultipleItems (Monitor, Phone and Printer, with infocoms and networkports)
GET /initSession
GET /Monitor
GET /Phone
GET /Printer
GET /Software
API version 2 (base path api.php/v2)
GET /Assets/Computer
GET /Assets/Computer/{id}/Component/{Battery|Firmware|GraphicCard|HardDrive|Memory|Processor}
GET /Assets/Computer/{id}/Infocom
GET /Assets/Computer/{id}/OSInstallation
GET /Assets/Computer/{id}/PeripheralConnection
GET /Assets/Computer/{id}/SoftwareInstallation
GET /Assets/Computer/{id}/Volume
GET /Assets/Monitor
GET /Assets/Monitor/{id}/Infocom
GET /Assets/Phone
GET /Assets/Phone/{id}/Infocom
GET /Assets/Printer
GET /Assets/Printer/{id}/Infocom
GET /Assets/Software
GET /Components/{Battery|Firmware|GraphicCard|HardDrive|Memory|Processor}
GET /Inventory/Agent
POST /token
Service version
The connector has been tested with GLPI 11.0.7.
Connector dependencies
The connector requires the installation of the Connector utils plugin version 2.0.7 or higher and CMDBuild version 4.2.0 or higher.
Configuration
Plugin configuration
The standard connector plugin configuration can be found here.
The connector has no additional configurations.
Instance configuration
Each GLPI server is configured by creating a card of the GlpiConfig class. The following attributes are available (mandatory attributes are marked with *).
| Config | Default | Description | Notes |
|---|---|---|---|
Key* | Code that identifies the server. It is used to name the source of the imported data. | Free choice, must be unique. | |
Active* | Whether the server is included in the synchronization. | Only the active servers are read. | |
Base URL* | Address of the GLPI server. | If the protocol is missing, it is added automatically. Do not include the api.php path. | |
API version | 1 | Version of the GLPI REST API used to read the data. | Allowed values: 1, 2. Some data is available only with one of the versions, see the mapping page. |
Username | GLPI user used to authenticate. | Required with API version 2. With API version 1 required together with Password, unless User token is set. | |
Password | Password of the GLPI user. | Required with API version 2. With API version 1 required together with Username, unless User token is set. | |
User token | Personal API token of the GLPI user. | Used only with API version 1. If set, it is used instead of Username and Password. | |
Client ID | Client ID of the OAuth client. | Required with API version 2, ignored with version 1. | |
Client Secret | Client secret of the OAuth client. | Required with API version 2, ignored with version 1. | |
App token | Application token configured on the server. | Optional. When set, it is sent in the App-Token header of every request. | |
Threads | 8 | Number of threads that send requests to the server in parallel. | A value less than or equal to 0 means the default. The server may limit the number of requests per minute, so increasing this value too much may not improve the performance. |
Thread timeout | 15 | Maximum time, in minutes, to wait for the completion of the threads. | A value less than or equal to 0 means the default. When the time expires the read terminates with an error. |
Ignore certificate | false | Whether to skip the validation of the server certificate. |
Entities preview
The diagram provides a high-level overview of the entities extracted by the connector and the relationships between them.
The diagram uses the following conventions:
-
Orange containers represent CMDBuild superclasses. The entities contained within them belong to the corresponding superclass.
-
Blue boxes represent record types extracted by the connector. Each box is labeled using the format
{Source Object Name} ({_type}), combining the object name used by the source service with the internal record type produced by the connector. -
Blue boxes with a dashed border represent calculated entities. These records do not directly correspond to objects exposed by the source system but are generated during data processing to represent information that would otherwise be embedded within another record.
-
Arrows represent one-to-many relationships between entities managed by the connector. The arrow points to the "many" side of the relationship, as indicated by its label (
1 : N). -
Lines without arrowheads represent many-to-many relationships between entities managed by the connector, as indicated by their label (
N : N).
Below is a list of all the entities retrieved by the connector.
Assets
- Computer (
computer) - Monitor (
monitor) - Printer (
printer) - Phone (
phone) - Software (
software) - Disk (
disk)
Components
- Processor (
processor) - Graphic card (
graphiccard) - Firmware (
firmware) - Memory (
memory) - Hard drive (
harddrive) - Battery (
battery)
Inventory
- Agent (
agent)
Network (API version 1 only)
- Network port (
networkport) - IP address (
ip), calculated from theNetwork portrecords
Additional Information
Synchronization to Application Classes
The standard connector imports and maintains data within the CMDBuild standard classes and relationships, providing a consistent representation of the data.
As a separate and optional customization activity, organizations may define additional synchronization processes to populate application-specific classes from the imported infrastructure data. Through custom mappings and enrichment rules, connector resources can be associated with organization-specific business objects, services, assets, or other application entities.
This approach supports customer-specific business models, enrichment processes, and classification rules while preserving the standard infrastructure representation provided by the connector.
Known Limitations
- The connector operates in read-only mode.
- Large environments may require increased execution time.
- No real-time synchronization: data is updated only during scheduled runs.
- The plugin is distributed under a Premium license model. Its usage is tied to an active support and maintenance agreement, which is subject to expiration and must be renewed to remain valid.
Deployment Guidelines
Deployment of the connector includes the creation of standard CMDBuild classes and relationships corresponding to supported connector resource types. These structures provide the foundation for storing and organizing synchronized infrastructure information. The deployment process also includes configuration elements required for data visualization and the establishment of scheduled synchronization activities.
Following deployment, it is recommended to validate the configuration by executing an initial synchronization and reviewing the imported data.
Scheduling frequency should be selected according to the scale of the environment, expected rate of infrastructure change, and operational reporting requirements.