grafana/docs/sources/http_api/data_source.md

239 lines
5.0 KiB
Markdown
Raw Normal View History

+++
title = "Data source HTTP API "
description = "Grafana Data source HTTP API"
keywords = ["grafana", "http", "documentation", "api", "data source"]
aliases = ["/http_api/datasource/"]
type = "docs"
[menu.docs]
name = "Data source"
parent = "http_api"
+++
2016-02-03 00:59:22 -06:00
2016-02-05 03:47:34 -06:00
# Data source API
2016-02-03 00:59:22 -06:00
2016-02-05 03:47:34 -06:00
## Get all datasources
2016-02-03 00:59:22 -06:00
`GET /api/datasources`
**Example Request**:
GET /api/datasources HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
[
{
"id":1,
"orgId":1,
"name":"datasource_elastic",
"type":"elasticsearch",
"access":"proxy",
"url":"http://mydatasource.com",
"password":"",
"user":"",
"database":"grafana-dash",
"basicAuth":false,
"basicAuthUser":"",
"basicAuthPassword":"",
"isDefault":false,
"jsonData":null
}
]
2016-02-05 03:47:34 -06:00
## Get a single data sources by Id
2016-02-03 00:59:22 -06:00
`GET /api/datasources/:datasourceId`
**Example Request**:
GET /api/datasources/1 HTTP/1.1
2016-03-08 04:19:52 -06:00
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
{
"id":1,
"orgId":1,
"name":"test_datasource",
"type":"graphite",
"access":"proxy",
"url":"http://mydatasource.com",
"password":"",
"user":"",
"database":"",
"basicAuth":false,
"basicAuthUser":"",
"basicAuthPassword":"",
"isDefault":false,
"jsonData":null
}
2016-03-10 03:31:10 -06:00
## Get a single data source by Name
2016-03-08 04:19:52 -06:00
`GET /api/datasources/name/:name`
**Example Request**:
GET /api/datasources/name/test_datasource HTTP/1.1
2016-02-03 00:59:22 -06:00
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
{
"id":1,
"orgId":1,
"name":"test_datasource",
"type":"graphite",
"access":"proxy",
"url":"http://mydatasource.com",
"password":"",
"user":"",
"database":"",
"basicAuth":false,
"basicAuthUser":"",
"basicAuthPassword":"",
"isDefault":false,
"jsonData":null
}
2016-03-10 03:31:10 -06:00
## Get data source Id by Name
`GET /api/datasources/id/:name`
**Example Request**:
GET /api/datasources/id/test_datasource HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
{
"id":1
}
2016-02-05 03:47:34 -06:00
## Create data source
2016-02-03 00:59:22 -06:00
`POST /api/datasources`
**Example Request**:
POST /api/datasources HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
{
"name":"test_datasource",
"type":"graphite",
"url":"http://mydatasource.com",
"access":"proxy",
"basicAuth":false
}
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
{"id":1,"message":"Datasource added", "name": "test_datasource"}
2016-02-03 00:59:22 -06:00
2016-02-05 03:47:34 -06:00
## Update an existing data source
2016-02-03 00:59:22 -06:00
`PUT /api/datasources/:datasourceId`
**Example Request**:
PUT /api/datasources/1 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
{
"id":1,
"orgId":1,
"name":"test_datasource",
"type":"graphite",
"access":"proxy",
"url":"http://mydatasource.com",
"password":"",
"user":"",
"database":"",
"basicAuth":true,
"basicAuthUser":"basicuser",
"basicAuthPassword":"basicuser",
"isDefault":false,
"jsonData":null
}
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
{"message":"Datasource updated", "id": 1, "name": "test_datasource"}
2016-02-03 00:59:22 -06:00
2017-02-14 03:40:55 -06:00
## Delete an existing data source by id
2016-02-03 00:59:22 -06:00
`DELETE /api/datasources/:datasourceId`
**Example Request**:
DELETE /api/datasources/1 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
{"message":"Data source deleted"}
2017-02-14 03:40:55 -06:00
## Delete an existing data source by name
`DELETE /api/datasources/name/:datasourceName`
**Example Request**:
DELETE /api/datasources/name/test_datasource HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
**Example Response**:
HTTP/1.1 200
Content-Type: application/json
{"message":"Data source deleted"}
2016-02-03 00:59:22 -06:00
## Data source proxy calls
`GET /api/datasources/proxy/:datasourceId/*`
Proxies all calls to the actual datasource.