feat(api): implement notebook management CRUD endpoints
Implement Sprint 1: Notebook Management CRUD
- Add NotebookService with full CRUD operations
- Add POST /api/v1/notebooks (create notebook)
- Add GET /api/v1/notebooks (list with pagination)
- Add GET /api/v1/notebooks/{id} (get by ID)
- Add PATCH /api/v1/notebooks/{id} (partial update)
- Add DELETE /api/v1/notebooks/{id} (delete)
- Add Pydantic models for requests/responses
- Add custom exceptions (ValidationError, NotFoundError, NotebookLMError)
- Add comprehensive unit tests (31 tests, 97% coverage)
- Add API integration tests (26 tests)
- Fix router prefix duplication
- Fix JSON serialization in error responses
BREAKING CHANGE: None
This commit is contained in:
26
.env.example
Normal file
26
.env.example
Normal file
@@ -0,0 +1,26 @@
|
||||
# API Key Configuration
|
||||
NOTEBOOKLM_AGENT_API_KEY=your-api-key-here
|
||||
NOTEBOOKLM_AGENT_WEBHOOK_SECRET=your-webhook-secret-here
|
||||
|
||||
# Server Configuration
|
||||
NOTEBOOKLM_AGENT_PORT=8000
|
||||
NOTEBOOKLM_AGENT_HOST=0.0.0.0
|
||||
NOTEBOOKLM_AGENT_RELOAD=true
|
||||
|
||||
# NotebookLM Configuration
|
||||
NOTEBOOKLM_HOME=~/.notebooklm
|
||||
NOTEBOOKLM_PROFILE=default
|
||||
|
||||
# Redis Configuration (for Celery/Queue)
|
||||
REDIS_URL=redis://localhost:6379/0
|
||||
|
||||
# Logging
|
||||
LOG_LEVEL=INFO
|
||||
LOG_FORMAT=json
|
||||
|
||||
# Development
|
||||
DEBUG=true
|
||||
TESTING=false
|
||||
|
||||
# Security
|
||||
CORS_ORIGINS=http://localhost:3000,http://localhost:8080
|
||||
Reference in New Issue
Block a user