Skip to main content

Data sources & Prometheus

Generated reference

This page is generated from the OpenAPI spec (scripts/generate_api_docs.py). Do not edit by hand — regenerate when the API changes.

Data sources connect Skylogs to monitoring systems. The Prometheus endpoints let clients browse labels, rules, and currently firing alerts of a connected Prometheus.

All endpoints require Authorization: Bearer <accessToken> — see Authentication.

Data Sources​

EndpointSummary
GET /api/v1/data-sourceGet list of data sources
POST /api/v1/data-sourceCreate new data source
GET /api/v1/data-source/typesGet available data source types
GET /api/v1/data-source/{id}Get data source by ID
PUT /api/v1/data-source/{id}Update data source
DELETE /api/v1/data-source/{id}Delete data source
GET /api/v1/data-source/status/{id}Check if data source is connected

GET /api/v1/data-source​

Get list of data sources

Parameters

NameInRequiredTypeDescription
pagequeryintegerPage number
perPagequeryinteger
namequerystring

Responses: 200 List of data sources

POST /api/v1/data-source​

Create new data source

Request body (application/json)

FieldTypeRequiredDescription
namestring✅Example: Production Prometheus
typestring (prometheus | sentry | grafana | pmm | zabbix | splunk | elastic)✅Example: prometheus
urlstring✅Example: https://prometheus.example.com
api_tokenstring
usernamestring
passwordstring

Responses: 201 Data source created · 422 Validation error

GET /api/v1/data-source/types​

Get available data source types

Responses: 200 List of data source types

GET /api/v1/data-source/{id}​

Get data source by ID

Parameters

NameInRequiredTypeDescription
idpath✅string

Responses: 200 Data source details · 404 Not found

PUT /api/v1/data-source/{id}​

Update data source

Parameters

NameInRequiredTypeDescription
idpath✅string

Request body (application/json)

FieldTypeRequiredDescription
namestring✅
typestring✅
urlstring✅
api_tokenstring
usernamestring
passwordstring

Responses: 200 Data source updated · 404 Not found

DELETE /api/v1/data-source/{id}​

Delete data source

Parameters

NameInRequiredTypeDescription
idpath✅string

Responses: 200 Data source deleted · 404 Not found

GET /api/v1/data-source/status/{id}​

Check if data source is connected

Parameters

NameInRequiredTypeDescription
idpath✅string

Responses: 200 Connection status

Prometheus​

EndpointSummary
GET /api/v1/prometheus/rulesGet Prometheus alert rule names
GET /api/v1/prometheus/labelsGet Prometheus label names
GET /api/v1/prometheus/label-values/{label}Get values for a Prometheus label
GET /api/v1/prometheus/triggeredGet currently firing Prometheus alerts

GET /api/v1/prometheus/rules​

Get Prometheus alert rule names

Parameters

NameInRequiredTypeDescription
data_source_idquery✅stringPrometheus data source id

Responses: 200 External rule names (cached)

GET /api/v1/prometheus/labels​

Get Prometheus label names

Responses: 200 Label names

GET /api/v1/prometheus/label-values/{label}​

Get values for a Prometheus label

Parameters

NameInRequiredTypeDescription
labelpath✅string

Responses: 200 Label values

GET /api/v1/prometheus/triggered​

Get currently firing Prometheus alerts

Responses: 200 Triggered alerts from Prometheus (cached ~5s)