Skip to content

API Dashboard & Call

EasyApi provides an integrated API Dashboard that lets you browse, test, and export all API endpoints in your project — without leaving the IDE.

Opening the API Dashboard

Open the dashboard via Tools > Open API Dashboard, or click the gutter icon on any API method (see Gutter Icon Navigation below).

Gutter Icon Navigation

EasyApi adds a gutter icon (▶) next to API method declarations in the editor. Click it to jump directly to that endpoint in the API Dashboard.

Supported annotations:

FrameworkAnnotations
Spring MVC@RequestMapping, @GetMapping, @PostMapping, @PutMapping, @DeleteMapping, @PatchMapping
JAX-RS@GET, @POST, @PUT, @DELETE, @PATCH, @Path
gRPCRPC methods in classes extending BindableService or annotated with @GrpcService

If the endpoint is not found in the index (e.g., after switching branches or creating a new file), clicking the gutter icon triggers an automatic re-scan of the containing file before navigating.

Dashboard Overview

The API Dashboard consists of two main areas:

  • Left panel — A tree view of all API endpoints organized by module and controller
  • Right panel — Endpoint details with request editor and response viewer

Toolbar Actions

ActionDescription
RefreshRe-scan the project for API endpoints
ExportOpen the export dialog for all endpoints
Collapse AllCollapse all tree nodes
Expand AllExpand all tree nodes
SearchFilter endpoints by name, path, folder, description, or class name

Context Menu

Right-click on any node in the tree to access:

OptionAvailable OnDescription
ExportAny nodeExport selected endpoints to Markdown, Postman, cURL, or HTTP Client
Copy PathEndpointCopy the endpoint path to clipboard
Copy as cURLEndpointCopy a cURL command for the endpoint
Navigate to SourceEndpointJump to the source method in the editor
Reset to DefaultEndpointReset all user edits to the original extracted values
Collapse All / Expand AllFolder / RootCollapse or expand tree nodes

Sending Requests

HTTP Requests

  1. Select an endpoint in the tree
  2. The right panel shows the request details with editable fields
  3. Select or enter a host URL in the host dropdown
  4. Modify parameters, headers, or body as needed
  5. Click Send to execute the request

Editable request fields:

TabDescription
Path ParamsURL path variables (e.g., {id} in /users/{id})
ParamsQuery string parameters
HeadersRequest headers
FormForm data (for application/x-www-form-urlencoded or multipart/form-data)
BodyJSON request body (for application/json)

gRPC Requests

For gRPC endpoints, the dashboard provides:

  • Request Message tab — Edit the gRPC request message as JSON
  • Info tab — View service name, package name, streaming type, and proto file

Response Viewer

After sending a request, the response section displays:

  • Status code — Color-coded (green for success, orange for client errors, red for server errors)
  • Body tab — Response body with JSON formatting and Raw/Formatted toggle
  • Headers tab — Response headers table
  • Copy button — Copy the response body to clipboard

For gRPC responses, gRPC status codes are displayed with descriptive labels.

Auto-Save

All edits to request parameters, headers, body, and host selection are automatically saved and restored when you revisit an endpoint — even across IDE sessions.

Exporting from the Dashboard

You can export endpoints directly from the dashboard:

  1. Right-click an endpoint, folder, or the root node
  2. Select Export > choose a format
  3. Or click the Export toolbar button to export all endpoints

Supported export formats:

FormatHTTPgRPCDescription
MarkdownGenerate Markdown documentation
PostmanExport as Postman collection (file or API upload)
cURLGenerate cURL commands
HTTP ClientGenerate IntelliJ HTTP Client .http files

The export dialog lets you select specific endpoints, choose output options, and for Postman, select a workspace and collection.

API Search Everywhere

Use IntelliJ's Search Everywhere (double-press Shift) to find API endpoints quickly:

  • Search by path: /api/users
  • Search by method prefix: GET /users, POST /api/orders
  • Paste a full URL: http://localhost:8080/api/users/42 — the path is auto-extracted for matching
  • Path variable matching: Searching /api/users/42 matches /api/users/{id}
  • gRPC URL search: grpc://localhost:9090/my.package.UserService/GetUser
  • Search by name, class, or description: Any text is matched across endpoint name, class name, description, and folder

Click a search result to navigate to the source method in the editor.

HTTP Call Hooks

You can customize the request before sending and process the response after receiving using rules:

properties
# Modify request before sending
http.call.before=groovy:logger.info("Calling: " + request.url())

# Process response after receiving
http.call.after=groovy:logger.info("Response: " + response.code())

Released under the Apache-2.0 License.