Overview
This node acts as a trigger for various instant webhook events from the LearningSuite platform, enabling workflows to start automatically when specific actions occur within LearningSuite. It listens for events such as community post creation or moderation, course progress changes, exam completions and gradings, user logins, feedback submissions, group access changes, lesson completions, access requests, and interactive task submissions.
Common scenarios where this node is beneficial include:
- Automating notifications or follow-up actions when a new community post is created or moderated.
- Tracking and responding to members' course progress milestones.
- Triggering processes after exams are completed or graded.
- Reacting to user login events with custom logic or analytics.
- Handling feedback or submission data for further processing.
- Managing group membership changes dynamically.
For example, you could use this node to send a congratulatory email when a member completes a lesson or to update an external CRM system when a user logs in.
Properties
| Name | Meaning |
|---|---|
| Event | Select the LearningSuite instant event to listen for. Options include: Community Post Created, Community Post Moderated, Course Progress Changed, Custom Popup Interaction, Exam Completed, Exam Graded, Group User Access Changed, Lesson Completed, New Access Request, New Feedback Created, New Login, Submission Created. |
| Login Options | (Shown only if Event = "New Login") Filters for login events by login type (All, App Email Code, Email & Password, Google, Magic Link, OIDC, Password Reset) and optionally by user name or ID. |
| Popup Interaction Options | (Shown only if Event = "Custom Popup Interaction") Filters popup interaction events by popup name or ID, interaction type (All, Actioned, Dismissed), and optionally by user name or ID. |
| Course Progress Above (%) | (Shown only if Event = "Course Progress Changed") Numeric threshold (1-100) specifying the minimum course progress percentage to trigger the event. |
| Course Progress Options | (Shown only if Event = "Course Progress Changed") Optional filter by course name or ID. |
| Community Post (Created) Options | (Shown only if Event = "Community Post Created") Optional filters by area name or ID, forum name or ID, publish status (Both, Published, Waiting for Moderation), and user name or ID. |
| Community Post (Moderated) Options | (Shown only if Event = "Community Post Moderated") Optional filters by area name or ID, forum name or ID, approved status (Both, Approved, Rejected), and user name or ID. |
| Feedback/Exam Options | (Shown only if Event = "Feedback Created", "Exam Completed", or "Exam Graded") Optional filter by course name or ID. |
| Course Name or ID | (Shown only if Event = "New Access Request") Required filter by course name or ID. |
| Action | (Shown only if Event = "Group User Access Changed") Specifies whether the user was added or removed from a group. |
| Group Access Options | (Shown only if Event = "Group User Access Changed") Optional filter by group name or ID. |
| Lesson Completed Options | (Shown only if Event = "Lesson Completed") Optional filters by course name or ID, module name or ID, and lesson name or ID. |
| Submission Options | (Shown only if Event = "Submission Created") Optional filter by course name or ID. |
Output
The node outputs JSON data representing the payload received from the LearningSuite webhook event. The output structure depends on the event type but generally includes detailed information about the triggered event, such as:
- Identifiers (e.g., user ID, course ID, post ID)
- Event-specific metadata (e.g., progress percentage, approval status, interaction type)
- Timestamps and status fields relevant to the event
If multiple events are received at once, the node outputs an array of JSON objects.
The node does not output binary data.
Dependencies
- Requires a valid API key credential for the LearningSuite API, provided via an HTTP header.
- Uses LearningSuite's webhook subscription API to manage webhook registrations automatically.
- Relies on several internal methods to load options dynamically for properties like members, courses, groups, modules, popups, forums, and areas.
Troubleshooting
- Webhook Subscription Issues: Errors during webhook creation, verification, or deletion may occur due to invalid API keys, network issues, or incorrect webhook URLs. Ensure the API key is valid and the node’s webhook URL is accessible externally.
- Event Not Triggering: Verify that the selected event matches the actual events occurring in LearningSuite and that any filters (e.g., user ID, course ID) are correctly set.
- Filter Mismatches: If filters do not match incoming events exactly, the webhook may not trigger. Double-check filter values and ensure they correspond to existing entities in LearningSuite.
- API Rate Limits or Errors: The node throws errors if the LearningSuite API returns errors; check error messages for details and verify API usage limits.
- No JSON Body Received: If the webhook receives no JSON body, the node outputs an error object indicating "No JSON body". Check that LearningSuite sends proper JSON payloads.
Links and References
- LearningSuite API Documentation (official site referenced in description)
- n8n Expressions Documentation (for using expressions in property inputs)