grafanacli

Library to manage Grafana API


License
MIT
Install
pip install grafanacli==1.0.10

Documentation

grafanacli GitHub license

What the heck is that?

GrafanaCLI is a Python library used to manage Grafana API

Requirements

Python :: 2 Python :: 3

Installation

Install the pip package:

pip install grafanacli

Usage

from grafanacli import GrafanaAdmin

ga = GrafanaAdmin('http://127.0.0.1:3000')

# Disable SSL verification
ga.verify = False
"""SSL verification must be disabled before use GrafanaAuth"""

# Authentication using username and password
ga.GrafanaAuth(Username='admin', Password='admin')

# Authentication using API-Key
ga.GrafanaAuth(AuthType='APIKey', Key='xxxxxxxxxxxxx')

# List your current organization
ga.CurrentOrganization()

# List all organizations
ga.OrganizationList()

# Search Organization
ga.OrganizationSearch('MyOrganization')

# Create Organization
ga.OrganizationCreate('MyNewOrganization')

# Update Organization
ga.OrganizationUpdate('1', 'NewOrganizationName')
Where "1" is the organization Id that will be updated.

# Delete Organization
ga.OrganizationDelete('1')
Where "1" is the organization Id that will be deleted.

# Switch Organization
ga.OrganizationSwitch('2')
Where "2" is the organization Id what I want to switch

# Search dashboard whitout filter
ga.DashboardSearch()

# Search dashboard by title
ga.DashboardSearch(DashboardName='My Dashboard')

# Search dashboard by tag
ga.DashboardSearch(Tag='My Tag')

# Search starred dashboards
ga.DashboardSearch(Starred=True)

# Search dashboard aplying more than one conditition
ga.DashboardSearch(Starred=True, Tag='My Tag')
ga.DashboardSearch(Name='My Dashboard', Tag='My Tag')
ga.DashboardSearch(Name='My Dashboard', Tag='My Tag', Starred=True)

# Download Dashboard
ga.DashboardDownload('DashboardUid', '/tmp/mydash.json')

# Upload Dashboard
ga.DashboardUpload('/tmp/mydash.json', Overwrite=True)
ga.DashboardUpload('/tmp/mydash.json')
ga.DashboardUpload('/tmp/mydash.json, FolderId=3'

# Create, List, Get, Update and Delete Folders
ga.FolderCreate('My Folder')
ga.FolderList()
ga.FolderGet('folderUID')
ga.FolderUpdate('folderUID', 'My Folder New Name', version=x) # Current Folder's version ID (int)
ga.FolderUpdate('folderUID', 'My Folder New Name', overwrite=True) # It will skip version confirmation
ga.FolderDelete('folderUID')

# Star and Unstar a dashboard
ga.DashboardStar(dashboadID)
ga.DashboardUnstar(dashboadID) 

License

GrafanaCLI is licensed under the terms of the MIT License (see the LICENSE file).