IMS File Transfer message format

Messages sent through the IMS File transfer or processing pipeline are multipart HTTP request with these parts:
  • JSON Parameters (application/json) - This JSON object contains the metadata and routing information for the file sent to WFM. It defines how the incoming file is identified, ordered, deduplicated, and processed in the application.
  • File Content (application/octet-stream)- This part contains the raw file content compressed using the algorithm specified in the encoding field of the JSON parameters.

JSON parameters (application/json)

This is the MessageParamsDTO structure serialized in JSON and sent as the first part of the multipart request.

{
  "documentName": "AnyDocument",
  "fromLogicalId": "lid://infor.wfm.acme",
  "encoding": "DEFLATE",
  "characterSet": "UTF-8",
  "messageId": "3f8e2a1b-4c9d-4e7f-8a2b-1c3d5e7f9a0b",
  "toLogicalId": "lid://default",
  "documentId": "employees_20260429.csv",
  "variationId": 1746000000,
  "source": "imports/hr/employees_20260429.csv",
  "batchId": "1746000000",
  "batchSequence": 1,
  "batchSize": 3
}

JSON field descriptions

Refer to this table for the required fields in the JSON parameter and their descriptions. Fields marked with an asterisk are required.
Field Description
documentName* The IMS Document Name that matches a configured document in the application, for example AnyDocument.
fromLogicalID* The WFM logical ID of the tenant sending the incoming IMS file.
encoding* The compression algorith applied to the file content. Specify NONE, DEFLATE for zlib, for GZIP. The default value is DEFLATE when publishing.
characterSet* The character encoding of the file specified as a Java charset name. The usual value is UTF-8.
messageId This field is used as a UUID for duplicate detection. Leave this field blank to skip the deduplication check.
toLogicalID The target logical ID. The default value is lid://default;. Messages are routed automatically through IMS.
documentId The file name or entry identifier. The maximum number of characters supported is 100. The value in this field is used to sort messages. Messages with the same documentID are sorted based on variationId
variationID A long integer generated by the source system. This is used to sort and deduplicate messages. Messages with expired variation IDs are rejected.
source The original filepath, included for traceability.
batchId An identifier shared across all chinks when a large file is split.
batchSequence The chink number within a batch. The value starts at 1.
batchSize The total number of chunks in the batch.

File content application/octet-stream

The next part of the IMS File Processing multipart HTTP request is the actual file data sent as application/octet-stream. This part contains the raw file content compressed using the encoding method specified in the JSON parameters. Any flat file format is supported, as long as you have configured the target WFM import job to process it. The most common format is in CSV format. This format is typically handled in the Job Scheduler. IMS tasks are format-agnostic. There is no restriction on file type as long as a corresponding Job Scheduler task is configured to process it.

Refer to this example for a single-chunk file that is less than 5 MiB.

JSON part:
{
  "documentName": "AnyDocument",
  "fromLogicalId": "lid://infor.wfm.acme",
  "encoding": "DEFLATE",
  "characterSet": "UTF-8",
  "documentId": "timecards_20260429.csv",
  "variationId": 1746124800
}

Binary part: [DEFLATE-compressed bytes of timecards_20260429.csv]

You can also spit large files into chunks. Refer to this example for a large file split across three chunks.

Chunk 1:
{
  "documentName": "AnyDocument",
  "fromLogicalId": "lid://infor.wfm.acme",
  "encoding": "DEFLATE",
  "characterSet": "UTF-8",
  "documentId": "bigfile.csv",
  "variationId": 1746124800,
  "batchId": "1746124800",
  "batchSequence": 1,
  "batchSize": 3
}
Chunk 2 and 3 follow the same format at Chunk 1, however the "batchSequence" value is 2 and 3 respectively.
{
  "documentName": "AnyDocument",
  "fromLogicalId": "lid://infor.wfm.acme",
  "encoding": "DEFLATE",
  "characterSet": "UTF-8",
  "documentId": "bigfile.csv",
  "variationId": 1746124800,
  "batchId": "1746124800",
  "batchSequence": 2,
  "batchSize": 3
}
{
  "documentName": "AnyDocument",
  "fromLogicalId": "lid://infor.wfm.acme",
  "encoding": "DEFLATE",
  "characterSet": "UTF-8",
  "documentId": "bigfile.csv",
  "variationId": 1746124800,
  "batchId": "1746124800",
  "batchSequence": 3,
  "batchSize": 3
}
Note: The chunk size limit is configured in the File Size (MiB) parameter in the IMS FIle Transfer task. The default value is 5 MiB
.

Task configuration reference

You must configure both the IMS File Transfer and IMS File Processing tasks to process IMS files successfully.

IMS File Transfer task

Use the IMS File Transfer task to send files from WFM storage into IMS.

This table contains the task parameters and their descriptions.

Parameter Description
Source Folder The path in the application's SCHEDULER_IMPORT storage area.
Source File The file name or glob patters, for example employees_*.csv.
Document Name The IMS Document Name. This parameter supports only flat file types.
File Size (MiB) The maximum file chunk size supported before splitting. The default value is 5.
Source Archive Option The Source Archive Option determines what happens to the original source files after they have been successfully transferred from WFM storage to IMS. Select among these options:
  • None - The original files are left as is in the source folder. No action is performed. This option is recommended if there is another process or team that manages file cleanup. You can also use this option to retain source files for auditing or reprocessing.
  • Archive- The source files are moved from the source folder to the specified Archive folder after a successful transfer. You must specify an archive folder when using this source archive option.
  • Purge - Source files are permanently deleted from the source folder after a successful transfer. Use this option only when the files are no longer needed and no backup or audit trail is required.
Archive Folder Specify the target folder if you selected the Archive option in the Source Archive Option parameter.

IMS File Processing task

Use the IMS File Transfer task to receive files from IMS and write them into the WFM import folder

This table contains the task parameters and their descriptions.
Parameter Description
Document Name The IMS Document Name.
Destination Folder The filepath of the destination folder or directory where the file is stored in WFM storage.
Destination File The name of the destination file.
Append Variation Specify Y or N to append he Variation ID to the file name, for example timecards_1746124800.csv.
Overwrite File Specify Y or N to overwrite a file with the same name. If you specify N, the application returns an error if an identical file name exists.
Note: The variationID is set by the source system. It is not generated internally. To ensure files are processed in the correct sequence, assign a monotonically increasing Variation ID to each message. Files sent without a Variation ID are processed in no particular order and may cause job scheduler failures.