A wrapper for the Uptime Kuma Socket.IO API
Find a file
2022-11-05 18:48:31 +01:00
scripts update scripts 2022-09-07 13:04:16 +02:00
tests test: ignore ResourceWarning 2022-10-04 19:08:59 +02:00
uptime_kuma_api fix: add type to notification provider options 2022-11-05 18:48:31 +01:00
.coveragerc add tests 2022-08-02 23:47:56 +02:00
.gitignore prepare pypi release and fix add monitor 2022-07-07 22:17:47 +02:00
CHANGELOG.md bump version to 0.5.1 2022-10-07 14:34:04 +02:00
LICENSE add license 2022-08-02 21:33:03 +02:00
README.md Update README.md 2022-10-11 11:05:45 +02:00
requirements.txt add support for uptime kuma 1.18.0 2022-09-07 13:03:13 +02:00
run_tests.sh test: add script to run tests for all supported uptime kuma versions 2022-10-04 19:10:06 +02:00
setup.py add support for uptime kuma 1.18.0 2022-09-07 13:03:13 +02:00

uptime-kuma-api

A wrapper for the Uptime Kuma Socket.IO API

uptime-kuma-api is a Python wrapper for the Uptime Kuma Socket.IO API.

This package was developed to configure Uptime Kuma with Ansible. The Ansible collection can be found at https://github.com/lucasheld/ansible-uptime-kuma.

Python version 3.6+ is required.

Supported Uptime Kuma versions: 1.17.0 - 1.18.5

Installation

uptime-kuma-api is available on the Python Package Index (PyPI).

You can install it using pip:

pip install uptime-kuma-api

Examples

Once you have installed the python package, you can use it to communicate with an Uptime Kuma instance.

To do so, import UptimeKumaApi from the library and specify the Uptime Kuma server url (e.g. 'http://127.0.0.1:3001'), username and password to initialize the connection.

>>> from uptime_kuma_api import UptimeKumaApi, MonitorType
>>> api = UptimeKumaApi('INSERT_URL')
>>> api.login('INSERT_USERNAME', 'INSERT_PASSWORD')

Now you can call one of the existing methods of the instance. For example create a new monitor:

>>> result = api.add_monitor(type=MonitorType.HTTP, name="Google", url="https://google.com")
>>> print(result)
{'msg': 'Added Successfully.', 'monitorId': 1}

At the end, the connection to the API must be disconnected so that the program does not block.

>>> api.disconnect()