openapi: 3.0.3 info: title: Nagios XI REST Config Plugins API description: 'Built-in REST API for Nagios XI, the commercial enterprise distribution of Nagios. The API is split into three sections: Objects (read-only backend for hosts, services, contacts, host groups, etc.), Config (admin-only writes for hosts and services), and System (admin-only commands such as apply configuration, scheduled downtime, status). Responses are returned as JSON when `pretty=1` or by default. Authentication uses a per-user Nagios XI API key passed via the `apikey` query parameter. ' version: v1 contact: name: Nagios Enterprises url: https://www.nagios.com/products/nagios-xi/ license: name: Nagios XI Commercial License url: https://www.nagios.com/legal/agreements/ servers: - url: https://{nagiosXiHost}/nagiosxi/api/v1 description: Self-hosted Nagios XI instance variables: nagiosXiHost: default: nagios.example.com description: Hostname or IP address of the Nagios XI server security: - ApiKeyQuery: [] - ApiKeyHeader: [] tags: - name: Plugins description: User-defined Nagios-style plugins executed by the agent. paths: /plugins/{pluginName}: get: tags: - Plugins summary: Run NCPA Plugin operationId: runPlugin parameters: - $ref: '#/components/parameters/Token' - name: pluginName in: path required: true schema: type: string - name: args in: query schema: type: string responses: '200': description: Plugin output (Nagios check result format). content: application/json: schema: $ref: '#/components/schemas/CheckResult' components: parameters: Token: name: token in: query required: true schema: type: string description: NCPA community_string token from agent config. schemas: CheckResult: type: object required: - returncode - stdout properties: returncode: type: integer enum: - 0 - 1 - 2 - 3 description: 0=OK, 1=WARNING, 2=CRITICAL, 3=UNKNOWN. stdout: type: string example: 'OK: 12% CPU usage | ''cpu_percent''=12;80;90;' securitySchemes: ApiKeyQuery: type: apiKey in: query name: apikey ApiKeyHeader: type: apiKey in: header name: X-API-KEY