USER-CREATE |
POST /api/v1/users |
school/platform admin with user-mgmt |
CANONICAL_CREATE |
Server-generated temporary + must_change; caller password ignored |
UNIT-CREATE-ADMIN |
POST /api/school/units/users/create-admin |
platform / elevated |
INTERNAL_PROVIDER_ONLY |
Temporary + must_change; not school self-service recovery |
ACCT-GEN-STUDENTS |
POST /api/v1/admin/accounts/generate-students |
school admin |
CANONICAL_CREATE |
Random temps + must_change |
ACCT-GEN-PARENTS |
POST /api/v1/admin/accounts/generate-parents |
school admin |
CANONICAL_CREATE |
Random temps + must_change; no shared defaults |
FACULTY-AUTO-USER |
op.faculty auto-create user |
system/admin |
CANONICAL_CREATE |
Random password; no plaintext log |
ACCT-BULK-PARENT-RESET |
POST /api/v1/admin/accounts/reset-parent-passwords |
— |
DISABLED_LEGACY |
410 Gone (T0F-005 / T0F-014 denominator) |
NATIVE-RESET |
GET/POST /web/reset_password |
public |
DISABLED_LEGACY |
ICP off + native_reset_block → 404 |
NATIVE-SIGNUP |
GET /web/signup?token=… |
public |
DISABLED_LEGACY |
Blocked → 404; not a second DEC-014 lifecycle |
PWD-ADMIN-RESET |
POST /api/v1/users/<id>/reset-password |
admin with scope |
CANONICAL_RECOVERY |
DEC-014 §D: admin-provided ≥8 + must_change; no plaintext in response (admin already chose value); tenant-scoped |
PWD-RESET-REQUEST |
POST /api/auth/password-reset/request |
public |
CANONICAL_RECOVERY |
Anti-enumeration; recovery token issue |
PWD-RESET-CONFIRM |
POST /api/auth/password-reset/confirm |
public |
CANONICAL_RECOVERY |
Single-use password-reset token consume |
PWD-CHANGE-SELF |
POST /api/auth/change-password |
authed |
CANONICAL_RECOVERY |
Clears must_change; revokes other sessions |
SPMB-OTP |
/api/SPMB/account/* OTP register/verify |
applicant |
CANONICAL_CREATE |
Not password-reset; separate activation channel |
DEMO-SEED-SCRIPTS |
Golden/demo provision scripts (scripts/golden/seed_*, ops onboard) |
ops/QA |
TEST_FIXTURE_ONLY |
Secrets via env; never production defaults |
PLAT-SCHOOL-ADMIN-CREATE |
POST /api/v1/platform/school-admins/create |
platform_operator |
INTERNAL_PROVIDER_ONLY |
Temporary + must_change in response |
FOUND-HR-LINK-OR-CREATE |
POST /api/v1/foundation/hr/users/link-or-create |
foundation HR |
INTERNAL_PROVIDER_ONLY |
Temporary + must_change on create |
FOUND-PWD-RESET-DEAD |
registry/FE dead foundation reset |
— |
REMOVE |
Do not resurrect without DEC; use admin reset |
PWD-REGISTER-STUB |
FE /register |
public |
REMOVE |
Stub; not V1 |
BREAK-GLASS-CUSTOMER |
customer login-as / break-glass |
— |
DISABLED_LEGACY |
Must stay absent/denied on customer surface |
ACTIVATION-TOKEN-PURPOSE |
scola.credential.recovery.token purpose=activation |
system |
CANONICAL_CREATE |
Allowed DEC-014 path; must have real call site if claimed |
IMPORT-BULK-CREDENTIAL |
admin import creating users |
admin |
DECISION_REQUIRED |
Must map to temporary+must_change or be denied; no plaintext defaults |