mirror of
https://github.com/OpenBankProject/OBP-API.git
synced 2026-02-06 11:27:05 +00:00
17 KiB
17 KiB
HTML Pages Reference
Overview
This document lists all HTML pages in the OBP-API application and their route mappings.
Main Application Pages
1. Home & Landing Pages
index.html
- Path:
/index - File:
obp-api/src/main/webapp/index.html - Route:
Menu.i("Home") / "index" - Authentication: Not required
- Purpose: Main landing page for the API
index-en.html
- Path:
/index-en - File:
obp-api/src/main/webapp/index-en.html - Route:
Menu.i("index-en") / "index-en" - Authentication: Not required
- Purpose: English version of landing page
introduction.html
- Path:
/introduction - File:
obp-api/src/main/webapp/introduction.html - Route:
Menu.i("Introduction") / "introduction" - Authentication: Not required
- Purpose: Introduction to the API
Authentication & User Management Pages
2. Login & User Information
already-logged-in.html
- Path:
/already-logged-in - File:
obp-api/src/main/webapp/already-logged-in.html - Route:
Menu("Already Logged In", "Already Logged In") / "already-logged-in" - Authentication: Not required
- Purpose: Shows message when user is already logged in
user-information.html
- Path:
/user-information - File:
obp-api/src/main/webapp/user-information.html - Route:
Menu("User Information", "User Information") / "user-information" - Authentication: Not required
- Purpose: Displays user information
3. Password Reset
Lost Password / Password Reset (Dynamically Generated)
- Path:
/user_mgt/lost_password(lost password form) - Path:
/user_mgt/reset_password/{TOKEN}(reset password form) - File: None (dynamically generated by Lift Framework)
- Route: Handled by
AuthUser.lostPasswordandAuthUser.passwordResetmethods - Source:
obp-api/src/main/scala/code/model/dataAccess/AuthUser.scala - Authentication: Not required (public password reset)
- Purpose: Request and reset forgotten passwords
- Note: These are not static HTML files but are rendered by Lift's user management system
- Links from:
oauth/authorize.html(line 30): "Forgotten password?" linktemplates-hidden/_login.html(line 31): "Forgotten password?" link
API Endpoint for Password Reset URL:
- Path:
POST /obp/v4.0.0/management/user/reset-password-url - Role Required:
CanCreateResetPasswordUrl - Purpose: Programmatically create password reset URLs
- Property: Controlled by
ResetPasswordUrlEnabled(default: false)
4. User Invitation Pages
user-invitation.html
- Path:
/user-invitation - File:
obp-api/src/main/webapp/user-invitation.html - Route:
Menu("User Invitation", "User Invitation") / "user-invitation" - Authentication: Not required
- Purpose: User invitation form/page
user-invitation-info.html
- Path:
/user-invitation-info - File:
obp-api/src/main/webapp/user-invitation-info.html - Route:
Menu("User Invitation Info", "User Invitation Info") / "user-invitation-info" - Authentication: Not required
- Purpose: Information about user invitations
user-invitation-invalid.html
- Path:
/user-invitation-invalid - File:
obp-api/src/main/webapp/user-invitation-invalid.html - Route:
Menu("User Invitation Invalid", "User Invitation Invalid") / "user-invitation-invalid" - Authentication: Not required
- Purpose: Shows when invitation is invalid
user-invitation-warning.html
- Path:
/user-invitation-warning - File:
obp-api/src/main/webapp/user-invitation-warning.html - Route:
Menu("User Invitation Warning", "User Invitation Warning") / "user-invitation-warning" - Authentication: Not required
- Purpose: Shows warnings about invitations
OAuth & Consent Pages
5. OAuth Flow Pages
oauth/authorize.html
- Path:
/oauth/authorize - File:
obp-api/src/main/webapp/oauth/authorize.html - Route:
Menu.i("OAuth") / "oauth" / "authorize" - Authentication: Not required (starts OAuth flow)
- Purpose: OAuth authorization page where users approve access
oauth/thanks.html
- Path:
/oauth/thanks(via OAuthWorkedThanks.menu) - File:
obp-api/src/main/webapp/oauth/thanks.html - Route:
OAuthWorkedThanks.menu - Authentication: Not required
- Purpose: OAuth completion page that performs redirect
6. Consent Management Pages
consent-screen.html
- Path:
/consent-screen - File:
obp-api/src/main/webapp/consent-screen.html - Route:
Menu("Consent Screen", Helper.i18n("consent.screen")) / "consent-screen" >> AuthUser.loginFirst - Authentication: Required (AuthUser.loginFirst)
- Purpose: OAuth consent screen for approving permissions
consents.html
- Path:
/consents - File:
obp-api/src/main/webapp/consents.html - Route:
Menu.i("Consents") / "consents" - Authentication: Not required
- Purpose: View/manage consents
7. Berlin Group Consent Pages
confirm-bg-consent-request.html
- Path:
/confirm-bg-consent-request - File:
obp-api/src/main/webapp/confirm-bg-consent-request.html - Route:
Menu.i("confirm-bg-consent-request") / "confirm-bg-consent-request" >> AuthUser.loginFirst - Authentication: Required (AuthUser.loginFirst)
- Purpose: Berlin Group consent confirmation
confirm-bg-consent-request-sca.html
- Path:
/confirm-bg-consent-request-sca - File:
obp-api/src/main/webapp/confirm-bg-consent-request-sca.html - Route:
Menu.i("confirm-bg-consent-request-sca") / "confirm-bg-consent-request-sca" >> AuthUser.loginFirst - Authentication: Required (AuthUser.loginFirst)
- Purpose: Berlin Group consent with SCA (Strong Customer Authentication)
confirm-bg-consent-request-redirect-uri.html
- Path:
/confirm-bg-consent-request-redirect-uri - File:
obp-api/src/main/webapp/confirm-bg-consent-request-redirect-uri.html - Route:
Menu.i("confirm-bg-consent-request-redirect-uri") / "confirm-bg-consent-request-redirect-uri" >> AuthUser.loginFirst - Authentication: Required (AuthUser.loginFirst)
- Purpose: Berlin Group consent with redirect URI
8. VRP (Variable Recurring Payments) Consent Pages
confirm-vrp-consent-request.html
- Path:
/confirm-vrp-consent-request - File:
obp-api/src/main/webapp/confirm-vrp-consent-request.html - Route:
Menu.i("confirm-vrp-consent-request") / "confirm-vrp-consent-request" >> AuthUser.loginFirst - Authentication: Required (AuthUser.loginFirst)
- Purpose: VRP consent request confirmation
confirm-vrp-consent.html
- Path:
/confirm-vrp-consent - File:
obp-api/src/main/webapp/confirm-vrp-consent.html - Route:
Menu.i("confirm-vrp-consent") / "confirm-vrp-consent" >> AuthUser.loginFirst - Authentication: Required (AuthUser.loginFirst)
- Purpose: VRP consent confirmation
Developer & Admin Pages
9. Consumer Management
consumer-registration.html
- Path:
/consumer-registration - File:
obp-api/src/main/webapp/consumer-registration.html - Route:
Menu("Consumer Registration", Helper.i18n("consumer.registration.nav.name")) / "consumer-registration" >> AuthUser.loginFirst - Authentication: Required (AuthUser.loginFirst)
- Purpose: Register new API consumers (OAuth applications)
10. Testing & Development
dummy-user-tokens.html
- Path:
/dummy-user-tokens - File:
obp-api/src/main/webapp/dummy-user-tokens.html - Route:
Menu("Dummy user tokens", "Get Dummy user tokens") / "dummy-user-tokens" >> AuthUser.loginFirst - Authentication: Required (AuthUser.loginFirst)
- Purpose: Get dummy user tokens for testing
create-sandbox-account.html
- Path:
/create-sandbox-account - File:
obp-api/src/main/webapp/create-sandbox-account.html - Route:
Menu("Sandbox Account Creation", "Create Bank Account") / "create-sandbox-account" >> AuthUser.loginFirst - Authentication: Required (AuthUser.loginFirst)
- Purpose: Create sandbox accounts for testing
- Note: Only available if
allow_sandbox_account_creation=truein properties
Security & Authentication Context Pages
11. User Authentication Context
add-user-auth-context-update-request.html
- Path:
/add-user-auth-context-update-request - File:
obp-api/src/main/webapp/add-user-auth-context-update-request.html - Route:
Menu.i("add-user-auth-context-update-request") / "add-user-auth-context-update-request" - Authentication: Not required
- Purpose: Add user authentication context update request
confirm-user-auth-context-update-request.html
- Path:
/confirm-user-auth-context-update-request - File:
obp-api/src/main/webapp/confirm-user-auth-context-update-request.html - Route:
Menu.i("confirm-user-auth-context-update-request") / "confirm-user-auth-context-update-request" - Authentication: Not required
- Purpose: Confirm user authentication context update
12. OTP (One-Time Password)
otp.html
- Path:
/otp - File:
obp-api/src/main/webapp/otp.html - Route:
Menu("Validate OTP", "Validate OTP") / "otp" >> AuthUser.loginFirst - Authentication: Required (AuthUser.loginFirst)
- Purpose: Validate one-time passwords
Legal & Information Pages
13. Legal Pages
terms-and-conditions.html
- Path:
/terms-and-conditions - File:
obp-api/src/main/webapp/terms-and-conditions.html - Route:
Menu("Terms and Conditions", "Terms and Conditions") / "terms-and-conditions" - Authentication: Not required
- Purpose: Terms and conditions
privacy-policy.html
- Path:
/privacy-policy - File:
obp-api/src/main/webapp/privacy-policy.html - Route:
Menu("Privacy Policy", "Privacy Policy") / "privacy-policy" - Authentication: Not required
- Purpose: Privacy policy
Documentation & Reference Pages
14. Documentation
sdks.html
- Path:
/sdks - File:
obp-api/src/main/webapp/sdks.html - Route:
Menu.i("SDKs") / "sdks" - Authentication: Not required
- Purpose: SDK documentation and downloads
static.html
- Path:
/static - File:
obp-api/src/main/webapp/static.html - Route:
Menu.i("Static") / "static" - Authentication: Not required
- Purpose: Static resource documentation
main-faq.html
- Path: Not directly routed (likely included/embedded)
- File:
obp-api/src/main/webapp/main-faq.html - Route: None (component file)
- Authentication: N/A
- Purpose: FAQ content
Debug & Testing Pages
15. Debug Pages
debug.html
- Path:
/debug - File:
obp-api/src/main/webapp/debug.html - Route:
Menu.i("Debug") / "debug" - Authentication: Not required
- Purpose: Main debug page
debug/awake.html
- Path:
/debug/awake - File:
obp-api/src/main/webapp/debug/awake.html - Route:
Menu.i("awake") / "debug" / "awake" - Authentication: Not required
- Purpose: Test if API is running/responsive
debug/debug-basic.html
- Path:
/debug/debug-basic - File:
obp-api/src/main/webapp/debug/debug-basic.html - Route:
Menu.i("debug-basic") / "debug" / "debug-basic" - Authentication: Not required
- Purpose: Basic debug information
debug/debug-default-header.html
- Path:
/debug/debug-default-header - File:
obp-api/src/main/webapp/debug/debug-default-header.html - Route:
Menu.i("debug-default-header") / "debug" / "debug-default-header" - Authentication: Not required
- Purpose: Test default header template
debug/debug-default-footer.html
- Path:
/debug/debug-default-footer - File:
obp-api/src/main/webapp/debug/debug-default-footer.html - Route:
Menu.i("debug-default-footer") / "debug" / "debug-default-footer" - Authentication: Not required
- Purpose: Test default footer template
debug/debug-localization.html
- Path:
/debug/debug-localization - File:
obp-api/src/main/webapp/debug/debug-localization.html - Route:
Menu.i("debug-localization") / "debug" / "debug-localization" - Authentication: Not required
- Purpose: Test localization/i18n
debug/debug-plain.html
- Path:
/debug/debug-plain - File:
obp-api/src/main/webapp/debug/debug-plain.html - Route:
Menu.i("debug-plain") / "debug" / "debug-plain" - Authentication: Not required
- Purpose: Plain debug page without templates
debug/debug-webui.html
- Path:
/debug/debug-webui - File:
obp-api/src/main/webapp/debug/debug-webui.html - Route:
Menu.i("debug-webui") / "debug" / "debug-webui" - Authentication: Not required
- Purpose: Test WebUI properties
Template Files (Not Directly Accessible)
16. Template Components
templates-hidden/_login.html
- Path: N/A (template component)
- File:
obp-api/src/main/webapp/templates-hidden/_login.html - Route: None (included by Lift framework)
- Purpose: Login form template component
- Note: Contains "Forgotten password?" link to
/user_mgt/lost_password
templates-hidden/default.html
- Path: N/A (template)
- File:
obp-api/src/main/webapp/templates-hidden/default.html - Route: None (Lift framework template)
- Purpose: Default page template
templates-hidden/default-en.html
- Path: N/A (template)
- File:
obp-api/src/main/webapp/templates-hidden/default-en.html - Route: None (Lift framework template)
- Purpose: English default page template
templates-hidden/default-header.html
- Path: N/A (template)
- File:
obp-api/src/main/webapp/templates-hidden/default-header.html - Route: None (Lift framework template)
- Purpose: Default header template
templates-hidden/default-footer.html
- Path: N/A (template)
- File:
obp-api/src/main/webapp/templates-hidden/default-footer.html - Route: None (Lift framework template)
- Purpose: Default footer template
Other Pages
17. Miscellaneous
basic.html
- Path: Not directly routed (likely used programmatically)
- File:
obp-api/src/main/webapp/basic.html - Route: None found
- Purpose: Basic HTML page template
Route Configuration
All routes are defined in:
- File:
obp-api/src/main/scala/bootstrap/liftweb/Boot.scala - Method:
bootmethod inBootclass - Framework: Lift Web Framework's SiteMap
Authentication Guards
>> AuthUser.loginFirst- Requires user to be logged in>> Admin.loginFirst- Requires admin user to be logged in- No guard - Public access
Conditional Routes
Some routes are conditionally added based on properties:
- Sandbox account creation requires:
allow_sandbox_account_creation=true
URL Structure
All pages are served at:
https://[hostname]/[path]
For example:
- Home page:
https://api.example.com/index - OAuth:
https://api.example.com/oauth/authorize - Consent:
https://api.example.com/consent-screen
Summary Statistics
Total HTML Files: 43
- Public Pages: 27
- Authenticated Pages: 13
- Template Components: 5
- Debug Pages: 9
- Dynamically Generated: 2 (password reset pages)
Page Categories:
- Authentication & User Management: 7 pages
- Password Reset: 2 dynamically generated pages
- OAuth & Consent: 9 pages
- Developer & Admin: 3 pages
- Legal & Information: 4 pages
- Documentation: 4 pages
- Debug & Testing: 9 pages
- Templates: 5 files
- Miscellaneous: 2 pages
Notes
- Lift Framework: The application uses Lift Web Framework for routing and page rendering
- SiteMap: Routes are configured via Lift's SiteMap in Boot.scala
- Templates: Pages in
templates-hidden/are not directly accessible but are used as layout templates - Localization: Some pages support internationalization (i18n) via
Helper.i18n() - Security: Many pages require authentication via
AuthUser.loginFirstorAdmin.loginFirst - OAuth Flow: The OAuth authorization flow involves multiple pages: authorize → consent-screen → thanks
- Consent Types: Different consent screens for different standards (Berlin Group, VRP, generic OAuth)
- Password Reset: The password reset flow is handled dynamically by Lift's user management system, not static HTML files
- Lost password form:
/user_mgt/lost_password - Reset password form:
/user_mgt/reset_password/{TOKEN} - Implementation in:
code/model/dataAccess/AuthUser.scala
- Lost password form:
Related Files
- Boot Configuration:
obp-api/src/main/scala/bootstrap/liftweb/Boot.scala - Menu Helpers: Various classes in
codepackage - Templates: Lift framework
templates-hiddendirectory - Static Resources: JavaScript, CSS, and images in
webappdirectory - User Management:
obp-api/src/main/scala/code/model/dataAccess/AuthUser.scala(password reset, validation) - Password Reset API:
obp-api/src/main/scala/code/api/v4_0_0/APIMethods400.scala(resetPasswordUrl endpoint)