Data Sources API
The Data Sources API provides endpoints for managing data source configurations in Grafana.Get All Data Sources
Retrieve all data sources for the current organization.Data source internal ID
Data source unique identifier
Data source name
Data source type (e.g., “prometheus”, “mysql”, “postgres”)
Access mode: “proxy” (via Grafana backend) or “direct” (from browser)
Data source URL
Whether this is the default data source
Get Data Source by UID
Retrieve a single data source by its UID.Data source unique identifier
Create Data Source
Create a new data source.Data source name
Data source type (e.g., “prometheus”, “mysql”, “postgres”)
Data source URL
Access mode: “proxy” or “direct”
Database name (for database data sources)
Database user (for database data sources)
Enable basic authentication
Basic auth username
Set as default data source
Additional data source configuration (varies by type)
Update Data Source by UID
Update an existing data source.Data source unique identifier
Delete Data Source by UID
Delete a data source by its UID.Data source unique identifier
Get Data Source by Name
Retrieve a data source by its name.Data source name
This endpoint is deprecated. Use the UID-based endpoint instead.
Get Data Source ID by Name
Retrieve a data source ID by its name.Data source name
This endpoint is deprecated. Use the UID-based endpoint instead.
Check Data Source Health
Send a health check request to a data source.Data source unique identifier
Health status: “OK”, “ERROR”, or “UNKNOWN”
Health check message
Additional health check details (optional)
Permissions
If you are running Grafana Enterprise with Fine-grained access control enabled:- Read: Requires
datasources:readpermission - Create: Requires
datasources:createpermission - Update: Requires
datasources:writepermission with scopedatasources:uid:<uid> - Delete: Requires
datasources:deletepermission with scopedatasources:uid:<uid> - Query: Requires
datasources:querypermission with scopedatasources:uid:<uid>