Copy a file from a source to a target (where both the source and target can be Cloud-based or on-premises) using both a Cloud-based and on-premises Data Integration Platform.

Pattern Definition
- Upload On Premises to Cloud
- Upload by Reference On Premises to Cloud
- Download Cloud to On Premises
- Download by Reference Cloud to On Premises
Upload On Premises to Cloud
Transfer data (via file) from SaaS or Cloud-based application to an on-premises application.

Interactions
- The on-premises Data Integration Platform notifies the on-premises application to export a file. This notification could be time based or business event driven. The notification could also be replaced by a timed export from the on-premises application.
- The on-premises application exports data to a file.
- The on-premises Data Integration Platform retrieves the file.
- The on-premises Data Integration Platform processes the file and sends the file to the cloud based Data Integration Platform.
- The cloud based Data Integration Platform processes the file and writes a file to a Cloud-based storage.
- The Data Integration Platform notifies the Cloud-based application that the file is ready for processing. The Cloud-based application could be SaaS, or an application running on PaaS or IaaS. The notification could also be replaced by a timed import or polling from the Cloud-based application.
- The Cloud-based application reads the file and processes the contents.
Notes
- The notifications to the applications are shown as a single call, but there could be multiple API calls to export or import the files.
- The on-premises Data Integration Platform tend to support:
- REST with HTTP Basic or OAuth security, or
- SOAP with WS Security using username and timestamp.
Upload By Reference On Premises to Cloud
Transfer data (via file) from an on-premises application to SaaS or Cloud-based application passing the file by reference.

Interactions
- The on-premises Data Integration Platform notifies the on-premises application to export a file. This notification could be time based or business event driven. The notification could also be replaced by a timed export from the Cloud-based application.
- The on-premises application exports data to a file.
- The on-premises Data Integration Platform creates a handle for the file.
- The on-premises Data Integration Platform passes the file handle to the Data Integration Platform
- The Data Integration Platform retrieves the file from on premises.
- The Data Integration Platform processes the file and writes a file to a Cloud-based storage.
- The Data Integration Platform notifies the Cloud-based application that the file is ready for processing. The Cloud-based application could be SaaS, or an application running on PaaS or IaaS. The notification could also be replaced by a timed import or polling from the Cloud-based application.
- The Cloud-based application reads the file and processes the contents.
Notes
- The on-premises file must be accessible from the Public Cloud.
- The on-premises Data Integration Platform must support pass by reference file transfers.
- The notifications to the applications are shown as a single call, but there could be multiple API calls to export or import the files.
- The on-premises Data Integration Platform tend to support:
- REST with HTTP Basic or OAuth security, or
- SOAP with WS Security using username and timestamp
Download Cloud to On Premises
Transfer data (via file) from SaaS or Cloud-based application to an on-premises application.

Interactions
- The Data Integration Platform notifies the Cloud-based application to export a file. The Cloud-based application could be SaaS, or an application running on PaaS or IaaS. This notification could be time based or business event driven. The notification could also be replaced by a timed export from the Cloud-based application.
- The Cloud-based application exports data to a file.
- The Data Integration Platform retrieves the file.
- The Data Integration Platform processes the file and sends the file to the on-premises Data Integration Platform.
- The on-premises Data Integration Platform processes the file and writes a file to on-premises storage.
- The on-premises Data Integration Platform notifies the on-premises application that the file is ready for processing. The notification could also be replaced by a timed import or polling from the Cloud-based application.
- The on-premises application reads the file and processes the contents.
Notes
- The on-premises Data Integration Platform must be accessible from the Public Cloud.
- The notifications to the applications are shown as a single call, but there could be multiple API calls to export or import the files.
Download by Reference Cloud to On Premises
Transfer data (via file) from SaaS or Cloud-based application to an on-premises application passing the file by reference.

Interactions
- The Data Integration Platform notifies the Cloud-based application to export a file. The Cloud-based application could be SaaS, or an application running on PaaS or IaaS. This notification could be time based or business event driven. The notification could also be replaced by a timed export from the Cloud-based application.
- The Cloud-based application exports data to a file.
- The Data Integration Platform creates a handle for the file.
- The Data Integration Platform passes the file handle to the on-premises Data Integration Platform.
- The on-premises Data Integration Platform retrieves the file from Cloud-based storage.
- The on-premises Data Integration Platform processes the file and writes a file to on-premises storage.
- The on-premises Data Integration Platform notifies the on-premises application that the file is ready for processing. The notification could also be replaced by a timed import or polling from the on-premises application.
- The on-premises application reads the file and processes the contents.
Notes
- The on-premises Data Integration Platform must support pass by reference file transfers.
- The on-premises Data Integration Platform must be accessible from the Public Cloud.
- The notifications to the applications are shown as a single call, but there could be multiple API calls to export or import the files.