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.155.tar.gz (6.0 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.155-py3-none-any.whl (12.2 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: hfortix_fortios-0.5.155.tar.gz
  • Upload date:
  • Size: 6.0 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.155.tar.gz
Algorithm Hash digest
SHA256 f0f0aadc2affcab75ba5be3a5170bb15e9c8775675d0ceb2c05e32ba49662ab9
MD5 0413bcfaea9e63829bd2b59c781dd60e
BLAKE2b-256 9ed8872b218281ca85e885c111d737f1db774843f2d8037c3ce45331a4becc47

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hfortix_fortios-0.5.155-py3-none-any.whl
Algorithm Hash digest
SHA256 f1254fa7f9794bc7996be2798e5fe879fc0cb5e00dddc057d7aa46b1e9b8046a
MD5 99c10ffbd2415df949f40fba4580eca3
BLAKE2b-256 10c14cbd3490e92a790abe962123f0a447f4799fd1cef75a7fc7169674f98351

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