Skip to content

[DEPR]: Removal of v2/configurations/ preferences configuration API . #37947

@AhtishamShahid

Description

@AhtishamShahid

RFC Start Date

2026-01-27

Target Plan Accepted Date

2026-02-11

Target 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.

Metadata

Metadata

Labels

deprProposal for deprecation & removal per OEP-21

Type

No type

Projects

Status

Draft

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions