Endpoints Observability

Endpoints uses trace traffic to automatically discover your API endpoints and display key signals like request volume, latency percentiles, and error rate. By attaching an OpenAPI (Swagger) spec, Middleware matches endpoints to documented operations and adds contract context such as parameters and response definitions.

What You See on the Endpoints Screen

The Endpoints table shows a row per endpoint and includes:

  • Endpoint: method + route
  • Service: where the endpoint was served from
  • Requests: volume in the selected time range
  • Error rate: percentage of failed requests
  • P95 / P99 latency: tail latency based on real traffic
  • API: whether the endpoint is linked to an uploaded OpenAPI spec
Endpoints Table

You can add an OpenAPI spec to Middleware in two ways:

  • Connect to GitHub
  • Upload OpenAPI file (JSON or YAML)

OpenAPI specs typically describe parameters by location (path, query, header, cookie) and define responses by HTTP status codes, which is the same structure Middleware uses when it displays enriched endpoint definitions.

Step 1: Open API List

First, go to APM → Endpoints.

From the Endpoints screen, click View APIs.

Step 2: Add a New API

Click Add New API on the API List page.

Add New API

Step 3: Upload or Connect the Spec

In the "Add New API" panel:

  1. Enter a Name
  2. Choose:
    • Connect to GitHub, or
    • Upload OpenAPI File (JSON/YAML)
Upload OpenAPI Spec

View and Manage an Uploaded API

After adding a spec, it appears in the API List with helpful metadata like:

  • Spec name
  • API group
  • Components count
  • Spec type (OpenAPI)
  • Source (Upload)
  • Schema version

Open an API to See Linked Endpoints

Click the API entry to open the API details view.

In the API details view you can see:

  • Metadata like Name, Version, Source, Format, Last Updated
  • Tags and Components count
  • A list of endpoints tied to that API, with traffic and latency signals
API Details

OpenAPI uses components to store reusable definitions like schemas, parameters, and responses, which is why "components" count is useful context when you upload a spec.

Drill into a Single Endpoint

Click any endpoint to open its detailed view. This is where Endpoint Observability becomes most useful because you get both:

  • Runtime behaviour (traces, spans, latency, errors)
  • API contract context (definition, parameters, response codes) when an OpenAPI is linked

In the header, you'll see the endpoint method and route, plus quick actions like Add API Test and time range controls.

Definition and Info

This tab is where Middleware surfaces the contract-level details from your OpenAPI spec.

What you can do here:

  • Confirm which API spec the endpoint is linked to
  • Read the endpoint description
  • Explore parameters grouped by type
  • Review documented response codes

Parameters

Parameters are listed with:

  • Name
  • Location (path or query)
  • Data type
  • Description

You can filter parameters using:

  • All
  • Path
  • Query
  • Body

And search by parameter name.

OpenAPI formally distinguishes these parameter locations, which is what enables the Path and Query grouping.

Responses

Responses are shown as a list of HTTP status codes (for example 200, 401, 500) with descriptions, taken from the spec's response definitions.

Definition and Info

Deployment and Dependencies

This tab helps you understand how the endpoint behaves across versions of the service.

Deployments

You can see endpoint performance by service version, including:

  • Requests per second
  • P50, P90, P99 latency
  • Error rate
  • Apdex score

This is useful when you want to compare whether a new release made an endpoint faster or slower.

Dependencies

Below deployments, the Dependencies section shows a map view when dependency data is available. If nothing is available for the selected range, you'll see a "No data found" state.

Deployment and Dependencies

Span Summary and Traces

This is the runtime view of the endpoint, driven by trace data.

Span Summary

The Span Summary table breaks down the work happening under the endpoint, grouped by span types such as:

  • HTTP
  • PostgreSQL
  • Internal
  • Function
  • Job
  • Others

For each span entry you can see:

  • Service name
  • Span name
  • Type
  • Average duration
  • Error rate

This helps you quickly spot where time is going, like database calls versus internal processing.

Traces

Below span summary:

  • A trace volume graph over time (Linear or Log)
  • A trace list with key fields like timestamp, duration, method, status code, span kind
Span Summary and Traces

Errors

The Errors tab is the place to focus on failures for the selected endpoint. It's designed for answering "what's breaking here" after you've found an endpoint with elevated error rates on the main list.

Errors

When to Use Endpoints Observability

Endpoints Observability is especially useful when:

  • Monitoring API performance and health
  • Debugging endpoint-level issues
  • Comparing performance across service versions
  • Understanding API contract compliance
  • Investigating error patterns in specific endpoints
  • Onboarding new team members to your API structure

Need assistance or want to learn more about Middleware? Contact our support team at [email protected].