SupportRequestService
Component Detail
Service Layer
medium complexity
frontend
0
Dependencies
0
Dependents
0
Entities
0
Integrations
Description
Handles the business logic for creating and submitting support requests on behalf of authenticated users. Attaches session-derived user metadata to each request before forwarding to the support backend or email delivery channel. Ensures requests are routable regardless of the organisation's module configuration.
support-request-service
Sources & reasoning
Contact Us is listed as MVP in the help-support area taxonomy (line 479). The workshops identify users with cognitive and motor challenges who need accessible help channels, making in-app support a trust-critical capability from launch. It is part of the always-on module set and requires no toggle.
-
docs/source/likeperson.md · line 479| help-support | Help & Support | Contact Us, Privacy Policy, Accessibility Statement, FAQ |
Responsibilities
- Build a support request payload by merging form input with session user data
- Submit the request to the configured support endpoint or email channel
- Return success or structured error responses to the calling UI component
- Log submission attempts for audit purposes
Interfaces
submitRequest(payload: SupportRequestPayload): Promise<SubmissionResult>
buildPayload(formData: ContactFormData, session: UserSession): SupportRequestPayload