/usr/share/grafana/docs/sources/developer-resources/api-reference/http-api
--- aliases: - ../../../http_api/correlations/ # /docs/grafana/next/http_api/correlations/ - ../../../developers/http_api/correlations/ # /docs/grafana/next/developers/http_api/correlations/ canonical: https://grafana.com/docs/grafana/latest/developer-resources/api-reference/http-api/correlations/ description: Grafana Correlations HTTP API keywords: - grafana - http - documentation - api - correlations - Glue labels: products: - enterprise - oss - cloud title: '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:** ```http 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", "type": "query", "config": { "field": "message", "target": {}, } } ``` JSON body schema: - **targetUID** – Target data source uid. - **label** – A label for the correlation. - **description** – A description for the correlation. **Example response:** ```http 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", "type": "query", "config": { "field": "message", "target": {}, } } } ``` 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:** ```http DELETE /api/datasources/uid/uyBf2637k/correlations/J6gn7d31L HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk ``` **Example response:** ```http 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:** ```http 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 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", "type": "query", "config": { "field": "message", "target": {} } } } ``` Status codes: - **200** – OK - **400** – Bad request - **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 ## Get single correlation `GET /api/datasources/uid/:sourceUID/correlations/:correlationUID` Gets a single correlation. **Example request:** ```http GET /api/datasources/uid/uyBf2637k/correlations/J6gn7d31L HTTP/1.1 Accept: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk ``` **Example response:** ```http HTTP/1.1 200 Content-Type: application/json { "description": "Logs to Traces", "label": "My Label", "sourceUID": "uyBf2637k", "targetUID": "PDDA8E780A17E7EF1", "uid": "J6gn7d31L", "provisioned": false, "type": "query", "config": { "field": "message", "target": {}, } } ``` Status codes: - **200** – OK - **401** – Unauthorized - **404** – Not found, either source data source or correlation were not found - **500** – Internal error ## Get all correlations originating from a given data source `GET /api/datasources/uid/:sourceUID/correlations` Get all correlations originating from the data source identified by the given `sourceUID` in the path. **Example request:** ```http GET /api/datasources/uid/uyBf2637k/correlations HTTP/1.1 Accept: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk ``` **Example response:** ```http HTTP/1.1 200 Content-Type: application/json [ { "description": "Logs to Traces", "label": "My Label", "sourceUID": "uyBf2637k", "targetUID": "PDDA8E780A17E7EF1", "uid": "J6gn7d31L", "provisioned": false, "type": "query", "config": { "field": "message", "target": {}, } }, { "description": "Logs to Metrics", "label": "Another Label", "sourceUID": "uyBf2637k", "targetUID": "P15396BDD62B2BE29", "uid": "uWCpURgVk", "provisioned": false, "type": "query", "config": { "field": "message", "target": {}, } } ] ``` Status codes: - **200** – OK - **401** – Unauthorized - **404** – Not found, either source data source is not found or no correlation exists originating from the given data source - **500** – Internal error ## Get all correlations `GET /api/datasources/correlations` Get all correlations. Query parameters: - **page** - Optional. Specify which page number to return. Use the limit parameter to specify the number of correlations per page. The default is page 1. - **limit** - Optional. Limits the number of returned correlations per page. The default is 100 correlations per page. The maximum limit is 1000 correlations in a page. - **sourceUID** - Optional. Specify a source datasource UID to filter by. This can be repeated to filter by multiple datasources. **Example request:** ```http GET /api/datasources/correlations HTTP/1.1 Accept: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk ``` **Example response:** ```http HTTP/1.1 200 Content-Type: application/json [ { "description": "Prometheus to Loki", "label": "My Label", "sourceUID": "uyBf2637k", "targetUID": "PDDA8E780A17E7EF1", "uid": "J6gn7d31L", "provisioned": false, "type": "query", "config": { "field": "message", "target": {}, } }, { "description": "Loki to Tempo", "label": "Another Label", "sourceUID": "PDDA8E780A17E7EF1", "targetUID": "P15396BDD62B2BE29", "uid": "uWCpURgVk", "provisioned": false, "type": "query", "config": { "field": "message", "target": {}, } } ] ``` Status codes: - **200** – OK - **401** – Unauthorized - **404** – Not found, no correlation is found - **500** – Internal error
.
Edit
..
Edit
_index.md
Edit
access_control.md
Edit
admin.md
Edit
alerting_provisioning.md
Edit
annotations.md
Edit
apis.md
Edit
authentication.md
Edit
correlations.md
Edit
dashboard.md
Edit
dashboard_permissions.md
Edit
dashboard_public.md
Edit
dashboard_versions.md
Edit
data_source.md
Edit
datasource_lbac_rules.md
Edit
datasource_permissions.md
Edit
examples
Edit
folder.md
Edit
folder_dashboard_search.md
Edit
folder_permissions.md
Edit
library_element.md
Edit
licensing.md
Edit
org.md
Edit
other.md
Edit
playlist.md
Edit
preferences.md
Edit
query_and_resource_caching.md
Edit
query_history.md
Edit
reporting.md
Edit
secrets_management.md
Edit
serviceaccount.md
Edit
short_url.md
Edit
snapshot.md
Edit
sso-settings.md
Edit
team.md
Edit
team_sync.md
Edit
user.md
Edit