Documentation ¶
Index ¶
- type Alert
- type AlertNotification
- type Annotation
- type BuiltInRoleAssignment
- type Client
- func (c *Client) AddDatasourcePermission(id int64, item *DatasourcePermissionAddPayload) error
- func (c *Client) AddOrgUser(orgID int64, user, role string) error
- func (c *Client) AddTeam(name string, email string) (int64, error)
- func (c *Client) AddTeamMember(id int64, userID int64) error
- func (c *Client) Alert(id int64) (Alert, error)
- func (c *Client) AlertNotification(id int64) (*AlertNotification, error)
- func (c *Client) AlertNotifications() ([]AlertNotification, error)
- func (c *Client) Alerts(params url.Values) ([]Alert, error)
- func (c *Client) Annotations(params url.Values) ([]Annotation, error)
- func (c *Client) CreateAPIKey(request CreateAPIKeyRequest) (CreateAPIKeyResponse, error)
- func (c *Client) CreateUser(user User) (int64, error)
- func (c *Client) Dashboard(slug string) (*Dashboard, error)
- func (c *Client) DashboardByUID(uid string) (*Dashboard, error)
- func (c *Client) DashboardPermissions(id int64) ([]*DashboardPermission, error)
- func (c *Client) Dashboards() ([]FolderDashboardSearchResponse, error)
- func (c *Client) DashboardsByIDs(ids []int64) ([]FolderDashboardSearchResponse, error)
- func (c *Client) DataSource(id int64) (*DataSource, error)
- func (c *Client) DatasourcePermissions(id int64) (*DatasourcePermissionsResponse, error)
- func (c *Client) DeleteAPIKey(id int64) (DeleteAPIKeyResponse, error)
- func (c *Client) DeleteAlertNotification(id int64) error
- func (c *Client) DeleteAnnotation(id int64) (string, error)
- func (c *Client) DeleteAnnotationByRegionID(id int64) (string, error)
- func (c *Client) DeleteBuiltInRoleAssignment(builtInRole BuiltInRoleAssignment) error
- func (c *Client) DeleteDashboard(slug string) error
- func (c *Client) DeleteDashboardByUID(uid string) error
- func (c *Client) DeleteDataSource(id int64) error
- func (c *Client) DeleteFolder(id string) error
- func (c *Client) DeleteLibraryPanel(uid string) (*LibraryPanelDeleteResponse, error)
- func (c *Client) DeleteOrg(id int64) error
- func (c *Client) DeletePlaylist(id int) error
- func (c *Client) DeleteReport(id int64) error
- func (c *Client) DeleteRole(uid string, global bool) error
- func (c *Client) DeleteStack(stackSlug string) error
- func (c *Client) DeleteTeam(id int64) error
- func (c *Client) DeleteTeamGroup(id int64, groupID string) error
- func (c *Client) DeleteUser(id int64) error
- func (c *Client) DisableDatasourcePermissions(id int64) error
- func (c *Client) EnableDatasourcePermissions(id int64) error
- func (c *Client) Folder(id int64) (*Folder, error)
- func (c *Client) FolderByUID(uid string) (*Folder, error)
- func (c *Client) FolderDashboardSearch(params map[string]string) (resp []FolderDashboardSearchResponse, err error)
- func (c *Client) FolderPermissions(fid string) ([]*FolderPermission, error)
- func (c *Client) Folders() ([]Folder, error)
- func (c *Client) GetAPIKeys(includeExpired bool) ([]*GetAPIKeysResponse, error)
- func (c *Client) GetBuiltInRoleAssignments() (map[string][]*Role, error)
- func (c *Client) GetRole(uid string) (*Role, error)
- func (c *Client) LibraryPanelByName(name string) (*LibraryPanel, error)
- func (c *Client) LibraryPanelByUID(uid string) (*LibraryPanel, error)
- func (c *Client) LibraryPanelConnectedDashboards(uid string) ([]FolderDashboardSearchResponse, error)
- func (c *Client) LibraryPanelConnections(uid string) (*[]LibraryPanelConnection, error)
- func (c *Client) LibraryPanels() ([]LibraryPanel, error)
- func (c *Client) NewAlertNotification(a *AlertNotification) (int64, error)
- func (c *Client) NewAnnotation(a *Annotation) (int64, error)
- func (c *Client) NewBuiltInRoleAssignment(builtInRoleAssignment BuiltInRoleAssignment) (*BuiltInRoleAssignment, error)
- func (c *Client) NewDashboard(dashboard Dashboard) (*DashboardSaveResponse, error)
- func (c *Client) NewDataSource(s *DataSource) (int64, error)
- func (c *Client) NewFolder(title string) (Folder, error)
- func (c *Client) NewGraphiteAnnotation(gfa *GraphiteAnnotation) (int64, error)
- func (c *Client) NewLibraryPanel(panel LibraryPanel) (*LibraryPanel, error)
- func (c *Client) NewOrg(name string) (int64, error)
- func (c *Client) NewPlaylist(playlist Playlist) (int, error)
- func (c *Client) NewReport(report Report) (int64, error)
- func (c *Client) NewRole(role Role) (*Role, error)
- func (c *Client) NewSnapshot(snapshot Snapshot) (*SnapshotCreateResponse, error)
- func (c *Client) NewStack(stack *CreateStackInput) (int64, error)
- func (c *Client) NewTeamGroup(id int64, groupID string) error
- func (c *Client) Org(id int64) (Org, error)
- func (c *Client) OrgByName(name string) (Org, error)
- func (c *Client) OrgUsers(orgID int64) ([]OrgUser, error)
- func (c *Client) OrgUsersCurrent() ([]OrgUser, error)
- func (c *Client) Orgs() ([]Org, error)
- func (c *Client) PatchAnnotation(id int64, a *Annotation) (string, error)
- func (c *Client) PatchLibraryPanel(uid string, panel LibraryPanel) (*LibraryPanel, error)
- func (c *Client) PauseAlert(id int64) (PauseAlertResponse, error)
- func (c *Client) PauseAllAlerts() (PauseAllAlertsResponse, error)
- func (c *Client) Playlist(id int) (*Playlist, error)
- func (c *Client) RemoveDatasourcePermission(id, permissionID int64) error
- func (c *Client) RemoveMemberFromTeam(id int64, userID int64) error
- func (c *Client) RemoveOrgUser(orgID, userID int64) error
- func (c *Client) Report(id int64) (*Report, error)
- func (c *Client) SaveDashboard(model map[string]interface{}, overwrite bool) (*DashboardSaveResponse, error)
- func (c *Client) SearchTeam(query string) (*SearchTeam, error)
- func (c *Client) StackByID(id int64) (Stack, error)
- func (c *Client) StackBySlug(slug string) (Stack, error)
- func (c *Client) Stacks() (StackItems, error)
- func (c *Client) Team(id int64) (*Team, error)
- func (c *Client) TeamGroups(id int64) ([]TeamGroup, error)
- func (c *Client) TeamMembers(id int64) ([]*TeamMember, error)
- func (c *Client) TeamPreferences(id int64) (*Preferences, error)
- func (c *Client) UpdateAlertNotification(a *AlertNotification) error
- func (c *Client) UpdateAnnotation(id int64, a *Annotation) (string, error)
- func (c *Client) UpdateDashboardPermissions(id int64, items *PermissionItems) error
- func (c *Client) UpdateDataSource(s *DataSource) error
- func (c *Client) UpdateFolder(id string, name string) error
- func (c *Client) UpdateFolderPermissions(fid string, items *PermissionItems) error
- func (c *Client) UpdateOrg(id int64, name string) error
- func (c *Client) UpdateOrgUser(orgID, userID int64, role string) error
- func (c *Client) UpdatePlaylist(playlist Playlist) error
- func (c *Client) UpdateReport(report Report) error
- func (c *Client) UpdateRole(role Role) error
- func (c *Client) UpdateStack(id int64, stack *UpdateStackInput) error
- func (c *Client) UpdateTeam(id int64, name string, email string) error
- func (c *Client) UpdateTeamPreferences(id int64, preferences Preferences) error
- func (c *Client) UpdateUserPassword(id int64, password string) error
- func (c *Client) UpdateUserPermissions(id int64, isAdmin bool) error
- func (c *Client) User(id int64) (user User, err error)
- func (c *Client) UserByEmail(email string) (user User, err error)
- func (c *Client) UserUpdate(u User) error
- func (c *Client) Users() (users []UserSearch, err error)
- type Config
- type CreateAPIKeyRequest
- type CreateAPIKeyResponse
- type CreateStackInput
- type Dashboard
- type DashboardMeta
- type DashboardPermission
- type DashboardSaveResponse
- type DataSource
- type DatasourcePermission
- type DatasourcePermissionAddPayload
- type DatasourcePermissionType
- type DatasourcePermissionsResponse
- type DeleteAPIKeyResponse
- type Folder
- type FolderDashboardSearchResponse
- type FolderPermission
- type GetAPIKeysResponse
- type GraphiteAnnotation
- type JSONData
- type LibraryPanel
- type LibraryPanelConnection
- type LibraryPanelCreateResponse
- type LibraryPanelDeleteResponse
- type LibraryPanelGetAllResponse
- type LibraryPanelMeta
- type LibraryPanelMetaUser
- type Org
- type OrgUser
- type PauseAlertRequest
- type PauseAlertResponse
- type PauseAllAlertsResponse
- type Permission
- type PermissionItem
- type PermissionItems
- type Playlist
- type PlaylistItem
- type Preferences
- type Report
- type ReportOptions
- type ReportSchedule
- type ReportTimeRange
- type Role
- type SearchTeam
- type SecureJSONData
- type Snapshot
- type SnapshotCreateResponse
- type Stack
- type StackItems
- type Team
- type TeamGroup
- type TeamMember
- type UpdateStackInput
- type User
- type UserSearch
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Alert ¶
type Alert struct { ID int64 `json:"id,omitempty"` DashboardID int64 `json:"dashboardId,omitempty"` DashboardUID string `json:"dashboardUid,omitempty"` DashboardSlug string `json:"dashboardSlug,omitempty"` PanelID int64 `json:"panelId,omitempty"` Name string `json:"name,omitempty"` State string `json:"state,omitempty"` NewStateDate string `json:"newStateDate,omitempty"` EvalDate string `json:"evalDate,omitempty"` ExecutionError string `json:"executionError,omitempty"` URL string `json:"url,omitempty"` }
Alert represents a Grafana API Alert
type AlertNotification ¶
type AlertNotification struct { ID int64 `json:"id,omitempty"` UID string `json:"uid"` Name string `json:"name"` Type string `json:"type"` IsDefault bool `json:"isDefault"` DisableResolveMessage bool `json:"disableResolveMessage"` SendReminder bool `json:"sendReminder"` Frequency string `json:"frequency"` Settings interface{} `json:"settings"` SecureFields interface{} `json:"secureFields,omitempty"` SecureSettings interface{} `json:"secureSettings,omitempty"` }
AlertNotification represents a Grafana alert notification.
type Annotation ¶
type Annotation struct { ID int64 `json:"id,omitempty"` AlertID int64 `json:"alertId,omitempty"` DashboardID int64 `json:"dashboardId"` PanelID int64 `json:"panelId"` UserID int64 `json:"userId,omitempty"` UserName string `json:"userName,omitempty"` NewState string `json:"newState,omitempty"` PrevState string `json:"prevState,omitempty"` Time int64 `json:"time"` TimeEnd int64 `json:"timeEnd,omitempty"` Text string `json:"text"` Metric string `json:"metric,omitempty"` RegionID int64 `json:"regionId,omitempty"` Type string `json:"type,omitempty"` Tags []string `json:"tags,omitempty"` IsRegion bool `json:"isRegion,omitempty"` }
Annotation represents a Grafana API Annotation
type BuiltInRoleAssignment ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client is a Grafana API client.
func (*Client) AddDatasourcePermission ¶
func (c *Client) AddDatasourcePermission(id int64, item *DatasourcePermissionAddPayload) error
AddDatasourcePermission adds the given permission item
func (*Client) AddOrgUser ¶
AddOrgUser adds a user to an org with the specified role.
func (*Client) AddTeam ¶
AddTeam makes a new team email arg is an optional value. If you don't want to set email, please set "" (empty string). When team creation is successful, returns the team ID.
func (*Client) AddTeamMember ¶
AddTeamMember adds a user to the Grafana team whose ID it's passed.
func (*Client) AlertNotification ¶
func (c *Client) AlertNotification(id int64) (*AlertNotification, error)
AlertNotification fetches and returns a Grafana alert notification.
func (*Client) AlertNotifications ¶
func (c *Client) AlertNotifications() ([]AlertNotification, error)
AlertNotifications fetches and returns Grafana alert notifications.
func (*Client) Annotations ¶
func (c *Client) Annotations(params url.Values) ([]Annotation, error)
Annotations fetches the annotations queried with the params it's passed
func (*Client) CreateAPIKey ¶
func (c *Client) CreateAPIKey(request CreateAPIKeyRequest) (CreateAPIKeyResponse, error)
CreateAPIKey creates a new Grafana API key.
func (*Client) CreateUser ¶
CreateUser creates a Grafana user.
func (*Client) Dashboard ¶
Dashboard will be removed. Deprecated: Starting from Grafana v5.0. Use DashboardByUID instead.
func (*Client) DashboardByUID ¶
DashboardByUID gets a dashboard by UID.
func (*Client) DashboardPermissions ¶
func (c *Client) DashboardPermissions(id int64) ([]*DashboardPermission, error)
DashboardPermissions fetches and returns the permissions for the dashboard whose ID it's passed.
func (*Client) Dashboards ¶
func (c *Client) Dashboards() ([]FolderDashboardSearchResponse, error)
Dashboards fetches and returns all dashboards.
func (*Client) DashboardsByIDs ¶
func (c *Client) DashboardsByIDs(ids []int64) ([]FolderDashboardSearchResponse, error)
DashboardsByIDs uses the folder and dashboard search endpoint to find dashboards by list of dashboard IDs.
func (*Client) DataSource ¶
func (c *Client) DataSource(id int64) (*DataSource, error)
DataSource fetches and returns the Grafana data source whose ID it's passed.
func (*Client) DatasourcePermissions ¶
func (c *Client) DatasourcePermissions(id int64) (*DatasourcePermissionsResponse, error)
DatasourcePermissions fetches and returns the permissions for the datasource whose ID it's passed.
func (*Client) DeleteAPIKey ¶
func (c *Client) DeleteAPIKey(id int64) (DeleteAPIKeyResponse, error)
DeleteAPIKey deletes the Grafana API key with the specified ID.
func (*Client) DeleteAlertNotification ¶
DeleteAlertNotification deletes a Grafana alert notification.
func (*Client) DeleteAnnotation ¶
DeleteAnnotation deletes the annotation of the ID it is passed
func (*Client) DeleteAnnotationByRegionID ¶
DeleteAnnotationByRegionID deletes the annotation corresponding to the region ID it is passed
func (*Client) DeleteBuiltInRoleAssignment ¶
func (c *Client) DeleteBuiltInRoleAssignment(builtInRole BuiltInRoleAssignment) error
DeleteBuiltInRoleAssignment remove the built-in role assignments. Available only in Grafana Enterprise 8.+.
func (*Client) DeleteDashboard ¶
DeleteDashboard will be removed. Deprecated: Starting from Grafana v5.0. Use DeleteDashboardByUID instead.
func (*Client) DeleteDashboardByUID ¶
DeleteDashboardByUID deletes a dashboard by UID.
func (*Client) DeleteDataSource ¶
DeleteDataSource deletes the Grafana data source whose ID it's passed.
func (*Client) DeleteFolder ¶
DeleteFolder deletes the folder whose ID it's passed.
func (*Client) DeleteLibraryPanel ¶
func (c *Client) DeleteLibraryPanel(uid string) (*LibraryPanelDeleteResponse, error)
DeleteLibraryPanel deletes a panel by UID.
func (*Client) DeletePlaylist ¶
DeletePlaylist deletes the Grafana playlist whose ID it's passed.
func (*Client) DeleteReport ¶
DeleteReport deletes the Grafana report whose ID it's passed.
func (*Client) DeleteRole ¶
DeleteRole deletes the role with it's permissions. Available only in Grafana Enterprise 8.+.
func (*Client) DeleteStack ¶
DeleteStack deletes the Grafana stack whose slug it passed in.
func (*Client) DeleteTeam ¶
DeleteTeam deletes the Grafana team whose ID it's passed.
func (*Client) DeleteTeamGroup ¶
DeleteTeam deletes the Grafana team whose ID it's passed.
func (*Client) DeleteUser ¶
DeleteUser deletes a Grafana user.
func (*Client) DisableDatasourcePermissions ¶
DisableDatasourcePermissions disables the datasource permissions (this is a datasource setting)
func (*Client) EnableDatasourcePermissions ¶
EnableDatasourcePermissions enables the datasource permissions (this is a datasource setting)
func (*Client) FolderByUID ¶
Folder fetches and returns the Grafana folder whose UID it's passed.
func (*Client) FolderDashboardSearch ¶
func (c *Client) FolderDashboardSearch(params map[string]string) (resp []FolderDashboardSearchResponse, err error)
FolderDashboardSearch uses the folder and dashboard search endpoint to find dashboards based on the params passed in.
func (*Client) FolderPermissions ¶
func (c *Client) FolderPermissions(fid string) ([]*FolderPermission, error)
FolderPermissions fetches and returns the permissions for the folder whose ID it's passed.
func (*Client) GetAPIKeys ¶
func (c *Client) GetAPIKeys(includeExpired bool) ([]*GetAPIKeysResponse, error)
GetAPIKeys retrieves a list of all API keys.
func (*Client) GetBuiltInRoleAssignments ¶
GetBuiltInRoleAssignments gets all built-in role assignments. Available only in Grafana Enterprise 8.+.
func (*Client) GetRole ¶
GetRole gets a role with permissions for the given UID. Available only in Grafana Enterprise 8.+.
func (*Client) LibraryPanelByName ¶
func (c *Client) LibraryPanelByName(name string) (*LibraryPanel, error)
LibraryPanelByName gets a library panel by name.
func (*Client) LibraryPanelByUID ¶
func (c *Client) LibraryPanelByUID(uid string) (*LibraryPanel, error)
LibraryPanelByUID gets a library panel by UID.
func (*Client) LibraryPanelConnectedDashboards ¶
func (c *Client) LibraryPanelConnectedDashboards(uid string) ([]FolderDashboardSearchResponse, error)
LibraryPanelConnectedDashboards gets Dashboards using this Library Panel.
func (*Client) LibraryPanelConnections ¶
func (c *Client) LibraryPanelConnections(uid string) (*[]LibraryPanelConnection, error)
LibraryPanelConnections gets library panel connections by UID.
func (*Client) LibraryPanels ¶
func (c *Client) LibraryPanels() ([]LibraryPanel, error)
Dashboards fetches and returns all dashboards.
func (*Client) NewAlertNotification ¶
func (c *Client) NewAlertNotification(a *AlertNotification) (int64, error)
NewAlertNotification creates a new Grafana alert notification.
func (*Client) NewAnnotation ¶
func (c *Client) NewAnnotation(a *Annotation) (int64, error)
NewAnnotation creates a new annotation with the Annotation it is passed
func (*Client) NewBuiltInRoleAssignment ¶
func (c *Client) NewBuiltInRoleAssignment(builtInRoleAssignment BuiltInRoleAssignment) (*BuiltInRoleAssignment, error)
NewBuiltInRoleAssignment creates a new built-in role assignment. Available only in Grafana Enterprise 8.+.
func (*Client) NewDashboard ¶
func (c *Client) NewDashboard(dashboard Dashboard) (*DashboardSaveResponse, error)
NewDashboard creates a new Grafana dashboard.
func (*Client) NewDataSource ¶
func (c *Client) NewDataSource(s *DataSource) (int64, error)
NewDataSource creates a new Grafana data source.
func (*Client) NewGraphiteAnnotation ¶
func (c *Client) NewGraphiteAnnotation(gfa *GraphiteAnnotation) (int64, error)
NewGraphiteAnnotation creates a new annotation with the GraphiteAnnotation it is passed
func (*Client) NewLibraryPanel ¶
func (c *Client) NewLibraryPanel(panel LibraryPanel) (*LibraryPanel, error)
NewLibraryPanel creates a new Grafana library panel.
func (*Client) NewPlaylist ¶
NewPlaylist creates a new Grafana playlist.
func (*Client) NewRole ¶
NewRole creates a new role with permissions. Available only in Grafana Enterprise 8.+.
func (*Client) NewSnapshot ¶
func (c *Client) NewSnapshot(snapshot Snapshot) (*SnapshotCreateResponse, error)
NewSnapshot creates a new Grafana snapshot.
func (*Client) NewStack ¶
func (c *Client) NewStack(stack *CreateStackInput) (int64, error)
NewStack creates a new Grafana Stack
func (*Client) NewTeamGroup ¶
NewTeamGroup creates a new Grafana Team Group .
func (*Client) OrgUsersCurrent ¶
OrgUsersCurrent returns all org users within the current organization. This endpoint is accessible to users with org admin role.
func (*Client) PatchAnnotation ¶
func (c *Client) PatchAnnotation(id int64, a *Annotation) (string, error)
PatchAnnotation updates one or more properties of an existing annotation that matches the specified ID.
func (*Client) PatchLibraryPanel ¶
func (c *Client) PatchLibraryPanel(uid string, panel LibraryPanel) (*LibraryPanel, error)
PatchLibraryPanel updates one or more properties of an existing panel that matches the specified UID.
func (*Client) PauseAlert ¶
func (c *Client) PauseAlert(id int64) (PauseAlertResponse, error)
PauseAlert pauses the Grafana alert whose ID it's passed.
func (*Client) PauseAllAlerts ¶
func (c *Client) PauseAllAlerts() (PauseAllAlertsResponse, error)
PauseAllAlerts pauses all Grafana alerts.
func (*Client) RemoveDatasourcePermission ¶
RemoveDatasourcePermission removes the permission with the given id
func (*Client) RemoveMemberFromTeam ¶
RemoveMemberFromTeam removes a user from the Grafana team whose ID it's passed.
func (*Client) RemoveOrgUser ¶
RemoveOrgUser removes a user from an org.
func (*Client) SaveDashboard ¶
func (c *Client) SaveDashboard(model map[string]interface{}, overwrite bool) (*DashboardSaveResponse, error)
SaveDashboard is a deprecated method for saving a Grafana dashboard. Use NewDashboard. Deprecated: Use NewDashboard instead.
func (*Client) SearchTeam ¶
func (c *Client) SearchTeam(query string) (*SearchTeam, error)
SearchTeam searches Grafana teams and returns the results.
func (*Client) StackByID ¶
StackByID fetches and returns the stack whose name it's passed. This returns deleted instances as well with `status=deleted`.
func (*Client) StackBySlug ¶
StackByName fetches and returns the stack whose slug it's passed.
func (*Client) Stacks ¶
func (c *Client) Stacks() (StackItems, error)
Stacks fetches and returns the Grafana stacks.
func (*Client) TeamGroups ¶
TeamGroups fetches and returns the list of Grafana team group whose Team ID it's passed.
func (*Client) TeamMembers ¶
func (c *Client) TeamMembers(id int64) ([]*TeamMember, error)
TeamMembers fetches and returns the team members for the Grafana team whose ID it's passed.
func (*Client) TeamPreferences ¶
func (c *Client) TeamPreferences(id int64) (*Preferences, error)
TeamPreferences fetches and returns preferences for the Grafana team whose ID it's passed.
func (*Client) UpdateAlertNotification ¶
func (c *Client) UpdateAlertNotification(a *AlertNotification) error
UpdateAlertNotification updates a Grafana alert notification.
func (*Client) UpdateAnnotation ¶
func (c *Client) UpdateAnnotation(id int64, a *Annotation) (string, error)
UpdateAnnotation updates all properties an existing annotation with the Annotation it is passed.
func (*Client) UpdateDashboardPermissions ¶
func (c *Client) UpdateDashboardPermissions(id int64, items *PermissionItems) error
UpdateDashboardPermissions remove existing permissions if items are not included in the request.
func (*Client) UpdateDataSource ¶
func (c *Client) UpdateDataSource(s *DataSource) error
UpdateDataSource updates a Grafana data source.
func (*Client) UpdateFolder ¶
UpdateFolder updates the folder whose ID it's passed.
func (*Client) UpdateFolderPermissions ¶
func (c *Client) UpdateFolderPermissions(fid string, items *PermissionItems) error
UpdateFolderPermissions remove existing permissions if items are not included in the request.
func (*Client) UpdateOrgUser ¶
UpdateOrgUser updates and org user.
func (*Client) UpdatePlaylist ¶
UpdatePlaylist updates a Grafana playlist.
func (*Client) UpdateReport ¶
UpdateReport updates a Grafana report.
func (*Client) UpdateRole ¶
UpdateRole updates the role and permissions. Available only in Grafana Enterprise 8.+.
func (*Client) UpdateStack ¶
func (c *Client) UpdateStack(id int64, stack *UpdateStackInput) error
UpdateOrg updates a Grafana stack. Only name, slug and description can be updated. No other parameters of the stack are updateable
func (*Client) UpdateTeam ¶
UpdateTeam updates a Grafana team.
func (*Client) UpdateTeamPreferences ¶
func (c *Client) UpdateTeamPreferences(id int64, preferences Preferences) error
UpdateTeamPreferences updates team preferences for the Grafana team whose ID it's passed.
func (*Client) UpdateUserPassword ¶
UpdateUserPassword updates a user password.
func (*Client) UpdateUserPermissions ¶
UpdateUserPermissions sets a user's admin status.
func (*Client) UserByEmail ¶
UserByEmail fetches a user by email address.
func (*Client) UserUpdate ¶
UserUpdate updates a user by ID.
func (*Client) Users ¶
func (c *Client) Users() (users []UserSearch, err error)
Users fetches and returns Grafana users.
type Config ¶
type Config struct { // APIKey is an optional API key. APIKey string // BasicAuth is optional basic auth credentials. BasicAuth *url.Userinfo // HTTPHeaders are optional HTTP headers. HTTPHeaders map[string]string // Client provides an optional HTTP client, otherwise a default will be used. Client *http.Client // OrgID provides an optional organization ID, ignored when using APIKey, BasicAuth defaults to last used org OrgID int64 // NumRetries contains the number of attempted retries NumRetries int }
Config contains client configuration.
type CreateAPIKeyRequest ¶
type CreateAPIKeyResponse ¶
type CreateStackInput ¶
type Dashboard ¶
type Dashboard struct { Meta DashboardMeta `json:"meta"` Model map[string]interface{} `json:"dashboard"` Folder int64 `json:"folderId"` Overwrite bool `json:"overwrite"` // This is only used when creating a new dashboard, it will always be empty when getting a dashboard. Message string `json:"message"` }
Dashboard represents a Grafana dashboard.
type DashboardMeta ¶
type DashboardMeta struct { IsStarred bool `json:"isStarred"` Slug string `json:"slug"` Folder int64 `json:"folderId"` }
DashboardMeta represents Grafana dashboard meta.
type DashboardPermission ¶
type DashboardPermission struct { DashboardID int64 `json:"dashboardId"` DashboardUID string `json:"uid"` UserID int64 `json:"userId"` TeamID int64 `json:"teamId"` Role string `json:"role"` IsFolder bool `json:"isFolder"` Inherited bool `json:"inherited"` // Permission levels are // 1 = View // 2 = Edit // 4 = Admin Permission int64 `json:"permission"` PermissionName string `json:"permissionName"` }
DashboardPermission has information such as a dashboard, user, team, role and permission.
type DashboardSaveResponse ¶
type DashboardSaveResponse struct { Slug string `json:"slug"` ID int64 `json:"id"` UID string `json:"uid"` Status string `json:"status"` Version int64 `json:"version"` }
DashboardSaveResponse represents the Grafana API response to creating or saving a dashboard.
type DataSource ¶
type DataSource struct { ID int64 `json:"id,omitempty"` UID string `json:"uid,omitempty"` Name string `json:"name"` Type string `json:"type"` URL string `json:"url"` Access string `json:"access"` Database string `json:"database,omitempty"` User string `json:"user,omitempty"` // Deprecated: Use secureJsonData.password instead. Password string `json:"password,omitempty"` OrgID int64 `json:"orgId,omitempty"` IsDefault bool `json:"isDefault"` BasicAuth bool `json:"basicAuth"` BasicAuthUser string `json:"basicAuthUser,omitempty"` // Deprecated: Use secureJsonData.basicAuthPassword instead. BasicAuthPassword string `json:"basicAuthPassword,omitempty"` // Helper to read/write http headers HTTPHeaders map[string]string `json:"-"` JSONData JSONData `json:"jsonData,omitempty"` SecureJSONData SecureJSONData `json:"secureJsonData,omitempty"` }
DataSource represents a Grafana data source.
func (*DataSource) MarshalJSON ¶
func (ds *DataSource) MarshalJSON() ([]byte, error)
Marshal DataSource
func (*DataSource) UnmarshalJSON ¶
func (ds *DataSource) UnmarshalJSON(b []byte) (err error)
Unmarshal DataSource
type DatasourcePermission ¶
type DatasourcePermission struct { ID int64 `json:"id"` DatasourceID int64 `json:"datasourceId"` UserID int64 `json:"userId"` UserEmail string `json:"userEmail"` TeamID int64 `json:"teamId"` // Permission levels are // 1 = Query Permission DatasourcePermissionType `json:"permission"` PermissionName string `json:"permissionName"` }
DatasourcePermission has information such as a datasource, user, team, role and permission.
type DatasourcePermissionAddPayload ¶
type DatasourcePermissionAddPayload struct { UserID int64 `json:"userId"` TeamID int64 `json:"teamId"` Permission DatasourcePermissionType `json:"permission"` }
type DatasourcePermissionType ¶
type DatasourcePermissionType int
const (
DatasourcePermissionQuery DatasourcePermissionType
)
type DatasourcePermissionsResponse ¶
type DatasourcePermissionsResponse struct { DatasourceID int64 `json:"datasourceId"` Enabled bool `json:"enabled"` Permissions []*DatasourcePermission `json:"permissions"` }
type DeleteAPIKeyResponse ¶
type DeleteAPIKeyResponse struct {
Message string `json:"message"`
}
type FolderDashboardSearchResponse ¶
type FolderDashboardSearchResponse struct { ID uint `json:"id"` UID string `json:"uid"` Title string `json:"title"` URI string `json:"uri"` URL string `json:"url"` Slug string `json:"slug"` Type string `json:"type"` Tags []string `json:"tags"` IsStarred bool `json:"isStarred"` FolderID uint `json:"folderId"` FolderUID string `json:"folderUid"` FolderTitle string `json:"folderTitle"` FolderURL string `json:"folderUrl"` }
FolderDashboardSearchResponse represents the Grafana API dashboard search response.
type FolderPermission ¶
type FolderPermission struct { ID int64 `json:"id"` FolderUID string `json:"uid"` UserID int64 `json:"userId"` TeamID int64 `json:"teamId"` Role string `json:"role"` IsFolder bool `json:"isFolder"` // Permission levels are // 1 = View // 2 = Edit // 4 = Admin Permission int64 `json:"permission"` PermissionName string `json:"permissionName"` // optional fields FolderID int64 `json:"folderId,omitempty"` DashboardID int64 `json:"dashboardId,omitempty"` }
FolderPermission has information such as a folder, user, team, role and permission.
type GetAPIKeysResponse ¶
type GraphiteAnnotation ¶
type GraphiteAnnotation struct { What string `json:"what"` When int64 `json:"when"` Data string `json:"data"` Tags []string `json:"tags,omitempty"` }
GraphiteAnnotation represents a Grafana API annotation in Graphite format
type JSONData ¶
type JSONData struct { // Used by all datasources TLSAuth bool `json:"tlsAuth,omitempty"` TLSAuthWithCACert bool `json:"tlsAuthWithCACert,omitempty"` TLSSkipVerify bool `json:"tlsSkipVerify,omitempty"` // Used by Athena Catalog string `json:"catalog,omitempty"` Database string `json:"database,omitempty"` OutputLocation string `json:"outputLocation,omitempty"` Workgroup string `json:"workgroup,omitempty"` // Used by Github GitHubURL string `json:"githubUrl,omitempty"` // Used by Graphite GraphiteVersion string `json:"graphiteVersion,omitempty"` // Used by Prometheus, Elasticsearch, InfluxDB, MySQL, PostgreSQL and MSSQL TimeInterval string `json:"timeInterval,omitempty"` // Used by Elasticsearch // From Grafana 8.x esVersion is the semantic version of Elasticsearch. EsVersion string `json:"esVersion,omitempty"` TimeField string `json:"timeField,omitempty"` Interval string `json:"interval,omitempty"` LogMessageField string `json:"logMessageField,omitempty"` LogLevelField string `json:"logLevelField,omitempty"` MaxConcurrentShardRequests int64 `json:"maxConcurrentShardRequests,omitempty"` // Used by Cloudwatch CustomMetricsNamespaces string `json:"customMetricsNamespaces,omitempty"` // Used by Cloudwatch, Athena AuthType string `json:"authType,omitempty"` AssumeRoleArn string `json:"assumeRoleArn,omitempty"` DefaultRegion string `json:"defaultRegion,omitempty"` Endpoint string `json:"endpoint,omitempty"` ExternalID string `json:"externalId,omitempty"` Profile string `json:"profile,omitempty"` // Used by OpenTSDB TsdbVersion string `json:"tsdbVersion,omitempty"` TsdbResolution string `json:"tsdbResolution,omitempty"` // Used by MSSQL Encrypt string `json:"encrypt,omitempty"` // Used by PostgreSQL Sslmode string `json:"sslmode,omitempty"` PostgresVersion int64 `json:"postgresVersion,omitempty"` Timescaledb bool `json:"timescaledb,omitempty"` // Used by MySQL, PostgreSQL and MSSQL MaxOpenConns int64 `json:"maxOpenConns,omitempty"` MaxIdleConns int64 `json:"maxIdleConns,omitempty"` ConnMaxLifetime int64 `json:"connMaxLifetime,omitempty"` // Used by Prometheus HTTPMethod string `json:"httpMethod,omitempty"` QueryTimeout string `json:"queryTimeout,omitempty"` // Used by Stackdriver AuthenticationType string `json:"authenticationType,omitempty"` ClientEmail string `json:"clientEmail,omitempty"` DefaultProject string `json:"defaultProject,omitempty"` TokenURI string `json:"tokenUri,omitempty"` // Used by Prometheus and Elasticsearch SigV4AssumeRoleArn string `json:"sigV4AssumeRoleArn,omitempty"` SigV4Auth bool `json:"sigV4Auth,omitempty"` SigV4AuthType string `json:"sigV4AuthType,omitempty"` SigV4ExternalID string `json:"sigV4ExternalID,omitempty"` SigV4Profile string `json:"sigV4Profile,omitempty"` SigV4Region string `json:"sigV4Region,omitempty"` // Used by Prometheus and Loki ManageAlerts bool `json:"manageAlerts,omitempty"` AlertmanagerUID string `json:"alertmanagerUid,omitempty"` // Used by Alertmanager Implementation string `json:"implementation,omitempty"` // Used by Sentry OrgSlug string `json:"orgSlug,omitempty"` URL string `json:"url,omitempty"` // Sentry is not using the datasource URL attribute // Used by InfluxDB DefaultBucket string `json:"defaultBucket,omitempty"` Organization string `json:"organization,omitempty"` Version string `json:"version,omitempty"` // contains filtered or unexported fields }
JSONData is a representation of the datasource `jsonData` property
func (*JSONData) UnmarshalJSON ¶
Unmarshal JSONData
type LibraryPanel ¶
type LibraryPanel struct { Folder int64 `json:"folderId,omitempty"` Name string `json:"name"` Model map[string]interface{} `json:"model"` Type string `json:"type,omitempty"` Description string `json:"description,omitempty"` ID int64 `json:"id,omitempty"` Kind int64 `json:"kind,omitempty"` OrgID int64 `json:"orgId,omitempty"` UID string `json:"uid,omitempty"` Version int64 `json:"version,omitempty"` Meta LibraryPanelMeta `json:"meta,omitempty"` }
LibraryPanel represents a Grafana library panel.
type LibraryPanelConnection ¶
type LibraryPanelConnection struct { ID int64 `json:"id"` Kind int64 `json:"kind"` PanelID int64 `json:"elementId"` DashboardID int64 `json:"connectionId"` Created time.Time `json:"created"` CreatedBy LibraryPanelMetaUser `json:"createdBy"` }
LibraryPanelConnection represents a Grafana connection between a library panel and a dashboard.
type LibraryPanelCreateResponse ¶
type LibraryPanelCreateResponse struct {
Result LibraryPanel `json:"result"`
}
LibraryPanelCreateResponse represents the Grafana API response to creating or saving a library panel.
type LibraryPanelDeleteResponse ¶
type LibraryPanelDeleteResponse struct { Message string `json:"message"` ID int64 `json:"id,omitempty"` }
LibraryPanelDeleteResponse represents the Grafana API response to deleting a library panel.
type LibraryPanelGetAllResponse ¶
type LibraryPanelGetAllResponse struct { TotalCount int64 `json:"totalCount"` Page int64 `json:"page"` PerPage int64 `json:"perPage"` Elements []LibraryPanel `json:"elements"` }
LibraryPanelGetAllResponse represents the Grafana API response to getting all library panels.
type LibraryPanelMeta ¶
type LibraryPanelMeta struct { FolderName string `json:"folderName,,omitempty"` FolderUID string `json:"folderUid,omitempty"` ConnectedDashboards int64 `json:"connectedDashboards,omitempty"` Created time.Time `json:"created,omitempty"` Updated time.Time `json:"updated,omitempty"` CreatedBy LibraryPanelMetaUser `json:"createdBy,omitempty"` UpdatedBy LibraryPanelMetaUser `json:"updatedBy,omitempty"` }
LibraryPanelMeta represents Grafana library panel metadata.
type LibraryPanelMetaUser ¶
type LibraryPanelMetaUser struct { ID int64 `json:"id"` Name string `json:"name"` AvatarURL string `json:"folderId"` }
LibraryPanelMetaUser represents the Grafana library panel createdBy and updatedBy fields
type OrgUser ¶
type OrgUser struct { OrgID int64 `json:"orgId"` UserID int64 `json:"userId"` Email string `json:"email"` Login string `json:"login"` Role string `json:"role"` }
OrgUser represents a Grafana org user.
type PauseAlertRequest ¶
type PauseAlertRequest struct {
Paused bool `json:"paused"`
}
PauseAlertRequest represents the request payload for a PauseAlert request.
type PauseAlertResponse ¶
type PauseAlertResponse struct { AlertID int64 `json:"alertId,omitempty"` State string `json:"state,omitempty"` Message string `json:"message,omitempty"` }
PauseAlertResponse represents the response body for a PauseAlert request.
type PauseAllAlertsResponse ¶
type PauseAllAlertsResponse struct { AlertsAffected int64 `json:"alertsAffected,omitempty"` State string `json:"state,omitempty"` Message string `json:"message,omitempty"` }
PauseAllAlertsResponse represents the response body for a PauseAllAlerts request.
type Permission ¶
type PermissionItem ¶
type PermissionItem struct { // As you can see the docs, each item has a pair of [Role|TeamID|UserID] and Permission. // unnecessary fields are omitted. Role string `json:"role,omitempty"` TeamID int64 `json:"teamId,omitempty"` UserID int64 `json:"userId,omitempty"` Permission int64 `json:"permission"` }
PermissionItem represents a Grafana folder permission item.
type PermissionItems ¶
type PermissionItems struct {
Items []*PermissionItem `json:"items"`
}
PermissionItems represents Grafana folder permission items.
type Playlist ¶
type Playlist struct { ID int `json:"id"` Name string `json:"name"` Interval string `json:"interval"` Items []PlaylistItem `json:"items"` }
Playlist represents a Grafana playlist.
type PlaylistItem ¶
type PlaylistItem struct { Type string `json:"type"` Value string `json:"value"` Order int `json:"order"` Title string `json:"title"` }
PlaylistItem represents a Grafana playlist item.
type Preferences ¶
type Preferences struct { Theme string `json:"theme"` HomeDashboardID int64 `json:"homeDashboardID"` Timezone string `json:"timezone"` }
Preferences represents Grafana preferences.
type Report ¶
type Report struct { // ReadOnly ID int64 `json:"id,omitempty"` UserID int64 `json:"userId,omitempty"` OrgID int64 `json:"orgId,omitempty"` State string `json:"state,omitempty"` DashboardID int64 `json:"dashboardId"` DashboardUID string `json:"dashboardUid"` Name string `json:"name"` Recipients string `json:"recipients"` ReplyTo string `json:"replyTo"` Message string `json:"message"` Schedule ReportSchedule `json:"schedule"` Options ReportOptions `json:"options"` EnableDashboardURL bool `json:"enableDashboardUrl"` EnableCSV bool `json:"enableCsv"` }
Report represents a Grafana report.
type ReportOptions ¶
type ReportOptions struct { Orientation string `json:"orientation"` Layout string `json:"layout"` TimeRange ReportTimeRange `json:"timeRange"` }
ReportOptions represents the options for a Grafana report.
type ReportSchedule ¶
type ReportSchedule struct { StartDate *time.Time `json:"startDate,omitempty"` EndDate *time.Time `json:"endDate,omitempty"` Frequency string `json:"frequency"` IntervalFrequency string `json:"intervalFrequency"` IntervalAmount int64 `json:"intervalAmount"` WorkdaysOnly bool `json:"workdaysOnly"` TimeZone string `json:"timeZone"` }
ReportSchedule represents the schedule from a Grafana report.
type ReportTimeRange ¶
ReportTimeRange represents the time range from a Grafana report.
type SearchTeam ¶
type SearchTeam struct { TotalCount int64 `json:"totalCount,omitempty"` Teams []*Team `json:"teams,omitempty"` Page int64 `json:"page,omitempty"` PerPage int64 `json:"perPage,omitempty"` }
SearchTeam represents a search for a Grafana team.
type SecureJSONData ¶
type SecureJSONData struct { // Used by all datasources TLSCACert string `json:"tlsCACert,omitempty"` TLSClientCert string `json:"tlsClientCert,omitempty"` TLSClientKey string `json:"tlsClientKey,omitempty"` Password string `json:"password,omitempty"` BasicAuthPassword string `json:"basicAuthPassword,omitempty"` // Used by Cloudwatch, Athena AccessKey string `json:"accessKey,omitempty"` SecretKey string `json:"secretKey,omitempty"` // Used by Stackdriver PrivateKey string `json:"privateKey,omitempty"` // Used by Prometheus and Elasticsearch SigV4AccessKey string `json:"sigV4AccessKey,omitempty"` SigV4SecretKey string `json:"sigV4SecretKey,omitempty"` // Used by GitHub AccessToken string `json:"accessToken,omitempty"` // Used by Sentry AuthToken string `json:"authToken,omitempty"` // Used by InfluxDB Token string `json:"token,omitempty"` // contains filtered or unexported fields }
SecureJSONData is a representation of the datasource `secureJsonData` property
func (SecureJSONData) MarshalJSON ¶
func (sjd SecureJSONData) MarshalJSON() ([]byte, error)
Marshal SecureJSONData
type Snapshot ¶
type Snapshot struct { Model map[string]interface{} `json:"dashboard"` Expires int64 `json:"expires"` }
Snapshot represents a Grafana snapshot.
type SnapshotCreateResponse ¶
type SnapshotCreateResponse struct { DeleteKey string `json:"deleteKey"` DeleteURL string `json:"deleteUrl"` Key string `json:"key"` URL string `json:"url"` ID int64 `json:"id"` }
SnapshotResponse represents the Grafana API response to creating a dashboard.
type Stack ¶
type Stack struct { ID int64 `json:"id"` OrgID int64 `json:"orgId"` OrgSlug string `json:"orgSlug"` OrgName string `json:"orgName"` Name string `json:"name"` URL string `json:"url"` Slug string `json:"slug"` Version string `json:"version"` Description string `json:"description"` Status string `json:"status"` Gateway string `json:"gateway"` CreatedAt time.Time `json:"createdAt"` CreatedBy string `json:"createdBy"` UpdatedAt time.Time `json:"updatedAt"` UpdatedBy string `json:"updatedBy"` Trial int `json:"trial"` TrialExpiresAt time.Time `json:"trialExpiresAt"` ClusterID int `json:"clusterId"` ClusterSlug string `json:"clusterSlug"` ClusterName string `json:"clusterName"` Plan string `json:"plan"` PlanName string `json:"planName"` BillingStartDate time.Time `json:"billingStartDate"` BillingEndDate time.Time `json:"billingEndDate"` BillingActiveUsers int `json:"billingActiveUsers"` CurrentActiveUsers int `json:"currentActiveUsers"` CurrentActiveAdminUsers int `json:"currentActiveAdminUsers"` CurrentActiveEditorUsers int `json:"currentActiveEditorUsers"` CurrentActiveViewerUsers int `json:"currentActiveViewerUsers"` DailyUserCnt int `json:"dailyUserCnt"` DailyAdminCnt int `json:"dailyAdminCnt"` DailyEditorCnt int `json:"dailyEditorCnt"` DailyViewerCnt int `json:"dailyViewerCnt"` BillableUserCnt int `json:"billableUserCnt"` DashboardCnt int `json:"dashboardCnt"` DatasourceCnts struct { } `json:"datasourceCnts"` UserQuota int `json:"userQuota"` DashboardQuota int `json:"dashboardQuota"` AlertQuota int `json:"alertQuota"` Ssl bool `json:"ssl"` CustomAuth bool `json:"customAuth"` CustomDomain bool `json:"customDomain"` Support bool `json:"support"` RunningVersion string `json:"runningVersion"` MachineLearning int `json:"machineLearning"` HmInstancePromID int `json:"hmInstancePromId"` HmInstancePromURL string `json:"hmInstancePromUrl"` HmInstancePromName string `json:"hmInstancePromName"` HmInstancePromStatus string `json:"hmInstancePromStatus"` HmInstancePromCurrentUsage int `json:"hmInstancePromCurrentUsage"` HmInstancePromCurrentActiveSeries int `json:"hmInstancePromCurrentActiveSeries"` HmInstanceGraphiteID int `json:"hmInstanceGraphiteId"` HmInstanceGraphiteURL string `json:"hmInstanceGraphiteUrl"` HmInstanceGraphiteName string `json:"hmInstanceGraphiteName"` HmInstanceGraphiteType string `json:"hmInstanceGraphiteType"` HmInstanceGraphiteStatus string `json:"hmInstanceGraphiteStatus"` HmInstanceGraphiteCurrentUsage int `json:"hmInstanceGraphiteCurrentUsage"` HlInstanceID int `json:"hlInstanceId"` HlInstanceURL string `json:"hlInstanceUrl"` HlInstanceName string `json:"hlInstanceName"` HlInstanceStatus string `json:"hlInstanceStatus"` HlInstanceCurrentUsage int `json:"hlInstanceCurrentUsage"` AmInstanceID int `json:"amInstanceId"` AmInstanceName string `json:"amInstanceName"` AmInstanceURL string `json:"amInstanceUrl"` AmInstanceStatus string `json:"amInstanceStatus"` AmInstanceGeneratorURL string `json:"amInstanceGeneratorUrl"` HtInstanceID int `json:"htInstanceId"` HtInstanceURL string `json:"htInstanceUrl"` HtInstanceName string `json:"htInstanceName"` HtInstanceStatus string `json:"htInstanceStatus"` RegionID int `json:"regionId"` RegionSlug string `json:"regionSlug"` Links []struct { Rel string `json:"rel"` Href string `json:"href"` } `json:"links"` }
https://grafana.com/docs/grafana-cloud/reference/cloud-api/#stacks
type StackItems ¶
type StackItems struct {
Items []*Stack `json:"items"`
}
StackItems represents Grafana stack items.
type Team ¶
type Team struct { ID int64 `json:"id,omitempty"` OrgID int64 `json:"orgId,omitempty"` Name string `json:"name"` Email string `json:"email,omitempty"` AvatarURL string `json:"avatarUrl,omitempty"` MemberCount int64 `json:"memberCount,omitempty"` Permission int64 `json:"permission,omitempty"` }
Team consists of a get response It's used in Add and Update API
type TeamGroup ¶
type TeamGroup struct { OrgID int64 `json:"orgId,omitempty"` TeamID int64 `json:"teamId,omitempty"` GroupID string `json:"groupID,omitempty"` }
TeamGroup represents a Grafana TeamGroup.
type TeamMember ¶
type TeamMember struct { OrgID int64 `json:"orgId,omitempty"` TeamID int64 `json:"teamId,omitempty"` UserID int64 `json:"userID,omitempty"` Email string `json:"email,omitempty"` Login string `json:"login,omitempty"` AvatarURL string `json:"avatarUrl,omitempty"` Permission int64 `json:"permission,omitempty"` }
TeamMember represents a Grafana team member.
type UpdateStackInput ¶
type User ¶
type User struct { ID int64 `json:"id,omitempty"` Email string `json:"email,omitempty"` Name string `json:"name,omitempty"` Login string `json:"login,omitempty"` Theme string `json:"theme,omitempty"` OrgID int64 `json:"orgId,omitempty"` IsAdmin bool `json:"isGrafanaAdmin,omitempty"` IsDisabled bool `json:"isDisabled,omitempty"` IsExternal bool `json:"isExternal,omitempty"` UpdatedAt time.Time `json:"updatedAt,omitempty"` CreatedAt time.Time `json:"createdAt,omitempty"` AuthLabels []string `json:"authLabels,omitempty"` AvatarURL string `json:"avatarUrl,omitempty"` Password string `json:"password,omitempty"` }
User represents a Grafana user. It is structured after the UserProfileDTO struct in the Grafana codebase.
type UserSearch ¶
type UserSearch struct { ID int64 `json:"id,omitempty"` Email string `json:"email,omitempty"` Name string `json:"name,omitempty"` Login string `json:"login,omitempty"` IsAdmin bool `json:"isAdmin,omitempty"` IsDisabled bool `json:"isDisabled,omitempty"` LastSeenAt time.Time `json:"lastSeenAt,omitempty"` LastSeenAtAge string `json:"lastSeenAtAge,omitempty"` AuthLabels []string `json:"authLabels,omitempty"` AvatarURL string `json:"avatarUrl,omitempty"` }
UserSearch represents a Grafana user as returned by API endpoints that return a collection of Grafana users. This representation of user has reduced and differing fields. It is structured after the UserSearchHitDTO struct in the Grafana codebase.
Source Files ¶
- admin.go
- alert.go
- alertnotification.go
- annotation.go
- api_key.go
- builtin_role_assignments.go
- client.go
- dashboard.go
- dashboard_permissions.go
- datasource.go
- datasource_permissions.go
- folder.go
- folder_dashboard_search.go
- folder_permissions.go
- library_panel.go
- mock.go
- org_users.go
- orgs.go
- playlist.go
- report.go
- role.go
- snapshot.go
- stacks.go
- team.go
- team_external_group.go
- user.go