Unleash Metrics API
Register, read, or delete metrics recorded by Unleash.
Register, read, or delete metrics recorded by Unleash.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/unleash-metrics-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.0.3
info:
title: Unleash Admin Addons Metrics API
version: 7.4.1
description: Create, update, and delete [Unleash addons](https://docs.getunleash.io/addons).
servers:
- url: https://app.unleash-instance.example.com
description: Your Unleash instance (replace with your actual URL)
security:
- apiKey: []
- bearerToken: []
tags:
- name: Metrics
description: Register, read, or delete metrics recorded by Unleash.
paths:
/api/admin/metrics/rps:
get:
tags:
- Metrics
operationId: getRequestsPerSecond
summary: Gets Usage Data
description: '**Enterprise feature**
Gets usage data per app/endpoint from a prometheus compatible metrics endpoint'
responses:
'200':
description: requestsPerSecondSegmentedSchema
content:
application/json:
schema:
$ref: '#/components/schemas/requestsPerSecondSegmentedSchema'
/api/admin/metrics/traffic:
get:
tags:
- Metrics
operationId: getTrafficDataUsageForPeriod
summary: Get Aggregated Traffic Data for a Given Time Period.
description: '**Enterprise feature**
Gets traffic usage data for the selected period, either aggregated by day or by month.'
parameters:
- name: grouping
in: query
required: true
schema:
type: string
enum:
- daily
- monthly
example: daily
description: Whether to aggregate the data by month or by day
- name: from
schema:
type: string
format: date
example: '2024-01-01'
description: The starting date of the traffic data usage search in IS:yyyy-MM-dd format
in: query
required: true
- name: to
schema:
type: string
example: '2024-01-31'
format: date
description: The starting date of the traffic data usage search in IS:yyyy-MM-dd format
in: query
required: true
responses:
'200':
description: trafficUsageDataSegmentedCombinedSchema
content:
application/json:
schema:
$ref: '#/components/schemas/trafficUsageDataSegmentedCombinedSchema'
/api/admin/metrics/applications/{appName}:
post:
tags:
- Metrics
operationId: createApplication
summary: Create an Application to Connect Reported Metrics
description: Is used to report usage as well which sdk the application uses
responses:
'202':
description: This response has no body.
'400':
description: The request data does not match what we expect.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: ValidationError
description: The name of the error kind
message:
type: string
example: The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent [].
description: A description of what went wrong.
'401':
description: Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: AuthenticationRequired
description: The name of the error kind
message:
type: string
example: You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.
description: A description of what went wrong.
'403':
description: The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NoAccessError
description: The name of the error kind
message:
type: string
example: You need the "UPDATE_ADDON" permission to perform this action in the "development" environment.
description: A description of what went wrong.
requestBody:
description: createApplicationSchema
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/createApplicationSchema'
parameters:
- name: appName
in: path
required: true
schema:
type: string
delete:
tags:
- Metrics
operationId: deleteApplication
summary: Delete an Application
description: Delete the application specified in the request URL. Returns 200 OK if the application was successfully deleted or if it didn't exist
responses:
'200':
description: This response has no body.
'401':
description: Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: AuthenticationRequired
description: The name of the error kind
message:
type: string
example: You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.
description: A description of what went wrong.
'403':
description: The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NoAccessError
description: The name of the error kind
message:
type: string
example: You need the "UPDATE_ADDON" permission to perform this action in the "development" environment.
description: A description of what went wrong.
parameters:
- name: appName
in: path
required: true
schema:
type: string
get:
tags:
- Metrics
operationId: getApplication
summary: Get Application Data
description: Returns data about the specified application (`appName`). The data contains information on the name of the application, sdkVersion (which sdk reported these metrics, typically `unleash-client-node:3.4.1` or `unleash-client-java:7.1.0`), as well as data about how to display this application in a list.
responses:
'200':
description: applicationSchema
content:
application/json:
schema:
$ref: '#/components/schemas/applicationSchema'
'404':
description: The requested resource was not found.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NotFoundError
description: The name of the error kind
message:
type: string
example: Could not find the addon with ID "12345".
description: A description of what went wrong.
parameters:
- name: appName
in: path
required: true
schema:
type: string
/api/admin/metrics/applications:
get:
tags:
- Metrics
summary: Get All Applications
description: Returns all applications registered with Unleash. Applications can be created via metrics reporting or manual creation
parameters:
- name: query
schema:
type: string
example: first_app
description: The search query for the application name
in: query
- name: offset
schema:
type: string
example: '50'
description: The number of applications to skip when returning a page. By default it is set to 0.
in: query
- name: limit
schema:
type: string
example: '50'
description: The number of applications to return in a page. By default it is set to 1000.
in: query
- name: sortBy
schema:
type: string
example: type
description: The field to sort the results by. By default it is set to "appName".
in: query
- name: sortOrder
schema:
type: string
example: desc
description: The sort order for the sortBy. By default it is det to "asc".
in: query
operationId: getApplications
responses:
'200':
description: applicationsSchema
content:
application/json:
schema:
$ref: '#/components/schemas/applicationsSchema'
/api/admin/metrics/applications/{appName}/overview:
get:
tags:
- Metrics
operationId: getApplicationOverview
summary: Get Application Overview
description: Returns an overview of the specified application (`appName`).
responses:
'200':
description: applicationOverviewSchema
content:
application/json:
schema:
$ref: '#/components/schemas/applicationOverviewSchema'
'404':
description: The requested resource was not found.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NotFoundError
description: The name of the error kind
message:
type: string
example: Could not find the addon with ID "12345".
description: A description of what went wrong.
parameters:
- name: appName
in: path
required: true
schema:
type: string
/api/admin/metrics/instances/{appName}/environment/{environment}:
get:
tags:
- Metrics
operationId: getApplicationEnvironmentInstances
summary: Get Application Environment Instances (last 24h)
description: Returns an overview of the instances for the given `appName` and `environment` that have received traffic in the last 24 hours.
responses:
'200':
description: applicationEnvironmentInstancesSchema
content:
application/json:
schema:
$ref: '#/components/schemas/applicationEnvironmentInstancesSchema'
'404':
description: The requested resource was not found.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NotFoundError
description: The name of the error kind
message:
type: string
example: Could not find the addon with ID "12345".
description: A description of what went wrong.
parameters:
- name: appName
in: path
required: true
schema:
type: string
- name: environment
in: path
required: true
schema:
type: string
/api/admin/metrics/sdks/outdated:
get:
tags:
- Metrics
operationId: getOutdatedSdks
summary: Get Outdated Sdks
description: Returns a list of the outdated SDKS with the applications using them.
responses:
'200':
description: outdatedSdksSchema
content:
application/json:
schema:
$ref: '#/components/schemas/outdatedSdksSchema'
'404':
description: The requested resource was not found.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NotFoundError
description: The name of the error kind
message:
type: string
example: Could not find the addon with ID "12345".
description: A description of what went wrong.
/api/admin/client-metrics/features/{name}/raw:
get:
operationId: getRawFeatureMetrics
tags:
- Metrics
summary: Get Feature Metrics
description: Get usage metrics for a specific feature for the last 48 hours, grouped by hour
responses:
'200':
description: featureMetricsSchema
content:
application/json:
schema:
$ref: '#/components/schemas/featureMetricsSchema'
'401':
description: Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: AuthenticationRequired
description: The name of the error kind
message:
type: string
example: You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.
description: A description of what went wrong.
'403':
description: The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NoAccessError
description: The name of the error kind
message:
type: string
example: You need the "UPDATE_ADDON" permission to perform this action in the "development" environment.
description: A description of what went wrong.
'404':
description: The requested resource was not found.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NotFoundError
description: The name of the error kind
message:
type: string
example: Could not find the addon with ID "12345".
description: A description of what went wrong.
parameters:
- name: name
in: path
required: true
schema:
type: string
/api/admin/client-metrics/features/{name}:
get:
operationId: getFeatureUsageSummary
tags:
- Metrics
summary: Last Hour of Usage and a List of Applications That Have Reported Seeing This Feature Flag
description: Separate counts for yes (enabled), no (disabled), as well as how many times each variant was selected during the last hour
responses:
'200':
description: featureUsageSchema
content:
application/json:
schema:
$ref: '#/components/schemas/featureUsageSchema'
'401':
description: Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: AuthenticationRequired
description: The name of the error kind
message:
type: string
example: You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.
description: A description of what went wrong.
'403':
description: The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NoAccessError
description: The name of the error kind
message:
type: string
example: You need the "UPDATE_ADDON" permission to perform this action in the "development" environment.
description: A description of what went wrong.
'404':
description: The requested resource was not found.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NotFoundError
description: The name of the error kind
message:
type: string
example: Could not find the addon with ID "12345".
description: A description of what went wrong.
parameters:
- name: name
in: path
required: true
schema:
type: string
/api/admin/custom-metrics:
get:
tags:
- Metrics
summary: Get Stored Custom Metrics
description: Retrieves the stored custom metrics data.
operationId: getCustomMetrics
responses:
'200':
description: This response has no body.
/api/admin/custom-metrics/prometheus:
get:
tags:
- Metrics
summary: Get Metrics in Prometheus Format
description: Exposes all custom metrics in Prometheus text format for scraping.
operationId: getPrometheusMetrics
responses:
'200':
description: Prometheus formatted metrics
content:
text/plain:
schema:
type: string
components:
schemas:
trafficUsageDataSegmentedCombinedSchema:
type: object
description: Contains the recorded data usage for each API path, segmented by day/month and type of traffic
required:
- dateRange
- apiData
- grouping
additionalProperties: false
properties:
grouping:
type: string
enum:
- monthly
- daily
description: Whether the data is aggregated by month or by day.
example: monthly
dateRange:
type: object
required:
- from
- to
additionalProperties: false
description: The date range there is data for. The range is inclusive and goes from the start of the `from` date to the end of the `to` date
properties:
from:
type: string
format: date
example: '2023-04-01'
description: The start of the dateRange
to:
type: string
format: date
example: '2023-04-30'
description: The end of the dateRange
apiData:
type: array
description: Contains the recorded daily/monthly data usage for each API path
items:
type: object
required:
- apiPath
- dataPoints
additionalProperties: false
properties:
apiPath:
type: string
example: /api/client
description: The API path
dataPoints:
type: array
description: The recorded data points for the API path
items:
type: object
required:
- period
- trafficTypes
additionalProperties: false
properties:
period:
type: string
pattern: ^\d{4}-\d{2}(-\d{2})?$
example: '2023-04-01'
description: The date of the data point. Formatted as a full date (e.g. 2023-04-01) if the data is aggregated by day or as a month (e.g. 2023-04) if the data is aggregated by month.
trafficTypes:
type: array
items:
type: object
required:
- group
- count
additionalProperties: false
properties:
group:
type: string
example: successful-requests
description: The type of traffic
count:
type: integer
minimum: 0
example: 42
description: The number of requests
description: The recorded traffic types for the data point
applicationOverviewEnvironmentSchema:
type: object
description: Data about an application environment
additionalProperties: false
required:
- name
- instanceCount
- sdks
- frontendSdks
- backendSdks
- lastSeen
- issues
properties:
name:
description: Name of the application environment
type: string
example: production
instanceCount:
description: The number of instances of the application environment
type: number
example: 5
sdks:
description: SDKs used in the application environment
type: array
items:
type: string
example:
- unleash-client-node:5.4.0
- unleash-client-node:5.3.0
frontendSdks:
description: Frontend SDKs used in the application environment
type: array
items:
type: string
example:
- unleash-client-js:3.7.5
backendSdks:
description: Backend SDKs used in the application environment
type: array
items:
type: string
example:
- unleash-client-node:5.4.0
lastSeen:
type: string
nullable: true
format: date-time
example: '2023-04-19T08:15:14.000Z'
description: The last time the application environment was seen
issues:
description: This list of issues that might be wrong with the application
$ref: '#/components/schemas/applicationEnvironmentIssuesSchema'
featureUsageSchema:
type: object
additionalProperties: false
description: How many applications have seen this feature flag, as well as how this feature was evaluated the last hour
required:
- version
- maturity
- featureName
- lastHourUsage
- seenApplications
properties:
version:
description: The version of this schema
type: integer
minimum: 1
maturity:
description: The maturity level of this API (alpha, beta, stable, deprecated)
type: string
example: stable
featureName:
description: The name of the feature
type: string
example: my.special.feature
lastHourUsage:
description: Last hour statistics. Accumulated per feature per environment. Contains counts for evaluations to true (yes) and to false (no)
type: array
items:
$ref: '#/components/schemas/featureEnvironmentMetricsSchema'
seenApplications:
description: A list of applications seen using this feature
type: array
items:
type: string
example:
- accounting
- billing
- booking
featureMetricsSchema:
type: object
additionalProperties: false
required:
- version
- maturity
- data
description: A batch of feature metrics
properties:
version:
description: The version of this schema
type: integer
minimum: 1
maturity:
description: The maturity level of this API (alpha, beta, stable, deprecated)
type: string
example: stable
data:
description: Metrics gathered per environment
type: array
items:
$ref: '#/components/schemas/featureEnvironmentMetricsSchema'
applicationsSchema:
additionalProperties: false
description: An object containing a list of applications that have connected to Unleash via an SDK.
required:
- total
- applications
type: object
properties:
total:
type: integer
example: 50
description: The total number of project applications.
applications:
description: The list of applications that have connected to this Unleash instance.
type: array
items:
$ref: '#/components/schemas/applicationSchema'
applicationEnvironmentInstancesSchema:
type: object
description: Data about an application environment instances that are connected to Unleash via an SDK.
additionalProperties: false
required:
- instances
properties:
instances:
type: array
description: A list of instances
items:
type: object
required:
- instanceId
additionalProperties: false
properties:
instanceId:
description: 'A unique identifier identifying the instance of the application running the SDK. Often changes based on execution environment. For instance: two pods in Kubernetes will have two different instanceIds'
type: string
example: b77f3d13-5f48-4a7b-a3f4-a449b97ce43a
sdkVersion:
type: string
nullable: true
description: An SDK version identifier. Usually formatted as "unleash-client-<language>:<version>"
example: unleash-client-java:7.0.0
clientIp:
type: string
description: An IP address identifying the instance of the application running the SDK
example: 192.168.0.1
nullable: true
lastSeen:
type: string
format: date-time
example: '2023-04-19T08:15:14.000Z'
description: The last time the application environment instance was seen
createApplicationSchema:
type: object
description: Reported application information from Unleash SDKs
properties:
strategies:
description: Which [strategies](https://docs.getunleash.io/concepts#activation-strategies) the application has loaded. Useful when trying to figure out if your [custom strategy](https://docs.getunleash.io/concepts/activation-strategies#custom-strategies) has been loaded in the SDK
type: array
items:
type: string
example:
- standard
- gradualRollout
- mySpecialCustomStrategy
url:
description: A link to reference the application reporting the metrics. Could for instance be a GitHub link to the repository of the application
type: string
example: https://github.com/Unleash/unleash-proxy-client-js
color:
description: Css color to be used to color the application's entry in the application list
type: string
example: red
icon:
description: An URL to an icon file to be used for the applications's entry in the application list
type: string
example: https://github.com/favicon.ico
requestsPerSecondSchema:
type: object
description: Statistics for usage of Unleash, formatted so it can easily be used in a graph
properties:
status:
type: string
description: Whether the query against prometheus succeeded or failed
enum:
- success
- failure
example: success
data:
type: object
description: The query result from prometheus
properties:
resultType:
type: string
# --- truncated at 32 KB (42 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/unleash/refs/heads/main/openapi/unleash-metrics-api-openapi.yml