Status endpoint

The /status endpoint implements the Puppet Labs Status API for coordinated monitoring of Puppet Labs services. See the central documentation for detailed information.


This query endpoint will return status about the PuppetDB instance on a host.

Response format

The response will be in application/json, and will return a JSON map like the following:

    "detail_level": "info",
     "service_status_version": 1,
     "service_version": "4.0.0-SNAPSHOT",
     "state": "running",
     "status": {
         "maintenance_mode?": false,
         "read_db_up?": true,
         "write_db_up?": true,
         "queue_depth": 0
  • detail_level: info is currently the only level.

  • service_status_version: version of the status API.

  • service_version: version of PuppetDB.

  • state: short description of PuppetDB's current state:

    • "starting" if PuppetDB is in maintenance mode.

    • "running" if not in maintenance mode and read and write databases are up.

    • "error" if the read or write databases are down.

  • status:

    • maintenance_mode?: indicates whether PuppetDB is in maintenance mode. PuppetDB enters maintenance mode at startup and exits it after completing any pending migrations and initial data synchronization (when using HA). While in maintenance mode, PuppetDB will not respond to queries.

    • read_db_up?: indicates whether the read database is responding to queries.

    • write_db_up?: boolean indicating whether at least one write database is responding to queries.

    • write_dbs_up?: boolean indicating whether all of the write databases are responding to queries.

    • write_dbs_up?: map of database (string) names to {"up?": boolean} values indicating whether the database is responding to queries. If there is only one write database, the name will be an empty string.

    • queue_depth: depth of the command queue. If the queue is not yet initialized, this field will be null.