1.8 KiB
1.8 KiB
Optimizer Endpoints
Purpose
Document optimizer API endpoints for content optimization tasks.
Code Locations (exact paths)
- Routing:
backend/igny8_core/modules/optimizer/urls.py - Views:
backend/igny8_core/modules/optimizer/views.py - Models/Services:
backend/igny8_core/business/optimization/models.py,services/*
High-Level Responsibilities
- Expose optimizer-related endpoints (as defined in
OptimizerViewSet) to manage optimization tasks and results.
Detailed Behavior
- Base path:
/api/v1/optimizer/ - Router registers root
OptimizerViewSet(see module code for actions/fields). - Inherits base viewset scoping, unified responses, permissions, throttling defined in module views.
Data Structures / Models Involved (no code)
OptimizationTaskand related optimization services.
Execution Flow
- Requests → DRF auth → OptimizerViewSet → service logic → unified response.
Cross-Module Interactions
- Operates on writer
Content; may influence publishing readiness and optimization scores.
State Transitions
- As defined by OptimizerViewSet actions (e.g., pending/running/completed/failed).
Error Handling
- Standard unified responses and throttling.
Tenancy Rules
- Inherits account/site scoping from base classes.
Billing Rules
- Optimization credits are tracked in optimization tasks; deductions occur in billing services when AI optimization runs (see optimization module docs).
Background Tasks / Schedulers
- Optimization runs may execute via services/Celery; endpoints trigger/manage these flows.
Key Design Considerations
- Keep scoping intact; reuse services for optimization execution.
How Developers Should Work With This Module
- Extend OptimizerViewSet with new actions as needed; ensure billing/credit checks are applied when adding AI-driven optimization.