mirror of
https://github.com/prometheus/prometheus.git
synced 2026-02-13 11:51:03 +01:00
An oversight on the OpenAPI specification; which did not include stats. Signed-off-by: Julien Pivotto <291750+roidelapluie@users.noreply.github.com>
4505 lines
188 KiB
YAML
4505 lines
188 KiB
YAML
openapi: 3.2.0
|
|
info:
|
|
title: Prometheus API
|
|
description: Prometheus is an Open-Source monitoring system with a dimensional data model, flexible query language, efficient time series database and modern alerting approach.
|
|
contact:
|
|
name: Prometheus Community
|
|
url: https://prometheus.io/community/
|
|
version: 0.0.1-undefined
|
|
servers:
|
|
- url: /api/v1
|
|
paths:
|
|
/query:
|
|
get:
|
|
tags:
|
|
- query
|
|
summary: Evaluate an instant query
|
|
operationId: query
|
|
parameters:
|
|
- name: limit
|
|
in: query
|
|
description: The maximum number of metrics to return.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
examples:
|
|
example:
|
|
value: 100
|
|
- name: time
|
|
in: query
|
|
description: The evaluation timestamp (optional, defaults to current time).
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T13:37:00Z"
|
|
epoch:
|
|
value: 1767361020
|
|
- name: query
|
|
in: query
|
|
description: The PromQL query to execute.
|
|
required: true
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: up
|
|
- name: timeout
|
|
in: query
|
|
description: Evaluation timeout. Optional. Defaults to and is capped by the value of the -query.timeout flag.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: 30s
|
|
- name: lookback_delta
|
|
in: query
|
|
description: Override the lookback period for this query. Optional.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: 5m
|
|
- name: stats
|
|
in: query
|
|
description: When provided, include query statistics in the response. The special value 'all' enables more comprehensive statistics.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: all
|
|
responses:
|
|
"200":
|
|
description: Query executed successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/QueryOutputBody'
|
|
examples:
|
|
vectorResult:
|
|
summary: 'Instant vector query: up'
|
|
value: {"status": "success", "data": {"resultType": "vector", "result": [{"metric": {"__name__": "up", "instance": "demo.prometheus.io:9090", "job": "prometheus"}, "value": [1767436620, "1"]}, {"metric": {"__name__": "up", "env": "demo", "instance": "demo.prometheus.io:9093", "job": "alertmanager"}, "value": [1767436620, "1"]}]}}
|
|
scalarResult:
|
|
summary: 'Scalar query: scalar(42)'
|
|
value:
|
|
data:
|
|
result:
|
|
- 1767436620
|
|
- "42"
|
|
resultType: scalar
|
|
status: success
|
|
matrixResult:
|
|
summary: 'Range vector query: up[5m]'
|
|
value: {"status": "success", "data": {"resultType": "matrix", "result": [{"metric": {"__name__": "up", "instance": "demo.prometheus.io:9090", "job": "prometheus"}, "values": [[1767436320, "1"], [1767436620, "1"]]}]}}
|
|
default:
|
|
description: Error executing query.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
post:
|
|
tags:
|
|
- query
|
|
summary: Evaluate an instant query
|
|
operationId: query-post
|
|
requestBody:
|
|
description: Submit an instant query. This endpoint accepts the same parameters as the GET version.
|
|
content:
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/QueryPostInputBody'
|
|
examples:
|
|
simpleQuery:
|
|
summary: Simple instant query
|
|
value:
|
|
query: up
|
|
queryWithTime:
|
|
summary: Query with specific timestamp
|
|
value:
|
|
query: up{job="prometheus"}
|
|
time: "2026-01-02T13:37:00.000Z"
|
|
queryWithLimit:
|
|
summary: Query with limit and statistics
|
|
value:
|
|
limit: 100
|
|
query: rate(prometheus_http_requests_total{handler="/api/v1/query"}[5m])
|
|
stats: all
|
|
required: true
|
|
responses:
|
|
"200":
|
|
description: Instant query executed successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/QueryOutputBody'
|
|
examples:
|
|
vectorResult:
|
|
summary: 'Instant vector query: up'
|
|
value: {"status": "success", "data": {"resultType": "vector", "result": [{"metric": {"__name__": "up", "instance": "demo.prometheus.io:9090", "job": "prometheus"}, "value": [1767436620, "1"]}, {"metric": {"__name__": "up", "env": "demo", "instance": "demo.prometheus.io:9093", "job": "alertmanager"}, "value": [1767436620, "1"]}]}}
|
|
scalarResult:
|
|
summary: 'Scalar query: scalar(42)'
|
|
value:
|
|
data:
|
|
result:
|
|
- 1767436620
|
|
- "42"
|
|
resultType: scalar
|
|
status: success
|
|
matrixResult:
|
|
summary: 'Range vector query: up[5m]'
|
|
value: {"status": "success", "data": {"resultType": "matrix", "result": [{"metric": {"__name__": "up", "instance": "demo.prometheus.io:9090", "job": "prometheus"}, "values": [[1767436320, "1"], [1767436620, "1"]]}]}}
|
|
default:
|
|
description: Error executing instant query.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/query_range:
|
|
get:
|
|
tags:
|
|
- query
|
|
summary: Evaluate a range query
|
|
operationId: query-range
|
|
parameters:
|
|
- name: limit
|
|
in: query
|
|
description: The maximum number of metrics to return.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
examples:
|
|
example:
|
|
value: 100
|
|
- name: start
|
|
in: query
|
|
description: The start time of the query.
|
|
required: true
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T12:37:00Z"
|
|
epoch:
|
|
value: 1767357420
|
|
- name: end
|
|
in: query
|
|
description: The end time of the query.
|
|
required: true
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T13:37:00Z"
|
|
epoch:
|
|
value: 1767361020
|
|
- name: step
|
|
in: query
|
|
description: The step size of the query.
|
|
required: true
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: 15s
|
|
- name: query
|
|
in: query
|
|
description: The query to execute.
|
|
required: true
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: rate(prometheus_http_requests_total{handler="/api/v1/query"}[5m])
|
|
- name: timeout
|
|
in: query
|
|
description: Evaluation timeout. Optional. Defaults to and is capped by the value of the -query.timeout flag.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: 30s
|
|
- name: lookback_delta
|
|
in: query
|
|
description: Override the lookback period for this query. Optional.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: 5m
|
|
- name: stats
|
|
in: query
|
|
description: When provided, include query statistics in the response. The special value 'all' enables more comprehensive statistics.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: all
|
|
responses:
|
|
"200":
|
|
description: Range query executed successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/QueryRangeOutputBody'
|
|
examples:
|
|
matrixResult:
|
|
summary: 'Range query: rate(prometheus_http_requests_total[5m])'
|
|
value: {"status": "success", "data": {"resultType": "matrix", "result": [{"metric": {"__name__": "up", "instance": "demo.prometheus.io:9090", "job": "prometheus"}, "values": [[1767433020, "1"], [1767434820, "1"], [1767436620, "1"]]}]}}
|
|
default:
|
|
description: Error executing range query.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
post:
|
|
tags:
|
|
- query
|
|
summary: Evaluate a range query
|
|
operationId: query-range-post
|
|
requestBody:
|
|
description: Submit a range query. This endpoint accepts the same parameters as the GET version.
|
|
content:
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/QueryRangePostInputBody'
|
|
examples:
|
|
basicRange:
|
|
summary: Basic range query
|
|
value:
|
|
end: "2026-01-02T13:37:00.000Z"
|
|
query: up
|
|
start: "2026-01-02T12:37:00.000Z"
|
|
step: 15s
|
|
rateQuery:
|
|
summary: Rate calculation over time range
|
|
value:
|
|
end: "2026-01-02T13:37:00.000Z"
|
|
query: rate(prometheus_http_requests_total{handler="/api/v1/query"}[5m])
|
|
start: "2026-01-02T12:37:00.000Z"
|
|
step: 30s
|
|
timeout: 30s
|
|
required: true
|
|
responses:
|
|
"200":
|
|
description: Range query executed successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/QueryRangeOutputBody'
|
|
examples:
|
|
matrixResult:
|
|
summary: 'Range query: rate(prometheus_http_requests_total[5m])'
|
|
value: {"status": "success", "data": {"resultType": "matrix", "result": [{"metric": {"__name__": "up", "instance": "demo.prometheus.io:9090", "job": "prometheus"}, "values": [[1767433020, "1"], [1767434820, "1"], [1767436620, "1"]]}]}}
|
|
default:
|
|
description: Error executing range query.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/query_exemplars:
|
|
get:
|
|
tags:
|
|
- query
|
|
summary: Query exemplars
|
|
operationId: query-exemplars
|
|
parameters:
|
|
- name: start
|
|
in: query
|
|
description: Start timestamp for exemplars query.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T12:37:00Z"
|
|
epoch:
|
|
value: 1767357420
|
|
- name: end
|
|
in: query
|
|
description: End timestamp for exemplars query.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T13:37:00Z"
|
|
epoch:
|
|
value: 1767361020
|
|
- name: query
|
|
in: query
|
|
description: PromQL query to extract exemplars for.
|
|
required: true
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: prometheus_http_requests_total
|
|
responses:
|
|
"200":
|
|
description: Exemplars retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/QueryExemplarsOutputBody'
|
|
examples:
|
|
exemplarsResult:
|
|
summary: Exemplars for a metric with trace IDs
|
|
value:
|
|
data:
|
|
- exemplars:
|
|
- labels:
|
|
traceID: abc123def456
|
|
timestamp: 1.689956451781e+09
|
|
value: "1.5"
|
|
seriesLabels:
|
|
__name__: http_requests_total
|
|
job: api-server
|
|
method: GET
|
|
status: success
|
|
default:
|
|
description: Error retrieving exemplars.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
post:
|
|
tags:
|
|
- query
|
|
summary: Query exemplars
|
|
operationId: query-exemplars-post
|
|
requestBody:
|
|
description: Submit an exemplars query. This endpoint accepts the same parameters as the GET version.
|
|
content:
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/QueryExemplarsPostInputBody'
|
|
examples:
|
|
basicExemplar:
|
|
summary: Query exemplars for a metric
|
|
value:
|
|
query: prometheus_http_requests_total
|
|
exemplarWithTimeRange:
|
|
summary: Exemplars within specific time range
|
|
value:
|
|
end: "2026-01-02T13:37:00.000Z"
|
|
query: prometheus_http_requests_total{job="prometheus"}
|
|
start: "2026-01-02T12:37:00.000Z"
|
|
required: true
|
|
responses:
|
|
"200":
|
|
description: Exemplars query completed successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/QueryExemplarsOutputBody'
|
|
examples:
|
|
exemplarsResult:
|
|
summary: Exemplars for a metric with trace IDs
|
|
value:
|
|
data:
|
|
- exemplars:
|
|
- labels:
|
|
traceID: abc123def456
|
|
timestamp: 1.689956451781e+09
|
|
value: "1.5"
|
|
seriesLabels:
|
|
__name__: http_requests_total
|
|
job: api-server
|
|
method: GET
|
|
status: success
|
|
default:
|
|
description: Error processing exemplars query.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/format_query:
|
|
get:
|
|
tags:
|
|
- query
|
|
summary: Format a PromQL query
|
|
operationId: format-query
|
|
parameters:
|
|
- name: query
|
|
in: query
|
|
description: PromQL expression to format.
|
|
required: true
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: sum(rate(http_requests_total[5m])) by (job)
|
|
responses:
|
|
"200":
|
|
description: Query formatted successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/FormatQueryOutputBody'
|
|
examples:
|
|
formattedQuery:
|
|
summary: Formatted PromQL query
|
|
value:
|
|
data: sum by(job, status) (rate(http_requests_total[5m]))
|
|
status: success
|
|
default:
|
|
description: Error formatting query.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
post:
|
|
tags:
|
|
- query
|
|
summary: Format a PromQL query
|
|
operationId: format-query-post
|
|
requestBody:
|
|
description: Submit a PromQL query to format. This endpoint accepts the same parameters as the GET version.
|
|
content:
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/FormatQueryPostInputBody'
|
|
examples:
|
|
simpleFormat:
|
|
summary: Format a simple query
|
|
value:
|
|
query: up{job="prometheus"}
|
|
complexFormat:
|
|
summary: Format a complex query
|
|
value:
|
|
query: sum(rate(http_requests_total[5m])) by (job, status)
|
|
required: true
|
|
responses:
|
|
"200":
|
|
description: Query formatting completed successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/FormatQueryOutputBody'
|
|
examples:
|
|
formattedQuery:
|
|
summary: Formatted PromQL query
|
|
value:
|
|
data: sum by(job, status) (rate(http_requests_total[5m]))
|
|
status: success
|
|
default:
|
|
description: Error formatting query.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/parse_query:
|
|
get:
|
|
tags:
|
|
- query
|
|
summary: Parse a PromQL query
|
|
operationId: parse-query
|
|
parameters:
|
|
- name: query
|
|
in: query
|
|
description: PromQL expression to parse.
|
|
required: true
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: up{job="prometheus"}
|
|
responses:
|
|
"200":
|
|
description: Query parsed successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ParseQueryOutputBody'
|
|
examples:
|
|
parsedQuery:
|
|
summary: Parsed PromQL expression tree
|
|
value:
|
|
data:
|
|
resultType: vector
|
|
status: success
|
|
default:
|
|
description: Error parsing query.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
post:
|
|
tags:
|
|
- query
|
|
summary: Parse a PromQL query
|
|
operationId: parse-query-post
|
|
requestBody:
|
|
description: Submit a PromQL query to parse. This endpoint accepts the same parameters as the GET version.
|
|
content:
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/ParseQueryPostInputBody'
|
|
examples:
|
|
simpleParse:
|
|
summary: Parse a simple query
|
|
value:
|
|
query: up
|
|
complexParse:
|
|
summary: Parse a complex query
|
|
value:
|
|
query: rate(http_requests_total{job="api"}[5m])
|
|
required: true
|
|
responses:
|
|
"200":
|
|
description: Query parsed successfully via POST.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ParseQueryOutputBody'
|
|
examples:
|
|
parsedQuery:
|
|
summary: Parsed PromQL expression tree
|
|
value:
|
|
data:
|
|
resultType: vector
|
|
status: success
|
|
default:
|
|
description: Error parsing query via POST.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/labels:
|
|
get:
|
|
tags:
|
|
- labels
|
|
summary: Get label names
|
|
operationId: labels
|
|
parameters:
|
|
- name: start
|
|
in: query
|
|
description: Start timestamp for label names query.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T12:37:00Z"
|
|
epoch:
|
|
value: 1767357420
|
|
- name: end
|
|
in: query
|
|
description: End timestamp for label names query.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T13:37:00Z"
|
|
epoch:
|
|
value: 1767361020
|
|
- name: match[]
|
|
in: query
|
|
description: Series selector argument.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value:
|
|
- '{job="prometheus"}'
|
|
- name: limit
|
|
in: query
|
|
description: Maximum number of label names to return.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
examples:
|
|
example:
|
|
value: 100
|
|
responses:
|
|
"200":
|
|
description: Label names retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/LabelsOutputBody'
|
|
examples:
|
|
labelNames:
|
|
summary: List of label names
|
|
value:
|
|
data:
|
|
- __name__
|
|
- active
|
|
- address
|
|
- alertmanager
|
|
- alertname
|
|
- alertstate
|
|
- backend
|
|
- branch
|
|
- code
|
|
- collector
|
|
- component
|
|
- device
|
|
- env
|
|
- endpoint
|
|
- fstype
|
|
- handler
|
|
- instance
|
|
- job
|
|
- le
|
|
- method
|
|
- mode
|
|
- name
|
|
status: success
|
|
default:
|
|
description: Error retrieving label names.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
post:
|
|
tags:
|
|
- labels
|
|
summary: Get label names
|
|
operationId: labels-post
|
|
requestBody:
|
|
description: Submit a label names query. This endpoint accepts the same parameters as the GET version.
|
|
content:
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/LabelsPostInputBody'
|
|
examples:
|
|
allLabels:
|
|
summary: Get all label names
|
|
value: {}
|
|
labelsWithTimeRange:
|
|
summary: Get label names within time range
|
|
value:
|
|
end: "2026-01-02T13:37:00.000Z"
|
|
start: "2026-01-02T12:37:00.000Z"
|
|
labelsWithMatch:
|
|
summary: Get label names matching series selector
|
|
value:
|
|
match[]:
|
|
- up
|
|
- process_start_time_seconds{job="prometheus"}
|
|
required: true
|
|
responses:
|
|
"200":
|
|
description: Label names retrieved successfully via POST.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/LabelsOutputBody'
|
|
examples:
|
|
labelNames:
|
|
summary: List of label names
|
|
value:
|
|
data:
|
|
- __name__
|
|
- active
|
|
- address
|
|
- alertmanager
|
|
- alertname
|
|
- alertstate
|
|
- backend
|
|
- branch
|
|
- code
|
|
- collector
|
|
- component
|
|
- device
|
|
- env
|
|
- endpoint
|
|
- fstype
|
|
- handler
|
|
- instance
|
|
- job
|
|
- le
|
|
- method
|
|
- mode
|
|
- name
|
|
status: success
|
|
default:
|
|
description: Error retrieving label names via POST.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/label/{name}/values:
|
|
get:
|
|
tags:
|
|
- labels
|
|
summary: Get label values
|
|
operationId: label-values
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
description: Label name.
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: start
|
|
in: query
|
|
description: Start timestamp for label values query.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T12:37:00Z"
|
|
epoch:
|
|
value: 1767357420
|
|
- name: end
|
|
in: query
|
|
description: End timestamp for label values query.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T13:37:00Z"
|
|
epoch:
|
|
value: 1767361020
|
|
- name: match[]
|
|
in: query
|
|
description: Series selector argument.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value:
|
|
- '{job="prometheus"}'
|
|
- name: limit
|
|
in: query
|
|
description: Maximum number of label values to return.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
examples:
|
|
example:
|
|
value: 1000
|
|
responses:
|
|
"200":
|
|
description: Label values retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/LabelValuesOutputBody'
|
|
examples:
|
|
labelValues:
|
|
summary: List of values for a label
|
|
value:
|
|
data:
|
|
- alertmanager
|
|
- blackbox
|
|
- caddy
|
|
- cadvisor
|
|
- grafana
|
|
- node
|
|
- prometheus
|
|
- random
|
|
status: success
|
|
default:
|
|
description: Error retrieving label values.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/series:
|
|
get:
|
|
tags:
|
|
- series
|
|
summary: Find series by label matchers
|
|
operationId: series
|
|
parameters:
|
|
- name: start
|
|
in: query
|
|
description: Start timestamp for series query.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T12:37:00Z"
|
|
epoch:
|
|
value: 1767357420
|
|
- name: end
|
|
in: query
|
|
description: End timestamp for series query.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T13:37:00Z"
|
|
epoch:
|
|
value: 1767361020
|
|
- name: match[]
|
|
in: query
|
|
description: Series selector argument.
|
|
required: true
|
|
explode: false
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value:
|
|
- '{job="prometheus"}'
|
|
- name: limit
|
|
in: query
|
|
description: Maximum number of series to return.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
examples:
|
|
example:
|
|
value: 100
|
|
responses:
|
|
"200":
|
|
description: Series returned matching the provided label matchers.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/SeriesOutputBody'
|
|
examples:
|
|
seriesList:
|
|
summary: List of series matching the selector
|
|
value:
|
|
data:
|
|
- __name__: up
|
|
env: demo
|
|
instance: demo.prometheus.io:8080
|
|
job: cadvisor
|
|
- __name__: up
|
|
env: demo
|
|
instance: demo.prometheus.io:9093
|
|
job: alertmanager
|
|
- __name__: up
|
|
env: demo
|
|
instance: demo.prometheus.io:9100
|
|
job: node
|
|
- __name__: up
|
|
instance: demo.prometheus.io:3000
|
|
job: grafana
|
|
- __name__: up
|
|
instance: demo.prometheus.io:8996
|
|
job: random
|
|
status: success
|
|
default:
|
|
description: Error retrieving series.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
post:
|
|
tags:
|
|
- series
|
|
summary: Find series by label matchers
|
|
operationId: series-post
|
|
requestBody:
|
|
description: Submit a series query. This endpoint accepts the same parameters as the GET version.
|
|
content:
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/SeriesPostInputBody'
|
|
examples:
|
|
seriesMatch:
|
|
summary: Find series by label matchers
|
|
value:
|
|
match[]:
|
|
- up
|
|
seriesWithTimeRange:
|
|
summary: Find series with time range
|
|
value:
|
|
end: "2026-01-02T13:37:00.000Z"
|
|
match[]:
|
|
- up
|
|
- process_cpu_seconds_total{job="prometheus"}
|
|
start: "2026-01-02T12:37:00.000Z"
|
|
required: true
|
|
responses:
|
|
"200":
|
|
description: Series returned matching the provided label matchers via POST.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/SeriesOutputBody'
|
|
examples:
|
|
seriesList:
|
|
summary: List of series matching the selector
|
|
value:
|
|
data:
|
|
- __name__: up
|
|
env: demo
|
|
instance: demo.prometheus.io:8080
|
|
job: cadvisor
|
|
- __name__: up
|
|
env: demo
|
|
instance: demo.prometheus.io:9093
|
|
job: alertmanager
|
|
- __name__: up
|
|
env: demo
|
|
instance: demo.prometheus.io:9100
|
|
job: node
|
|
- __name__: up
|
|
instance: demo.prometheus.io:3000
|
|
job: grafana
|
|
- __name__: up
|
|
instance: demo.prometheus.io:8996
|
|
job: random
|
|
status: success
|
|
default:
|
|
description: Error retrieving series via POST.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
delete:
|
|
tags:
|
|
- series
|
|
summary: Delete series
|
|
description: 'Delete series matching selectors. Note: This is deprecated, use POST /admin/tsdb/delete_series instead.'
|
|
operationId: delete-series
|
|
responses:
|
|
"200":
|
|
description: Series marked for deletion.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/SeriesDeleteOutputBody'
|
|
examples:
|
|
seriesDeleted:
|
|
summary: Series marked for deletion
|
|
value:
|
|
status: success
|
|
default:
|
|
description: Error deleting series.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/metadata:
|
|
get:
|
|
tags:
|
|
- metadata
|
|
summary: Get metadata
|
|
operationId: get-metadata
|
|
parameters:
|
|
- name: limit
|
|
in: query
|
|
description: The maximum number of metrics to return.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
examples:
|
|
example:
|
|
value: 100
|
|
- name: limit_per_metric
|
|
in: query
|
|
description: The maximum number of metadata entries per metric.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
examples:
|
|
example:
|
|
value: 10
|
|
- name: metric
|
|
in: query
|
|
description: A metric name to filter metadata for.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: http_requests_total
|
|
responses:
|
|
"200":
|
|
description: Metric metadata retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/MetadataOutputBody'
|
|
examples:
|
|
metricMetadata:
|
|
summary: Metadata for metrics
|
|
value:
|
|
data:
|
|
go_gc_stack_starting_size_bytes:
|
|
- help: The stack size of new goroutines. Sourced from /gc/stack/starting-size:bytes.
|
|
type: gauge
|
|
unit: ""
|
|
prometheus_rule_group_iterations_missed_total:
|
|
- help: The total number of rule group evaluations missed due to slow rule group evaluation.
|
|
type: counter
|
|
unit: ""
|
|
prometheus_sd_updates_total:
|
|
- help: Total number of update events sent to the SD consumers.
|
|
type: counter
|
|
unit: ""
|
|
status: success
|
|
default:
|
|
description: Error retrieving metadata.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/scrape_pools:
|
|
get:
|
|
tags:
|
|
- targets
|
|
summary: Get scrape pools
|
|
operationId: get-scrape-pools
|
|
responses:
|
|
"200":
|
|
description: Scrape pools retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ScrapePoolsOutputBody'
|
|
examples:
|
|
scrapePoolsList:
|
|
summary: List of scrape pool names
|
|
value:
|
|
data:
|
|
scrapePools:
|
|
- alertmanager
|
|
- blackbox
|
|
- caddy
|
|
- cadvisor
|
|
- grafana
|
|
- node
|
|
- prometheus
|
|
- random
|
|
status: success
|
|
default:
|
|
description: Error retrieving scrape pools.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/targets:
|
|
get:
|
|
tags:
|
|
- targets
|
|
summary: Get targets
|
|
operationId: get-targets
|
|
parameters:
|
|
- name: scrapePool
|
|
in: query
|
|
description: Filter targets by scrape pool name.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: prometheus
|
|
- name: state
|
|
in: query
|
|
description: 'Filter by state: active, dropped, or any.'
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: active
|
|
responses:
|
|
"200":
|
|
description: Target discovery information retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/TargetsOutputBody'
|
|
examples:
|
|
targetsList:
|
|
summary: Active and dropped targets
|
|
value:
|
|
data:
|
|
activeTargets:
|
|
- discoveredLabels:
|
|
__address__: demo.prometheus.io:9093
|
|
__meta_filepath: /etc/prometheus/file_sd/alertmanager.yml
|
|
__metrics_path__: /metrics
|
|
__scheme__: http
|
|
env: demo
|
|
job: alertmanager
|
|
globalUrl: http://demo.prometheus.io:9093/metrics
|
|
health: up
|
|
labels:
|
|
env: demo
|
|
instance: demo.prometheus.io:9093
|
|
job: alertmanager
|
|
lastError: ""
|
|
lastScrape: "2026-01-02T13:36:40.200Z"
|
|
lastScrapeDuration: 0.006576866
|
|
scrapeInterval: 15s
|
|
scrapePool: alertmanager
|
|
scrapeTimeout: 10s
|
|
scrapeUrl: http://demo.prometheus.io:9093/metrics
|
|
droppedTargetCounts:
|
|
alertmanager: 0
|
|
blackbox: 0
|
|
caddy: 0
|
|
cadvisor: 0
|
|
grafana: 0
|
|
node: 0
|
|
prometheus: 0
|
|
random: 0
|
|
droppedTargets: []
|
|
status: success
|
|
default:
|
|
description: Error retrieving targets.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/targets/metadata:
|
|
get:
|
|
tags:
|
|
- targets
|
|
summary: Get targets metadata
|
|
operationId: get-targets-metadata
|
|
parameters:
|
|
- name: match_target
|
|
in: query
|
|
description: Label selector to filter targets.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: '{job="prometheus"}'
|
|
- name: metric
|
|
in: query
|
|
description: Metric name to retrieve metadata for.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: http_requests_total
|
|
- name: limit
|
|
in: query
|
|
description: Maximum number of targets to match.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
examples:
|
|
example:
|
|
value: 10
|
|
responses:
|
|
"200":
|
|
description: Target metadata retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/TargetMetadataOutputBody'
|
|
examples:
|
|
targetMetadata:
|
|
summary: Metadata for targets
|
|
value:
|
|
data:
|
|
- help: The current health status of the target
|
|
metric: up
|
|
target:
|
|
instance: localhost:9090
|
|
job: prometheus
|
|
type: gauge
|
|
unit: ""
|
|
status: success
|
|
default:
|
|
description: Error retrieving target metadata.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/targets/relabel_steps:
|
|
get:
|
|
tags:
|
|
- targets
|
|
summary: Get targets relabel steps
|
|
operationId: get-targets-relabel-steps
|
|
parameters:
|
|
- name: scrapePool
|
|
in: query
|
|
description: Name of the scrape pool.
|
|
required: true
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: prometheus
|
|
- name: labels
|
|
in: query
|
|
description: JSON-encoded labels to apply relabel rules to.
|
|
required: true
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: '{"__address__":"localhost:9090","job":"prometheus"}'
|
|
responses:
|
|
"200":
|
|
description: Relabel steps retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/TargetRelabelStepsOutputBody'
|
|
examples:
|
|
relabelSteps:
|
|
summary: Relabel steps for a target
|
|
value:
|
|
data:
|
|
steps:
|
|
- keep: true
|
|
output:
|
|
__address__: localhost:9090
|
|
instance: localhost:9090
|
|
job: prometheus
|
|
rule:
|
|
action: replace
|
|
regex: (.*)
|
|
replacement: $1
|
|
source_labels:
|
|
- __address__
|
|
target_label: instance
|
|
status: success
|
|
default:
|
|
description: Error retrieving relabel steps.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/rules:
|
|
get:
|
|
tags:
|
|
- rules
|
|
summary: Get alerting and recording rules
|
|
operationId: rules
|
|
parameters:
|
|
- name: type
|
|
in: query
|
|
description: 'Filter by rule type: alert or record.'
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: alert
|
|
- name: rule_name[]
|
|
in: query
|
|
description: Filter by rule name.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value:
|
|
- HighErrorRate
|
|
- name: rule_group[]
|
|
in: query
|
|
description: Filter by rule group name.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value:
|
|
- example_alerts
|
|
- name: file[]
|
|
in: query
|
|
description: Filter by file path.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value:
|
|
- /etc/prometheus/rules.yml
|
|
- name: match[]
|
|
in: query
|
|
description: Label matchers to filter rules.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value:
|
|
- '{severity="critical"}'
|
|
- name: exclude_alerts
|
|
in: query
|
|
description: Exclude active alerts from response.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: "false"
|
|
- name: group_limit
|
|
in: query
|
|
description: Maximum number of rule groups to return.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
examples:
|
|
example:
|
|
value: 100
|
|
- name: group_next_token
|
|
in: query
|
|
description: Pagination token for next page.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: abc123
|
|
responses:
|
|
"200":
|
|
description: Rules retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/RulesOutputBody'
|
|
examples:
|
|
ruleGroups:
|
|
summary: Alerting and recording rules
|
|
value:
|
|
data:
|
|
groups:
|
|
- evaluationTime: 0.000561635
|
|
file: /etc/prometheus/rules/ansible_managed.yml
|
|
interval: 15
|
|
lastEvaluation: "2026-01-02T13:36:56.874Z"
|
|
limit: 0
|
|
name: ansible managed alert rules
|
|
rules:
|
|
- annotations:
|
|
description: This is an alert meant to ensure that the entire alerting pipeline is functional. This alert is always firing, therefore it should always be firing in Alertmanager and always fire against a receiver. There are integrations with various notification mechanisms that send a notification when this alert is not firing. For example the "DeadMansSnitch" integration in PagerDuty.
|
|
summary: Ensure entire alerting pipeline is functional
|
|
duration: 600
|
|
evaluationTime: 0.000356688
|
|
health: ok
|
|
keepFiringFor: 0
|
|
labels:
|
|
severity: warning
|
|
lastEvaluation: "2026-01-02T13:36:56.874Z"
|
|
name: Watchdog
|
|
query: vector(1)
|
|
state: firing
|
|
type: alerting
|
|
status: success
|
|
default:
|
|
description: Error retrieving rules.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/alerts:
|
|
get:
|
|
tags:
|
|
- alerts
|
|
summary: Get active alerts
|
|
operationId: alerts
|
|
responses:
|
|
"200":
|
|
description: Active alerts retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AlertsOutputBody'
|
|
examples:
|
|
activeAlerts:
|
|
summary: Currently active alerts
|
|
value:
|
|
data:
|
|
alerts:
|
|
- activeAt: "2026-01-02T13:30:00.000Z"
|
|
annotations:
|
|
description: This is an alert meant to ensure that the entire alerting pipeline is functional. This alert is always firing, therefore it should always be firing in Alertmanager and always fire against a receiver. There are integrations with various notification mechanisms that send a notification when this alert is not firing. For example the "DeadMansSnitch" integration in PagerDuty.
|
|
summary: Ensure entire alerting pipeline is functional
|
|
labels:
|
|
alertname: Watchdog
|
|
severity: warning
|
|
state: firing
|
|
value: "1e+00"
|
|
status: success
|
|
default:
|
|
description: Error retrieving alerts.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/alertmanagers:
|
|
get:
|
|
tags:
|
|
- alerts
|
|
summary: Get Alertmanager discovery
|
|
operationId: alertmanagers
|
|
responses:
|
|
"200":
|
|
description: Alertmanager targets retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AlertmanagersOutputBody'
|
|
examples:
|
|
alertmanagerDiscovery:
|
|
summary: Alertmanager discovery results
|
|
value:
|
|
data:
|
|
activeAlertmanagers:
|
|
- url: http://demo.prometheus.io:9093/api/v2/alerts
|
|
droppedAlertmanagers: []
|
|
status: success
|
|
default:
|
|
description: Error retrieving Alertmanager targets.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/status/config:
|
|
get:
|
|
tags:
|
|
- status
|
|
summary: Get status config
|
|
operationId: get-status-config
|
|
responses:
|
|
"200":
|
|
description: Configuration retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/StatusConfigOutputBody'
|
|
examples:
|
|
configYAML:
|
|
summary: Prometheus configuration
|
|
value:
|
|
data:
|
|
yaml: |
|
|
global:
|
|
scrape_interval: 15s
|
|
scrape_timeout: 10s
|
|
evaluation_interval: 15s
|
|
external_labels:
|
|
environment: demo-prometheus-io
|
|
alerting:
|
|
alertmanagers:
|
|
- scheme: http
|
|
static_configs:
|
|
- targets:
|
|
- demo.prometheus.io:9093
|
|
rule_files:
|
|
- /etc/prometheus/rules/*.yml
|
|
status: success
|
|
default:
|
|
description: Error retrieving configuration.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/status/runtimeinfo:
|
|
get:
|
|
tags:
|
|
- status
|
|
summary: Get status runtimeinfo
|
|
operationId: get-status-runtimeinfo
|
|
responses:
|
|
"200":
|
|
description: Runtime information retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/StatusRuntimeInfoOutputBody'
|
|
examples:
|
|
runtimeInfo:
|
|
summary: Runtime information
|
|
value:
|
|
data:
|
|
CWD: /
|
|
GODEBUG: ""
|
|
GOGC: "75"
|
|
GOMAXPROCS: 2
|
|
GOMEMLIMIT: 3703818240
|
|
corruptionCount: 0
|
|
goroutineCount: 88
|
|
hostname: demo-prometheus-io
|
|
lastConfigTime: "2026-01-01T13:37:00.000Z"
|
|
reloadConfigSuccess: true
|
|
serverTime: "2026-01-02T13:37:00.000Z"
|
|
startTime: "2026-01-01T13:37:00.000Z"
|
|
storageRetention: 31d
|
|
status: success
|
|
default:
|
|
description: Error retrieving runtime information.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/status/buildinfo:
|
|
get:
|
|
tags:
|
|
- status
|
|
summary: Get status buildinfo
|
|
operationId: get-status-buildinfo
|
|
responses:
|
|
"200":
|
|
description: Build information retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/StatusBuildInfoOutputBody'
|
|
examples:
|
|
buildInfo:
|
|
summary: Build information
|
|
value:
|
|
data:
|
|
branch: HEAD
|
|
buildDate: 20251030-07:26:10
|
|
buildUser: root@08c890a84441
|
|
goVersion: go1.25.3
|
|
revision: 0a41f0000705c69ab8e0f9a723fc73e39ed62b07
|
|
version: 3.7.3
|
|
status: success
|
|
default:
|
|
description: Error retrieving build information.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/status/flags:
|
|
get:
|
|
tags:
|
|
- status
|
|
summary: Get status flags
|
|
operationId: get-status-flags
|
|
responses:
|
|
"200":
|
|
description: Command-line flags retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/StatusFlagsOutputBody'
|
|
examples:
|
|
flags:
|
|
summary: Command-line flags
|
|
value:
|
|
data:
|
|
agent: "false"
|
|
alertmanager.notification-queue-capacity: "10000"
|
|
config.file: /etc/prometheus/prometheus.yml
|
|
enable-feature: exemplar-storage,native-histograms
|
|
query.max-concurrency: "20"
|
|
query.timeout: 2m
|
|
storage.tsdb.path: /prometheus
|
|
storage.tsdb.retention.time: 15d
|
|
web.console.libraries: /usr/share/prometheus/console_libraries
|
|
web.console.templates: /usr/share/prometheus/consoles
|
|
web.enable-admin-api: "true"
|
|
web.enable-lifecycle: "true"
|
|
web.listen-address: 0.0.0.0:9090
|
|
web.page-title: Prometheus Time Series Collection and Processing Server
|
|
status: success
|
|
default:
|
|
description: Error retrieving flags.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/status/tsdb:
|
|
get:
|
|
tags:
|
|
- status
|
|
summary: Get TSDB status
|
|
operationId: status-tsdb
|
|
parameters:
|
|
- name: limit
|
|
in: query
|
|
description: The maximum number of items to return per category.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
examples:
|
|
example:
|
|
value: 10
|
|
responses:
|
|
"200":
|
|
description: TSDB status retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/StatusTSDBOutputBody'
|
|
examples:
|
|
tsdbStats:
|
|
summary: TSDB statistics
|
|
value:
|
|
data:
|
|
headStats:
|
|
chunkCount: 37525
|
|
maxTime: 1767436620000
|
|
minTime: 1767362400712
|
|
numLabelPairs: 2512
|
|
numSeries: 9925
|
|
labelValueCountByLabelName:
|
|
- name: __name__
|
|
value: 5
|
|
- name: job
|
|
value: 3
|
|
memoryInBytesByLabelName:
|
|
- name: __name__
|
|
value: 1024
|
|
- name: job
|
|
value: 512
|
|
seriesCountByLabelValuePair:
|
|
- name: job=prometheus
|
|
value: 100
|
|
- name: instance=localhost:9090
|
|
value: 100
|
|
seriesCountByMetricName:
|
|
- name: up
|
|
value: 100
|
|
- name: http_requests_total
|
|
value: 500
|
|
status: success
|
|
default:
|
|
description: Error retrieving TSDB status.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/status/tsdb/blocks:
|
|
get:
|
|
tags:
|
|
- status
|
|
summary: Get TSDB blocks information
|
|
operationId: status-tsdb-blocks
|
|
responses:
|
|
"200":
|
|
description: TSDB blocks information retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/StatusTSDBBlocksOutputBody'
|
|
examples:
|
|
tsdbBlocks:
|
|
summary: TSDB block information
|
|
value:
|
|
data:
|
|
blocks:
|
|
- compaction:
|
|
level: 4
|
|
sources:
|
|
- 01KBCJ7TR8A4QAJ3AA1J651P5S
|
|
- 01KBCS3J0E34567YPB8Y5W0E24
|
|
- 01KBCZZ9KRTYGG3E7HVQFGC3S3
|
|
maxTime: 1764763200000
|
|
minTime: 1764568801099
|
|
stats:
|
|
numChunks: 1073962
|
|
numSamples: 129505582
|
|
numSeries: 10661
|
|
ulid: 01KC4D6GXQA4CRHYKV78NEBVAE
|
|
version: 1
|
|
status: success
|
|
default:
|
|
description: Error retrieving TSDB blocks.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/status/walreplay:
|
|
get:
|
|
tags:
|
|
- status
|
|
summary: Get status walreplay
|
|
operationId: get-status-walreplay
|
|
responses:
|
|
"200":
|
|
description: WAL replay status retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/StatusWALReplayOutputBody'
|
|
examples:
|
|
walReplay:
|
|
summary: WAL replay status
|
|
value:
|
|
data:
|
|
current: 3214
|
|
max: 3214
|
|
min: 3209
|
|
status: success
|
|
default:
|
|
description: Error retrieving WAL replay status.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/admin/tsdb/delete_series:
|
|
put:
|
|
tags:
|
|
- admin
|
|
summary: Delete series matching selectors via PUT
|
|
description: Deletes data for a selection of series in a time range using PUT method.
|
|
operationId: deleteSeriesPut
|
|
parameters:
|
|
- name: match[]
|
|
in: query
|
|
description: Series selectors to identify series to delete.
|
|
required: true
|
|
explode: false
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value:
|
|
- '{__name__=~"test.*"}'
|
|
- name: start
|
|
in: query
|
|
description: Start timestamp for deletion.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T12:37:00Z"
|
|
epoch:
|
|
value: 1767357420
|
|
- name: end
|
|
in: query
|
|
description: End timestamp for deletion.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T13:37:00Z"
|
|
epoch:
|
|
value: 1767361020
|
|
responses:
|
|
"200":
|
|
description: Series deleted successfully via PUT.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DeleteSeriesOutputBody'
|
|
examples:
|
|
deletionSuccess:
|
|
summary: Successful series deletion
|
|
value:
|
|
status: success
|
|
default:
|
|
description: Error deleting series via PUT.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
post:
|
|
tags:
|
|
- admin
|
|
summary: Delete series matching selectors
|
|
description: Deletes data for a selection of series in a time range.
|
|
operationId: deleteSeriesPost
|
|
parameters:
|
|
- name: match[]
|
|
in: query
|
|
description: Series selectors to identify series to delete.
|
|
required: true
|
|
explode: false
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value:
|
|
- '{__name__=~"test.*"}'
|
|
- name: start
|
|
in: query
|
|
description: Start timestamp for deletion.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T12:37:00Z"
|
|
epoch:
|
|
value: 1767357420
|
|
- name: end
|
|
in: query
|
|
description: End timestamp for deletion.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
oneOf:
|
|
- type: string
|
|
format: date-time
|
|
description: RFC3339 timestamp.
|
|
- type: number
|
|
format: unixtime
|
|
description: Unix timestamp in seconds.
|
|
description: Timestamp in RFC3339 format or Unix timestamp in seconds.
|
|
examples:
|
|
RFC3339:
|
|
value: "2026-01-02T13:37:00Z"
|
|
epoch:
|
|
value: 1767361020
|
|
responses:
|
|
"200":
|
|
description: Series deleted successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DeleteSeriesOutputBody'
|
|
examples:
|
|
deletionSuccess:
|
|
summary: Successful series deletion
|
|
value:
|
|
status: success
|
|
default:
|
|
description: Error deleting series.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/admin/tsdb/clean_tombstones:
|
|
put:
|
|
tags:
|
|
- admin
|
|
summary: Clean tombstones in the TSDB via PUT
|
|
description: Removes deleted data from disk and cleans up existing tombstones using PUT method.
|
|
operationId: cleanTombstonesPut
|
|
responses:
|
|
"200":
|
|
description: Tombstones cleaned successfully via PUT.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/CleanTombstonesOutputBody'
|
|
examples:
|
|
tombstonesCleaned:
|
|
summary: Tombstones cleaned successfully
|
|
value:
|
|
status: success
|
|
default:
|
|
description: Error cleaning tombstones via PUT.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
post:
|
|
tags:
|
|
- admin
|
|
summary: Clean tombstones in the TSDB
|
|
description: Removes deleted data from disk and cleans up existing tombstones.
|
|
operationId: cleanTombstonesPost
|
|
responses:
|
|
"200":
|
|
description: Tombstones cleaned successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/CleanTombstonesOutputBody'
|
|
examples:
|
|
tombstonesCleaned:
|
|
summary: Tombstones cleaned successfully
|
|
value:
|
|
status: success
|
|
default:
|
|
description: Error cleaning tombstones.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/admin/tsdb/snapshot:
|
|
put:
|
|
tags:
|
|
- admin
|
|
summary: Create a snapshot of the TSDB via PUT
|
|
description: Creates a snapshot of all current data using PUT method.
|
|
operationId: snapshotPut
|
|
parameters:
|
|
- name: skip_head
|
|
in: query
|
|
description: If true, do not snapshot data in the head block.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: "false"
|
|
responses:
|
|
"200":
|
|
description: Snapshot created successfully via PUT.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/SnapshotOutputBody'
|
|
examples:
|
|
snapshotCreated:
|
|
summary: Snapshot created successfully
|
|
value:
|
|
data:
|
|
name: 20260102T133700Z-a1b2c3d4e5f67890
|
|
status: success
|
|
default:
|
|
description: Error creating snapshot via PUT.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
post:
|
|
tags:
|
|
- admin
|
|
summary: Create a snapshot of the TSDB
|
|
description: Creates a snapshot of all current data.
|
|
operationId: snapshotPost
|
|
parameters:
|
|
- name: skip_head
|
|
in: query
|
|
description: If true, do not snapshot data in the head block.
|
|
required: false
|
|
explode: false
|
|
schema:
|
|
type: string
|
|
examples:
|
|
example:
|
|
value: "false"
|
|
responses:
|
|
"200":
|
|
description: Snapshot created successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/SnapshotOutputBody'
|
|
examples:
|
|
snapshotCreated:
|
|
summary: Snapshot created successfully
|
|
value:
|
|
data:
|
|
name: 20260102T133700Z-a1b2c3d4e5f67890
|
|
status: success
|
|
default:
|
|
description: Error creating snapshot.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/read:
|
|
post:
|
|
tags:
|
|
- remote
|
|
summary: Remote read endpoint
|
|
description: Prometheus remote read endpoint for federated queries. Accepts and returns Protocol Buffer encoded data.
|
|
operationId: remoteRead
|
|
responses:
|
|
"204":
|
|
description: No Content
|
|
default:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
/write:
|
|
post:
|
|
tags:
|
|
- remote
|
|
summary: Remote write endpoint
|
|
description: Prometheus remote write endpoint for sending metrics. Accepts Protocol Buffer encoded write requests.
|
|
operationId: remoteWrite
|
|
responses:
|
|
"204":
|
|
description: No Content
|
|
default:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
/otlp/v1/metrics:
|
|
post:
|
|
tags:
|
|
- otlp
|
|
summary: OTLP metrics write endpoint
|
|
description: OpenTelemetry Protocol metrics ingestion endpoint. Accepts OTLP/HTTP metrics in Protocol Buffer format.
|
|
operationId: otlpWrite
|
|
responses:
|
|
"204":
|
|
description: No Content
|
|
default:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
/notifications:
|
|
get:
|
|
tags:
|
|
- notifications
|
|
summary: Get notifications
|
|
operationId: get-notifications
|
|
responses:
|
|
"200":
|
|
description: Notifications retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/NotificationsOutputBody'
|
|
examples:
|
|
notifications:
|
|
summary: Server notifications
|
|
value:
|
|
data:
|
|
- active: true
|
|
date: "2026-01-02T16:14:50.046Z"
|
|
text: Configuration reload has failed.
|
|
status: success
|
|
default:
|
|
description: Error retrieving notifications.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
/notifications/live:
|
|
get:
|
|
tags:
|
|
- notifications
|
|
summary: Stream live notifications via Server-Sent Events
|
|
description: Subscribe to real-time server notifications using SSE. Each event contains a JSON-encoded Notification object in the data field.
|
|
operationId: notifications-live
|
|
responses:
|
|
"200":
|
|
description: Server-sent events stream established.
|
|
content:
|
|
text/event-stream:
|
|
itemSchema:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: string
|
|
contentSchema:
|
|
$ref: '#/components/schemas/Notification'
|
|
description: SSE data field containing JSON-encoded notification.
|
|
contentMediaType: application/json
|
|
title: Server Sent Event Message
|
|
required:
|
|
- data
|
|
additionalProperties: false
|
|
description: A single SSE message. The data field contains a JSON-encoded Notification object.
|
|
examples:
|
|
activeNotification:
|
|
summary: Active notification SSE message
|
|
description: An SSE message containing an active server notification.
|
|
value:
|
|
data: '{"text":"Configuration reload has failed.","date":"2026-01-02T16:14:50.046Z","active":true}'
|
|
default:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
/features:
|
|
get:
|
|
tags:
|
|
- features
|
|
summary: Get features
|
|
operationId: get-features
|
|
responses:
|
|
"200":
|
|
description: Feature flags retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/FeaturesOutputBody'
|
|
examples:
|
|
enabledFeatures:
|
|
summary: Enabled feature flags
|
|
value:
|
|
data:
|
|
- exemplar-storage
|
|
- remote-write-receiver
|
|
status: success
|
|
default:
|
|
description: Error retrieving features.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Error'
|
|
examples:
|
|
tsdbNotReady:
|
|
summary: TSDB not ready
|
|
value:
|
|
error: TSDB not ready
|
|
errorType: internal
|
|
status: error
|
|
components:
|
|
schemas:
|
|
Error:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
errorType:
|
|
type: string
|
|
description: Type of error that occurred.
|
|
example: bad_data
|
|
error:
|
|
type: string
|
|
description: Human-readable error message.
|
|
example: invalid parameter
|
|
required:
|
|
- status
|
|
- errorType
|
|
- error
|
|
additionalProperties: false
|
|
description: Error response.
|
|
Labels:
|
|
type: object
|
|
additionalProperties: true
|
|
description: Label set represented as a key-value map.
|
|
QueryOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/QueryData'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for instant query.
|
|
QueryRangeOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/QueryData'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for range query.
|
|
QueryPostInputBody:
|
|
type: object
|
|
properties:
|
|
query:
|
|
type: string
|
|
description: 'Form field: The PromQL query to execute.'
|
|
example: up
|
|
time:
|
|
type: string
|
|
description: 'Form field: The evaluation timestamp (optional, defaults to current time).'
|
|
example: "2023-07-21T20:10:51.781Z"
|
|
limit:
|
|
type: integer
|
|
format: int64
|
|
description: 'Form field: The maximum number of metrics to return.'
|
|
example: 100
|
|
timeout:
|
|
type: string
|
|
description: 'Form field: Evaluation timeout (optional, defaults to and is capped by the value of the -query.timeout flag).'
|
|
example: 30s
|
|
lookback_delta:
|
|
type: string
|
|
description: 'Form field: Override the lookback period for this query (optional).'
|
|
example: 5m
|
|
stats:
|
|
type: string
|
|
description: 'Form field: When provided, include query statistics in the response (the special value ''all'' enables more comprehensive statistics).'
|
|
example: all
|
|
required:
|
|
- query
|
|
additionalProperties: false
|
|
description: POST request body for instant query.
|
|
QueryRangePostInputBody:
|
|
type: object
|
|
properties:
|
|
query:
|
|
type: string
|
|
description: 'Form field: The query to execute.'
|
|
example: rate(http_requests_total[5m])
|
|
start:
|
|
type: string
|
|
description: 'Form field: The start time of the query.'
|
|
example: "2023-07-21T20:10:30.781Z"
|
|
end:
|
|
type: string
|
|
description: 'Form field: The end time of the query.'
|
|
example: "2023-07-21T20:20:30.781Z"
|
|
step:
|
|
type: string
|
|
description: 'Form field: The step size of the query.'
|
|
example: 15s
|
|
limit:
|
|
type: integer
|
|
format: int64
|
|
description: 'Form field: The maximum number of metrics to return.'
|
|
example: 100
|
|
timeout:
|
|
type: string
|
|
description: 'Form field: Evaluation timeout (optional, defaults to and is capped by the value of the -query.timeout flag).'
|
|
example: 30s
|
|
lookback_delta:
|
|
type: string
|
|
description: 'Form field: Override the lookback period for this query (optional).'
|
|
example: 5m
|
|
stats:
|
|
type: string
|
|
description: 'Form field: When provided, include query statistics in the response (the special value ''all'' enables more comprehensive statistics).'
|
|
example: all
|
|
required:
|
|
- query
|
|
- start
|
|
- end
|
|
- step
|
|
additionalProperties: false
|
|
description: POST request body for range query.
|
|
QueryExemplarsOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
description: Response data (structure varies by endpoint).
|
|
example:
|
|
result: ok
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Generic response body.
|
|
QueryExemplarsPostInputBody:
|
|
type: object
|
|
properties:
|
|
query:
|
|
type: string
|
|
description: 'Form field: The query to execute.'
|
|
example: http_requests_total
|
|
start:
|
|
type: string
|
|
description: 'Form field: The start time of the query.'
|
|
example: "2023-07-21T20:00:00.000Z"
|
|
end:
|
|
type: string
|
|
description: 'Form field: The end time of the query.'
|
|
example: "2023-07-21T21:00:00.000Z"
|
|
required:
|
|
- query
|
|
additionalProperties: false
|
|
description: POST request body for exemplars query.
|
|
FormatQueryOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
type: string
|
|
description: Formatted query string.
|
|
example: sum by(status) (rate(http_requests_total[5m]))
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for format query endpoint.
|
|
FormatQueryPostInputBody:
|
|
type: object
|
|
properties:
|
|
query:
|
|
type: string
|
|
description: 'Form field: The query to format.'
|
|
example: sum(rate(http_requests_total[5m])) by (status)
|
|
required:
|
|
- query
|
|
additionalProperties: false
|
|
description: POST request body for format query.
|
|
ParseQueryOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
description: Response data (structure varies by endpoint).
|
|
example:
|
|
result: ok
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Generic response body.
|
|
ParseQueryPostInputBody:
|
|
type: object
|
|
properties:
|
|
query:
|
|
type: string
|
|
description: 'Form field: The query to parse.'
|
|
example: sum(rate(http_requests_total[5m]))
|
|
required:
|
|
- query
|
|
additionalProperties: false
|
|
description: POST request body for parse query.
|
|
QueryData:
|
|
anyOf:
|
|
- type: object
|
|
properties:
|
|
resultType:
|
|
type: string
|
|
enum:
|
|
- vector
|
|
result:
|
|
type: array
|
|
items:
|
|
anyOf:
|
|
- $ref: '#/components/schemas/FloatSample'
|
|
- $ref: '#/components/schemas/HistogramSample'
|
|
description: Array of samples (either float or histogram).
|
|
stats:
|
|
$ref: '#/components/schemas/QueryStats'
|
|
required:
|
|
- resultType
|
|
- result
|
|
additionalProperties: false
|
|
- type: object
|
|
properties:
|
|
resultType:
|
|
type: string
|
|
enum:
|
|
- matrix
|
|
result:
|
|
type: array
|
|
items:
|
|
anyOf:
|
|
- $ref: '#/components/schemas/FloatSeries'
|
|
- $ref: '#/components/schemas/HistogramSeries'
|
|
description: Array of time series (either float or histogram).
|
|
stats:
|
|
$ref: '#/components/schemas/QueryStats'
|
|
required:
|
|
- resultType
|
|
- result
|
|
additionalProperties: false
|
|
- type: object
|
|
properties:
|
|
resultType:
|
|
type: string
|
|
enum:
|
|
- scalar
|
|
result:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- type: number
|
|
- type: string
|
|
maxItems: 2
|
|
minItems: 2
|
|
description: Scalar value as [timestamp, stringValue].
|
|
stats:
|
|
$ref: '#/components/schemas/QueryStats'
|
|
required:
|
|
- resultType
|
|
- result
|
|
additionalProperties: false
|
|
- type: object
|
|
properties:
|
|
resultType:
|
|
type: string
|
|
enum:
|
|
- string
|
|
result:
|
|
type: array
|
|
items:
|
|
type: string
|
|
maxItems: 2
|
|
minItems: 2
|
|
description: String value as [timestamp, stringValue].
|
|
stats:
|
|
$ref: '#/components/schemas/QueryStats'
|
|
required:
|
|
- resultType
|
|
- result
|
|
additionalProperties: false
|
|
description: Query result data. The structure of 'result' depends on 'resultType'.
|
|
example:
|
|
result:
|
|
- metric:
|
|
__name__: up
|
|
job: prometheus
|
|
value:
|
|
- 1627845600
|
|
- "1"
|
|
resultType: vector
|
|
QueryStats:
|
|
type: object
|
|
properties:
|
|
timings:
|
|
type: object
|
|
properties:
|
|
evalTotalTime:
|
|
type: number
|
|
description: Total evaluation time in seconds.
|
|
resultSortTime:
|
|
type: number
|
|
description: Time spent sorting results in seconds.
|
|
queryPreparationTime:
|
|
type: number
|
|
description: Query preparation time in seconds.
|
|
innerEvalTime:
|
|
type: number
|
|
description: Inner evaluation time in seconds.
|
|
execQueueTime:
|
|
type: number
|
|
description: Execution queue wait time in seconds.
|
|
execTotalTime:
|
|
type: number
|
|
description: Total execution time in seconds.
|
|
samples:
|
|
type: object
|
|
properties:
|
|
totalQueryableSamples:
|
|
type: integer
|
|
description: Total number of samples that were queryable.
|
|
peakSamples:
|
|
type: integer
|
|
description: Peak number of samples in memory.
|
|
totalQueryableSamplesPerStep:
|
|
type: array
|
|
items:
|
|
type: array
|
|
items:
|
|
type: number
|
|
maxItems: 2
|
|
minItems: 2
|
|
description: Timestamp and sample count as [timestamp, count].
|
|
description: Total queryable samples per step (only included with stats=all).
|
|
description: Query execution statistics (included when the stats query parameter is provided).
|
|
FloatSample:
|
|
type: object
|
|
properties:
|
|
metric:
|
|
$ref: '#/components/schemas/Labels'
|
|
value:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- type: number
|
|
- type: string
|
|
maxItems: 2
|
|
minItems: 2
|
|
description: Timestamp and float value as [unixTimestamp, stringValue].
|
|
example:
|
|
- 1767436620
|
|
- "1"
|
|
required:
|
|
- metric
|
|
- value
|
|
additionalProperties: false
|
|
description: A sample with a float value.
|
|
HistogramSample:
|
|
type: object
|
|
properties:
|
|
metric:
|
|
$ref: '#/components/schemas/Labels'
|
|
histogram:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- type: number
|
|
- $ref: '#/components/schemas/HistogramValue'
|
|
maxItems: 2
|
|
minItems: 2
|
|
description: Timestamp and histogram value as [unixTimestamp, histogramObject].
|
|
example:
|
|
- 1767436620
|
|
- buckets: []
|
|
count: "60"
|
|
sum: "120"
|
|
required:
|
|
- metric
|
|
- histogram
|
|
additionalProperties: false
|
|
description: A sample with a native histogram value.
|
|
FloatSeries:
|
|
type: object
|
|
properties:
|
|
metric:
|
|
$ref: '#/components/schemas/Labels'
|
|
values:
|
|
type: array
|
|
items:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- type: number
|
|
- type: string
|
|
maxItems: 2
|
|
minItems: 2
|
|
description: Array of [timestamp, stringValue] pairs for float values.
|
|
required:
|
|
- metric
|
|
- values
|
|
additionalProperties: false
|
|
description: A time series with float values.
|
|
HistogramSeries:
|
|
type: object
|
|
properties:
|
|
metric:
|
|
$ref: '#/components/schemas/Labels'
|
|
histograms:
|
|
type: array
|
|
items:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- type: number
|
|
- $ref: '#/components/schemas/HistogramValue'
|
|
maxItems: 2
|
|
minItems: 2
|
|
description: Array of [timestamp, histogramObject] pairs for histogram values.
|
|
required:
|
|
- metric
|
|
- histograms
|
|
additionalProperties: false
|
|
description: A time series with native histogram values.
|
|
HistogramValue:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: string
|
|
description: Total count of observations.
|
|
sum:
|
|
type: string
|
|
description: Sum of all observed values.
|
|
buckets:
|
|
type: array
|
|
items:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- type: number
|
|
- type: string
|
|
description: Histogram buckets as [boundary_rule, lower, upper, count].
|
|
required:
|
|
- count
|
|
- sum
|
|
additionalProperties: false
|
|
description: Native histogram value representation.
|
|
LabelsOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- __name__
|
|
- job
|
|
- instance
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body with an array of strings.
|
|
LabelsPostInputBody:
|
|
type: object
|
|
properties:
|
|
start:
|
|
type: string
|
|
description: 'Form field: The start time of the query.'
|
|
example: "2023-07-21T20:00:00.000Z"
|
|
end:
|
|
type: string
|
|
description: 'Form field: The end time of the query.'
|
|
example: "2023-07-21T21:00:00.000Z"
|
|
match[]:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: 'Form field: Series selector argument that selects the series from which to read the label names.'
|
|
example:
|
|
- '{job="prometheus"}'
|
|
limit:
|
|
type: integer
|
|
format: int64
|
|
description: 'Form field: The maximum number of label names to return.'
|
|
example: 100
|
|
additionalProperties: false
|
|
description: POST request body for labels query.
|
|
LabelValuesOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- __name__
|
|
- job
|
|
- instance
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body with an array of strings.
|
|
SeriesOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Labels'
|
|
example:
|
|
- __name__: up
|
|
instance: localhost:9090
|
|
job: prometheus
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body with an array of label sets.
|
|
SeriesPostInputBody:
|
|
type: object
|
|
properties:
|
|
start:
|
|
type: string
|
|
description: 'Form field: The start time of the query.'
|
|
example: "2023-07-21T20:00:00.000Z"
|
|
end:
|
|
type: string
|
|
description: 'Form field: The end time of the query.'
|
|
example: "2023-07-21T21:00:00.000Z"
|
|
match[]:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: 'Form field: Series selector argument that selects the series to return.'
|
|
example:
|
|
- '{job="prometheus"}'
|
|
limit:
|
|
type: integer
|
|
format: int64
|
|
description: 'Form field: The maximum number of series to return.'
|
|
example: 100
|
|
required:
|
|
- match[]
|
|
additionalProperties: false
|
|
description: POST request body for series query.
|
|
SeriesDeleteOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
description: Response data (structure varies by endpoint).
|
|
example:
|
|
result: ok
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Generic response body.
|
|
Metadata:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: Metric type (counter, gauge, histogram, summary, or untyped).
|
|
unit:
|
|
type: string
|
|
description: Unit of the metric.
|
|
help:
|
|
type: string
|
|
description: Help text describing the metric.
|
|
required:
|
|
- type
|
|
- unit
|
|
- help
|
|
additionalProperties: false
|
|
description: Metric metadata.
|
|
MetadataOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
type: object
|
|
additionalProperties:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Metadata'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for metadata endpoint.
|
|
MetricMetadata:
|
|
type: object
|
|
properties:
|
|
target:
|
|
$ref: '#/components/schemas/Labels'
|
|
metric:
|
|
type: string
|
|
description: Metric name.
|
|
type:
|
|
type: string
|
|
description: Metric type (counter, gauge, histogram, summary, or untyped).
|
|
help:
|
|
type: string
|
|
description: Help text describing the metric.
|
|
unit:
|
|
type: string
|
|
description: Unit of the metric.
|
|
required:
|
|
- target
|
|
- type
|
|
- help
|
|
- unit
|
|
additionalProperties: false
|
|
description: Target metric metadata.
|
|
Target:
|
|
type: object
|
|
properties:
|
|
discoveredLabels:
|
|
$ref: '#/components/schemas/Labels'
|
|
labels:
|
|
$ref: '#/components/schemas/Labels'
|
|
scrapePool:
|
|
type: string
|
|
description: Name of the scrape pool.
|
|
scrapeUrl:
|
|
type: string
|
|
description: URL of the target.
|
|
globalUrl:
|
|
type: string
|
|
description: Global URL of the target.
|
|
lastError:
|
|
type: string
|
|
description: Last error message from scraping.
|
|
lastScrape:
|
|
type: string
|
|
format: date-time
|
|
description: Timestamp of the last scrape.
|
|
lastScrapeDuration:
|
|
type: number
|
|
format: double
|
|
description: Duration of the last scrape in seconds.
|
|
health:
|
|
type: string
|
|
description: Health status of the target (up, down, or unknown).
|
|
scrapeInterval:
|
|
type: string
|
|
description: Scrape interval for this target.
|
|
scrapeTimeout:
|
|
type: string
|
|
description: Scrape timeout for this target.
|
|
required:
|
|
- discoveredLabels
|
|
- labels
|
|
- scrapePool
|
|
- scrapeUrl
|
|
- globalUrl
|
|
- lastError
|
|
- lastScrape
|
|
- lastScrapeDuration
|
|
- health
|
|
- scrapeInterval
|
|
- scrapeTimeout
|
|
additionalProperties: false
|
|
description: Scrape target information.
|
|
DroppedTarget:
|
|
type: object
|
|
properties:
|
|
discoveredLabels:
|
|
$ref: '#/components/schemas/Labels'
|
|
scrapePool:
|
|
type: string
|
|
description: Name of the scrape pool.
|
|
required:
|
|
- discoveredLabels
|
|
- scrapePool
|
|
additionalProperties: false
|
|
description: Dropped target information.
|
|
TargetDiscovery:
|
|
type: object
|
|
properties:
|
|
activeTargets:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Target'
|
|
droppedTargets:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/DroppedTarget'
|
|
droppedTargetCounts:
|
|
type: object
|
|
additionalProperties:
|
|
type: integer
|
|
format: int64
|
|
required:
|
|
- activeTargets
|
|
- droppedTargets
|
|
- droppedTargetCounts
|
|
additionalProperties: false
|
|
description: Target discovery information including active and dropped targets.
|
|
TargetsOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/TargetDiscovery'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for targets endpoint.
|
|
TargetMetadataOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/MetricMetadata'
|
|
example:
|
|
- help: The current health status of the target
|
|
metric: up
|
|
target:
|
|
instance: localhost:9090
|
|
job: prometheus
|
|
type: gauge
|
|
unit: ""
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body with an array of metric metadata.
|
|
ScrapePoolsDiscovery:
|
|
type: object
|
|
properties:
|
|
scrapePools:
|
|
type: array
|
|
items:
|
|
type: string
|
|
required:
|
|
- scrapePools
|
|
additionalProperties: false
|
|
description: List of all configured scrape pools.
|
|
ScrapePoolsOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/ScrapePoolsDiscovery'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for scrape pools endpoint.
|
|
Config:
|
|
type: object
|
|
properties:
|
|
source_labels:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Source labels for relabeling.
|
|
separator:
|
|
type: string
|
|
description: Separator for source label values.
|
|
regex:
|
|
type: string
|
|
description: Regular expression for matching.
|
|
modulus:
|
|
type: integer
|
|
format: int64
|
|
description: Modulus for hash-based relabeling.
|
|
target_label:
|
|
type: string
|
|
description: Target label name.
|
|
replacement:
|
|
type: string
|
|
description: Replacement value.
|
|
action:
|
|
type: string
|
|
description: Relabel action.
|
|
additionalProperties: false
|
|
description: Relabel configuration.
|
|
RelabelStep:
|
|
type: object
|
|
properties:
|
|
rule:
|
|
$ref: '#/components/schemas/Config'
|
|
output:
|
|
$ref: '#/components/schemas/Labels'
|
|
keep:
|
|
type: boolean
|
|
required:
|
|
- rule
|
|
- output
|
|
- keep
|
|
additionalProperties: false
|
|
description: Relabel step showing the rule, output, and whether the target was kept.
|
|
RelabelStepsResponse:
|
|
type: object
|
|
properties:
|
|
steps:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/RelabelStep'
|
|
required:
|
|
- steps
|
|
additionalProperties: false
|
|
description: Relabeling steps response.
|
|
TargetRelabelStepsOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/RelabelStepsResponse'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for target relabel steps endpoint.
|
|
RuleGroup:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
description: Name of the rule group.
|
|
file:
|
|
type: string
|
|
description: File containing the rule group.
|
|
rules:
|
|
type: array
|
|
items:
|
|
type: object
|
|
description: Rule definition.
|
|
description: Rules in this group.
|
|
interval:
|
|
type: number
|
|
format: double
|
|
description: Evaluation interval in seconds.
|
|
limit:
|
|
type: integer
|
|
format: int64
|
|
description: Maximum number of alerts for this group.
|
|
evaluationTime:
|
|
type: number
|
|
format: double
|
|
description: Time taken to evaluate the group in seconds.
|
|
lastEvaluation:
|
|
type: string
|
|
format: date-time
|
|
description: Timestamp of the last evaluation.
|
|
required:
|
|
- name
|
|
- file
|
|
- rules
|
|
- interval
|
|
- limit
|
|
- evaluationTime
|
|
- lastEvaluation
|
|
additionalProperties: false
|
|
description: Rule group information.
|
|
RuleDiscovery:
|
|
type: object
|
|
properties:
|
|
groups:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/RuleGroup'
|
|
groupNextToken:
|
|
type: string
|
|
description: Pagination token for the next page of groups.
|
|
required:
|
|
- groups
|
|
additionalProperties: false
|
|
description: Rule discovery information containing all rule groups.
|
|
RulesOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/RuleDiscovery'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for rules endpoint.
|
|
Alert:
|
|
type: object
|
|
properties:
|
|
labels:
|
|
$ref: '#/components/schemas/Labels'
|
|
annotations:
|
|
$ref: '#/components/schemas/Labels'
|
|
state:
|
|
type: string
|
|
description: State of the alert (pending, firing, or inactive).
|
|
value:
|
|
type: string
|
|
description: Value of the alert expression.
|
|
activeAt:
|
|
type: string
|
|
format: date-time
|
|
description: Timestamp when the alert became active.
|
|
keepFiringSince:
|
|
type: string
|
|
format: date-time
|
|
description: Timestamp since the alert has been kept firing.
|
|
required:
|
|
- labels
|
|
- annotations
|
|
- state
|
|
- value
|
|
additionalProperties: false
|
|
description: Alert information.
|
|
AlertDiscovery:
|
|
type: object
|
|
properties:
|
|
alerts:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Alert'
|
|
required:
|
|
- alerts
|
|
additionalProperties: false
|
|
description: Alert discovery information containing all active alerts.
|
|
AlertsOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/AlertDiscovery'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for alerts endpoint.
|
|
AlertmanagerTarget:
|
|
type: object
|
|
properties:
|
|
url:
|
|
type: string
|
|
description: URL of the Alertmanager instance.
|
|
required:
|
|
- url
|
|
additionalProperties: false
|
|
description: Alertmanager target information.
|
|
AlertmanagerDiscovery:
|
|
type: object
|
|
properties:
|
|
activeAlertmanagers:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/AlertmanagerTarget'
|
|
droppedAlertmanagers:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/AlertmanagerTarget'
|
|
required:
|
|
- activeAlertmanagers
|
|
- droppedAlertmanagers
|
|
additionalProperties: false
|
|
description: Alertmanager discovery information including active and dropped instances.
|
|
AlertmanagersOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/AlertmanagerDiscovery'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for alertmanagers endpoint.
|
|
StatusConfigData:
|
|
type: object
|
|
properties:
|
|
yaml:
|
|
type: string
|
|
description: Prometheus configuration in YAML format.
|
|
required:
|
|
- yaml
|
|
additionalProperties: false
|
|
description: Prometheus configuration.
|
|
StatusConfigOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/StatusConfigData'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for status config endpoint.
|
|
RuntimeInfo:
|
|
type: object
|
|
properties:
|
|
startTime:
|
|
type: string
|
|
format: date-time
|
|
CWD:
|
|
type: string
|
|
hostname:
|
|
type: string
|
|
serverTime:
|
|
type: string
|
|
format: date-time
|
|
reloadConfigSuccess:
|
|
type: boolean
|
|
lastConfigTime:
|
|
type: string
|
|
format: date-time
|
|
corruptionCount:
|
|
type: integer
|
|
format: int64
|
|
goroutineCount:
|
|
type: integer
|
|
format: int64
|
|
GOMAXPROCS:
|
|
type: integer
|
|
format: int64
|
|
GOMEMLIMIT:
|
|
type: integer
|
|
format: int64
|
|
GOGC:
|
|
type: string
|
|
GODEBUG:
|
|
type: string
|
|
storageRetention:
|
|
type: string
|
|
required:
|
|
- startTime
|
|
- CWD
|
|
- hostname
|
|
- serverTime
|
|
- reloadConfigSuccess
|
|
- lastConfigTime
|
|
- corruptionCount
|
|
- goroutineCount
|
|
- GOMAXPROCS
|
|
- GOMEMLIMIT
|
|
- GOGC
|
|
- GODEBUG
|
|
- storageRetention
|
|
additionalProperties: false
|
|
description: Prometheus runtime information.
|
|
StatusRuntimeInfoOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/RuntimeInfo'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for status runtime info endpoint.
|
|
PrometheusVersion:
|
|
type: object
|
|
properties:
|
|
version:
|
|
type: string
|
|
revision:
|
|
type: string
|
|
branch:
|
|
type: string
|
|
buildUser:
|
|
type: string
|
|
buildDate:
|
|
type: string
|
|
goVersion:
|
|
type: string
|
|
required:
|
|
- version
|
|
- revision
|
|
- branch
|
|
- buildUser
|
|
- buildDate
|
|
- goVersion
|
|
additionalProperties: false
|
|
description: Prometheus version information.
|
|
StatusBuildInfoOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/PrometheusVersion'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for status build info endpoint.
|
|
StatusFlagsOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
type: object
|
|
additionalProperties:
|
|
type: string
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for status flags endpoint.
|
|
HeadStats:
|
|
type: object
|
|
properties:
|
|
numSeries:
|
|
type: integer
|
|
format: int64
|
|
numLabelPairs:
|
|
type: integer
|
|
format: int64
|
|
chunkCount:
|
|
type: integer
|
|
format: int64
|
|
minTime:
|
|
type: integer
|
|
format: int64
|
|
maxTime:
|
|
type: integer
|
|
format: int64
|
|
required:
|
|
- numSeries
|
|
- numLabelPairs
|
|
- chunkCount
|
|
- minTime
|
|
- maxTime
|
|
additionalProperties: false
|
|
description: TSDB head statistics.
|
|
TSDBStat:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
value:
|
|
type: integer
|
|
format: int64
|
|
required:
|
|
- name
|
|
- value
|
|
additionalProperties: false
|
|
description: TSDB statistic.
|
|
TSDBStatus:
|
|
type: object
|
|
properties:
|
|
headStats:
|
|
$ref: '#/components/schemas/HeadStats'
|
|
seriesCountByMetricName:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/TSDBStat'
|
|
labelValueCountByLabelName:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/TSDBStat'
|
|
memoryInBytesByLabelName:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/TSDBStat'
|
|
seriesCountByLabelValuePair:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/TSDBStat'
|
|
required:
|
|
- headStats
|
|
- seriesCountByMetricName
|
|
- labelValueCountByLabelName
|
|
- memoryInBytesByLabelName
|
|
- seriesCountByLabelValuePair
|
|
additionalProperties: false
|
|
description: TSDB status information.
|
|
StatusTSDBOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/TSDBStatus'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for status TSDB endpoint.
|
|
BlockDesc:
|
|
type: object
|
|
properties:
|
|
ulid:
|
|
type: string
|
|
minTime:
|
|
type: integer
|
|
format: int64
|
|
maxTime:
|
|
type: integer
|
|
format: int64
|
|
required:
|
|
- ulid
|
|
- minTime
|
|
- maxTime
|
|
additionalProperties: false
|
|
description: Block descriptor.
|
|
BlockStats:
|
|
type: object
|
|
properties:
|
|
numSamples:
|
|
type: integer
|
|
format: int64
|
|
numSeries:
|
|
type: integer
|
|
format: int64
|
|
numChunks:
|
|
type: integer
|
|
format: int64
|
|
numTombstones:
|
|
type: integer
|
|
format: int64
|
|
numFloatSamples:
|
|
type: integer
|
|
format: int64
|
|
numHistogramSamples:
|
|
type: integer
|
|
format: int64
|
|
additionalProperties: false
|
|
description: Block statistics.
|
|
BlockMetaCompaction:
|
|
type: object
|
|
properties:
|
|
level:
|
|
type: integer
|
|
format: int64
|
|
sources:
|
|
type: array
|
|
items:
|
|
type: string
|
|
parents:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/BlockDesc'
|
|
failed:
|
|
type: boolean
|
|
deletable:
|
|
type: boolean
|
|
hints:
|
|
type: array
|
|
items:
|
|
type: string
|
|
required:
|
|
- level
|
|
additionalProperties: false
|
|
description: Block compaction metadata.
|
|
BlockMeta:
|
|
type: object
|
|
properties:
|
|
ulid:
|
|
type: string
|
|
minTime:
|
|
type: integer
|
|
format: int64
|
|
maxTime:
|
|
type: integer
|
|
format: int64
|
|
stats:
|
|
$ref: '#/components/schemas/BlockStats'
|
|
compaction:
|
|
$ref: '#/components/schemas/BlockMetaCompaction'
|
|
version:
|
|
type: integer
|
|
format: int64
|
|
required:
|
|
- ulid
|
|
- minTime
|
|
- maxTime
|
|
- compaction
|
|
- version
|
|
additionalProperties: false
|
|
description: Block metadata.
|
|
StatusTSDBBlocksData:
|
|
type: object
|
|
properties:
|
|
blocks:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/BlockMeta'
|
|
required:
|
|
- blocks
|
|
additionalProperties: false
|
|
description: TSDB blocks information.
|
|
StatusTSDBBlocksOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/StatusTSDBBlocksData'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for status TSDB blocks endpoint.
|
|
StatusWALReplayData:
|
|
type: object
|
|
properties:
|
|
min:
|
|
type: integer
|
|
format: int64
|
|
max:
|
|
type: integer
|
|
format: int64
|
|
current:
|
|
type: integer
|
|
format: int64
|
|
required:
|
|
- min
|
|
- max
|
|
- current
|
|
additionalProperties: false
|
|
description: WAL replay status.
|
|
StatusWALReplayOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/StatusWALReplayData'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for status WAL replay endpoint.
|
|
DeleteSeriesOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
additionalProperties: false
|
|
description: Response body containing only status.
|
|
CleanTombstonesOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
additionalProperties: false
|
|
description: Response body containing only status.
|
|
DataStruct:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
required:
|
|
- name
|
|
additionalProperties: false
|
|
description: Generic data structure with a name field.
|
|
SnapshotOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
$ref: '#/components/schemas/DataStruct'
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body for snapshot endpoint.
|
|
Notification:
|
|
type: object
|
|
properties:
|
|
text:
|
|
type: string
|
|
date:
|
|
type: string
|
|
format: date-time
|
|
active:
|
|
type: boolean
|
|
required:
|
|
- text
|
|
- date
|
|
- active
|
|
additionalProperties: false
|
|
description: Server notification.
|
|
NotificationsOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Notification'
|
|
example:
|
|
- active: true
|
|
date: "2023-07-21T20:00:00.000Z"
|
|
text: Server is running
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Response body with an array of notifications.
|
|
FeaturesOutputBody:
|
|
type: object
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- success
|
|
- error
|
|
description: Response status.
|
|
example: success
|
|
data:
|
|
description: Response data (structure varies by endpoint).
|
|
example:
|
|
result: ok
|
|
warnings:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were warnings while executing the request. There will still be data in the data field.
|
|
infos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Only set if there were info-level annotations while executing the request.
|
|
required:
|
|
- status
|
|
- data
|
|
additionalProperties: false
|
|
description: Generic response body.
|
|
tags:
|
|
- name: query
|
|
summary: Query
|
|
description: Query and evaluate PromQL expressions.
|
|
- name: metadata
|
|
summary: Metadata
|
|
description: Retrieve metric metadata such as type and unit.
|
|
- name: labels
|
|
summary: Labels
|
|
description: Query label names and values.
|
|
- name: series
|
|
summary: Series
|
|
description: Query and manage time series.
|
|
- name: targets
|
|
summary: Targets
|
|
description: Retrieve target and scrape pool information.
|
|
- name: rules
|
|
summary: Rules
|
|
description: Query recording and alerting rules.
|
|
- name: alerts
|
|
summary: Alerts
|
|
description: Query active alerts and alertmanager discovery.
|
|
- name: status
|
|
summary: Status
|
|
description: Retrieve server status and configuration.
|
|
- name: admin
|
|
summary: Admin
|
|
description: Administrative operations for TSDB management.
|
|
- name: features
|
|
summary: Features
|
|
description: Query enabled features.
|
|
- name: remote
|
|
summary: Remote Storage
|
|
description: Remote read and write endpoints.
|
|
- name: otlp
|
|
summary: OTLP
|
|
description: OpenTelemetry Protocol metrics ingestion.
|
|
- name: notifications
|
|
summary: Notifications
|
|
description: Server notifications and events.
|