### Site Language Settings - LearnWorlds Source: https://support.learnworlds.com/support/solutions/articles/12000105632-quick-start-guide-1-set-up-your-school Allows selection of the default language for the platform interface and provides options to translate or edit interface texts. It supports multiple languages through integrations. ```text Select the platform language (e.g., English, Spanish, German, etc.) Translate or edit interface text if needed (e.g., Enroll Now → Start Learning) ``` -------------------------------- ### Sign-Up & Login Customization - LearnWorlds Source: https://support.learnworlds.com/support/solutions/articles/12000105632-quick-start-guide-1-set-up-your-school Defines user registration and login methods, including self-registration, social logins (Google, Facebook, LinkedIn, Apple, X), and SSO. Also includes security options like email verification and 2FA. ```text Enable or disable self-registration (decide if anyone can sign up or only invited users). Choose login methods: email/password, social logins (Google, Facebook, LinkedIn, Apple, X), or SSO. Add security options like email verification, 2FA, session timeouts, or restrictions on multiple logins. Customize the sign-up fields and add a terms checkbox. ``` -------------------------------- ### Example SSO URL for LearnWorlds Source: https://support.learnworlds.com/support/solutions/articles/12000080804-how-to-create-your-custom-sso-solution This example demonstrates the structure of a URL that a custom SSO solution might accept from LearnWorlds. It includes the 'action' parameter to specify the operation (e.g., 'login') and the 'redirectUrl' parameter, which indicates the page the user was on before the authentication request. The 'redirectUrl' needs to be decoded. ```text http://www.example.com/sso-learnworlds?action=login&redirectUrl=https%3A%2F%2Fsoftomotive.getlearnworlds.com ``` -------------------------------- ### School Info Configuration - LearnWorlds Source: https://support.learnworlds.com/support/solutions/articles/12000105632-quick-start-guide-1-set-up-your-school Configures essential school information such as name, description, time zone, contact details, and social media links. This information is used for branding and learner communications. ```text School name: This appears on your site and emails. School description: A short description to get potential students excited. That information will show up when you use the variable {{school.description}} in your pages. Company name: Useful for official communication. Time zone and date format. This controls course deadlines, scheduling, and certificates. Choose the zone most relevant to your learners. Contact email: This email address will be used as the reply-to when your learners receive e-mail notifications. Support and Sales email. Contact info and Social media links. ``` -------------------------------- ### Privacy and GDPR Settings - LearnWorlds Source: https://support.learnworlds.com/support/solutions/articles/12000105632-quick-start-guide-1-set-up-your-school Enables compliance with privacy regulations like GDPR by ensuring a clear Privacy Policy, displaying a Cookie Consent bar, and collecting explicit learner consent. Recommended for EU or regions with strict data laws. ```text Have a clear Privacy Policy page linked in your school. Display the Cookie Consent bar so visitors know how their data is used. Collect learner consent when required (e.g., during sign-up or before using features like AI feedback). ``` -------------------------------- ### WordPress SSO Link Shortcode Example Source: https://support.learnworlds.com/support/solutions/articles/12000056688-how-to-connect-your-wordpress-site-with-learnworlds-with-our-wp-sso-plugin Demonstrates how to use the LearnWorlds SSO shortcode in WordPress to create links to school pages. This shortcode allows customization of the link text for both logged-in and logged-out users. ```shortcode [learnworlds-sso-link url="http://myschool.learnworlds.com" text="Login to school" logged-in-text="Go to school"] ``` -------------------------------- ### Get All Courses (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves a list of all courses available in the school. Useful for displaying a catalog of available courses. ```HTTP GET https://api.learnworlds.com/v2/courses ``` -------------------------------- ### Get Subscription Plans (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves a list of all available subscription plans offered by the school. This is useful for managing membership tiers. ```HTTP GET https://api.learnworlds.com/v2/subscription-plans ``` -------------------------------- ### Change LearnWorlds Domain Example Source: https://support.learnworlds.com/support/solutions/articles/12000002991-how-can-i-use-my-own-domain-name-with-my-learnworlds-online-school- This example demonstrates how to change the existing LearnWorlds subdomain for a school. It shows the transition from one subdomain (e.g., 'myschool.learnworlds.com') to another (e.g., 'courses.learnworlds.com'). The process involves updating the domain in the school's settings. ```text Old domain: myschool.learnworlds.com New domain: courses.learnworlds.com ``` -------------------------------- ### Get All Bundles (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves a list of all available bundles within the school. Bundles often group multiple courses or products together. ```HTTP GET https://api.learnworlds.com/v2/bundles ``` -------------------------------- ### Get a Course by ID (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Fetches detailed information about a specific course identified by its unique ID. Requires a course ID as a path parameter. ```HTTP GET https://api.learnworlds.com/v2/courses/{id} ``` -------------------------------- ### Install HubSpot Tracking Code in LearnWorlds Source: https://support.learnworlds.com/support/solutions/articles/12000104974-how-to-integrate-hubspot-with-your-learnworlds-school-using-the-tracking-code This section details the steps to integrate HubSpot with LearnWorlds by pasting the HubSpot Tracking Code ID into the LearnWorlds settings. It guides users on where to find the Tracking Code ID within their HubSpot account. ```text 1. Go to your LearnWorlds school, navigate to **Settings** →**Integrations** → **CRM tools** , and scroll down to the **Enable Tracking Code** option. 2. Paste the **Tracking Code ID**. 3. Click on **Save**. ``` -------------------------------- ### Get User Subscriptions (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves a list of all user subscriptions. This endpoint provides information about which users have which subscription plans. ```HTTP GET https://api.learnworlds.com/v2/user-subscriptions ``` -------------------------------- ### Get Users by Product Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves all users who have access to a specific product, identified by the product ID. This is useful for finding all users of a particular course or bundle. ```HTTP GET https://api.learnworlds.com/v2/users/by-product ``` -------------------------------- ### Wish Happy Birthday and Handle URL Params (JavaScript with Liquid) Source: https://support.learnworlds.com/support/solutions/articles/12000082906-custom-code-case-examples Includes two JavaScript snippets with Liquid. The first checks if it's a user's birthday and shows an alert. The second checks for a specific URL parameter ('example') and displays an alert if found. ```javascript ``` ```javascript ``` -------------------------------- ### Redirect New Users and Show Premium User Alert (JavaScript with Liquid) Source: https://support.learnworlds.com/support/solutions/articles/12000082906-custom-code-case-examples Contains two JavaScript snippets using Liquid templating. The first redirects users registered after a specific date to a YouTube video. The second displays an alert to users tagged as 'premium'. ```javascript ``` ```javascript ``` -------------------------------- ### Get Subscription Plan by ID (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Fetches details of a specific subscription plan identified by its ID. Requires the subscription plan ID. ```HTTP GET https://api.learnworlds.com/v2/subscription-plans/{id} ``` -------------------------------- ### Liquid Template Language Example Source: https://support.learnworlds.com/support/solutions/articles/12000075682-custom-code Illustrates the use of Liquid template language, showcasing its ability to use variables and control flow structures like loops and conditions to create dynamic web content. ```liquid {% assign 'greeting' = 'Hello' %} {% assign 'name' = 'World' %} {{ greeting }}, {{ name }}! {% if 1 < 2 %} This is true. {% else %} This is false. {% endif %} {% for i in (1..3) %} {{ i }} {% endfor %} ``` -------------------------------- ### Example UTM-Enhanced URL Source: https://support.learnworlds.com/support/solutions/articles/12000080163-how-to-use-utms-urchin-tracking-module- This example demonstrates how to append UTM parameters to a URL to track marketing campaign effectiveness. These parameters help identify the source, medium, and campaign associated with a user's visit. ```url https://myschool.learnworlds.com/course/free-course?utm_medium=banner&utm_source=facebook&utm_campaign=buffer ``` -------------------------------- ### Get User Products Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves a list of all products associated with a specific user, identified by their user ID. This endpoint is useful for understanding a user's purchased or assigned content. ```HTTP GET https://api.learnworlds.com/v2/users/{id}/products ``` -------------------------------- ### LearnWorlds User Update API Method Source: https://support.learnworlds.com/support/solutions/articles/12000080804-how-to-create-your-custom-sso-solution This reference points to the LearnWorlds API method for updating user information. It is relevant when a new user is created via SSO and additional details need to be provided to their LearnWorlds profile. ```markdown https://www.learnworlds.dev/docs/api/af37cf519afd1-update-a-user ``` -------------------------------- ### Get Promotions Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Fetches a list of all promotions available in the LearnWorlds school. This endpoint helps in managing and viewing active or past promotions. ```HTTP GET https://api.learnworlds.com/v2/promotions ``` -------------------------------- ### Get Users per Course by ID (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves a list of all users enrolled in a particular course, identified by the course ID. Useful for managing course enrollment. ```HTTP GET https://api.learnworlds.com/v2/courses/{id}/users ``` -------------------------------- ### Embed Video from Google Drive Source: https://support.learnworlds.com/support/solutions/articles/12000094348-how-to-add-videos-and-audio-in-ebooks This example shows how to construct a shareable download URL for a video file hosted on Google Drive. It requires copying the file's ID and appending it to a specific base URL. ```text https://drive.google.com/uc?export=download&id=[FILE_ID] ``` -------------------------------- ### Get Promotion by ID Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves detailed information for a specific promotion, identified by its promotion ID. This allows for viewing the specifics of a single promotion campaign. ```HTTP GET https://api.learnworlds.com/v2/promotions/{id} ``` -------------------------------- ### Affiliate Management Endpoints Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Endpoints for managing affiliate relationships, including creating affiliates, retrieving lists of affiliates and their customers/leads, and accessing payment and payout information. These endpoints utilize GET, POST, and DELETE methods. ```HTTP POST https://api.learnworlds.com/v2/affiliates/{id} GET https://api.learnworlds.com/v2/affiliates GET https://api.learnworlds.com/v2/affiliates/{id}/customers GET https://api.learnworlds.com/v2/affiliates/{id}/leads GET https://api.learnworlds.com/v2/affiliates/{id}/payments GET https://api.learnworlds.com/v2/affiliates/{id}/payouts/completed GET https://api.learnworlds.com/v2/affiliates/{id}/payouts/due GET https://api.learnworlds.com/v2/affiliates/{id}/payouts/upcoming ``` -------------------------------- ### Get Active Installments (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves a list of all active user installments. This is useful for tracking payment plans for subscriptions or courses. ```HTTP GET https://api.learnworlds.com/v2/installments/active ``` -------------------------------- ### Embed YouTube Video Example Source: https://support.learnworlds.com/support/solutions/articles/5000652585-ebook-authoring This snippet demonstrates how to embed a YouTube video into an ebook. It involves copying the embed code from YouTube's share options and pasting it into the 'Embed' element in LearnWorlds, along with specifying dimensions. ```html ``` -------------------------------- ### LearnWorlds API Endpoints Overview Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Access to updated API endpoints for managing various LearnWorlds entities. The API URL api.learnworlds.com is used as an example; ensure you use your school's specific API URL. ```APIDOC ## Endpoints Existing and legacy API calls will remain intact, so no existing setup is expected to break, although we do recommend using our updated endpoints. You can also find the documentation of the previous version here. The API URL `api.learnworlds.com` is used as an example in our API documentation. Make sure to submit a request for your API Keys and use the offered API URL to make the calls on the backend. ``` -------------------------------- ### Get Leads Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves a list of all leads associated with the LearnWorlds school. This endpoint is valuable for lead management and sales tracking. ```HTTP GET https://api.learnworlds.com/v2/leads ``` -------------------------------- ### Enroll User to Product Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Enrolls a user into a specific product, which can be a course, bundle, or manual subscription. This is a key endpoint for managing user access to learning materials. ```HTTP POST https://api.learnworlds.com/v2/users/{id}/enrollment ``` -------------------------------- ### Redirect Users with Specific Tag (Liquid/JavaScript) Source: https://support.learnworlds.com/support/solutions/articles/12000082906-custom-code-case-examples Redirects users to a specified URL if they possess a particular tag. Requires customizing the school URL and the tag name. ```liquid {% if USER.TAGS contains 'tester' %} {% endif %} ``` -------------------------------- ### Get Users of a Community Space Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves a paginated list of users within a specified community space, ordered by creation date (oldest first). ```APIDOC ## GET /v2/community/spaces/{id}/users ### Description This endpoint returns a list of all the users of the space. The users are in sorted order, with the oldest created user appearing first, and the list is paginated, with a default limit of 10 users per page. ### Method GET ### Endpoint https://api.learnworlds.com/v2/community/spaces/{id}/users ### Parameters #### Path Parameters - **id** (integer) - Required - The unique identifier of the community space. #### Query Parameters * **limit** (integer) - Optional - The maximum number of users to return per page (default: 10). * **offset** (integer) - Optional - The number of users to skip. * **sort** (string) - Optional - Specifies the sorting order. (e.g., 'created_at:asc', 'created_at:desc') ### Response #### Success Response (200) - **users** (array) - An array of user objects. - **id** (integer) - The unique identifier of the user. - **username** (string) - The username of the user. - **joined_at** (string) - The timestamp when the user joined the space. #### Response Example ```json { "users": [ { "id": 501, "username": "user_a", "joined_at": "2023-03-05T10:00:00Z" }, { "id": 502, "username": "user_b", "joined_at": "2023-03-06T11:00:00Z" } ] } ``` ``` -------------------------------- ### Create a Course (POST) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Creates a new course within the LearnWorlds platform. This is a fundamental endpoint for adding new educational content. ```HTTP POST https://api.learnworlds.com/v2/courses ``` -------------------------------- ### Identity Provider (IdP) Certificate Format Source: https://support.learnworlds.com/support/solutions/articles/12000075025-how-to-use-auth0-with-learnworlds-saml-sso This example demonstrates the required format for an Identity Provider (IdP) certificate, which must include the header and footer for proper integration. This is crucial for authentication mechanisms like SAML or OpenID. ```text -----BEGIN CERTIFICATE----- [certificate content] -----END CERTIFICATE----- ``` -------------------------------- ### Import Custom Script to Social Page (Liquid/HTML) Source: https://support.learnworlds.com/support/solutions/articles/12000082906-custom-code-case-examples Imports a custom JavaScript file from a CDN specifically to the '/social' page. Requires the correct CDN URL for the script. ```liquid {% if REQUEST.SLUG == "social" %} {% endif %} ``` -------------------------------- ### Configure SSO (Single Sign-On) in LearnWorlds Source: https://support.learnworlds.com/support/solutions/articles/12000004515-how-to-edit-your-topbar Learn how to set up Single Sign-On (SSO) to enable users to register and log in seamlessly from an external page directly into your LearnWorlds school. ```text How to set up SSO - allow users to register and log into an external page and your LearnWorlds school in one action. ``` -------------------------------- ### Get All Users Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Fetches a comprehensive list of all users registered within the LearnWorlds school. This endpoint is useful for administrative tasks, data exports, or generating user reports. ```HTTP GET https://api.learnworlds.com/v2/users ``` -------------------------------- ### Create Promotion Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Creates a new promotion within the LearnWorlds platform without initially creating any coupons. This endpoint is for setting up the promotion campaign itself. ```HTTP POST https://api.learnworlds.com/v2/promotions ``` -------------------------------- ### LearnWorlds Custom Code Editor GA4 Setup Source: https://support.learnworlds.com/support/solutions/articles/5000685967-use-google-analytics-to-monitor-web-traffic-in-your-learnworlds-site This method uses the custom code editor in LearnWorlds to insert the Google tag. It requires copying the Google tag from GA4's 'Install manually' tab and pasting it into both head sections of the site custom code. ```html Navigate to **Website** →**Design** →**Edit website** →**Site** →****Site custom code**. Paste the Google tag in both **head** sections (**logged in and logged out**). ``` -------------------------------- ### Make Profile Page Text Bold (CSS) Source: https://support.learnworlds.com/support/solutions/articles/12000082906-custom-code-case-examples Sets the font weight of all text elements on the profile page to bold. This applies to all elements within the 'slug-profile' body class. ```css body.slug-profile * { /* Make the font weight of all colors in profile page red */ font-weight: bold; } ``` -------------------------------- ### Installments API Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Endpoints for retrieving active installments. ```APIDOC ## GET /v2/installments/active ### Description Returns a list of active installments of users. ### Method GET ### Endpoint https://api.learnworlds.com/v2/installments/active ### Response #### Success Response (200) - **installments** (array) - A list of active installment objects. - **userId** (string) - The identifier of the user. - **amount** (number) - The amount of the installment. - **dueDate** (string) - The due date of the installment. #### Response Example ```json { "installments": [ { "userId": "usr_pqrst", "amount": 50.00, "dueDate": "2023-11-01" }, { "userId": "usr_uvwxy", "amount": 75.50, "dueDate": "2023-11-15" } ] } ``` ``` -------------------------------- ### Trigger Login/Sign-up via URL Parameters Source: https://support.learnworlds.com/support/solutions/articles/12000044648-how-to-manage-your-sign-in-up-settings This shows how to manually trigger the login or sign-up process by appending specific URL parameters to your school's domain if the buttons are disabled. ```text Login: "/?msg=not-logged-in" Sign-up: "/?msg=signup" ``` -------------------------------- ### Direct Payment Link Formats for LearnWorlds Products Source: https://support.learnworlds.com/support/solutions/articles/12000081471-how-to-give-access-to-a-payment-page-with-an-already-applied-coupon These formats show how to construct direct payment links for different product types in LearnWorlds. Replace 'yourdomain.learnworlds.com' with your actual school URL and 'COURSEID' or 'PROGRAMID' with the respective product IDs. ```text Course: https://yourdomain.learnworlds.com/payment?product_id=COURSEID&type=course Learning Program: https://yourdomain.learnworlds.com/payment?product_id=PROGRAMID&type=learning_program ``` -------------------------------- ### Get User Progress (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Returns the overall progress of a user across all courses they are enrolled in. Requires the user ID. ```HTTP GET https://api.learnworlds.com/v2/users/{id}/progress ``` -------------------------------- ### Create User Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Creates a new user within the LearnWorlds platform. This endpoint is fundamental for onboarding new users or integrating with external systems that manage user accounts. ```HTTP POST https://api.learnworlds.com/v2/users ``` -------------------------------- ### Get Bundle by ID (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Fetches details of a specific bundle identified by its ID. Requires the bundle ID as a path parameter. ```HTTP GET https://api.learnworlds.com/v2/bundles/{id} ``` -------------------------------- ### Identity Provider Certificate Format for SSO Source: https://support.learnworlds.com/support/solutions/articles/12000080895-how-to-use-onelogin-with-learnworlds-saml-sso Illustrates the required format for an Identity Provider (IdP) certificate when setting up SSO with LearnWorlds. The certificate must include the complete header and footer lines. ```text _-----BEGIN CERTIFICATE-----_\n_[certificate content]_\n_-----END CERTIFICATE-----_ ``` -------------------------------- ### Include Custom Stylesheet Excluding Social Page (Liquid/HTML) Source: https://support.learnworlds.com/support/solutions/articles/12000082906-custom-code-case-examples Includes a custom stylesheet from a CDN on all pages except the '/social' page. Requires the correct CDN URL for the stylesheet. ```liquid {% if REQUEST.SLUG != "social" %} {% endif %} ``` -------------------------------- ### Trigger Login/Sign-up by URL Parameter Source: https://support.learnworlds.com/support/solutions/articles/12000044648-manage-your-school-s-login-settings This snippet shows how to manually trigger the login or sign-up process by appending specific URL parameters to your school's domain. This is useful when the sign-in or sign-up buttons are disabled on the school site. ```plaintext Login: /?msg=not-logged-in Sign-up: /?msg=signup ``` -------------------------------- ### Get Course Analytics by ID (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves analytical data for a specific course. This endpoint provides insights into course engagement and performance metrics. ```HTTP GET https://api.learnworlds.com/v2/courses/{id}/analytics ``` -------------------------------- ### Liquid Variable Syntax Example Source: https://support.learnworlds.com/support/solutions/articles/12000094075-enhance-personalized-learning-using-variables-in-assessments-forms Demonstrates the basic syntax for using Liquid variables to dynamically insert user-specific information into text. This approach allows for personalized content rendering based on the context of the user or submission. ```Liquid {{user.username}} {{submission.self.score}} ``` -------------------------------- ### Activate Mixpanel Integration in LearnWorlds Settings Source: https://support.learnworlds.com/support/solutions/articles/12000015954-how-to-use-mixpanel-within-your-school-s-integrations This snippet outlines the steps to activate Mixpanel within your LearnWorlds school's settings and provides instructions on where to find or create a Mixpanel project token. ```text 1. Go to Settings → Integrations → Analytics. 2. Activate Mixpanel and paste the token of the Mixpanel integration in the appropriate text field. To create a Mixpanel project token, follow the instructions here. ``` -------------------------------- ### Verify CNAME Record with Google Admin Toolbox Source: https://support.learnworlds.com/support/solutions/articles/12000002991-how-to-set-up-your-custom-domain-cname-record- This example shows how to check if a CNAME record is correctly set up using Google Admin Toolbox. Enter your subdomain and verify that the target resolves to 'cname.learnworlds.com'. Errors like 'Record not found' indicate a misconfiguration. ```cli Enter your subdomain (e.g., www.yourschool.com) Look for: cname.learnworlds.com as the target ``` -------------------------------- ### Get User Progress per Course (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves the progress of a specific user within a particular course. Requires both the user ID and the course ID. ```HTTP GET https://api.learnworlds.com/v2/users/{id}/courses/{cid}/progress ``` -------------------------------- ### Get Course Grades by ID (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Fetches the grades for all users enrolled in a specific course. Requires the course ID and provides insights into student performance. ```HTTP GET https://api.learnworlds.com/v2/courses/{id}/grades ``` -------------------------------- ### Personalize Profile Page with CSS Snippets - LearnWorlds Source: https://support.learnworlds.com/support/solutions/articles/12000052388-how-to-activate-and-navigate-the-profile-page LearnWorlds allows personalization of the system-generated Profile page using CSS snippets. This enables customization of the user's profile appearance within the LearnWorlds school environment. ```css /* Example CSS snippet for profile page customization */ .profile-header { background-color: #f0f0f0; padding: 20px; text-align: center; } ``` -------------------------------- ### Get Course Contents by ID (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves all content associated with a specific course, identified by its course ID. This includes sections, lessons, and other learning materials. ```HTTP GET https://api.learnworlds.com/v2/courses/{id}/contents ``` -------------------------------- ### Get Learning Unit Analytics (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Returns analytics data for a specific learning unit within a course. Requires both the course ID and the learning unit ID. ```HTTP GET https://api.learnworlds.com/v2/courses/{id}/units/{uid}/analytics ``` -------------------------------- ### Personalize Profile Page with CSS Source: https://support.learnworlds.com/support/solutions/articles/12000052388-learning-apps-profile-page Users can personalize their LearnWorlds profile page using CSS snippets. This allows for custom styling and layout adjustments to enhance the user experience. No specific dependencies are mentioned, but it's assumed basic CSS knowledge is beneficial. ```css /* Example CSS for profile page personalization */ .profile-header { background-color: #f0f0f0; padding: 20px; text-align: center; } ``` -------------------------------- ### Create CNAME Record for Custom Domain Source: https://support.learnworlds.com/support/solutions/articles/12000002991-how-to-set-up-your-custom-domain-cname-record- This snippet demonstrates the required configuration for a CNAME record when setting up a custom domain with LearnWorlds. It specifies the 'Host/Name' and the 'Value' that the record should point to. Ensure no 'https://' or trailing '/' is included in the value. ```dns Host/Name: www Value (Points to): cname.learnworlds.com ``` -------------------------------- ### Get School Events (GET) Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves a list of all upcoming scheduled school events. This includes course drip-feed schedules, file assignment deadlines, and live session timings. ```HTTP GET https://api.learnworlds.com/v2/school/events ``` -------------------------------- ### Construct Basic Payment Links (LearnWorlds) Source: https://support.learnworlds.com/support/solutions/articles/12000081471-how-to-use-direct-payment-links-in-learnworlds-with-coupons-custom-pages- These formats show how to build direct payment links for different product types in LearnWorlds. You need to replace 'yourdomain.learnworlds.com' with your school's URL and 'COURSEID' or 'PROGRAMID' with the respective product IDs. ```URL https://yourdomain.learnworlds.com/payment?product_id=COURSEID&type=course ``` ```URL https://yourdomain.learnworlds.com/payment?product_id=PROGRAMID&type=learning_program ``` -------------------------------- ### PayPal Installment Button Code Generation and Embedding Source: https://support.learnworlds.com/support/solutions/articles/12000039965-how-to-sell-your-online-courses-with-installments-via-paypal This snippet outlines the process of generating a PayPal installment button code and embedding it into a LearnWorlds school. It involves creating a 'Subscribe' type button in PayPal, configuring payment details, and pasting the resulting script into an 'Embeddable script' area within LearnWorlds. ```html
``` -------------------------------- ### Intercom Workspace ID Example Source: https://support.learnworlds.com/support/solutions/articles/12000024970-how-to-integrate-intercom-with-your-learnworlds-school An example of an Intercom workspace ID as found in a URL. This ID is crucial for integrating Intercom with other platforms like LearnWorlds. ```text https://app.intercom.com/a/apps/rnl4m1e8/... ``` -------------------------------- ### Long Date Formats in LearnWorlds Source: https://support.learnworlds.com/support/solutions/articles/12000065874-how-to-edit-my-school-info Examples of long date formats supported by LearnWorlds, used in authoring and user-interface pages. These formats include day names, month names, and day numbers with year. ```text dddd, MMMM D, YYYY : Sunday, September 25, 2022 ``` ```text dddd, Do MMMM, YYYY: Sunday, 25th September, 2022 ``` ```text MMMM DD, YYYY: September 25, 2022 ``` ```text MMMM Do, YYYY: September 25th, 2022 ``` ```text D MMMM, YYYY: 25 September, 2022 ``` ```text Do MMM, YYYY: 25th September, 2022 ``` ```text DD MMM YYYY: 25 Sep 2022 ``` -------------------------------- ### Verify CNAME Record with Google Admin Toolbox Source: https://support.learnworlds.com/support/solutions/articles/12000002991-how-can-i-use-my-own-domain-name-with-my-learnworlds-online-school- This outlines the process to check if a CNAME record is correctly set up using Google Admin Toolbox. Users input their subdomain (e.g., 'www.yourschool.com') and verify that the target is 'cname.learnworlds.com'. It also provides troubleshooting advice for 'Record not found' errors. ```text Enter your subdomain: www.yourschool.com Expected target: cname.learnworlds.com ``` -------------------------------- ### Short Date Formats in LearnWorlds Source: https://support.learnworlds.com/support/solutions/articles/12000065874-how-to-edit-my-school-info Examples of various short date formats available in LearnWorlds, which affect dates shown on invoices and other platform areas. These formats include YYYY-MM-DD, MM-DD-YYYY, and DD-MM-YYYY variations. ```text YYYY-MM-DD: 2022-09-25 ``` ```text MM-DD-YYYY: 09-25-2022 ``` ```text DD-MM-YYYY: 25-09-2022 ``` ```text YYYY/MM/DD: 2022/09/25 ``` ```text MM/DD/YYYY: 09/25/2022 ``` ```text DD/MM/YYYY:25/09/2022 ``` ```text DD MMM YYYY: 25 Sep 2022 ``` -------------------------------- ### Example of a School Email Variable Source: https://support.learnworlds.com/support/solutions/articles/12000066907-how-to-edit-the-links-variables-in-the-notification-emails Variables in LearnWorlds emails are placeholders, denoted by double curly braces `{{variable_name}}`, which are dynamically replaced with specific user or school information when the email is sent. For example, `{{school_name}}` displays the school's name. ```plaintext Hello {{name}}, Welcome to {{school_name}}! ``` -------------------------------- ### Create CNAME Record for 1AND1 Source: https://support.learnworlds.com/support/solutions/articles/12000080111-how-to-set-up-your-custom-domain-cname-record-in-popular-domain-providers This snippet outlines the steps to create a CNAME record in 1AND1 (now IONOS) to connect a subdomain with your LearnWorlds school. It involves logging into the 1AND1 admin center, managing domains, and configuring DNS settings. ```text 1. Log in to your account at https://admin.1and1.com. 2. Click on Domains→Domain Center. 3. Click on Domain Name. 4. Click on Subdomain Overview. 5. Go to New to create the subdomain. 6. Enter your subdomain. For example, if you choose www.mydomain.com for your LearnWorlds address, enter www. 7. Click OK. 8. Select the checkbox next to the subdomain you will use. 9. From the DNS menu, select Edit DNS Settings. 10. Select CNAME. 11. In Alias , enter cname.learnworlds.com. Click on I read and Agree and hit Save. ``` -------------------------------- ### Seat Offering Management Endpoints Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Endpoints for managing seat offerings, including retrieving all seat offerings, retrieving users within a specific seat offering, creating new seat offerings, getting a specific seat offering, updating a seat offering, and adding/removing users from seat offerings. These endpoints utilize GET, POST, PUT, and DELETE methods. ```HTTP GET https://api.learnworlds.com/v2/seats GET https://api.learnworlds.com/v2/seats/{id}/users POST https://api.learnworlds.com/v2/seats GET https://api.learnworlds.com/v2/seats/{id} PUT https://api.learnworlds.com/v2/seats/{id} POST https://api.learnworlds.com/v2/seats/{id}/users/{uid} DELETE https://api.learnworlds.com/v2/users/{id}/enrollment ``` -------------------------------- ### Granting Developer Account Access for App Submission Source: https://support.learnworlds.com/support/solutions/articles/12000077798-how-to-prepare-your-ios-app-for-submission Provides instructions on how to grant access to your Apple Developer account for app submission. This involves adding 'mobile@learnworlds.com' as an Admin user and ensuring specific access permissions are granted. ```text 1. Click on the plus widget (+) to add a user. 2. Choose the **Admin** role and **Invite** (in addition, be sure that**Access to Certificates** is selected). Make sure to also check the**Access to Cloud Managed Developer ID Certificate** permission. 1. Navigate here https://appstoreconnect.apple.com/ and select "**Users and Access** ". 2. Click on **Integrations** and then **Request Access.** ``` -------------------------------- ### Request Domain Change in LearnWorlds Settings Source: https://support.learnworlds.com/support/solutions/articles/12000002991-how-to-set-up-your-custom-domain-cname-record- This outlines the steps within the LearnWorlds platform to request a custom domain change after DNS records are correctly configured. It involves navigating to school settings, adding the domain, and saving the changes. ```steps a. Navigate to Settings → School Settings → Site & Email Domain. b. Click Add Domain. c. Fill in the subdomain created. d. Click on Save. ``` -------------------------------- ### Get a Community Post Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves detailed information about a specific community post using its ID. ```APIDOC ## GET /v2/community/posts/{id} ### Description This endpoint returns information about the community post specified by the provided post ID. ### Method GET ### Endpoint https://api.learnworlds.com/v2/community/posts/{id} ### Parameters #### Path Parameters - **id** (integer) - Required - The unique identifier of the community post. ### Response #### Success Response (200) - **id** (integer) - The unique identifier of the post. - **title** (string) - The title of the post. - **content** (string) - The content of the post. - **created_at** (string) - The timestamp when the post was created. - **space_id** (integer) - The ID of the space the post belongs to. - **user_id** (integer) - The ID of the user who created the post. #### Response Example ```json { "id": 201, "title": "New Feature Announcement", "content": "We are excited to announce a new feature!", "created_at": "2023-04-10T15:00:00Z", "space_id": 101, "user_id": 501 } ``` ``` -------------------------------- ### Get a Community Space Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves detailed information about a specific community space using its ID. ```APIDOC ## GET /v2/community/spaces/{id} ### Description This endpoint returns information about the community space specified by the provided space id. ### Method GET ### Endpoint https://api.learnworlds.com/v2/community/spaces/{id} ### Parameters #### Path Parameters - **id** (integer) - Required - The unique identifier of the community space. ### Response #### Success Response (200) - **id** (integer) - The unique identifier of the space. - **name** (string) - The name of the space. - **description** (string) - The description of the space. - **created_at** (string) - The timestamp when the space was created. #### Response Example ```json { "id": 101, "name": "General Discussion", "description": "A place for general discussions.", "created_at": "2023-03-01T09:00:00Z" } ``` ``` -------------------------------- ### Add Custom Domain in LearnWorlds Settings Source: https://support.learnworlds.com/support/solutions/articles/12000091430-how-to-set-up-your-custom-domain-in-google-domains This snippet outlines the steps to add the configured custom domain within the LearnWorlds school settings. It involves navigating to specific settings and entering the created subdomain. ```text Navigation: Settings → School Settings → Site email & domain Action: Click 'Add Domain' Input: Created subdomain Final Step: Click 'Save' ``` -------------------------------- ### Get Community Post by ID Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves detailed information about a specific community post using its ID. ```HTTP GET https://api.learnworlds.com/v2/community/posts/{id} ``` -------------------------------- ### LearnWorlds Triggers Source: https://support.learnworlds.com/support/solutions/articles/12000091627-how-to-connect-your-learnworlds-school-with-make Webhooks that can initiate a workflow in response to specific events within LearnWorlds. ```APIDOC ## LearnWorlds Triggers ### Description These are the webhook triggers available in Make that can initiate a workflow based on events in LearnWorlds. ### Watch user Unenrolled **Description:** Triggers when a user is unenrolled from the product. ### Watch user Created/Updated **Description:** Triggers when a new user has been created, or an existing one was updated. ### Watch Tag Added **Description:** Triggers when a tag is added to a user. ### Watch Tag Removed **Description:** Triggers when a tag is removed from a user. ### Watch Certificate Created **Description:** Triggers when a certificate is awarded to a user. ### Watch Lead Created **Description:** Triggers when an email lead is captured. ### Watch Previews **Description:** Triggers when a free section is previewed. ### Watch Course Completed **Description:** Triggers when the course is completed. ### Watch Subscription Started **Description:** Triggers when a payment for a subscription is received. ### Watch Subscription Updated **Description:** Triggers when a subscription is updated (either planned for cancellation or renewed, or the selected plan has been updated). ### Watch Subscription Cancelled **Description:** Triggers when a subscription is cancelled. ### Watch Subscription Trial Started **Description:** Triggers when a subscription trial has started. ### Watch Subscription Trial Ended **Description:** Triggers when a subscription trial ends in three days. ### Watch Enrollment Purchase Created **Description:** Triggers when a purchase occurs. ### Watch Payment Created **Description:** Triggers when a payment transaction for purchase (including one-off purchase, subscription payment, or installment of a payment plan) is successfully charged. For a subscription or a payment plan, a new transaction is created for every single payment. ``` -------------------------------- ### Get Community Space by ID Source: https://support.learnworlds.com/support/solutions/articles/12000017230-learnworlds-api-documentation Retrieves detailed information about a specific community space using its ID. ```HTTP GET https://api.learnworlds.com/v2/community/spaces/{id} ``` -------------------------------- ### Request Custom Domain Change in LearnWorlds Source: https://support.learnworlds.com/support/solutions/articles/12000080111-how-to-set-up-your-custom-domain-cname-record-in-popular-domain-providers This snippet explains the steps within LearnWorlds to request the connection of your custom domain after the CNAME record has been set up and verified. It involves navigating to school settings and inputting the new subdomain. ```text 1. Navigate to Settings → School Settings → Site email & domain. 2. Click Add Domain. 3. Fill in the subdomain created. 4. Click on Save. 5. A pop-up message will appear confirming that your domain will be ready soon. ```