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.

Feature: Contact Us

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.

  • | 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