A simple Python3 client for interacting with the Bleemeo API.
Project description
Bleemeo Python
Python library for interacting with the Bleemeo API
Requirements
- Python3.8 or later
- An account on Bleemeo
Installation
Take a look at venv. This tool provides isolated Python environments, which are more practical than installing packages system-wide.
After you’ve created and activated a virtual environment, run the command:
python -m pip install --upgrade bleemeo
Documentation
The Python library is documented using docstring in the source code.
Some examples of library usage can be found in examples.
Basic usage
Listing the first 10 agents of your account:
from bleemeo import Client, Resource, APIError
def list_agents():
with Client(load_from_env=True) as client:
try:
resp_page = client.get_page(Resource.AGENT, page=1, page_size=10,
params={"active": True, "fields": "id,fqdn,display_name"})
for agent in resp_page.json()["results"]:
print(f"* Agent {agent['display_name']} (fqdn = {agent['fqdn']}, id = {agent['id']})")
except APIError as e:
print(f"API error: {e}:\n{e.response.text}")
if __name__ == '__main__':
list_agents()
Save this file as list_agents.py.
Run it with:
BLEEMEO_USER=user-email@domain.com BLEEMEO_PASSWORD=password python3 list_agents.py
More examples can be found in examples
To run an example from a clone of this repository, run the following:
BLEEMEO_USER=user-email@domain.com BLEEMEO_PASSWORD=password python3 examples/list_metrics.py
Environment
At least the following options should be configured (as environment variables or with options):
- Credentials OR initial refresh token
- All other configuration options are optional and could be omitted
Ways to provide those options are referenced in the Configuration section.
Configuration
For environment variables to be taken into account, the parameter load_from_env
of the Client
constructor must be
set to True
.
Property | Constructor parameter(s) | Env variable(s) | Default values |
---|---|---|---|
Credentials | username & password |
BLEEMEO_USER & BLEEMEO_PASSWORD |
None. This option is required (unless initial refresh token is used) |
Bleemeo account header | account_id |
BLEEMEO_ACCOUNT_ID |
The first account associated with used credentials. |
OAuth client ID/secret | oauth_client_id & oauth_client_secret |
BLEEMEO_OAUTH_CLIENT_ID & BLEEMEO_OAUTH_CLIENT_SECRET |
The default SDK OAuth client ID |
API URL | api_url |
BLEEMEO_API_URL |
https://api.bleemeo.com |
Initial refresh token | oauth_initial_refresh_token |
BLEEMEO_OAUTH_INITIAL_REFRESH_TOKEN |
None. This is an alternative to username & password credentials. |
Custom headers | custom_headers |
- | {"User-Agent": "Bleemeo Python Client"} |
Throttle max auto retry delay | throttle_max_auto_retry_delay |
- | 1 minute. |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file bleemeo-0.2.0.tar.gz
.
File metadata
- Download URL: bleemeo-0.2.0.tar.gz
- Upload date:
- Size: 14.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ac20286cdc31d7f1e4501c6895367de42f64533ca15215878f82c8c1c2d548e0 |
|
MD5 | 3929078fdc3fbb44b765ba959d4e96f4 |
|
BLAKE2b-256 | 483b8c1623962b7c170465b6e8c8bb9e4dbfd7a7a9e8b780ca9dc6a04fdecade |
File details
Details for the file bleemeo-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: bleemeo-0.2.0-py3-none-any.whl
- Upload date:
- Size: 17.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7abe97779e3e85c3b58745b7bdab28f5587d5cf2415f87fbf36a38d5df35b8d9 |
|
MD5 | 48b865fbd2692f8fcf3306ac095160ef |
|
BLAKE2b-256 | 9b53e48cca8f01aef06c1cfd9ab731ac2ecbb48f17d5832672889007d6f9df58 |