The v2/configurations/ API endpoint and its supporting services (NotificationTypeManager and NotificationAppManager) represent an older approach to managing notification preferences. These components have been superseded by the v3 API (v3/configurations/), which provides improved functionality and a cleaner architecture. Maintaining both versions increases code complexity, testing burden, and potential for inconsistencies in notification preference handling. The v2 API is no longer actively developed and will be removed to streamline the codebase.
For more info Please refer to this Ticket
opened 04:50AM - 27 Jan 26 UTC
depr
### RFC Start Date
2026-01-27
### Target Plan Accepted Date
2026-02-11
### T… arget Transition Unblocked Date
2026-01-27 - V3 APIs have already been merged.
### Earliest Breaking Changes Unblocked Date
2026-02-11
### Earliest Open edX Named Release with Breaking Changes
Verawood - 2026-04
### Rationale
The `v2/configurations/ `API endpoint and its supporting services (NotificationTypeManager and NotificationAppManager) represent an older approach to managing notification preferences. These components have been superseded by the v3 API (`v3/configurations/`), which provides improved functionality and a cleaner architecture. Maintaining both versions increases code complexity, testing burden, and potential for inconsistencies in notification preference handling. The v2 API is no longer actively developed and should be removed to streamline the codebase.
### Removal
**The following components will be removed:**
**API Endpoint**
`v2/configurations/ - openedx/core/djangoapps/notifications/urls.py `(lines 18-22)
**URL path:**
```
path('v2/configurations/', NotificationPreferencesView.as_view(), name='notification-preferences-aggregated-v2')
Views
```
- NotificationPreferencesView - The view class serving the v2 endpoint (imported in `urls.py`)
- Service Classes in` openedx/core/djangoapps/notifications/base_notification.py`
- `NotificationTypeManager` (lines 279-332) - Manager class for notification types used by v2 API
- `NotificationAppManager` (lines 335-365) - Manager class for notification app preferences used by v2 API
**Related Functions**
- `get_default_values_of_preference` - Function utilizing the deprecated managers
- Any serializers, tests, and utilities exclusively supporting the v2 API
### Replacement
**The v2 API is replaced by:**
- `v3/configurations/ - openedx/core/djangoapps/notifications/urls.py `(lines 23-27)
- **URL path:** `path('v3/configurations/', NotificationPreferencesViewV3.as_view(), name='notification-preferences-aggregated-v3')`
- **View:** `NotificationPreferencesViewV3`
### Deprecation
_No response_
### Additional Info
_No response_
### Transition Unblocked Tasks
_No response_
### Feature Removal Tasks
- [ ] Communication with stakeholders.
- [ ] Remove all code related to v2 API.
system
(system)
Closed
March 10, 2026, 5:06am
2
This topic was automatically closed after 5 minutes. New replies are no longer allowed.