grafana/docs/sources/packages_api/runtime/datasourcesrv.md

68 lines
1.8 KiB
Markdown

+++
# -----------------------------------------------------------------------
# Do not edit this file. It is automatically generated by API Documenter.
# -----------------------------------------------------------------------
title = "DataSourceSrv"
keywords = ["grafana","documentation","sdk","@grafana/runtime"]
type = "docs"
+++
## DataSourceSrv interface
This is the entry point for communicating with a datasource that is added as a plugin (both external and internal). Via this service you will get access to the [DataSourceApi](./data/datasourceapi.md) that have a rich API for communicating with the datasource.
<b>Signature</b>
```typescript
export interface DataSourceSrv
```
<b>Import</b>
```typescript
import { DataSourceSrv } from '@grafana/runtime';
```
<b>Methods</b>
| Method | Description |
| --- | --- |
| [get(name, scopedVars)](#get-method) | |
| [getDataSourceSettingsByUid(uid)](#getdatasourcesettingsbyuid-method) | Returns metadata based on UID. |
### get method
<b>Signature</b>
```typescript
get(name?: string | null, scopedVars?: ScopedVars): Promise<DataSourceApi>;
```
<b>Parameters</b>
| Parameter | Type | Description |
| --- | --- | --- |
| name | <code>string &#124; null</code> | name of the datasource plugin you want to use. |
| scopedVars | <code>ScopedVars</code> | variables used to interpolate a templated passed as name. |
<b>Returns:</b>
`Promise<DataSourceApi>`
### getDataSourceSettingsByUid method
Returns metadata based on UID.
<b>Signature</b>
```typescript
getDataSourceSettingsByUid(uid: string): DataSourceInstanceSettings | undefined;
```
<b>Parameters</b>
| Parameter | Type | Description |
| --- | --- | --- |
| uid | <code>string</code> | |
<b>Returns:</b>
`DataSourceInstanceSettings | undefined`