Creating a Custom Endpoint in Spring Boot Actuator

Spring Boot Actuator provides a set of built-in endpoints that offer valuable insights into your application’s internals, such as health, metrics, and environment details. However, there are scenarios where you might need to create custom endpoints to expose specific information or functionality from your application. In this guide, we’ll walk through creating a custom endpoint in Spring Boot Actuator and demonstrate how to access the custom endpoint.

Step 1: Setting up a Spring Boot Project

First, let’s set up a Spring Boot project using Spring Initializr or your preferred method. Make sure to include the “Spring Web” and “Actuator” dependencies.

Step 2: Create a Custom Endpoint

To create a custom endpoint, you’ll need to extend the AbstractEndpoint class provided by Spring Boot Actuator. Let’s create a simple custom endpoint that provides a custom message.

import org.springframework.boot.actuate.endpoint.annotation.Endpoint;
import org.springframework.boot.actuate.endpoint.annotation.ReadOperation;

@Endpoint(id = "custom")
public class CustomEndpoint {

    public String getCustomMessage() {
        return "This is a custom endpoint message!";

In this example, we’ve created a custom endpoint with the id “custom”. The getCustomMessage() method will be invoked when accessing this endpoint.

Step 3: Register the Custom Endpoint

To register the custom endpoint with Spring Boot, create a @Bean configuration method in your application.

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

public class CustomEndpointConfig {

    public CustomEndpoint customEndpoint() {
        return new CustomEndpoint();

This configuration class registers the custom endpoint as a Spring bean.

Step 4: Accessing the Custom Endpoint

Now that we’ve created and registered the custom endpoint, let’s access it via an HTTP request.

Start your Spring Boot application, and use an HTTP client (e.g., cURL or Postman) to access the custom endpoint.

curl http://localhost:8080/actuator/custom

You should receive a response containing the custom message from the custom endpoint.


Creating a custom endpoint in Spring Boot Actuator allows you to expose application-specific information or functionality through a dedicated endpoint. This can be particularly useful for providing insights or operations that are tailored to your application’s requirements. By following the steps outlined in this guide, you can successfully create and access custom endpoints within your Spring Boot application.