Skip to content

[DEPR]: Contentstore and enrollment API versions superseded by FC-0118 #39128

Open

Description

@Faraz32123

RFC Start Date

N/A -- Already Accepted

Target Plan Accepted Date

N/A -- Already Accepted

Target Transition Unblocked Date

Immediately -- Transition Already Unblocked

Earliest Breaking Changes Unblocked Date

One named release after the release this deprecation ships in

Rationale

As part of FC-0118 (API standardization), a set of Studio contentstore
endpoints and the LMS enrollment API were re-issued at new versions rather than
changed in place. The standardization ADRs mandate changes that are breaking for
existing consumers:

  • ADR 0029 replaces the legacy {"developer_message": ..., "error_code": ...}
    error shape with an RFC 7807 envelope (type, title, status, detail,
    instance). Any client parsing error responses would break.
  • ADR 0028 moves from APIView to ViewSet + DefaultRouter, changing URL
    patterns (trailing slashes, router-managed routing).
  • ADR 0026 standardizes authentication and removes the deprecated
    BearerAuthentication, so Bearer-only consumers lose access.
  • ADR 0032 standardizes pagination, changing the response envelope on list
    endpoints.

Issuing new versions let existing consumers migrate on their own timeline
instead of absorbing a silent breaking change. That migration window is what
this ticket closes: the old versions are now redundant, and keeping both means
every future change to these endpoints has to be made twice.

Description

All replacements are merged and available today via
#38755.

Deprecated endpoint Replacement Standardization issue
GET/POST /api/contentstore/v0/xblock/{course_id} and /{course_id}/{usage_key} GET/POST/PATCH/DELETE /api/contentstore/v1/xblock/{usage_key}/ #38368
/api/enrollment/v1/ — enrollment, enrollments, course/{course_id}, unenroll/, roles/, enrollment_allowed/ /api/enrollment/v2/ #38369
GET/PUT /api/contentstore/v1/course_details/{course_id} GET/PUT /api/contentstore/v3/course_details/{course_key}/ #38370
GET /api/contentstore/v1/home GET /api/contentstore/v3/home/ #38371
GET /api/contentstore/v2/home/courses GET /api/contentstore/v4/home/ #38372
POST /api/contentstore/v0/grading/{course_id} PATCH /api/contentstore/v3/authoring_grading/{course_key}/ #38373

Consumers migrating should expect the RFC 7807 error envelope, router-managed
URLs (note the trailing slash), JWT or session auth in place of Bearer, and on
list endpoints the standardized pagination envelope.

Deprecation Schedule

The old versions are deprecated as of this ticket and will be removed one
named release after
the release in which this deprecation ships, giving
operators and plugin authors a full release cycle on a supported version.

  1. Now — endpoints marked deprecated: deprecated: true in the OpenAPI
    schema, a Warning response header, and docs pointing at the replacements.
  2. Next named release — both versions ship; the deprecated ones still work.
  3. The release after — old versions removed.

Task List

This ticket is the umbrella for API deprecations arising from the FC-0118
standardization work. Further areas will be appended as their replacement
versions merge:

  • contentstore xblock, course_details, home (v1 and v2), grading; LMS enrollment v1 — #38755

Activity

  1. added
    deprProposal for deprecation & removal per OEP-21
    on Sep 18, 2026
  2. Abdul-Muqadim-Arbisoft commented on Sep 27, 2026

    @Abdul-Muqadim-Arbisoft
    Contributor

    Entry for this ticket: contentstore video uploads. The replacement is in review in #39102; please add the lines below when it merges.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    POST /api/contentstore/v0/videos/uploads/{course_id} POST /api/authoring/v1/courses/{course_key}/videos/ #39060
    GET/DELETE /api/contentstore/v0/videos/uploads/{course_id}/{edx_video_id} GET /api/authoring/v1/courses/{course_key}/videos/ (the listing the v0 GET returns) and GET/DELETE /api/authoring/v1/courses/{course_key}/videos/{edx_video_id}/ #39060

    Line for the Task List:

    How it is marked: deprecated: true in the published OpenAPI schema. The superseded views are left untouched: no response header and no deprecation notes in code.

    The timeline is this ticket's: removed one named release after the release this ships in.

  3. Abdul-Muqadim-Arbisoft commented on Oct 4, 2026

    @Abdul-Muqadim-Arbisoft
    Contributor

    Entry for this ticket: contentstore video management. The replacement is in review in #39186; please add the lines below when it merges.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    GET /api/contentstore/v1/videos/{course_id}/{edx_video_id}/usage GET /api/authoring/v2/courses/{course_key}/video_usages/{edx_video_id}/ #39071
    PUT /api/contentstore/v1/videos/{course_id}/download POST /api/authoring/v2/courses/{course_key}/video_archives/ #39071

    Line for the Task List:

    Removal step for this area: move VideoDownloadThrottle out of cms/djangoapps/contentstore/rest_api/v1/views/videos.py before that module is deleted. The v2 archive view and its tests import it from there, so deleting the module first breaks the import of cms/urls.py.

    How it is marked: deprecated: true in the published OpenAPI schema. The superseded views are left untouched: no response header and no deprecation notes in code.

    The timeline is this ticket's: removed one named release after the release this ships in.

  4. taimoor-ahmed-1 commented on Oct 13, 2026

    @taimoor-ahmed-1
    Contributor

    Entry for this ticket: contentstore course grading. The replacement is in review in #39227; please add the lines below when it merges.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    GET/POST /api/contentstore/v1/course_grading/{course_id} GET/PATCH /api/authoring/v3/courses/{course_key}/grading/ #39065
    GET/PATCH /api/contentstore/v3/authoring_grading/{course_key}/ GET/PATCH /api/authoring/v3/courses/{course_key}/grading/ #39065

    The existing POST /api/contentstore/v0/grading/{course_id} row should point at the same replacement, PATCH /api/authoring/v3/courses/{course_key}/grading/. #39227 also marks that v0 route deprecated in the CMS schema, which it was not until now.

    Line for the Task List:

    Migration notes

    • The GET returns the grading policy at the top level instead of under course_details.
    • ?view=full adds course_assignment_lists, default_grade_designations, is_credit_course, show_credit_eligibility and mfe_proctored_exam_settings_url, under the v1 names. grace_period also gains seconds.
    • The v1 POST body is accepted unchanged by PATCH. PATCH also accepts partial bodies, changing only the fields sent.
    • Bearer tokens are not accepted: use JWT or a session.
    • Errors use the standardized envelope.
    • The trailing slash is required.
    • Slash-form (Old Mongo) course keys are served only by the deprecated addresses.

    How it is marked: deprecated: true in the CMS schema, plus a docstring note on the v1 and v0 views. No response header.

    Window: this ticket's own schedule. The marking ships in the next named release after Verawood, and the deprecated addresses are removed one named release after that.

  5. taimoor-ahmed-1 commented on Oct 14, 2026

    @taimoor-ahmed-1
    Contributor

    Entry for this ticket: contentstore course index. The replacement is in review in #39229; please add the lines below when it merges.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    GET /api/contentstore/v1/course_index/{course_id} GET /api/authoring/v2/courses/{course_key}/outline/?view=full (the screen payload) or the default thin outline tree #39066

    Line for the Task List:

    Migration notes

    • ?view=full keeps v1's top-level keys and per-node shape, minus initial_user_clipboard. Read the clipboard from /api/content-staging/v1/clipboard/.
    • The default view is a thin tree two levels deep. Nodes cut at the depth limit carry children_url.
    • ?format=concise has no equivalent; v1's concise form also listed the components inside units.
    • Blocks with pre-1900 start dates are reported as stored; v1 repaired them on read.
    • Inactive browser sessions and Bearer tokens are refused; use JWT or an active session.
    • Slash-form course keys are served only by v1.
    • The trailing slash is required.
    • Errors use the standardized envelope.

    How it is marked: deprecated: true in the CMS schema, plus a docstring note on the v1 view. No response header.

    Window: this ticket's own schedule. The marking ships in the next named release after Verawood, and the deprecated address is removed one named release after that.

  6. Abdul-Muqadim-Arbisoft commented on Oct 15, 2026

    @Abdul-Muqadim-Arbisoft
    Contributor

    Entry for this ticket: user API directory listings (users, user preferences, time zones). The replacement is in review in #39237; please add the lines below when it merges.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    GET /api/user/v1/users/ GET /api/user/v2/users/ #39058
    GET /api/user/v1/users/{id}/ GET /api/user/v2/users/{username}/ #39058
    GET /api/user/v1/user_prefs/ GET /api/user/v2/user_preferences/ #39058
    GET /api/user/v1/user_prefs/{id}/ GET /api/user/v2/user_preferences/{username},{key}/ #39058
    GET /api/user/v1/preferences/{pref_key}/users/ GET /api/user/v2/users/?preference_key={pref_key} #39058
    GET /api/user/v1/forum_roles/{name}/users/ GET /api/user/v2/users/?forum_role={name}&course_key={course_key} #39058
    GET /api/user/v1/preferences/time_zones/ GET /api/user/v2/time_zones/ #39058

    Line for the Task List:

    • user API directory listings (users, user preferences, time zones) — #39237 (#39058)

    How it is marked: deprecated: true in the published OpenAPI schema. The superseded views are left untouched: no response header and no deprecation notes in code.

    The timeline is this ticket's: removed one named release after the release this ships in.

  7. Faraz32123 commented on Oct 15, 2026

    @Faraz32123
    ContributorAuthor

    Entry for this ticket: contentstore legacy library list. The replacement is in review in #39238; please add the lines below when it merges.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    GET /api/contentstore/v1/home/libraries GET /api/authoring/v4/legacy_libraries/ #39069
    GET /api/contentstore/v3/home/libraries/ GET /api/authoring/v4/legacy_libraries/ #39069
    GET /api/authoring/v3/home/libraries/ GET /api/authoring/v4/legacy_libraries/ #39069

    Line for the Task List:

    How it is marked: deprecated: true in the published CMS OpenAPI schema (/api/contentstore/v3/home/libraries/ already carried it under the v3 home prefix; the v1 path and /api/authoring/v3/home/libraries/ gain it here). The superseded views are left untouched: no response header and no deprecation notes in code.

    The timeline is this ticket's: removed one named release after the release this ships in.

    Before removal: on sites with ENABLE_CREATOR_GROUP, the v1 and v3 lists create the unrequested CourseCreator record on GET, and POST /request_course_creator depends on that record. The v4 list does not create it; the Studio home and course rerun contexts still do. Removing these addresses is safe for that flow only while one of those remains, and #39068 (Studio home) must provide an explicit write before it drops the other. Details in #39238, "Deprecations".

  8. taimoor-ahmed-1 commented on Oct 22, 2026

    @taimoor-ahmed-1
    Contributor

    Entry for this ticket: contentstore container handler. The replacement is in review in #39274 (stacked on #39229); please add the lines below when it merges.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    GET /api/contentstore/v1/container_handler/{usage_key_string} GET /api/authoring/v2/containers/{usage_key}/?view=full (the Unit page payload) or the default thin container view #39064

    Line for the Task List:

    Migration notes

    • ?view=full keeps v1's fields and shapes, minus user_clipboard and action. Read the clipboard from /api/content-staging/v1/clipboard/.
    • The default view is a thin container representation: id, type, name, unit, position and ancestors.
    • view=full is available for a unit or a container inside a unit. Sections and subsections answer the default view; with view=full they answer 404 (v1 answered 500).
    • A missing block answers 404 (v1: 400 with an empty body). A leaf component key answers 404 (v1: 200); use /api/authoring/v1/xblocks/{usage_key}/ for component data. Library and i4x:// keys answer 404.
    • Inactive browser sessions and Bearer tokens are refused; use JWT or an active session.
    • The trailing slash is required.
    • Errors use the standardized envelope.

    How it is marked: deprecated: true in the CMS schema, plus a docstring note on the v1 view. No response header.

    Window: this ticket's own schedule. The marking ships in the next named release after Verawood, and the deprecated address is removed one named release after that.

  9. Abdul-Muqadim-Arbisoft commented on Oct 23, 2026

    @Abdul-Muqadim-Arbisoft
    Contributor

    Entry for this ticket: user account, profile image, ID verification and name-change APIs. The replacement is in review in #39297; please add the lines below when it merges.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    GET /api/user/v1/me GET /api/user/v2/accounts/me/ #39058
    GET /api/user/v1/accounts GET /api/user/v2/accounts/ #39058
    POST /api/user/v1/accounts/search_emails POST /api/user/v2/email_searches/ #39058
    GET/PATCH /api/user/v1/accounts/{username} GET/PATCH /api/user/v2/accounts/{username}/ #39058
    POST /api/user/v1/accounts/{username}/deactivate/ POST /api/user/v2/accounts/{username}/deactivation/ #39058
    POST/DELETE /api/user/v1/accounts/{username}/image POST/DELETE /api/user/v2/accounts/{username}/profile_image/ #39058
    GET /api/user/v1/accounts/{username}/verification_status/ GET /api/user/v2/accounts/{username}/verification_status/ #39058
    GET /api/user/v1/accounts/{username}/verifications/ GET /api/user/v2/accounts/{username}/verifications/ #39058
    POST /api/user/v1/accounts/name_change/ POST /api/user/v2/name_changes/ #39058
    POST /api/user/v1/accounts/name_change/{username}/confirm/ POST /api/user/v2/name_changes/{username}/confirmations/ #39058

    Line for the Task List:

    • user account, profile image, ID verification and name-change APIs — #39297 (#39058)

    How it is marked: deprecated: true in the published OpenAPI schema. The superseded views are left untouched: no response header and no deprecation notes in code.

    The timeline is this ticket's: removed one named release after the release this ships in.

  10. taimoor-ahmed-1 commented on Oct 25, 2026

    @taimoor-ahmed-1
    Contributor

    Entry for this ticket: contentstore advanced settings. The replacement is in review in #39303; please add the lines below when it merges.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    GET /api/contentstore/v0/advanced_settings/{course_id} GET /api/authoring/v1/courses/{course_key}/advanced_settings/ (no view = v0 fetch_all=0; view=full = v0 default) #39059
    PATCH /api/contentstore/v0/advanced_settings/{course_id} PATCH /api/authoring/v1/courses/{course_key}/advanced_settings/ #39059

    Line for the Task List:

    Migration notes

    • The default read is the set of settings course authors edit (v0 with fetch_all=0); request view=full for every field (v0's default).
    • filter_fields becomes fields, which selects within the chosen view. fetch_all and filter_fields are ignored on v1.
    • A refused value is reported under its setting name with a fixed message.
    • Bearer tokens are refused; use JWT or a session.
    • The trailing slash is required.
    • Errors use the standardized envelope.

    How it is marked: deprecated: true in the CMS schema. The legacy views are not edited, and there is no response header.

    Window: this ticket's own schedule. The marking ships in the next named release after Verawood, and the deprecated address is removed one named release after that.

  11. 5 remaining items

  12. Faraz32123 commented on Oct 27, 2026

    @Faraz32123
    ContributorAuthor

    Entry for this ticket: contentstore certificates. The replacement is in review in #39316; please add the lines below when it merges.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    GET /api/contentstore/v1/certificates/{course_id} GET /api/authoring/v2/courses/{course_key}/certificate_settings/ #39062

    Line for the Task List:

    How it is marked: deprecated: true in the published OpenAPI schema. The superseded views are left untouched: no response header and no deprecation notes in code.

    The timeline is this ticket's: removed one named release after the release this ships in.

  13. Faraz32123 commented on Oct 27, 2026

    @Faraz32123
    ContributorAuthor

    Entry for this ticket: contentstore containers. The replacement is in review in #39317; please add the lines below when it merges.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    GET /api/contentstore/v1/container/{usage_key_string}/children GET /api/authoring/v2/containers/{usage_key}/children/ (paginated; view=full for the Unit page payload) #39063
    GET /api/contentstore/v1/container/vertical/{usage_key_string}/children GET /api/authoring/v2/containers/{usage_key}/children/ (301 alias of the endpoint above; not in the schema) #39063

    Line for the Task List:

    How it is marked: deprecated: true in the published OpenAPI schema. The superseded views are left untouched: no response header and no deprecation notes in code.

    The timeline is this ticket's: removed one named release after the release this ships in.

  14. taimoor-ahmed-1 commented on Oct 31, 2026

    @taimoor-ahmed-1
    Contributor

    Entry for this ticket: Grades API v1. The replacement is in review in #39172; please add the lines below when it merges. The nine v1 docstrings link here.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    GET /api/grades/v1/courses/ GET /api/grade/v2/course_grades/ #39057
    GET /api/grades/v1/courses/{course_id}/ GET /api/grade/v2/course_grades/?course_key= and GET /api/grade/v2/course_grades/{username},{course_key}/ #39057
    GET /api/grades/v1/section_grades_breakdown/ GET /api/grade/v2/course_grades/?view=full (global staff only) #39057
    GET /api/grades/v1/gradebook/{course_id}/ GET /api/grade/v2/courses/{course_key}/gradebook_entries/ and .../gradebook_entries/{username}/ #39057
    POST /api/grades/v1/gradebook/{course_id}/bulk-update POST /api/grade/v2/courses/{course_key}/subsection_grade_overrides/ #39057
    GET /api/grades/v1/gradebook/{course_id}/grading-info GET /api/grade/v2/courses/{course_key}/grading_policy/ #39057
    GET /api/grades/v1/policy/courses/{course_id}/ GET /api/grade/v2/courses/{course_key}/grading_policy/?view=minimal #39057
    GET /api/grades/v1/subsection/{subsection_id}/ GET /api/grade/v2/subsection_grades/{username},{usage_key}/ and .../override_history_records/ #39057
    GET /api/grades/v1/submission_history/{course_id}/ GET /api/grade/v2/courses/{course_key}/submission_histories/ #39057

    Line for the Task List:

    Migration notes

    • JWT or session instead of Bearer. Page pagination (page, page_size up to 100) replaces the cursor. Errors use the standardized envelope. Database ids are not published; learners are named by username.
    • Parameters: course_id → course_key, module_id / subsection_id → usage_key, assignment → assignment_usage_key, history_record_limit → page_size.
    • Course grades: current_grade (0–100) becomes percent (0–1), a unit change. The section breakdown needs ?view=full and global staff. Reading another learner is 404 (v1: 403); an unknown course is an empty page (v1: 404).
    • Gradebook: total_users_count and filtered_users_count are replaced by count; invalid filter values are 400 (v1: 500).
    • Overrides: at most 100 items, JSON only; if any item is invalid nothing is stored (v1 applied the valid ones).
    • Subsection grades: the override history moves to its own paginated resource; an unavailable subsection is 404 (v1: 200 with success: false).
    • Grading policy: one resource for the policy and grading-info reads; assignment_types is a list.
    • Submission histories: user → username, location → usage_key, problem data only with ?view=full.
    • The full guide is in the PR description.

    How it is marked: deprecated: true for all nine operations in the LMS schema, plus a docstring line on each v1 view linking here. No response header.

    Window: this ticket's own schedule. The marking ships in the next named release after Verawood, and the deprecated addresses are removed one named release after that.

  15. Abdul-Muqadim-Arbisoft commented on Nov 1, 2026

    @Abdul-Muqadim-Arbisoft
    Contributor

    Entry for this ticket: user preferences and email opt-in APIs. The replacement is in review in #39314; please add the lines below when it merges.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    GET/PATCH /api/user/v1/preferences/{username} GET/PATCH /api/user/v2/accounts/{username}/preferences/ #39058
    GET/PUT/DELETE /api/user/v1/preferences/{username}/{preference_key} GET/PUT/DELETE /api/user/v2/accounts/{username}/preferences/{key}/ #39058
    POST /api/user/v1/preferences/email_opt_in/ POST /api/user/v2/email_opt_ins/ #39058
    POST /user_api/v1/preferences/email_opt_in/ POST /api/user/v2/email_opt_ins/ #39058

    Line for the Task List:

    • user preferences and email opt-in APIs — #39314 (#39058)

    How it is marked: deprecated: true in the published OpenAPI schema. The superseded views are left untouched: no response header and no deprecation notes in code.

    One row is marked nowhere, and is listed here for that reason. The fourth, POST /user_api/v1/preferences/email_opt_in/, is the same view as the third at a second, unversioned address. It keeps resolving and carries no schema mark, because marking it would admit an unversioned path into the published document — which is how the other /user_api/v1/ twins are treated too. It is listed so that it is removed alongside its sibling rather than left behind; this ticket is the only deprecation signal its callers get.

    Two of the deprecated operations change what the document publishes for them, with no change to
    what they answer.
    PATCH /api/user/v1/preferences/{username} and
    PUT /api/user/v1/preferences/{username}/{preference_key} were published with a bodiless 200 in
    the service-wide document; both handlers answer 204 and always have, and the document now says
    so. The handlers, their service and their URLconfs are not in the diff. A client that branches on
    the published status rather than on what the service sends sees a different declaration for these
    two from the release this ships in.

    The timeline is this ticket's: removed one named release after the release this ships in.

  16. Abdul-Muqadim-Arbisoft commented on Nov 1, 2026

    @Abdul-Muqadim-Arbisoft
    Contributor

    Entry for this ticket: registration, sign-in, password reset and registration validation. The replacement is in review in #39331; please add the lines below when it merges.

    Rows for the Description table:

    Deprecated endpoint Replacement Standardization issue
    GET /api/user/v1/account/registration/ GET /api/user/v2/registrations/ (answers as version 2: a configured confirm_email field is listed in the form) #39058
    POST /api/user/v1/account/registration/ POST /api/user/v2/registrations/ (answers as version 2: a configured required confirm_email is enforced) #39058
    GET /api/user/v2/account/registration/ GET /api/user/v2/registrations/ #39058
    POST /api/user/v2/account/registration/ POST /api/user/v2/registrations/ #39058
    GET /api/user/v1/account/password_reset/ GET /api/user/v2/password_resets/ #39058
    POST /api/user/v1/account/password_reset/token/validate/ POST /api/user/v2/password_reset_token_validations/ #39058
    POST /api/user/v1/validation/registration POST /api/user/v2/registration_validations/ (the address now ends in a slash) #39058
    GET /api/user/{api_version}/account/login_session/ (v1 and v2) GET /api/user/v2/login_sessions/ #39058
    POST /api/user/{api_version}/account/login_session/ (v1 and v2) POST /api/user/v2/login_sessions/ (a version 1 caller also sends email_or_username in place of email) #39058

    Line for the Task List:

    • registration, sign-in, password reset and registration validation — #39331 (#39058)

    How it is marked: deprecated: true in the published OpenAPI schema: the LMS's /lms-api/schema/ document and the service-wide /api-docs/ documents of the LMS and of Studio. Of this ticket's step-1 markers only the schema flag is applied: no Warning response header and no separate docs page. The replacement addresses are served by the LMS only. Studio's document marks the same nine operations because Studio serves them, but Studio mounts none of the replacements.

    Not covered by this entry: the unversioned twins of these routes, which keep resolving and are not marked: /user_api/v1/account/registration/, /user_api/v2/account/registration/, /user_api/{api_version}/account/login_session/, /user_api/v1/account/password_reset/ and /user_api/v1/account/password_reset/token/validate/, and also /create_account. The /user_api/v1/ twins of the addresses entered on this ticket earlier are not marked either; deprecating the twins is one decision for all of them at once.

    Removal prerequisites, to be met before the rows above are removed:

    1. The stock LMS renders its own sign-in page while ENABLE_AUTHN_MICROFRONTEND is off, which is its default. That page posts to the submit_url of the sign-in form description, which names the version 1 sign-in address and the version 1 field email. The form description has to name POST /api/user/v2/login_sessions/ and the field email_or_username; until it does, the version 1 arm of the templated sign-in address cannot be removed.
    2. The registration form description's submit_url names /api/user/v2/account/registration/ for every request that is not version 1, including requests answered at /api/user/v2/registrations/. It has to name /api/user/v2/registrations/ before the version 2 registration address can be removed.
    3. Known callers to move first: the Android app posts POST /api/user/v1/account/registration/, and the authentication front end posts the version 2 registration and sign-in addresses and POST /api/user/v1/validation/registration.

    Superseded views: The superseded views are left untouched: no response header and no deprecation notes in code.

    The timeline is this ticket's: removed one named release after the release this ships in.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    deprProposal for deprecation & removal per OEP-21

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions