zaproxy
ZAP API Client
What it is and what it does
Zaproxy is a Python wrapper around the OWASP ZAP API, allowing developers to programmatically control ZAP's security scanning capabilities from Python code. It provides access to ZAP's spider, scanner, and other security testing modules through a straightforward client interface. The package depends on requests for HTTP communication and six for Python compatibility, and targets Python 3.9 and later.
Typically used in automated security testing workflows and custom security tooling where you want to integrate ZAP's vulnerability detection into your development process. The library translates Python method calls into ZAP API requests, making it easier to script complex security testing scenarios without manually constructing HTTP calls.
Use it for:
- Integrate automated web application security scanning into CI/CD pipelines to catch vulnerabilities before deployment.
- Build custom security testing workflows that combine ZAP scanning with application-specific logic or reporting.
- Automate penetration testing of multiple endpoints or applications by scripting ZAP operations programmatically.
- Generate security scan reports and metrics by querying ZAP results through the API client.
- Orchestrate complex security testing scenarios that require coordinating multiple ZAP modules in sequence.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Python client library for the OWASP ZAP security scanner API, enabling programmatic access to automated web application security testing and vulnerability scanning.
Yes. The package is actively maintained, has low install friction, carries a permissive Apache-2.0 license, and provides a straightforward Python interface to a mature security testing platform. Install it if you need to automate ZAP scanning in your development or testing workflow.
Install
zaproxy on PyPI
pip
pip install zaproxyuv
uv add zaproxypoetry
poetry add zaproxyInstalling zaproxy
Before you install
Low friction installation with only two lightweight runtime dependencies (requests and six). Active maintenance with a recent release and ongoing repository activity.
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions; you may use, modify, and distribute the package freely provided you include the license notice.
Quickstart
pip install zaproxy
from zaproxy import ZAPv2
zap = ZAPv2(proxies={'http': 'http://localhost', 'https': 'http://localhost'})
results = zap.spider.scan(url='http://example.com')
Requires a running ZAP instance accessible via the configured proxy address.
Verify before relying
- Whether the package requires a running ZAP instance or if it can operate standalone
- What minimum version of the ZAP application is required for API compatibility
- Whether all ZAP API endpoints are covered or if there are known gaps in the implementation
- Default host and port configuration for connecting to a ZAP instance
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (<4.0,>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — requests, six |
| Maintenance | actively maintained — 63 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 132,067/month — #11,566 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: zaproxy-0.6.0-py3-none-any.whl
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
python-owasp-zap-v2.4This package is a deprecated alias that…
unclear · top 15,000 on PyPI
cisco-ai-mcp-scannerScans MCP (Model Context Protocol) servers and…
unclear · top 15,000 on PyPI
libsastlibsast is a static application security…
copyleft · top 15,000 on PyPI
uv-secureScans uv.lock, pylock.toml, and…
permissive · top 15,000 on PyPI
bbotBBOT is a multipurpose reconnaissance and…
agpl · top 15,000 on PyPI
python-gvmPython library that abstracts the Greenbone…
copyleft · top 15,000 on PyPI
python-nmapPython wrapper for the nmap port scanner that…
copyleft · top 15,000 on PyPI
pysentry-rsPySentry scans Python projects for known…
permissive · top 15,000 on PyPI
pyre-checkPysa is a static analysis tool that tracks data…
permissive · top 15,000 on PyPI
virustotal3Provides a Python 3 client library for the…
unclear · top 15,000 on PyPI