Web API: Importfile
Jump to navigation
Jump to search
The importfile operation imports data from a text file to a datatable.
Only UTF-8 character encoding is supported (file needs to be converted into UTF-8 to be able to import it successfully). In case some other character encoding is used, it might lead to invalid characters, which are still imported. In case invalid characters are imported, either a new import needs to be made with a corrected file, or the data needs to be cleaned using a script.
HTTP request header Authorization with value Bearer <access token> needs to be in place to identify the session.
Url: POST /api/importfile?param1=value1¶m2=value2¶m3=value3 Content-Type: multipart/form-data Body: <file contents>
Following parameters can be defined:
- fileType (string): Defines content format of the imported file. Options are csv, pacm and xes.
- objectId (integer): Datatable id. Needed when importing data to an existing datatable.
- append (boolean): When true, the possible previous data in the destination datatable is preserved. When false, previous data is removed and also datatable columns are deleted.
- csvDelimiter (string): Column delimiter character for the csv format.
- csvTimeFormat (string): Date format to use when interpreting date values for the csv format.
- csvQualifier (string): Character used to enclose strings for the csv format.
- csvStartImportFromLine (integer): The column name row in the csv file.
- isCompressed (boolean): When true, the file is compressed using gzip format. Only csv and xes files can be provided as compressed (pacm file is already a gzip file).
When importing to an existing datatable, data needs to be compatible with the column datatypes. Following conversions are made:
- String: No conversion needed.
- Integer: try convert to integer.
- Float: try convert to float using "." as decimal separator.
- DateTime: try convert to date using the provided csvTimeFormat.
- Boolean: try convert to boolean with true as true value and false as false value.
- Duration: try convert to integer and interpret the value as ticks (10000 ticks is 1 millisecond).
- Import empty cell as null value.