openedx / openedx/openedx-authz

Split REST API views by domain ownership and package layout

Open
#435 0 comments 0 reactions 1 assignee View on GitHub

@mariajgrimaldi is already working on this.

Since Sep 2, 2026.

  • #378 by @mariajgrimaldi — closed without merging
  • #453 by @mariajgrimaldi — open
willow
Dominant language
Python
Stars
0
Forks
9
Avg merge
13d 9h
Merged PRs (30d)
9

Description

Description

Apply the domain-ownership audit and package-layout convention to the code, without changing any behavior, so Authorization's package boundaries are visible in the code and not only in documentation.

  • Move Admin-Console-shaped endpoints: relocate AdminConsoleOrgsAPIView, ScopesAPIView, TeamMembersAPIView, TeamMemberAssignmentsAPIView, and AssignmentsAPIView into a new rest_api/v1/admin_console/ subpackage.
  • Move the temporary flag endpoint: relocate WaffleFlagStatesAPIView into a new rest_api/v1/course_authoring/ subpackage, matching its status as the one exception to Authorization-owned data.
  • Keep generic endpoints generic: leave PermissionValidationMeView, RoleUserAPIView, RoleListView, and UserValidationAPIView in views.py, with no reference to any specific consumer's packaging.
  • No behavior change: no URL changes, no endpoint-behavior changes; move each view's tests alongside it.
  • Cleanup: remove any dead/duplicate module left behind by the split.

Concrete deliverable: rest_api/v1 split into admin_console/ and course_authoring/ subpackages per the ownership/layout ADRs, CI green, no behavior change.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.