Cayuse PS Console Application

Purpose of the Application

The main purpose of this console application is to streamline the process of uploading important People Soft data files to Cayuse. Instead of manually uploading files, this tool automates the process, ensuring data is sent correctly and on a set schedule if needed.

How It Works

1. File Preparation

The application looks for specific data files stored in a local directory (Z:\SAdata\TEST\PSUH2-SFTP\UHCL-UCT\DEVL). Currently we're downloading development data from PeopleSoft via UHCHRFDS.SQR job. These files contain data that needs to be uploaded to Cayuse, such as information about people, affiliations, or organizational units. Each file is prepared in a format that Cayuse can understand, usually as a CSV (Comma-Separated Values) file.

2. Configuration

The application is set up using a configuration file (setting.json) contains information like:
- Which files to upload.
- Where to send the files (the URLs provided by Cayuse).
- Additional details such as headers required for the upload.

3. Uploading Files

The application reads the configuration to determine which files to upload and the corresponding endpoints (URLs) in Cayuse to which the files should be sent. The application then connects to the Cayuse API and uploads the files automatically.

4. Authentication

To ensure that only authorized users can send files to Cayuse, the application uses a username and password provided in the configuration to verify the identity of the user before making the upload.

5. Logging

The application keeps a log (record) of its activities, which includes messages about whether the upload was successful or if there were any errors. These logs are stored in the 'logs' folder, making it easy for administrators to review the application's activities.

6. Scheduled Tasks

The application can be set to run automatically at specific times. For example, it can be scheduled to upload files daily at 9:00 AM. This feature ensures that uploads happen regularly without requiring a person to start the process manually each time.