Skip to main content

Greenbone Logo

Greenbone Vulnerability Management Python Library

GitHub releases PyPI release code test coverage Build and test

The Greenbone Vulnerability Management Python API library (python-gvm) is a collection of APIs that help with remote controlling Greenbone Community Edition installations and Greenbone Enterprise Appliances. The library essentially abstracts accessing the communication protocols Greenbone Management Protocol (GMP) and Open Scanner Protocol (OSP).

Table of Contents

Documentation

The documentation for python-gvm can be found at https://greenbone.github.io/python-gvm/. Please always take a look at the documentation for further details. This README just gives you a short overview.

Installation

Version

python-gvm uses semantic versioning.

Versions prior to 26.0.0 used calendar versioning.

Please consider to always use the newest releases of gvm-tools and python-gvm. We frequently update these projects to add features and keep them free from bugs.

[!IMPORTANT] To use python-gvm with GMP version of 7, 8 or 9 you must use a release version that is <21.5. In the 21.5 release the support of these versions has been dropped.

[!IMPORTANT] To use python-gvm with GMP version 20.8 or 21.4 you must use a release version that is <24.6. In the 24.6 release the support of these versions has been dropped.

Requirements

Python 3.10 and later is supported.

Install using pip

You can install the latest stable release of python-gvm from the Python Package Index using pip:

python3 -m pip install --user python-gvm

Example

from gvm.connections import UnixSocketConnection
from gvm.protocols.gmp import GMP
from gvm.transforms import EtreeTransform
from gvm.xml import pretty_print

connection = UnixSocketConnection()
transform = EtreeTransform()

with GMP(connection, transform=transform) as gmp:
    # Retrieve GMP version supported by the remote daemon
    version = gmp.get_version()

    # Prints the XML in beautiful form
    pretty_print(version)

    # Login
    gmp.authenticate('foo', 'bar')

    # Retrieve all tasks
    tasks = gmp.get_tasks()

    # Get names of tasks
    task_names = tasks.xpath('task/name/text()')
    pretty_print(task_names)

Support

For any question on the usage of python-gvm please use the Greenbone Community Forum. If you found a problem with the software, please create an issue on GitHub.

Maintainer

This project is maintained by Greenbone AG.

Contributing

Your contributions are highly appreciated. Please create a pull request on GitHub. For bigger changes, please discuss it first in the issues.

For development you should use uv. to keep you python packages separated in different environments. First install uv via pip

python3 -m pip install --user uv

The python-gvm repository uses autohooks to apply linting and auto formatting via git hooks. Please ensure the git hooks are active.

uv run autohooks activate --force

License

Copyright (C) 2017-2026 Greenbone AG

Licensed under the GNU General Public License v3.0 or later.

Metadata

Release files for python-gvm 27.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for python-gvm 27.7.0
File Size Uploaded
python_gvm-27.7.0.tar.gz 433.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for python-gvm 27.7.0
File Interpreter ABI Platform
python_gvm-27.7.0-py3-none-any.whl Python 3 none any Details

Total release size: 623.7 kB

Release files / python_gvm-27.7.0.tar.gz

Download URL python_gvm-27.7.0.tar.gz
Size 433.2 kB
Tags Source
SHA-256 checksum
How to use checksums
624ae8c6377c23bd5ba6f70f45c82327f2f7fdae8603aaa3a696447835843394
BLAKE2b-256 checksum
How to use checksums
55990d5bf051c8b8802eb5388bf40f5dd35a2546d282adf686eb619000291286
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_gvm-27.7.0-py3-none-any.whl

Download URL python_gvm-27.7.0-py3-none-any.whl
Size 190.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
722f5252fdc0c5bac82b010968d878e49379e5fefbc3e0a60989007e38dcf449
BLAKE2b-256 checksum
How to use checksums
0055f7b36be4f69e00affd91ad241806a4cd55ca08d8f6280d630fbe314d45c5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

27.9.0

2 release files

This release

27.7.0 This release

2 release files

27.4.0

2 release files

27.3.1

2 release files

27.3.0

2 release files

27.2.0

2 release files

27.0.2

2 release files

27.0.1

2 release files

26.9.1

2 release files

26.7.0

2 release files

26.5.0

2 release files

26.4.0

2 release files

26.3.0

2 release files

26.2.0

2 release files

26.1.1

2 release files

26.1.0

2 release files

25.1.1

2 release files

25.1.0

2 release files

24.8.0

2 release files

24.7.0

2 release files

24.6.0

2 release files

24.3.0

2 release files

24.1.0

2 release files

23.5.1

2 release files

23.5.0

2 release files

23.4.2

2 release files

23.4.1

2 release files

22.9.1

2 release files

22.8.0

2 release files

22.7.0

2 release files

22.6.1

2 release files

22.5.0

2 release files

21.6.0

2 release files

21.5.0

2 release files

21.4.0

2 release files

21.1.3

2 release files

21.1.2

2 release files

20.9.1

2 release files

20.9.0

2 release files

20.8.0

2 release files

1.6.0

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page