Configuration Properties (configprops)

The configprops endpoint provides information about the application’s @ConfigurationProperties beans.

Retrieving All @ConfigurationProperties Beans

To retrieve all of the @ConfigurationProperties beans, make a GET request to /actuator/configprops, as shown in the following curl-based example:

$ curl 'http://localhost:8080/actuator/configprops' -i -X GET

The resulting response is similar to the following:

HTTP/1.1 200 OK
Content-Type: application/vnd.spring-boot.actuator.v3+json
Content-Length: 6878

{
  "contexts" : {
    "application" : {
      "beans" : {
        "spring.web-org.springframework.boot.autoconfigure.web.WebProperties" : {
          "inputs" : {
            "error" : {
              "includeBindingErrors" : { },
              "includeException" : { },
              "includeMessage" : { },
              "includePath" : { },
              "includeStacktrace" : { },
              "path" : { },
              "whitelabel" : {
                "enabled" : { }
              }
            },
            "localeResolver" : { },
            "resources" : {
              "addMappings" : { },
              "cache" : {
                "cachecontrol" : { },
                "useLastModified" : { }
              },
              "chain" : {
                "cache" : { },
                "compressed" : { },
                "strategy" : {
                  "content" : {
                    "enabled" : { },
                    "paths" : [ { } ]
                  },
                  "fixed" : {
                    "enabled" : { },
                    "paths" : [ { } ]
                  }
                }
              },
              "staticLocations" : [ { }, { }, { }, { } ]
            }
          },
          "prefix" : "spring.web",
          "properties" : {
            "error" : {
              "includeBindingErrors" : "NEVER",
              "includeException" : false,
              "includeMessage" : "NEVER",
              "includePath" : "ALWAYS",
              "includeStacktrace" : "NEVER",
              "path" : "/error",
              "whitelabel" : {
                "enabled" : true
              }
            },
            "localeResolver" : "ACCEPT_HEADER",
            "resources" : {
              "addMappings" : true,
              "cache" : {
                "cachecontrol" : { },
                "useLastModified" : true
              },
              "chain" : {
                "cache" : true,
                "compressed" : false,
                "strategy" : {
                  "content" : {
                    "enabled" : false,
                    "paths" : [ "/**" ]
                  },
                  "fixed" : {
                    "enabled" : false,
                    "paths" : [ "/**" ]
                  }
                }
              },
              "staticLocations" : [ "classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/" ]
            }
          }
        },
        "spring.jackson-org.springframework.boot.jackson.autoconfigure.JacksonProperties" : {
          "inputs" : {
            "findAndAddModules" : { },
            "serialization" : { },
            "factory" : {
              "constraints" : {
                "read" : {
                  "maxDocumentLength" : { },
                  "maxNameLength" : { },
                  "maxNestingDepth" : { },
                  "maxNumberLength" : { },
                  "maxStringLength" : { },
                  "maxTokenCount" : { }
                },
                "write" : {
                  "maxNestingDepth" : { }
                }
              }
            },
            "read" : { },
            "visibility" : { },
            "constructorDetector" : { },
            "datatype" : {
              "datetime" : { },
              "enum" : { },
              "jsonNode" : { }
            },
            "deserialization" : { },
            "json" : {
              "read" : { },
              "write" : { }
            },
            "mapper" : { },
            "write" : { },
            "useJackson2Defaults" : { }
          },
          "prefix" : "spring.jackson",
          "properties" : {
            "findAndAddModules" : true,
            "serialization" : { },
            "factory" : {
              "constraints" : {
                "read" : {
                  "maxDocumentLength" : -1,
                  "maxNameLength" : 50000,
                  "maxNestingDepth" : 500,
                  "maxNumberLength" : 1000,
                  "maxStringLength" : 100000000,
                  "maxTokenCount" : -1
                },
                "write" : {
                  "maxNestingDepth" : 500
                }
              }
            },
            "read" : { },
            "visibility" : { },
            "constructorDetector" : "DEFAULT",
            "datatype" : {
              "datetime" : { },
              "enum" : { },
              "jsonNode" : { }
            },
            "deserialization" : { },
            "json" : {
              "read" : { },
              "write" : { }
            },
            "mapper" : { },
            "write" : { },
            "useJackson2Defaults" : false
          }
        },
        "spring.mvc-org.springframework.boot.webmvc.autoconfigure.WebMvcProperties" : {
          "inputs" : {
            "contentnegotiation" : {
              "defaultContentTypes" : [ ],
              "favorParameter" : { },
              "mediaTypes" : { }
            },
            "servlet" : {
              "loadOnStartup" : { },
              "path" : { }
            },
            "format" : { },
            "staticPathPattern" : { },
            "apiversion" : {
              "use" : {
                "mediaTypeParameter" : { }
              }
            },
            "dispatchOptionsRequest" : { },
            "dispatchTraceRequest" : { },
            "problemdetails" : {
              "enabled" : { }
            },
            "logResolvedException" : { },
            "async" : { },
            "webjarsPathPattern" : { },
            "view" : { },
            "publishRequestHandledEvents" : { },
            "logRequestDetails" : { },
            "pathmatch" : {
              "matchingStrategy" : { }
            }
          },
          "prefix" : "spring.mvc",
          "properties" : {
            "contentnegotiation" : {
              "defaultContentTypes" : [ ],
              "favorParameter" : false,
              "mediaTypes" : { }
            },
            "servlet" : {
              "loadOnStartup" : -1,
              "path" : "/"
            },
            "format" : { },
            "staticPathPattern" : "/**",
            "apiversion" : {
              "use" : {
                "mediaTypeParameter" : { }
              }
            },
            "dispatchOptionsRequest" : true,
            "dispatchTraceRequest" : false,
            "problemdetails" : {
              "enabled" : false
            },
            "logResolvedException" : false,
            "async" : { },
            "webjarsPathPattern" : "/webjars/**",
            "view" : { },
            "publishRequestHandledEvents" : true,
            "logRequestDetails" : false,
            "pathmatch" : {
              "matchingStrategy" : "PATH_PATTERN_PARSER"
            }
          }
        }
      }
    }
  }
}

Response Structure

The response contains details of the application’s @ConfigurationProperties beans. The following table describes the structure of the response:

Path Type Description

contexts

Object

Application contexts keyed by id.

contexts.*.beans.*

Object

@ConfigurationProperties beans keyed by bean name.

contexts.*.beans.*.prefix

String

Prefix applied to the names of the bean’s properties.

contexts.*.beans.*.properties

Object

Properties of the bean as name-value pairs.

contexts.*.beans.*.inputs

Object

Origin and value of the configuration property used when binding to this bean.

contexts.*.parentId

String

Id of the parent application context, if any.

Retrieving @ConfigurationProperties Beans By Prefix

To retrieve the @ConfigurationProperties beans mapped under a certain prefix, make a GET request to /actuator/configprops/{prefix}, as shown in the following curl-based example:

$ curl 'http://localhost:8080/actuator/configprops/spring.jackson' -i -X GET

The resulting response is similar to the following:

HTTP/1.1 200 OK
Content-Disposition: inline;filename=f.txt
Content-Type: application/vnd.spring-boot.actuator.v3+json
Content-Length: 2332

{
  "contexts" : {
    "application" : {
      "beans" : {
        "spring.jackson-org.springframework.boot.jackson.autoconfigure.JacksonProperties" : {
          "inputs" : {
            "findAndAddModules" : { },
            "serialization" : { },
            "factory" : {
              "constraints" : {
                "read" : {
                  "maxDocumentLength" : { },
                  "maxNameLength" : { },
                  "maxNestingDepth" : { },
                  "maxNumberLength" : { },
                  "maxStringLength" : { },
                  "maxTokenCount" : { }
                },
                "write" : {
                  "maxNestingDepth" : { }
                }
              }
            },
            "read" : { },
            "visibility" : { },
            "constructorDetector" : { },
            "datatype" : {
              "datetime" : { },
              "enum" : { },
              "jsonNode" : { }
            },
            "deserialization" : { },
            "json" : {
              "read" : { },
              "write" : { }
            },
            "mapper" : { },
            "write" : { },
            "useJackson2Defaults" : { }
          },
          "prefix" : "spring.jackson",
          "properties" : {
            "findAndAddModules" : true,
            "serialization" : { },
            "factory" : {
              "constraints" : {
                "read" : {
                  "maxDocumentLength" : -1,
                  "maxNameLength" : 50000,
                  "maxNestingDepth" : 500,
                  "maxNumberLength" : 1000,
                  "maxStringLength" : 100000000,
                  "maxTokenCount" : -1
                },
                "write" : {
                  "maxNestingDepth" : 500
                }
              }
            },
            "read" : { },
            "visibility" : { },
            "constructorDetector" : "DEFAULT",
            "datatype" : {
              "datetime" : { },
              "enum" : { },
              "jsonNode" : { }
            },
            "deserialization" : { },
            "json" : {
              "read" : { },
              "write" : { }
            },
            "mapper" : { },
            "write" : { },
            "useJackson2Defaults" : false
          }
        }
      }
    }
  }
}
The {prefix} does not need to be exact, a more general prefix will return all beans mapped under that prefix stem.

Response Structure

The response contains details of the application’s @ConfigurationProperties beans. The following table describes the structure of the response:

Path Type Description

contexts

Object

Application contexts keyed by id.

contexts.*.beans.*

Object

@ConfigurationProperties beans keyed by bean name.

contexts.*.beans.*.prefix

String

Prefix applied to the names of the bean’s properties.

contexts.*.beans.*.properties

Object

Properties of the bean as name-value pairs.

contexts.*.beans.*.inputs

Object

Origin and value of the configuration property used when binding to this bean.

contexts.*.parentId

String

Id of the parent application context, if any.