GLPi
GLPi (Gestionnaire Libre de Parc Informatique) is a free and open-source IT service management (ITSM) software suite that enables organizations to manage IT assets, handle helpdesk requests, and streamline service operations through a web-based interface.[1][2] Originally developed in 2003 by a French team, GLPi has evolved into a comprehensive platform supported by a global community and professional developers, with Teclib assuming leadership of its advancement in 2015 to enhance its features and accessibility.[3][2] It adheres to ITIL (Information Technology Infrastructure Library) best practices, providing tools for incident and request management, problem resolution, change planning, and service level agreement (SLA) enforcement to ensure efficient IT support.[4][2] At its core, GLPi offers robust asset management capabilities, allowing users to inventory computers, monitors, printers, phones, network equipment, software licenses, and consumables through automated scanning, SNMP reporting, and customizable data imports.[4] Its configuration management database (CMDB) integrates these assets with relational mapping to track dependencies, while financial tools handle budgets, supplier contracts, and cost tracking for comprehensive resource oversight.[1][4] The helpdesk module supports ticket creation with priority levels based on urgency and impact, assignment to teams or individuals, notifications, and recurrent scheduling, complemented by a knowledge base for self-service resolutions and reporting dashboards for performance analytics.[4] Additional functionalities include data center layout management, project planning, monitoring integrations, and plugin extensibility via a marketplace, making it adaptable for enterprises of varying sizes.[4][1] As an open-source solution licensed under the GNU General Public License (GPL), GLPi is freely downloadable and deployable on standard web servers with PHP support, such as Apache, fostering widespread adoption in IT environments worldwide.[2][5]History
Founding and Early Development
GLPi was founded in 2003 by a team of developers from the French non-profit organization INDEPNET, including Jean-Mathieu Doléans, Julien Dombre, and Bazile Lebeau. The project originated when Lebeau adapted the existing IRMA inventory tool to address specific IT asset management requirements at his workplace, laying the groundwork for a more comprehensive solution. This initiative marked the beginning of GLPi as a response to the need for accessible, customizable IT management software in small and medium-sized enterprises (SMEs).[3] Initial development proceeded as a community-driven effort under INDEPNET's direction, emphasizing core functionalities for IT inventory tracking and basic helpdesk operations. The first public release, version 0.2, arrived shortly after inception in 2003, introducing features such as equipment cataloging, user authentication, and simple ticket handling built on open technologies. INDEPNET coordinated contributions from early volunteers, fostering a collaborative environment that prioritized practicality for resource-constrained IT teams. By focusing on essential tools like asset booking and license oversight, the project quickly established itself as a viable alternative to proprietary systems.[3] Early adoption was concentrated within French-speaking IT communities, particularly among SMEs seeking cost-effective solutions for hardware and software management. By the mid-2000s, GLPi had garnered interest beyond France, attracting international users through its adaptable framework and growing online forums. This expansion highlighted its appeal in diverse linguistic and operational contexts, with translations and user feedback driving refinements.[3] The project transitioned to formal open-source governance from its outset, licensed under the GNU General Public License (GPL) to ensure free distribution and modification. This structure, implemented in the initial 2003 versions, encouraged widespread participation and solidified GLPi's position as a stable, community-sustained tool by the late 2000s. INDEPNET's oversight maintained project integrity while promoting ethical, non-commercial development principles.[3]Major Releases and Evolution
GLPi's development gained significant momentum following its stabilization in the early 2010s, with key releases marking its transition toward a more robust and feature-rich platform. The release of version 0.80 in May 2011 represented a major milestone, introducing enhanced stability and broader compatibility for IT asset management functionalities. This version built upon the foundational work by original developers such as those from INDEPNET, establishing GLPi as a viable open-source alternative for inventory tracking.[6] In August 2013, GLPi version 0.84 further advanced the project's maturation by improving user interface elements and integration capabilities, solidifying its role in enterprise environments. Teclib, founded in 2009, began as an integrator of GLPi that year and became the official publisher in 2015, providing dedicated resources for ongoing development and community support. Teclib's involvement accelerated enhancements, transitioning GLPi from a community-driven initiative to a professionally stewarded project.[7][8] A pivotal governance change occurred in May 2022, when GLPi updated its license to GPL-3.0-or-later, promoting greater compatibility with modern open-source ecosystems and encouraging broader contributions from developers. This shift aligned with the release of version 10.0 in April 2022, which expanded the software's scope into a comprehensive IT service management (ITSM) suite. By its 20th anniversary in 2023, GLPi had evolved from a basic inventory tool into a full-fledged ITSM solution, adopted worldwide for asset management, helpdesk operations, and compliance needs.[9][10][3] The project's latest major release, version 11.0 on October 1, 2025, continued this trajectory by incorporating community feedback and refining core processes, with subsequent minor updates to version 11.0.2 by November 2025, ensuring sustained relevance in dynamic IT landscapes. Under Teclib's leadership, GLPi's evolution reflects a commitment to open-source principles, with iterative releases focusing on security, usability, and extensibility.[11][12]Overview
Purpose and Core Functionality
GLPi is a free and open-source software application designed for IT Asset Management (ITAM), Configuration Management Database (CMDB), and IT Service Management (ITSM).[13] It serves as a centralized platform that enables organizations to oversee their IT infrastructure, track assets, and manage service delivery processes efficiently.[2] The core goals of GLPi focus on streamlining IT operations by integrating inventory tracking, incident resolution, and resource allocation into a unified system, which enhances operational efficiency and provides greater visibility into IT assets and services.[13] This approach helps organizations reduce downtime, optimize resource use, and maintain comprehensive records of their IT environment.[2] GLPi targets IT teams across small to large enterprises, supporting functions such as helpdesk management, full asset lifecycle oversight, and compliance with industry standards.[13] Its design accommodates diverse organizational needs, from basic support ticketing to complex service orchestration.[2] At a high level, GLPi's workflow begins with users submitting requests through tickets, which are then associated with relevant IT assets for diagnosis and resolution, culminating in detailed reporting to inform ongoing improvements.[13] The system aligns with ITIL frameworks to promote standardized practices in service management.[13]ITIL Compliance and Standards
GLPi aligns with ITIL best practices, providing structured support for key processes, including incident management, change management, and service asset management. In incident management, GLPi enables the tracking and resolution of service interruptions through ticket lifecycles that progress from "New" to "Processing," "Solved," and "Closed," with automated assignments, notifications, and SLA enforcement to ensure timely responses. Change management is facilitated via dedicated change records that link to assets, problems, and tickets, incorporating evaluation, validation, deployment phases, and impact analysis to minimize risks during modifications. Service asset management is handled through the Assets module, which inventories hardware, software, and related financial data, supporting lifecycle tracking and dependency mapping for effective service delivery.[14] Its Configuration Management Database (CMDB) integrates configuration items (CIs) like devices, software, and network components, providing a centralized view of IT infrastructure with automated inventory collection via GLPI Agent and relationship mapping for impact analysis. This CMDB structure aligns with ITIL's configuration management practices, allowing users to monitor dependencies and maintain an accurate representation of the IT environment.[15][2] Built-in workflows in GLPi standardize IT service delivery through problem classification, escalation mechanisms, and a knowledge base. Problems can be categorized with priority matrices based on impact and urgency, triggering escalations via rules engines that automate actions like status updates or notifications when deadlines are approached. The knowledge base serves as a repository for articles and FAQs linked to tickets and assets, promoting self-service and shared expertise while ensuring consistent resolution processes. These features collectively support ITIL's emphasis on continual improvement and standardized operations.[14][16] For regulatory compliance, GLPi includes certification and auditing capabilities, particularly through the official GDPR Tools plugin, which aids in meeting requirements like GDPR for data handling in IT environments. This plugin automates the cleaning or deletion of inactive user data, including references in history and emails, with options for reversible "clean" modes or permanent deletion, configurable via automatic actions to ensure privacy compliance during audits. It restricts actions to scopes like users without active tickets, providing tools for data protection officers to maintain verifiable records and support regulatory reporting.[17][18]Features
IT Asset Management
GLPi provides robust capabilities for managing IT assets, enabling organizations to maintain a comprehensive inventory of both physical hardware and digital software resources. Hardware assets, such as computers, printers, network equipment, monitors, peripherals, and phones, are tracked through detailed records including serial numbers, operating systems, components (e.g., BIOS, memory, batteries), network ports, and connections.[14] Software assets, including applications, versions, licenses, and databases, are inventoried with specifics like serial numbers, expiration dates, installation counts, and compatibility with hardware items.[14] This inventory supports entity-based management, allowing assets to be organized by organizational units for multi-site or departmental oversight.[4] Automatic discovery of assets is facilitated by the GLPi Agent, a lightweight tool that collects and transmits hardware and software data from devices to the GLPi server across platforms like Windows, Linux, macOS, and Android.[19] The agent performs scheduled inventory tasks, detecting components, configurations, and changes such as device connections or disconnections, while rules engine automates assignment to entities based on criteria like IP subnets or tags.[14] For agentless environments, remote inventory options via ESX or other protocols minimize manual entry, ensuring up-to-date records with lock mechanisms to prevent overrides during automated updates.[19] Lifecycle management in GLPi encompasses the full asset journey from acquisition to disposal, with tracking of key phases including purchase, delivery, deployment, warranty periods, maintenance, reform, and decommissioning dates.[14] Depreciation is calculated using linear or declining balance methods over configurable periods, integrated with financial data like total cost of ownership (TCO) and net accounting values to inform budgeting and replacement decisions.[14] Status tracking uses customizable states (e.g., in production, repaired, disposed) with full audit history logging changes, while contracts link to assets for ongoing maintenance oversight.[4] Disposal processes are supported through status updates and historical reports, ensuring compliance with organizational policies.[14] As a core component of GLPi's Configuration Management Database (CMDB), asset management enables relational mapping that visualizes dependencies between hardware, software, and services via impact analysis diagrams.[15] Assets are linked to broader IT elements, such as network topologies, clusters, and appliances, providing a dependency graph that highlights how changes in one asset affect others.[14] This integration offers customizable reports on infrastructure relationships, enhancing visibility into service impacts and supporting proactive management.[15] Network scanning and SNMP support deliver real-time asset visibility by automatically discovering unmanaged devices like switches, routers, and printers across the infrastructure.[20] SNMP credentials enable detailed polling of network equipment for metrics such as port status, IP addresses, and connectivity, while topology mapping identifies cabling and rack positions in data centers.[14] Blacklists for IPs, MACs, or devices prevent unwanted inclusions, and scheduled scans ensure continuous updates, converting discovered assets into managed inventory entries.[20] Assets inventoried this way can be briefly linked to support tickets for contextual reference during incident resolution.[4]| Feature | Key Capabilities | Supported Assets |
|---|---|---|
| Hardware Inventory | Component tracking, network ports, financial info | Computers, printers, network gear, phones |
| Software Inventory | Version control, license allocation | Applications, databases, licenses |
| Agent Discovery | Automated data collection, rule-based assignment | Multi-OS devices, virtual machines |
| Lifecycle Tracking | Phase dates, depreciation methods, status history | All assets with contract integration |
| CMDB Mapping | Dependency diagrams, impact analysis | Assets to services and infrastructure |
| Network Scanning | SNMP polling, topology detection | Unmanaged network devices, passive equipment |
Service Desk and Ticketing
GLPi's service desk and ticketing system serves as the central hub for managing IT support requests, incidents, and user assistance, enabling efficient handling of workflows in line with ITIL practices.[16] Tickets can be created through multiple channels, including an online form accessible to authenticated or anonymous users, delegation via groups, direct operator input for phone-based requests, or automatic conversion from incoming emails.[21] The creation process utilizes customizable templates that define mandatory fields such as title, description, category, urgency, impact, and associated assets, allowing users to attach documents, images, or videos via drag-and-drop for detailed issue reporting.[21] Once created, tickets are assigned to technicians based on the requester's entity, with automatic selection for single-entity setups or a dropdown for multi-entity environments; assignment can also occur manually or via rules for optimal routing.[22] Tracking occurs through a visible workflow that logs each stage, including follow-ups and status changes, with a dedicated Historical tab providing a chronological record of all actions and communications.[22] Resolution involves technicians proposing solutions via the Solutions tab, which require approval from the requester or supervisor, ensuring closure only after verification; categories classify tickets as requests, incidents, or changes to streamline sorting by nature.[22] Priority levels are dynamically calculated using a matrix that combines urgency (e.g., low to very high) and impact (e.g., low to very high), resulting in an overall priority to guide response efforts.[22] Service Level Agreements (SLAs) enforce timelines by setting assignment and resolution due dates, with escalation indicators displayed if deadlines approach; these SLAs support multi-level escalations based on business policies to prevent delays.[22] Follow-up mechanisms include public or private notes added via the Followup tab to document progress, alongside multi-level validation workflows for standardized status updates and timely incident closure.[22] The self-service portal, accessible through the simplified interface at/front/helpdesk.html or the enhanced Service Catalog in GLPI 11.0, empowers users to submit requests using predefined forms, track ticket status in real-time, and search for solutions without technician intervention.[21] The Service Catalog features intuitive categorization, fuzzy search, illustrations, and pinned services for quick access, with forms filtered by user profiles, groups, or entities to ensure relevance.[23] Users can also access an integrated knowledge base, where articles are filtered by rights and linked to the catalog for self-resolution of common issues.[23]
Multi-channel support is facilitated through email integration via configurable receivers that poll IMAP or POP servers to convert incoming messages into tickets, including options for handling CC observers, unread mail only, and attachment limits.[24] Notifications are automatically sent to involved parties—such as requesters, assignees, and supervisors—upon status changes, follow-ups, or escalations, provided email follow-up is enabled in user preferences.[22] While core functionality emphasizes email, the system supports extensions for chat integrations to enable real-time multi-channel support.[16]
Project Management and Financial Tracking
GLPi provides robust project management capabilities tailored for IT initiatives, enabling users to plan, execute, and monitor projects through structured workflows. Projects can be created with defined names, types (such as internal or external), statuses, and provisional or real start/end dates, allowing for hierarchical organization with sub-projects to represent complex IT deployments or upgrades. Tasks within projects support detailed planning, including task names, types (e.g., milestone or standard), statuses, and parent-child relationships, with provisional and real durations to track progress against timelines.[25] Visual tools like Gantt charts facilitate timeline oversight, displaying project tasks and dependencies either per project or globally when enabled in configuration settings. Resource allocation is handled via project teams, where users, groups, suppliers, or contacts can be assigned roles such as manager, member, or observer, ensuring accountability for IT resources like personnel or hardware during project phases. For change management, projects integrate with GLPi's ITIL processes by linking to change requests in the ITIL objects tab, allowing seamless tracking of modifications tied to project milestones.[25] Financial management in GLPi supports expense tracking and budget oversight for IT projects by associating costs directly to project tasks or linking them to broader budgets. Budgets are created with specified amounts and time periods, and expenses from linked items—such as project tasks or associated tickets—are deducted automatically, displaying expended amounts, remaining balances, and potential overruns in the budget's main view. This enables allocation of funds to specific IT initiatives, like software implementations, with templates for recurring budget structures to streamline planning.[26] Supplier and contract databases enhance financial tracking by maintaining centralized records of vendors, including contact details, locations, and associated contracts, which can be linked to projects for procurement needs. Contracts cover types like maintenance or support, with fields for costs imputed to budgets, renewal types (tacit or express), and expiration alerts to manage license renewals and prevent lapses in IT services. Purchase orders and invoice reconciliation are supported through contract tabs that list details like numbers, start dates, and durations, alongside document uploads for invoices and delivery forms, ensuring accurate financial reconciliation with suppliers.[27][28][29] Administrative financial data, accessible via the Management tab on project-linked items, includes supplier assignments, order numbers, invoice references, and total cost of ownership (TCO) calculations, which aggregate asset values and intervention costs to inform budget decisions for ongoing IT projects.[29]Reporting and Administrative Tools
GLPi provides a suite of reporting tools that enable administrators and users to generate insights into IT assets, service desk activities, and overall system usage. Customizable dashboards serve as the primary interface for visualizing key metrics, allowing users to create personalized views with tiles displaying data such as ticket volumes by status, asset inventories by type, and usage trends over time. These dashboards support various chart types, including graphs for ticket evolution and asset distributions, and can be filtered by criteria like entity, group, or time period to focus on specific datasets. Reports can be generated from predefined templates or custom SQL queries, covering areas like equipment summaries, contract statuses, and financial overviews of hardware and software, with options to sort and filter results for targeted analysis.[30][31] Export functionality enhances the utility of these tools by allowing data to be saved in formats such as CSV, PDF, or SLK for further processing or sharing outside the platform. For instance, search results from asset or ticket queries can be exported directly, while dashboard data may be embedded via iframes or shared through links with designated user groups. This supports compliance reporting and integration with external analytics tools, ensuring that insights on assets, tickets, and metrics like SLA performance are accessible and actionable. Brief references to project-related data can be included in reports for holistic views, though detailed project analytics are handled separately.[32] Administrative tools in GLPi facilitate secure and efficient system management through robust user and access controls. User and group management allows for the creation, import, and synchronization of user accounts, with groups organizing users by department or role for streamlined permissions assignment. Role-based access control (RBAC) is implemented via profiles, which define granular permissions across modules—such as read/write access to assets or tickets—and can be dynamically assigned using rules based on LDAP attributes or email domains. Authentication options include local database logins alongside external integrations like LDAP for directory synchronization and SSO protocols such as SAML or CAS, enabling seamless single sign-on in enterprise environments.[33][34] The knowledge base serves as a centralized repository for documentation and self-service support, comprising internal articles for technicians and public FAQs for end-users. Articles are categorized, attachable to documents, and targeted to specific entities, groups, profiles, or users to control visibility, with features like translation support and time-based publication schedules. Search functionality employs advanced operators—such as exact phrases, exclusions, or truncations—to quickly retrieve relevant content, promoting knowledge sharing and reducing ticket volumes through proactive resolution.[35] System maintenance is supported by audit logs and configuration options tailored for multi-entity environments. Audit logs track internal events, including user actions, object modifications, and service activities like ticket updates, with configurable logging levels and retention periods managed via automatic purge actions to prevent storage overload. These logs are accessible through a web interface for auditing and troubleshooting, displaying details like modification dates and affected items. For multi-entity setups, configuration allows hierarchical entity structures with recursive permissions, entity-specific settings for notifications, calendars, and asset transfers, and rules for automatic user assignment to ensure isolated yet interconnected management across organizational units. Backups are recommended as a core administrative practice, involving regular database dumps via tools like mysqldump and file system copies of the GLPi directory, often automated through cron jobs to safeguard data integrity.[36][37][38]Technical Architecture
Software Stack and Components
GLPi is primarily developed using PHP as its core programming language, with version 8.2 to 8.4 required for compatibility with recent releases such as GLPi 11.0.2.[5] The application employs a web-based interface constructed with HTML, CSS, and JavaScript to deliver an interactive user experience accessible via standard web browsers.[2] Server-side deployment relies on web servers including Apache, Nginx, lighttpd, or IIS, configured to handle PHP execution through mechanisms like mod_php or PHP-FPM.[39] These servers must direct requests to the application's public directory, ensuring proper routing for dynamic content generation.[39] The software adopts a modular architecture that separates concerns across components: the front-end manages user interface rendering and interactions, the back-end processes business logic via PHP scripts, and agent-based tools, such as the GLPI Agent, facilitate automated inventory collection from networked devices using protocols supported by extensions like cURL and OpenSSL.[2] This design promotes extensibility through plugins while maintaining core functionality isolation.[2] Security measures are embedded within the stack, including encryption for sensitive data like stored credentials using configurable keys, input validation to mitigate injection risks, and routine vulnerability patches released in version updates to address identified issues.[2] Recommended configurations further enhance protection, such as enabling secure session cookies and HTTPS for agent-server communications.[39]Database and API Integration
GLPi relies on a relational database system for persistent storage of its core data, supporting MySQL version 8.0 or later and MariaDB version 10.6 or later as the primary backends.[5] These databases handle the storage of diverse entities, including IT assets (such as computers and network equipment stored in tables likeglpi_computers and glpi_networkequipments), service desk tickets (managed in the glpi_tickets table), and user profiles (contained in the glpi_users table).[40] The overall schema encompasses more than 250 interconnected tables, utilizing standard conventions such as integer primary keys named id and foreign keys in the format <table_name>_id to establish relationships between entities like assets, tickets, and users.[40]
To facilitate interoperability, GLPi introduced a native RESTful API in version 10.0, which allows external applications to perform CRUD operations via HTTP requests in JSON format.[41] This API supports key functionalities such as importing inventory data from agents, creating and updating tickets programmatically, and querying asset information, enabling seamless integrations with third-party systems like monitoring tools (e.g., Zabbix for automated alert-based ticket generation).[10][42] Authentication is handled through API tokens or session-based login, with endpoints accessible at /apirest.php relative to the GLPi installation URL.[43]
Version 11.0 extended the API capabilities with the introduction of a High-Level API (HL API), which provides a simplified interface for common operations, building on the original REST API while improving developer experience.[44] Additionally, version 11.0 added webhooks, an event-driven mechanism that triggers HTTP POST requests to external endpoints upon specific GLPi events, such as ticket status changes or inventory updates.[45] Webhooks allow customization of payloads in JSON format, including details like ticket content or asset attributes, to automate workflows with external services without constant polling.[46] Security features include signature verification using HMAC-SHA256 to ensure payload integrity.[46]
For maintaining data consistency during version upgrades, GLPi provides built-in migration tools accessed via the command-line interface, particularly the php bin/console db:update command, which automates schema alterations and data transformations.[47] This process runs database migrations to align the schema with the new release requirements, such as adding columns or modifying indexes, while preserving existing data; it is essential for major upgrades like from 10.0 to 11.0 and requires a full database backup beforehand to mitigate risks.[47] The tool also performs integrity checks to detect and resolve discrepancies before applying updates.[47]
Deployment and Customization
Prerequisites
Installing GLPi requires a compatible operating system such as Linux or Windows Server, along with a web server supporting PHP, such as Apache, Nginx, or IIS.[2] The software demands PHP version 8.2 or higher, with mandatory extensions including dom, fileinfo, filter, libxml, simplexml, xmlreader, xmlwriter, bcmath, curl, gd, intl, mbstring, mysqli, openssl, and zlib.[2] For the database, GLPi supports MariaDB 10.6 or later, or MySQL 8.0 or later.[2] Additionally, approximately 500 MB of disk space is needed for the core installation, plus extra space for uploaded files and logs.[5] Optional PHP extensions like bz2, Phar, zip, exif, ldap, and Zend OPcache can enhance functionality but are not essential for basic setup.[5]Installation Process
To deploy GLPi, first download the latest stable release archive from the official GitHub repository at https://github.com/glpi-project/glpi/releases.[](https://github.com/glpi-project/glpi) Extract the archive contents to the web server's root directory, ensuring the document root points to the/public subdirectory for security.[5] Grant the web server user write permissions on the files, config, and marketplace directories, as well as the overall installation path during setup.[48] Next, access the GLPi URL via a web browser to launch the installation wizard, which guides through language selection, license acceptance, and prerequisite checks.[49]
The wizard proceeds with database configuration: provide the host, database name, username, and password for the MySQL or MariaDB instance, which must be created in advance with appropriate privileges.[49] GLPi will then initialize the database schema and prompt for the creation of the initial administrator account, including a secure password.[49] Upon completion, remove or secure the install directory to prevent re-running the wizard, and log in using the admin credentials at the GLPi interface.[50] Alternatively, for command-line installation, use the php bin/console db:install command after extracting files. Database credentials can be provided via command options or by configuring them in config_db.php.[51]
Configuration
After installation, log in as the administrator to configure core elements. Create entities via Setup > Entities to organize the system into logical groups, such as departments or locations, enabling multi-tenancy and data isolation within a single GLPi instance.[37] Default profiles like Administrator, Technician, and Observer are pre-configured, granting varying permissions; customize them under Setup > Profiles to define access levels for users, such as read-only for observers or full administrative rights.[34] For basic inventory import, use the built-in tools under Assets to manually add items or integrate the GLPi Agent for automated discovery of hardware and software across the network.Upgrade Path
Upgrading GLPi involves backing up the database and files before replacing the core files with the new release from GitHub.[47] For web-based updates, access the GLPi interface after file replacement to run the built-in migration process, which applies schema changes and data updates automatically.[47] In CLI mode, executephp bin/console db:update from the GLPi root directory to perform database migrations, ensuring compatibility with the new version's requirements like updated PHP or database versions.[51] This command handles schema alterations, such as adding new tables or modifying existing ones, while preserving data integrity.[52] Always verify prerequisites for the target version post-upgrade to avoid issues.[38]
Plugins and Extensions
GLPi's plugin ecosystem significantly expands its core capabilities, with the official plugin directory hosting over 100 community-contributed extensions that address specialized needs in IT management. These plugins enable enhancements such as advanced inventory tracking through the GLPI Inventory plugin, which integrates with the GLPI Agent to automate the discovery and management of hardware and software assets across networks.[53] Other notable examples include the native Forms feature for building custom forms to streamline ticket submissions and user requests, and integration plugins that facilitate synchronization with external systems like Active Directory for user authentication and directory services.[53][54] Installation of plugins can occur via two primary methods: manual deployment, where the plugin's files are extracted and uploaded to the/plugins folder within the GLPi installation directory, followed by activation in the administrative interface; or through the integrated marketplace introduced in GLPi version 10 and subsequent releases, allowing administrators to browse, download, install, and enable plugins directly from the Setup > Plugins section of the user interface. Plugins installed via the marketplace are stored in a dedicated /marketplace folder, ensuring organized management and easy updates. This approach simplifies post-deployment customization without requiring direct file system access in many cases.[54][55]
To develop or extend functionality, GLPi employs a robust hook system that permits plugins to intercept and modify specific events in the application's workflow using custom PHP code, such as during item creation, updates, or displays. Developers must implement version compatibility checks within their plugins to verify alignment with the target GLPi release, preventing conflicts and ensuring seamless integration with the core codebase. For instance, the GLPI Inventory plugin leverages this system to enable remote inventory collection from endpoints, while other extensions forge connections to ERP systems like Odoo or monitoring platforms such as Zabbix for unified data flows.[56][57]