For details on import settings, file type support, and configurations, see Import settings.
Before you begin
Complete these steps before starting an import to avoid configuration errors and failed uploads.Choose an import method
| Method | Best for | Requires | Supported file types |
|---|---|---|---|
| Local file (UI) | One-off imports; verify mapping visually before committing | Browser access | CSV, Parquet, TDMS |
| REST API | Repeatable or automated ingestion pipelines | API key | CSV, Parquet, TDMS, Chapter 10 |
| Hosted file URL | Files already in a remote location (HTTP or S3) | API key | CSV, Parquet, TDMS, Chapter 10 |
| Python client | Scripted ingestion, preprocessing, or engineering tool integration | API key; Python environment | CSV, Parquet, TDMS, Chapter 10 |
Gather what you need
Before you start, have answers to these four questions:- Which Asset should own this data? An Asset represents the system that generated the data, such as a vehicle or test rig. You can use an existing Asset or create a new one during import.
- Which Run should this data belong to? A Run is a single data collection session. You can create a new Run or append to an existing one.
- What is your timestamp format? Sift must know how to interpret the time column in your file. Check your file before you start and match it against the supported timestamp formats.
- Which columns should become Channels? A Channel is a single time-series signal. You do not need to import every column; only map the ones you intend to analyze.
Imports can be retried. If a mapping is wrong or a timestamp format is misidentified, you can delete the Run and reimport without affecting the Asset or other Runs.
Supported formats
| Format | Supported in Sift UI | Supported in sift-stack-py |
|---|---|---|
| CSV | Yes | Yes |
| Parquet | Yes | Yes |
| TDMS | Yes | Yes |
| Chapter 10 | No | Yes |
Import from the user interface
- In Sift’s homepage, click Import data.
- Select your file.
- Configure the Asset and Run, time, and Channel configuration settings.
- Click Upload.
Import using the REST API
- Send a configuration request to the
CreateDataImportFromUploadendpoint with your API key. The endpoint accepts a format-specific configuration object depending on your file type.- Alternatively: To import a file from a remote URL instead of uploading it directly, use the
CreateDataImportFromUrlendpoint.
- Alternatively: To import a file from a remote URL instead of uploading it directly, use the
- Upload the file using the returned
uploadUrl. - Optional: Verify the upload using the returned
dataImportId.
Import using the Python client
- Install the Python client.
- Configure the client with your API key and Sift URL.
- Upload the file using the appropriate upload service for your format.
- For code examples, see the Sift public repository.