openapi: 3.0.3 info: title: Nagios XI REST Config Submission 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: Submission description: Submit passive check results and external commands. paths: /: post: tags: - Submission summary: Submit NRDP Payload description: 'Submit a `checkresults` payload (`cmd=submitcheck`) or a Nagios external command (`cmd=submitcmd`). The body can be `application/x-www-form-urlencoded` with an XML/JSON `XMLDATA`/`JSONDATA` field. ' operationId: submitNrdp requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object required: - token - cmd properties: token: type: string description: NRDP authentication token. cmd: type: string enum: - submitcheck - submitcmd XMLDATA: type: string description: 'XML payload, root `` containing one or more `` elements with ``, ``, ``, `` children. ' JSONDATA: type: string description: 'JSON string equivalent of XMLDATA — e.g. `{"checkresults":[{"checkresult":{"type":"service",...}}]}`. ' command: type: string description: External command string when `cmd=submitcmd`. responses: '200': description: Submission result. content: application/json: schema: $ref: '#/components/schemas/NrdpResponse' components: schemas: NrdpResponse: type: object properties: status: type: integer description: 0 on success non-zero on error.: null message: type: string meta: type: object properties: output: type: string securitySchemes: ApiKeyQuery: type: apiKey in: query name: apikey ApiKeyHeader: type: apiKey in: header name: X-API-KEY