openedx / openedx/openedx-platform
[API] User
Open
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 8.2k
- Forks
- 4.4k
- Avg merge
- 6d 18h
- Merged PRs (30d)
- 42
Description
Functional Area: User
Endpoints under this functional area:
| Module | API Version | Resource / Endpoint | HTTP Method | Description |
|---|---|---|---|---|
| Account Management | v1 | /user/v1/account/password_reset/ |
GET | Retrieves the password reset form description |
| Account Management | v1 | /user/v1/account/password_reset/token/validate/ |
POST | Validates a password reset token |
| Account Management | v1 | /user/v1/account/registration/ |
GET | Retrieves user registration form description |
| Account Management | v1 | /user/v1/account/registration/ |
POST | Creates a new user account |
| Account Management | v1 | /user/v1/accounts |
GET | Returns a list of user detail objects; supports filtering by usernames, emails, or LMS IDs |
| Account Management | v1 | /user/v1/accounts/cancel_retirement/ |
POST | Cancels the retirement of a user's account |
| Account Management | v1 | /user/v1/accounts/deactivate_logout/ |
POST | Marks user as having no password and logs them out |
| Account Management | v1 | /user/v1/accounts/name_change/ |
POST | Creates a PendingNameChange request for profile name update |
| Account Management | v1 | /user/v1/accounts/name_change/{username}/confirm/ |
POST | Confirms a pending name change request and updates user's profile name |
| Account Management | v1 | /user/v1/accounts/replace_usernames/ |
POST | Replaces current usernames with desired usernames; returns mapping of successful and failed replacements |
| Account Management | v1 | /user/v1/accounts/retire/ |
POST | Retires a user account including username, email, and other PII |
| Account Management | v1 | /user/v1/accounts/retire_misc/ |
POST | Retires a user in the LMS |
| Account Management | v1 | /user/v1/accounts/retirement_cleanup/ |
POST | Deletes a batch of retirement requests by username |
| Account Management | v1 | /user/v1/accounts/retirement_partner_report/ |
POST | Returns list of UserRetirementPartnerReportingStatus users and updates their processing status |
| Account Management | v1 | /user/v1/accounts/retirement_partner_report/ |
PUT | Creates a UserRetirementPartnerReportingStatus object for a user in the retirement pipeline |
| Account Management | v1 | /user/v1/accounts/retirement_partner_report_cleanup/ |
POST | Deletes UserRetirementPartnerReportingStatus objects for reported users |
| Account Management | v1 | /user/v1/accounts/retirement_queue/ |
GET | Returns RetirementStatus users in specified states and cool-off period |
| Account Management | v1 | /user/v1/accounts/retirements_by_status_and_date/ |
GET | Lists UserRetirementStatusSerializer rows filtered by status and date range |
| Account Management | v1 | /user/v1/accounts/search_emails |
POST | Returns user information for a list of emails; staff-only access |
| Account Management | v1 | /user/v1/accounts/update_retirement_status/ |
PATCH | Updates the RetirementStatus for a user and appends messages to the log |
| Account Management | v1 | /user/v1/accounts/{username} |
GET | Retrieves a single detailed user object |
| Account Management | v1 | /user/v1/accounts/{username} |
PATCH | Updates user account/profile info (merge-patch supported) |
| Account Management | v1 | /user/v1/accounts/{username}/deactivate/ |
POST | Marks user as having no password for deactivation purposes |
| Account Management | v1 | /user/v1/accounts/{username}/image |
POST | Upload/update user profile image |
| Account Management | v1 | /user/v1/accounts/{username}/image |
DELETE | Deletes a user's profile image |
| Account Management | v1 | /user/v1/accounts/{username}/retirement_status/ |
GET | Returns the RetirementStatus of a user |
| Account Management | v1 | /user/v1/accounts/{username}/verification_status/ |
GET | Returns ID verification status for a user |
| Account Management | v1 | /user/v1/accounts/{username}/verifications/ |
GET | Retrieves detailed ID verification information for a user |
| Account Management | v1 | /user/v1/me |
GET | Returns the authenticated user's username |
| Forum Management | v1 | /user/v1/forum_roles/{name}/users/ |
GET | Lists users for a given forum role |
| Preferences Management | v1 | /user/v1/preferences/email_opt_in/ |
POST | Update or create user's email opt-in preference |
| Preferences Management | v1 | /user/v1/preferences/time_zones/ |
GET | List all time zones or by country |
| Preferences Management | v1 | /user/v1/preferences/{pref_key}/users/ |
GET | List a user's preferences |
| Preferences Management | v1 | /user/v1/preferences/{username} |
GET | Retrieve all preferences for a user |
| Preferences Management | v1 | /user/v1/preferences/{username} |
PATCH | Update user preferences |
| Preferences Management | v1 | /user/v1/preferences/{username}/{preference_key} |
GET | Retrieve a specific preference for a user |
| Preferences Management | v1 | /user/v1/preferences/{username}/{preference_key} |
PUT | Update a specific preference for a user |
| Preferences Management | v1 | /user/v1/preferences/{username}/{preference_key} |
DELETE | Delete a specific user preference |
| Preferences Management | v1 | /user/v1/user_prefs/ |
GET | List all user preferences via ORM |
| Preferences Management | v1 | /user/v1/user_prefs/{id}/ |
GET | Retrieve a single user preference via ORM |
| User Management | v1 | /user/v1/users/ |
GET | List all users via ORM |
| User Management | v1 | /user/v1/users/{id}/ |
GET | Retrieve a single user object via ORM |
| Validation & Registration | v1 | /user/v1/validation/registration |
POST | Validate registration form inputs before creating a new user |
| Account Registration | v2 | /user/v2/account/registration/ |
GET | Retrieve registration endpoint info |
| Account Registration | v2 | /user/v2/account/registration/ |
POST | Create a new user account |
| Login Session | v1 | /user/{api_version}/account/login_session/ |
GET | Get login session info |
| Login Session | v1 | /user/{api_version}/account/login_session/ |
POST | Authenticate user and create login session |
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue body is an inventory of User API endpoints, including v1 and v2 paths, but it does not name a documentation file or specify the requested change. First clarify the target documentation location and scope; completion criteria are not provided in the issue.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api, backend
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100