GET /api/config_reports
List all reports

Examples

GET /api/config_reports
200
{
  "total": 1,
  "subtotal": 1,
  "page": 1,
  "per_page": 20,
  "search": "",
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "metrics": {
        "time": {
          "schedule": 0.00083,
          "service": 0.149739,
          "mailalias": 0.000283,
          "cron": 0.000419,
          "config_retrieval": 16.3637869358063,
          "package": 0.003989,
          "filebucket": 0.000171,
          "file": 0.007025,
          "exec": 0.000299
        },
        "resources": {
          "total": 33
        },
        "changes": {},
        "events": {
          "total": 0
        }
      },
      "created_at": "2018-11-16 10:03:28 UTC",
      "updated_at": "2018-11-16 10:03:28 UTC",
      "id": 1,
      "host_id": 1,
      "host_name": "host258",
      "reported_at": "2018-11-16 10:03:28 UTC",
      "status": {
        "applied": 0,
        "restarted": 0,
        "failed": 0,
        "failed_restarts": 0,
        "skipped": 0,
        "pending": 0
      }
    }
  ]
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

search
optional

filter results

Validations:

  • Must be a String

order
optional

Sort and order by a searchable field, e.g. '<field> DESC'

Validations:

  • Must be a String

page
optional

Page number, starting at 1

Validations:

  • Must be a number.

per_page
optional

Number of results per page to return, 'all' to return all results

Validations:

  • Must match regular expression /\A([1-9]\d*|all)\Z$/.

Search fields

Field name Type Possible values
applied integer
eventful true, false
failed integer
failed_restarts integer
host string
host_id integer
host_owner_id integer
hostgroup string
hostgroup_fullname string
hostgroup_title string
id integer
last_report datetime
location string
log text
organization string
origin string
pending integer
reported datetime
resource text
restarted integer
skipped integer

GET /api/config_reports/:id
Show a report

Examples

GET /api/config_reports/1
404
{
  "error": {
    "message": "Resource config_report not found by id '1'"
  }
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


POST /api/config_reports
Create a report

Examples

POST /api/config_reports
{
  "config_report": {
    "host": "rhel6n01.corp.com",
    "reported_at": "2010-11-19 02:39:04 UTC",
    "metrics": {},
    "status": {
      "applied": 0,
      "failed": 0,
      "failed_restarts": 0,
      "pending": 0,
      "restarted": 0,
      "skipped": 0
    },
    "logs": [
      {
        "log": {
          "sources": {
            "source": "Puppet"
          },
          "messages": {
            "message": "Could not retrieve catalog from remote server: Error 400 on SERVER: Could not find node 'rhel6n01.corp.com'; cannot compile"
          },
          "level": "err"
        }
      },
      {
        "log": {
          "sources": {
            "source": "Puppet"
          },
          "messages": {
            "message": "Using cached catalog"
          },
          "level": "notice"
        }
      },
      {
        "log": {
          "sources": {
            "source": "Puppet"
          },
          "messages": {
            "message": "Could not retrieve catalog; skipping run"
          },
          "level": "err"
        }
      }
    ]
  }
}
403
{
  "error": {
    "message": "Access denied",
    "details": "Missing one of the required permissions: upload_config_reports"
  }
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

config_report
required

Validations:

  • Must be a Hash

config_report[host]
required

Hostname or certname

Validations:

  • Must be a String

config_report[reported_at]
required

UTC time of report

Validations:

  • Must be a String

config_report[status]
required

Hash of status type totals

Validations:

  • Must be a Hash

config_report[metrics]
required

Hash of report metrics, can be just {}

Validations:

  • Must be a Hash

config_report[logs]
optional , nil allowed

Optional array of log hashes

Validations:

  • Must be an array of any type


DELETE /api/config_reports/:id
Delete a report

Examples

DELETE /api/config_reports/1
{
  "config_report": {}
}
404
{
  "error": {
    "message": "Resource config_report not found by id '1'"
  }
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be a String


GET /api/hosts/:host_id/config_reports/last
Show the last report for a host

Examples

GET /api/config_reports/last
200
{
  "metrics": {
    "time": {
      "schedule": 0.00083,
      "service": 0.149739,
      "mailalias": 0.000283,
      "cron": 0.000419,
      "config_retrieval": 16.3637869358063,
      "package": 0.003989,
      "filebucket": 0.000171,
      "file": 0.007025,
      "exec": 0.000299
    },
    "resources": {
      "total": 33
    },
    "changes": {},
    "events": {
      "total": 0
    }
  },
  "created_at": "2018-11-16 10:03:27 UTC",
  "updated_at": "2018-11-16 10:03:27 UTC",
  "id": 5,
  "host_id": 5,
  "host_name": "host249",
  "reported_at": "2018-11-16 10:03:27 UTC",
  "status": {
    "applied": 0,
    "restarted": 0,
    "failed": 0,
    "failed_restarts": 0,
    "skipped": 0,
    "pending": 0
  },
  "logs": [],
  "summary": "Success"
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.