Skip to content
This repository was archived by the owner on Aug 2, 2022. It is now read-only.
/ grafana_api Public archive

Yet another Python library for Grafana API

License

m0nhawk/grafana_api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This project is not supported anymore. Prefer using other options.


grafana_api Github Actions Test GitHub license Codecov

PyPI Conda

What is this library for?

Yet another Grafana API library for Python. Support Python 3 only.

Requirements

You need Python 3 and only the requests library installed.

Quick start

Install the pip package:

pip install -U grafana_api 

And then connect to your Grafana API endpoint:

from grafana_api.grafana_face import GrafanaFace grafana_api = GrafanaFace(auth='abcde....', host='api.my-grafana-host.com') # Create user user = grafana_api.admin.create_user({"name": "User", "email": "user@domain.com", "login": "user", "password": "userpassword", "OrgId": 1}) # Change user password user = grafana_api.admin.change_user_password(2, "newpassword") # Search dashboards based on tag grafana_api.search.search_dashboards(tag='applications') # Find a user by email user = grafana_api.users.find_user('test@test.com') # Add user to team 2 grafana_api.teams.add_team_member(2, user["id"]) # Create or update a dashboard grafana_api.dashboard.update_dashboard(dashboard={'dashboard': {...}, 'folderId': 0, 'overwrite': True}) # Delete a dashboard by UID grafana_api.dashboard.delete_dashboard(dashboard_uid='abcdefgh') # Create organization grafana_api.organization.create_organization({"name":"new_organization"})

Authentication

There are two ways to autheticate to grafana api. Either use api token or basic auth.

To use admin API you need to use basic auth as stated here

# Use basic authentication: grafana_api = GrafanaFace( auth=("username","password"), host='api.my-grafana-host.com' ) # Use token grafana_api = GrafanaFace( auth='abcdetoken...', host='api.my-grafana-host.com' )

Status of REST API realization

Work on API implementation still in progress.

API Status
Admin +
Alerting -
Alerting Notification Channels +
Annotations +
Authentication +-
Dashboard +
Dashboard Versions -
Dashboard Permissions +
Data Source +
Folder +
Folder Permissions +
Folder/Dashboard Search +-
Organisation +
Other +
Preferences +
Snapshot +
Teams +
User +

Issue tracker

Please report any bugs and enhancement ideas using the grafana_api issue tracker:

https://github.com/m0nhawk/grafana_api/issues

Feel free to also ask questions on the tracker.

License

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

About

Yet another Python library for Grafana API

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 19

Languages