Skip to main content

Modern, fully-typed Python SDK for FortiOS/FortiGate with complete API coverage (1,348 endpoints)

Project description

HFortix-FortiOS

PyPI version Python 3.10+ Documentation Status License Typing: Typed

HFortix-FortiOS is a modern, fully-typed Python SDK for FortiOS/FortiGate automation with complete API coverage.

🚀 Quick Start

pip install hfortix-fortios
from hfortix_fortios import FortiOS

# Connect to your FortiGate
with FortiOS(host="192.168.1.99", token="your-api-token") as fgt:
    # Create firewall address
    fgt.api.cmdb.firewall.address.post(
        name="web-server",
        subnet="10.0.1.100/32",
        comment="Production web server"
    )
    
    # Create firewall policy with simplified syntax
    fgt.api.cmdb.firewall.policy.post(
        name="Allow-Web-Traffic",
        srcintf=["internal"],      # Auto-converted to FortiOS format
        dstintf=["wan1"],
        srcaddr=["all"],
        dstaddr=["web-server"],
        service=["HTTP", "HTTPS"],
        action="accept",
        nat="enable"
    )

✨ Key Features

  • 🎯 Complete API Coverage - 1,348 endpoints across CMDB, Monitor, Log, and Service APIs
  • 💪 Fully Typed - Complete type hints with .pyi stubs for excellent IDE support
  • ⚡ Modern & Fast - Async/await support with httpx, HTTP/2, connection pooling
  • 🛡️ Production Ready - Comprehensive error handling, validation, retry logic, rate limiting
  • 🔄 Simplified Syntax - Simple list format auto-converts to FortiOS dict format
  • 📦 Batch Transactions - Atomic configuration changes with automatic commit/rollback (v0.5.152+)
  • 🔍 API Inspection - Debug and audit API interactions (v0.5.152+)
  • 🌐 FortiManager Proxy - Manage multiple FortiGates through FortiManager

📊 API Coverage

FortiOS 7.6.5 - 100% Coverage (1,348 endpoints)

  • 561 CMDB endpoints - Configuration database management (100% typed)
  • 490 Monitor endpoints - Real-time monitoring and statistics (partial types)
  • 286 Log endpoints - Log retrieval and analysis (partial types)
  • 11 Service endpoints - Service operations (100% typed)

All endpoints are auto-generated with complete schema coverage.

📚 Documentation

🔗 Related Packages

This package is part of the HFortix SDK ecosystem:

  • hfortix-core - Core HTTP client and utilities
  • hfortix - Meta package to install all components

📄 License

Proprietary license. All rights reserved.

🤝 Support


Version: 0.5.154-beta
FortiOS Support: 7.6.5
Python: 3.10+

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

hfortix_fortios-0.5.163.tar.gz (7.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hfortix_fortios-0.5.163-py3-none-any.whl (13.4 MB view details)

Uploaded Python 3

File details

Details for the file hfortix_fortios-0.5.163.tar.gz.

File metadata

  • Download URL: hfortix_fortios-0.5.163.tar.gz
  • Upload date:
  • Size: 7.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for hfortix_fortios-0.5.163.tar.gz
Algorithm Hash digest
SHA256 f19b9f67e19331db3ed1b1cadf779541684bb5a365c12ccb50c0ff9dd2cdb964
MD5 8af4a4ab0981e888198c2d8fb45a6b43
BLAKE2b-256 9f0e679baafc43600bf5957921e3b4ba915b71f87e0b1e49420a50331e6fa103

See more details on using hashes here.

File details

Details for the file hfortix_fortios-0.5.163-py3-none-any.whl.

File metadata

File hashes

Hashes for hfortix_fortios-0.5.163-py3-none-any.whl
Algorithm Hash digest
SHA256 ada09f00d5fbc6093f4977e7dd910557a53da22aef96527f5a5d29e066484ee7
MD5 e1d567564ef2e9c17057defebbc1f494
BLAKE2b-256 cd106641e9ac44dd6c8c3f2441b231736811309f87a05cbe5424ecf29b8968a1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page