Skip to main content

I/O Task Integration

When to use IO Task Integration

IO Task Integration is designed to connect Forma LMS with external business systems through asynchronous file exchange (e.g., CSV, XML). on shared SFTP folder.

This approach is particularly suitable when:

  • the external system does not expose APIs or only provides limited ones
  • the integration needs to be simple, robust, and batch-based
  • real-time data synchronization is not required
  • large volumes of data need to be processed on a scheduled basis

When real-time interaction or event-driven logic is required, API-based integrations are recommended instead.

Use Cases

Typical use cases for IO Task Integration include:

    Automatic user import from HR systems,  Automate user status and profiles update Bulk enrollment into courses or learning plans Data exchange with external systems (e.g., training completion records)

    Check the official documentation for a full guide to the available connectors

    Custom I/O activities may be analyzed and implemented upon request


    Integration Flow

    The typical IO Task integration flow works as follows:

    1. The external business system generates a data file
    2. The file is placed in a shared folder
    3. Forma LMS processes the file through the configured IO Task
    4. Data is imported or updated within the platform

    File Management and Shared Folders

    Shared Folder

    All files used for data exchange must be placed in a shared folder accessible by Forma Cloud with the following path: .html/files/common/iofiles

    Your SFTP credentials are published in your client area, or ask our helpdesk team 

    It is the customer’s responsibility to verify that their system can:

    • automatically generate files in the required format
    • transfer them to the shared folder (e.g., via SFTP or similar services)

    Alternative scenario

    If the customer’syour system cannot automatically send files to the Forma Cloud shared folder, it is possible to:

    • expose the files on a customer-managed shared folder (e.g., company SFTP)
    • request an additional service from the Forma team to automatically retrieve the files

    ⚠️ This additional service involves extra cost.


    Use Cases

    Typical use cases for IO Task Integration include:

      Automatic user import from HR systems Organizational structure synchronization Bulk enrollment into courses or learning plans Data exchange with external systems (e.g., training completion records)

      Integrating your Forma Cloud with I/O Tasks

      You can integrate your Forma Cloud platform with your other company applications by exchanging CSV files via a shared SFTP folder

      This integration will let you:

        Automate user status and profiles update Export a report of course progress

        Other connectors are available, check the official documentation for a full guide

        Custom I/O activities may be analyzed and implemented upon request

        File exchange

        File format

        File must be in .csv format

        Shared directory

        The shared directory for file exchange will be: html/files/common/iofiles

        You SFTP credetials are published in your client area, or ask our helpdesk team 

        Scheduling

        The I/O task cron job is usualli processed nightitime at 2 am

         


        Automating Users import

        Creating and updating users

        • Username: The username is the user's primary identifier and must be unique (e.g., the employee ID number, tax code, etc) and remain consistent over time, even if the user changes roles within the company. All automated operations will be based on this data, so it is essential that it is consistent and stable across all applications involved in the integration. It is also important that it is easy for users to remember, for example using the same username as other applications (this will also allow for SSO solutions)
        • Email: Use email as forma username only if strictly required, i.e. you need it for SAML/OIDC integration and you still need it to be different from the email used for communications.
        • Folder Identifier: define a field to be used to assign users to a org-chart node. Data should match exactly the org-chart code, and won't be saved to the user profile.
        • Language: If no language is specified, imported users will use the default language and will see the platform in their default language when they log in. In international contexts, it's a good idea to also import the user's language and ensure the required languages are installed on the platform so they can see the platform in their native language when they log in.
        • Password: the procedur can either import a password for each user from the file, or set a default password for all the users (in this case we recommend to configure mandatory password change upon first login). It is possible to send credentials to the newly imported users via email.
        • Other user data: define if the system should import other data to user custom fields

        Suspending users

        • Suspension: userts removed from the imported file will be suspended on the platform

        The IO Task feature will only suspend and won't remove any user

        Other useful connectors

        Export of users status on courses

        This connector will generate a CSV file containing a list of users and their status on courses, and can be integrated with other user information from custom fields.

        Enroll users to courses

        Upload a CSV file containing a list of users and course codes to automatically enroll users