Changes
🚀 New Features
API Key Management System
- Complete API Key Infrastructure from database to UI for secure programmatic access
- API Key CRUD Operations with create, list, and revoke functionality
- Bearer Token Authentication middleware protecting API endpoints
- Copy Button Component for easy API key copying with visual feedback
User Interface
- New API Keys Page in utilities section with full management interface
- Delete Confirmation Modal preventing accidental key revocation
- Loading Skeletons for better perceived performance
- Alphabetized Utilities Menu with API Keys moved to first position
Backend Implementation
- Database Migration adding api_keys table with proper schema
- Authentication Plugin for Fastify with bearer token validation
- API Routes for key management operations
- Database Service Methods for API key operations with is_active soft deletes
🔧 Technical Implementation
Full-Stack Architecture
- Database Layer with migration, methods, and type definitions
- Service Layer with dedicated API key service
- API Layer with protected routes and schema validation
- Frontend Layer with Zustand store, hooks, and React components
- Authentication Middleware integrated into existing auth flow
Developer Experience
- TypeScript Integration with proper type definitions throughout
- OpenAPI Schema Updates for API documentation
- Component Architecture following existing patterns and conventions
📊 Impact Summary
-
23 files changed with 1,814 insertions, 4 deletions
-
New API authentication system enabling external tool integration
-
Enhanced security with proper bearer token authentication
-
Documentation updates with comprehensive API reference
-
UI/UX improvements with alphabetized navigation and user-friendly interfaces
-
📝 Add docstrings to
develop
(#398) @coderabbitai -
📝 Add docstrings to
feature/api-keys
(#395) @coderabbitai
Docker
docker pull lakker/pulsarr:0.4.9
Contributors
@coderabbitai, @coderabbitai[bot] and @jamcalli