Examples

POST /api/reports
{
  "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

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organisations

Validations:

  • Must be a Integer

report
required

Validations:

  • Must be a Hash

report[host]
required

Hostname or certname

Validations:

  • Must be a String

report[reported_at]
required

UTC time of report

Validations:

  • Must be a String

report[status]
required

Hash of status type totals

Validations:

  • Must be a Hash

report[metrics]
required

Hash of report metrics, can be just {}

Validations:

  • Must be a Hash

report[logs]
optional , nil allowed

Optional array of log hashes

Validations:

  • Must be an array of any type