{"name": "BLTZ Shield API", "version": "1.0.0", "status": "running", "endpoints": [{"path": "/metadata", "method": "POST", "description": "Process ChatGPT metadata requests"}, {"path": "/conversation", "method": "POST", "description": "Process ChatGPT conversation requests"}, {"path": "/gemini_metadata", "method": "POST", "description": "Process Gemini metadata requests"}, {"path": "/gemini_conversation", "method": "POST", "description": "Process Gemini conversation requests"}, {"path": "/claude_metadata", "method": "POST", "description": "Process Claude metadata requests"}, {"path": "/claude_conversation", "method": "POST", "description": "Process Claude conversation requests with policy evaluation"}, {"path": "/desktop_metadata", "method": "POST", "description": "Process Claude Desktop (MCP) metadata requests"}, {"path": "/desktop_conversation", "method": "POST", "description": "Process Claude Desktop (MCP) conversation requests with policy evaluation"}, {"path": "/claude-code/register", "method": "POST", "description": "Register Claude Code installation, returns long-lived JWT + settings.json config"}, {"path": "/claude-code/refresh", "method": "POST", "description": "Refresh Claude Code JWT (called by SessionStart hook, requires auth)"}, {"path": "/claude-code/unregister", "method": "POST", "description": "Revoke a Claude Code installation (idempotent; called by uninstaller)"}, {"path": "/hooks/pre-tool-use", "method": "POST", "description": "Claude Code hook: PreToolUse policy check (tool/file enforcement)"}, {"path": "/hooks/post-tool-use", "method": "POST", "description": "Claude Code hook: PostToolUse policy check (file write/read content scan)"}, {"path": "/hooks/user-prompt", "method": "POST", "description": "Claude Code hook: UserPromptSubmit policy check (conversation enforcement)"}, {"path": "/hooks/subagent-start", "method": "POST", "description": "Claude Code hook: SubagentStart logging (agent teams/cowork mode)"}, {"path": "/hooks/task-created", "method": "POST", "description": "Claude Code hook: TaskCreated policy check (agent teams/cowork mode)"}, {"path": "/hooks/elicitation", "method": "POST", "description": "Claude Code hook: Elicitation policy check (MCP credential request block)"}, {"path": "/hooks/post-compact", "method": "POST", "description": "Claude Code hook: PostCompact secrets/PII scan of compaction summary (pids 34, 35)"}, {"path": "/hooks/stop", "method": "POST", "description": "Claude Code hook: Stop session audit logging (pid 31)"}, {"path": "/hooks/instructions-loaded", "method": "POST", "description": "Claude Code hook: InstructionsLoaded policy check (malicious CLAUDE.md rules, pid 8)"}, {"path": "/proxy/register", "method": "POST", "description": "Register bltz-agent daemon, returns long-lived JWT (no auth required)"}, {"path": "/proxy/refresh", "method": "POST", "description": "Refresh bltz-agent JWT (requires auth)"}, {"path": "/proxy/heartbeat", "method": "POST", "description": "Proxy daemon periodic heartbeat (requires auth)"}, {"path": "/armor_wheel_catch_mouse", "method": "POST", "description": "DEPRECATED: Get API key for browser extension - use /register_extension instead"}], "authentication": "Authorization: Bearer JWT required (use /register_extension to get JWT)", "deprecated": {"X-API-Key": "No longer supported - use JWT auth", "armor_wheel_catch_mouse": "Use /register_extension for JWT auth"}}