openapi: 3.0.3 info: title: EvoFirewall API version: 0.1.0 description: Centralized firewall control plane paths: /health: get: summary: Liveness responses: '200': description: OK /api/v1/dashboard: get: summary: Dashboard KPI security: [{ bearerAuth: [] }] responses: '200': description: Stats /api/v1/agents: get: summary: List agents security: [{ bearerAuth: [] }] responses: '200': description: Agents /api/v1/lists: get: summary: List IP lists security: [{ bearerAuth: [] }] responses: '200': description: Lists post: summary: Create IP list security: [{ bearerAuth: [] }] responses: '200': description: Created /api/v1/rules: get: summary: List policy rules security: [{ bearerAuth: [] }] responses: '200': description: Rules post: summary: Create policy rule security: [{ bearerAuth: [] }] responses: '200': description: Created /v1/agent/enroll: post: summary: Enroll agent (public + seed) responses: '201': description: Pending agent /v1/agent/policy: get: summary: Evaluated policy for agent security: [{ agentToken: [] }] responses: '200': description: Policy /v1/agent/apply-report: post: summary: Apply report + packet stats security: [{ agentToken: [] }] responses: '200': description: OK components: securitySchemes: bearerAuth: type: http scheme: bearer agentToken: type: http scheme: bearer