Files
Giordano Ricci 09c4dbdb9f Correlations: Add UpdateCorrelation HTTP API (#52444)
* Correlations: add UpdateCorrelation HTTP API

* handle correlation not found

* add tests

* fix lint errors

* add bad request to API spec

* change casing

* fix casing in docs

* fix tests

* update spec
2022-08-03 14:18:51 +01:00

3.3 KiB
Raw Blame History

aliases description keywords title
/docs/grafana/latest/developers/http_api/correlations/
/docs/grafana/latest/http_api/correlations/
Grafana Correlations HTTP API
grafana
http
documentation
api
correlations
Glue
Correlations HTTP API

Correlations API

This API can be used to define correlations between data sources.

Create correlations

POST /api/datasources/uid/:sourceUID/correlations

Creates a correlation between two data sources - the source data source identified by sourceUID in the path, and the target data source which is specified in the body.

Example request:

POST /api/datasources/uid/uyBf2637k/correlations HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
{
	"targetUID": "PDDA8E780A17E7EF1",
	"label": "My Label",
	"description": "Logs to Traces",
}

JSON body schema:

  • targetUID Target data source uid.
  • label A label for the correlation.
  • description A description for the correlation.

Example response:

HTTP/1.1 200
Content-Type: application/json
{
  "message": "Correlation created",
  "result": {
    "description": "Logs to Traces",
    "label": "My Label",
    "sourceUID": "uyBf2637k",
    "targetUID": "PDDA8E780A17E7EF1",
    "uid": "50xhMlg9k"
  }
}

Status codes:

  • 200 OK
  • 400 - Errors (invalid JSON, missing or invalid fields)
  • 401 Unauthorized
  • 403 Forbidden, source data source is read-only
  • 404 Not found, either source or target data source could not be found
  • 500 Internal error

Delete correlations

DELETE /api/datasources/uid/:sourceUID/correlations/:correlationUID

Deletes a correlation.

Example request:

DELETE /api/datasources/uid/uyBf2637k/correlations/J6gn7d31L HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

Example response:

HTTP/1.1 200
Content-Type: application/json
{
  "message": "Correlation deleted"
}

Status codes:

  • 200 OK
  • 401 Unauthorized
  • 403 Forbidden, data source is read-only
  • 404 Correlation not found
  • 500 Internal error

Update correlations

PATCH /api/datasources/uid/:sourceUID/correlations/:correlationUID

Updates a correlation.

Example request:

POST /api/datasources/uid/uyBf2637k/correlations/J6gn7d31L HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
{
	"label": "My Label",
	"description": "Logs to Traces",
}

JSON body schema:

  • label A label for the correlation.
  • description A description for the correlation.

Example response:

HTTP/1.1 200
Content-Type: application/json
{
  "message": "Correlation updated",
  "result": {
    "description": "Logs to Traces",
    "label": "My Label",
    "sourceUID": "uyBf2637k",
    "targetUID": "PDDA8E780A17E7EF1",
    "uid": "J6gn7d31L"
  }
}

Status codes:

  • 200 OK
  • 401 Unauthorized
  • 403 Forbidden, source data source is read-only
  • 404 Not found, either source or target data source could not be found
  • 500 Internal error