Feature Requests
New / Open / Unreviewed

Expose compliance summary on the Integration API (hosts include=stats and integrations)

Originally raised by @mrjoshuap on GitHub: https://github.com/PatchMon/PatchMon/issues/1189

Summary

The scoped Integration API (Basic Auth with host:get) already returns rich host data through GET /api/v1/api/hosts?include=stats: reboot state, update counts, security updates, OS and reporting state. Compliance data is only available under /api/v1/compliance/*, which needs a browser session with compliance permissions.

That means Ansible and other Integration API consumers cannot see whether compliance is enabled on a host, its mode or its score, without session scraping.

Proposal

  1. Extend GET /api/v1/api/hosts?include=stats, or add include=compliance, with:

    • compliance_enabled (bool)
    • compliance_mode (disabled | on-demand | enabled)
    • compliance_score and a last scan summary (pass, fail and warn counts, timestamp) when available
  2. Add a compliance object to GET /api/v1/api/hosts/:id/integrations, alongside Docker.
  3. Document the fields in the Integration API guide and Swagger.

Why

  • Ansible inventory hostvars and groups such as patchmon_compliance_enabled, and playbook targeting, without one session call per host.
  • Keeps Integration API credentials (host:get) as the single auth model for automation.
  • Matches what the UI already shows on the host Compliance tab.

0 Comments

Write a comment...

Posting anonymously

No comments yet. Be the first to share your thoughts.