AbstractProtected AbstractintegrationThe integration name to look up in the Integration entity
Protected AbstractlmsThe LMS provider this action is designed for (e.g., 'LearnWorlds', 'Moodle', etc.)
ProtectedbuildBuild a standard error ActionResultSimple
Optionalparams: ActionParam[]ProtectedbuildProtectedbuildBuild a standard success ActionResultSimple
Optionalparams: ActionParam[]ProtectedcalculateCalculate progress percentage
ProtectedformatFormat duration in seconds to human readable format
ProtectedformatStandard date format for LMS systems (ISO 8601)
ProtectedgetGets the base URL for API calls
ProtectedgetGets API credentials - first tries environment variables, then falls back to database
ProtectedgetCommon LMS parameters that many actions will need
ProtectedgetGets the company integration record for the specified company and LMS
ProtectedgetGets credentials from environment variables Format: BIZAPPS_{PROVIDER}{COMPANY_ID}{CREDENTIAL_TYPE} Example: BIZAPPS_LEARNWORLDS_12345_API_KEY
ProtectedgetHelper to get parameter value from an ActionParam array
Protected AbstractInternalInternal method that must be implemented by derived action classes. This is where the actual action logic should be implemented.
The action execution parameters including typed context
Promise resolving to the action result
ProtectedmapCommon enrollment status mapping
ProtectedparseParse date from LMS format
Executes the action with the provided parameters.
The action execution parameters including context
Promise resolving to the action result
ProtectedsetHelper to set an output parameter, creating it if it doesn't exist
ProtectedvalidateValidates that a string is a valid UUID format to prevent SQL injection. Exposed as a reusable helper for subclasses to validate CompanyID, UserID, etc.
Base class for all LMS-related actions. Provides common functionality and patterns for interacting with Learning Management Systems.