Skip to content

Reference

Lookup material — dense, tabular, and meant to be scanned rather than read start to finish.

Most of the reference is not on this page. Every configuration key lives in Configuration, and every rule type in Plugins; together those are two thirds of the documentation. What follows is the reference that belongs to neither.

  • Glossary


    Every term this documentation uses in a specific way — bucket, offense, pass token, sample, upstream — defined once and linked.

    Glossary

  • Exceptions & Error Handling


    Every exception the library throws, which mode throws it, and how to decide between failing open and failing closed.

    Exceptions

  • Rate Limiting Reference


    Every rule in the shipped rate-limiting.yml preset, grouped by category, with the exact rate and sample window for each path.

    Rate limiting reference

  • Legacy Config Format


    The deprecated top-level bypass: / block: shape, what it normalizes to, and side-by-side migration examples.

    Legacy config format

Class reference

The PHP API is documented in source via PHPDoc. The types most integrators touch directly:

Class Purpose
Kanopi\Firewall\Firewall Entry point. Firewall::create(...)->evaluate().
Kanopi\Firewall\FirewallMode Backed enum for global.modeBlock, Log, Exception, Disabled.
Kanopi\Firewall\Plugins\PluginInterface Contract for request evaluators. See Custom Plugins.
Kanopi\Firewall\Storage\StorageInterface Contract for block persistence. See Custom Storage.
Kanopi\Firewall\RateLimitStorage\RateLimitStorageInterface Contract for rate-limit counters.
Kanopi\Firewall\Challenge\ChallengeProviderInterface Contract for interstitial providers. See Challenge Responses.
Kanopi\Firewall\Challenge\SingleUseSolutionInterface Opt-in marker making a solved challenge redeemable once.
Kanopi\Firewall\Exception\FirewallException Base class for everything the library throws. See Error Handling.
Kanopi\Firewall\Exception\StorageConnectionException A storage backend could not reach its backing service; a StorageException. See Storage.
Kanopi\Firewall\Utility\Config Config loading, merging, and getLoadErrors().
Kanopi\Firewall\Utility\TokenSubstitute %env(...)% resolution and the filesystem-processor opt-in.

Browse the annotated source on GitHub.