APIRoutes ===================== The Admin Toolkit provides a REST API for interacting with the toolkit programmatically. All API routes are prefixed with `/toolkit/`. Reports API ----------------- GET /toolkit/ ^^^^^^^^^^^^^^^ Returns the main landing page with the list of reports. **Response:** HTML page with reports list POST /toolkit/run ^^^^^^^^^^^^^^^^^^ Initiates a new toolkit report execution. **Query Parameters:** - ``exclude`` (optional): Comma-separated list of check categories to exclude - ``log_level`` (optional): Logging level (default: "INFO") - ``upload_report`` (optional): Whether to upload report to Domino (default: false) **Response:** JSON object with report details (status code 201) **Example:** .. code-block:: json { "id": 1, "status": "In Progress", "started": "2023-09-19 08:11:06" } GET /toolkit/report/ ^^^^^^^^^^^^^^^^^^^^^^^^^^ Retrieves a specific report by its ID. **Parameters:** - ``id``: Report ID **Response:** HTML report file (status code 200) or 404 if not found GET /toolkit/reports ^^^^^^^^^^^^^^^^^^^^^^ Returns a JSON list of all reports. **Response:** JSON array of report objects **Example:** .. code-block:: json [ { "id": 1, "status": "Completed", "started": "2023-09-19 08:11:06", "local_url": "https://my_domino/toolkit/report/1" } ] Documentation API ----------------- GET /toolkit/docs/ ^^^^^^^^^^^^^^^^^^^ Returns the documentation index page. **Response:** HTML documentation index GET /toolkit/docs/ ^^^^^^^^^^^^^^^^^^^^^^^^ Returns a specific documentation page. **Parameters:** - ``path``: Path to the documentation file (e.g., "Reports.html", "Settings.html") **Response:** HTML documentation page (status code 200) or 404 if not found Settings API ----------------- GET /toolkit/settings ^^^^^^^^^^^^^^^^^^^^^^ Returns the settings page. **Response:** HTML settings page GET /toolkit/opt_in_domino ^^^^^^^^^^^^^^^^^^^^^^^^^^^ Opts in to sending reports to Domino. **Response:** JSON response with status GET /toolkit/opt_out_domino ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Opts out of sending reports to Domino. **Response:** JSON response with status POST /toolkit/schedule ^^^^^^^^^^^^^^^^^^^^^^^ Schedules automated report generation. **Request Body:** JSON object with cron schedule in standard cron format **Example:** .. code-block:: json { "crontab_entry": "0 0 * * *" } **Response:** JSON response with status POST /toolkit/check_upgrade ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Checks if toolkit upgrade is available. **Response:** JSON response with upgrade information POST /toolkit/upgrade ^^^^^^^^^^^^^^^^^^^^^^ Initiates toolkit upgrade. **Response:** JSON response with status Status API ----------------- GET /toolkit/status ^^^^^^^^^^^^^^^^^^^ Returns aggregated SLA status information. **Response:** JSON object with status information DaemonSet API ----------------- The DaemonSet API provides endpoints for checking node-level information when the toolkit is running in DaemonSet mode. GET /toolkit/docker_version ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Returns Docker version information for the node. **Response:** JSON object with Docker version GET /toolkit/mongo_ping ^^^^^^^^^^^^^^^^^^^^^^^ Checks MongoDB connectivity from the node. **Response:** JSON object with ping status GET /toolkit/network_stats ^^^^^^^^^^^^^^^^^^^^^^^^^^^ Returns network statistics for the node. **Response:** JSON object with network statistics