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 a shared SFTP folder.

This approach is particularly suitable when:

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:

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

File Upload to Forma Cloud

All files used for data exchange must be placed in a shared SFTP folder provided by Forma Cloud with the following pathhtml/files/common/iofiles

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

Please verify that your systems can:
- automatically generate files in the required format
- transfer them to the shared folder (e.g., via SFTP or similar services)

File Retrieval from client system

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

⚠️ This additional service involves extra cost.


File format

The data file must comply with the following requirements:

- The file format must be .csv (mandatory)  
- There are no strict constraints on the column separator (e.g., comma, semicolon, etc.), as long as it is consistent within the file  
- Additional columns are allowed and will be ignored if not mapped in the IO Task configuration 
- The column order is not strictly required during the initial setup  

Once the integration procedure has been configured and activated, separator type and column structure must remain consistent over time. Changes to separators, column order or structure may cause errors in data processing.

Scheduling

The I/O task cron job is usually processed nightly at 2 am


Data Specifications

Users import and update

Creating and updating users

Managing Node assignment

Suspending users

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

The update procedure can't reactivate suspended users: this is to avoid conflicts with manual users management

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


Revision #17
Created 2025-07-01 07:42:37 UTC by Alberto Pastorelli
Updated 2026-06-25 08:57:03 UTC by Alberto Pastorelli