Esper evaluates request context against tenant-defined policy. It gives operators a shared vocabulary for actions, entities, mitigations, and policies, then records the result of each decision for review. The shortest way to think about the system is:Documentation Index
Fetch the complete documentation index at: https://docs.esperr.com/llms.txt
Use this file to discover all available pages before exploring further.
- Esper handles request encoding automatically.
- Your team decides what the traffic means.
- Actions: Tenant-defined behaviors such as
login,view_article, orcheckout_complete. - Entities: Tenant-defined identity rules such as
ip + user agent,session cookie, orheader + payload traits. - Mitigation: Reusable responses such as monitor, challenge, or block.
- Policies: The rules that connect traffic conditions, actions, entities, mitigation, and optional monitoring windows.
The simple mental model
If you are new to Esper, this is the shortest useful way to understand it:- A source sends Esper an event.
- Esper automatically encodes the request into a stable field model.
- Tenant-defined actions classify meaningful behaviors.
- Tenant-defined entities decide how traffic should be grouped for state and analysis.
- Policies evaluate expressions, action requirements, entity bindings, and windows.
- Mitigation determines whether matching traffic is monitored, challenged, or blocked.
- Results show policy performance and operational outcomes afterward.
Who these docs are written for
These docs are written for:- A founder or product lead defining the operator workflow.
- An operator managing policies and reviewing outcomes.
- An engineer or AI agent integrating the control plane or Esper CLI.
Operation Modes
Esper has two operational modes. Pick the one that matches your latency, operational, and integration needs.cloud
cloud is the simplest mode. Your application, middleware, or platform
integration sends the current request context directly to Esper and Esper
returns one immediate action to apply at that boundary.
What you get:
- No customer-managed Esper daemon
- No required customer-managed sync loop
- API-key-only authentication for runtime decisions
- Simplest developer onboarding path
- Higher round-trip latency than
hybrid - No local enforcement if Esper is unreachable
- Less customer control over local enforcement behavior
Integration-Managed Magic
cloud is intended to feel like magic for the customer. The customer
still deploys an Esper-managed integration at the traffic boundary, but that
integration should handle request forwarding, Esper calls, and enforcement
without exposing Esper internals to the customer.Typical flow
HTTP example
allowchallengeblock
cloud with one of the shipped
Integrations.
hybrid
hybrid is for customers running Esper-adjacent runtime on their own devices or servers.
What you get:
- Local sync from origin
- Local mitigation cache
- Lower-latency local enforcement
- Fuller operational control
- An hybrid daemon
- Local config and data management
- More operational responsibility
Hybrid commands
Hybrid paths
Which mode should you choose?
Usecloud if:
- You want the smallest initial setup
- HTTP is sufficient
- You are comfortable waiting for Esper’s decision inline
hybrid if:
- The customer runs their own devices or servers
- Local enforcement speed matters
- A synced local runtime is acceptable operationally
The integration guides focus on practical stack boundaries such as Vercel,
Cloudflare Workers, AWS Lambda, and Heroku.