/pdb/query/v4/reports

URL parameters

query: optional. A JSON array of query predicates, in prefix notation
(["<OPERATOR>", "<FIELD>", "<VALUE>"]). See the sections below for the
supported operators and fields. For general info about queries, see our guide
to query structure.

Query operators

Query fields

The following fields are allowed as filter criteria and are returned in all
responses.

certname (string): the name of the node that the report was received from.

hash (string): the ID of the report; these IDs can be acquired via event
queries (see the /events endpoint).

environment (string): the environment assigned to the node that submitted
the report.

status (string): the status associated to report’s node. Possible values for
this field come from Puppet’s report status, which can be found
here.

noop (Boolean): a flag indicating whether the report was produced by a noop
run.

noop_pending (Boolean): a flag indicating whether the report contains noop
events (these can arise from use of --noop or from resources with the
noop parameter set to true). This field will only be present when the agent originating the report is version 4.6.0 or higher.

puppet_version (string): the version of Puppet that generated the report.

report_format (number): the version number of the report format that Puppet
used to generate the original report data.

configuration_version (string): an identifier string that Puppet uses to
match a specific catalog for a node to a specific Puppet run.

start_time (timestamp): the time on the agent at which the Puppet run began.
Timestamps are always ISO-8601 compatible date/time strings.

end_time (timestamp): the time on the agent at which the Puppet run ended.
Timestamps are always ISO-8601 compatible date/time strings.

producer_timestamp (timestamp): the time of catalog submission from the
Puppet master to PuppetDB, according to the clock on the Puppet master.
Timestamps are always ISO-8601 compatible date/time strings.

receive_time (timestamp): the time at which PuppetDB received the report.
Timestamps are always ISO-8601 compatible date/time strings.

producer (string): the certname of the Puppet master that sent the report
to PuppetDB.

transaction_uuid (string): a string used to identify a Puppet run.

catalog_uuid (string): a string used to tie a catalog to a report to the
catalog used from that Puppet run.

code_id (string): a string used to tie a catalog to the Puppet code which
generated the catalog.

cached_catalog_status (string): a string used to identify whether the Puppet
run used a cached catalogs and whether or not the cached catalog was used due to
an error or not. Possible values include explicitly_requested, on_failure,
not_used or null.

corrective_change: (Boolean): a flag indicating whether any of the report’s
events remediated configuration drift. This field is only populated in PE.

latest_report? (Boolean): return only reports associated with the most
recent Puppet run for each node. Note: this field does not appear in the
response.

Subquery relationships

The following list contains related entities that can be used to constrain the
result set using implicit subqueries. For more information, consult the
documentation for subqueries.

File and line may each be null if the log does not concern a resource.

Note: Fields that allow NULL values

In the resource_event schema above, containment_path, new_value, old_value, property, file, line, status, and message may all be null.

Note: On querying resource events, metrics, and logs

The reports endpoint does not support querying on the value of resource_events, logs, or metrics. For resource_events, the same information can be accessed by querying the events endpoint for events with field report equal to a given report’s hash. Making metrics and logs queryable may be the target of future work.