In this article

The page's title should always be the Snap's name.  For example, File Reader. 

Overview

Use this Snap to upload a file from the SLDB or a Snaplex folder to your OneDrive or Shared Library (document library) location.

Provide a functional overview of the Snap. Do not mention anything about the Snap's internal technology or techniques. The user should be able to understand what the Snap. Include a screenshot of a well-configured Snap 600px.  

Prerequisites

List all prerequisites for using the Snap as a bullet list. Use direct sentences. For example, in the case of a Write-type Snap, a prerequisite would be that the user must have write access. Include links to external official documentation, if required. Use "None." if there no prerequisites. 

Support for Ultra Pipelines

Works in Ultra Pipelines.

Limitations

The OneDrive Upload File snap fails with 409 error, when you select replace as the Conflict behavior. The error occurs because the ID provided on a PUT or POST operation for a resource is already in use by another resource. So, when you make concurrent calls, the Snap will likely encounter a 409 error intermittently.
WorkaroundAdd a Retry value and validate the Pipeline.

Known Issues

Snaps in the Microsoft OneDrive Snap Pack have an in-built retry mechanism for failing connections and requests; but, a high volume of requests from a client might reach the throttling threshold. In such scenarios, the Microsoft Graph limits further requests from that client for a period of time and returns an HTTP status code 429 (Too many requests), thereby causing the requests to fail. Hence, we recommend keeping a check on the number of requests emanating from your client instance.

Snap Views


TypeFormatNumber of ViewsExamples of Upstream and Downstream SnapsDescription
Input 

Binary

  • Min: 1
  • Max: 1
  • Mapper
  • Copy
  • Get Drive Item
  • File Reader
A binary document containing the file to upload to a OneDrive or Shared Library location.
Output

Document

  • Min: 0
  • Max: 1
  • Mapper
  • Share Item
  • Move Item
  • Copy Item

A document containing the result of the file upload and the location where the file is uploaded.


The error view of the Snap has been changed from the Binary view to the Document view. This change will not impact any existing pipelines.


Snap Settings

Parameter NameData TypeDescriptionDefault ValueExample 
LabelString
Upload FileUpload File
Drive TypeDrop-down list

Required. Select a drive type from the drop-down list consisting of the following options to upload the file and specify the corresponding details needed:

  • OneDrive. To upload a file to a OneDrive location. Requires UserDrive, and Source Relative Path/ID.
  • documentLibraryTo upload a file to a shared library (document library) locationRequires Shared LibraryDrive, and Source Relative Path/ID.
  • DriveTo upload a file to a drive to a drive (in user's OneDrive or shared library) using the Drive ID. Requires Drive (ID) and Source Relative Path/ID.
  • All. To select a drive from the list of all drives and shared libraries (including SharePoint sites) that you can access, and upload a file to that locationRequires User, Drive, and Source Relative Path/ID.
OneDrivedocumentLibrary
UserString/Expression/Suggestion

Required for Drive Type options - OneDrive and All. Not needed for Drive and documentLibrary.

Select a user from the suggested list of users to upload a file to that user's OneDrive location.

The list of users displayed varies based on your access to their OneDrive locations. This option is meant for administrator users who are authorized to manage other users' drives, as well.


N/ASnap Team:snap@snaplogic.net
Shared LibraryString/Expression/Suggestion

Required for Drive Type option - documentLibrary. Not needed for OneDrive, Drive, and All.

Select a Shared Library from the suggested list of libraries to upload a file to that library location.

The list of shared libraries displayed varies based on your access to them. This option is meant for users who have write access on both the source and target shared libraries.


N/ANewSharedLibrary
DriveString/Expression/Suggestion

Required for all Drive Type options.

Specify the name of the drive to upload a file to it. The suggestions for this field are based on the Snap account and the User or Shared Library selected.

For the Drive Type Drive, specify/pass the ID of the drive to upload a file to it, typically from the upstream Snap.

For the drive type All, select a drive from the OneDrive or a Shared Library drive.

Specify the Source Relative Path/ID of the driveItem, next.

N/AOneDrive
Source Relative Path/IDString/Expression

Required for all Drive Type options.

Enter the relative path for the driveItem to upload the file to, beginning with root:/. Alternatively, pass the item ID in this field.

  • Any URL in this field that starts with root:/ is treated as a relative path. All other entries (without root:/ at the beginning) are treated as driveItem IDs.
  • When the driveItem ID passed is invalid (not a 34-character alphanumeric code such as 014ZXBQNNHW2DJ3CDKQZBJHRYWFWVRRQA2), the Snap returns the error - The resource is not found.
  • The Snap handles encoding of the value provided in this field; therefore, when you configure this field with a pre-encoded value, the Snap passes a re-encoded value to the API, which results in an incorrect output. We recommend you configure this field with an unencoded value.


root://myprojects/
Upload File NameString/Expression

Enter a name to upload the file as.

N/Amyfile.xlsx
Conflict behaviorDrop-down list

Required. Select one of the following options from this drop-down list to define how the Snap must deal with a conflict while uploading the file — a file with the same name and type exists in the selected location.

  • replace. To replace the existing file having the same name with the new file created.
  • fail. To abort the upload file operation and return an appropriate error.
  • rename. To rename the new file with a slightly different name based on OneDrive's conflict management mechanism and upload.
replacerename
Number Of RetriesString/ExpressionSpecify an integer value to set the maximum number of reconnection attempts that the Snap must perform, in case of connection failure or timeout.03
Retry Interval (Seconds)String/ExpressionEnter, in seconds, the duration for which the Snap must wait between two reconnection attempts until the number of retries is reached.12
Snap ExecutionDrop-down list

Select one of the three following modes in which the Snap executes:

  • Validate & Execute. Performs limited execution of the Snap and generates a data preview during Pipeline validation, then performs full execution of the Snap (unlimited records) during Pipeline runtime.
  • Execute only. Performs full execution of the Snap during Pipeline execution without generating preview data.
  • Disabled. Disables the Snap and all Snaps downstream from it.

Execute onlyValidate & Execute

Examples

Include functional examples to demonstrate the various functionalities of the Snap. Examples are different from Use Cases. An example should focus on the Snap in question. Use first-person plural references. Start with the Pipeline's objective and then describe how you would go about using the Snap to fulfill this objective. Include all SLPs in the Downloads section. Use videos if a Snap's configuration is complex and difficult to capture using screenshots. Ensure that the screenshots are optically similar, the size of the text in the screenshots should be readable and similar in size. Max image size 1000 px. Screenshots must include: Pipeline, Snap Configs, Inputs, and Outputs. Refer to ELT Snaps for an instance.

Uploading a file for Check Out and Check In

This Pipeline demonstrates how you can use the Snaps in the Microsoft OneDrive Snap Pack to upload, check out, check in and download files in an authorized Share Library location. It assumes that you have configured your Azure application and the Snap accounts already. The Pipeline uses the following parameters. 

First, we upload a file to a Shared Library location using File Reader Snap, locate it and check it out for editing. Then we check in the updated file and download it.

File Reader Snap

Output

After reading the file from the location provided, we upload the file into a Shared Library (location for Shared files within OneDrive). We configure the Snap to replace an existing file with this file if their file names are the same.

Upload File Snap

Output

Now that the file is available in the shared location, let us check out the file for editing. To check out the file, we need to capture the file name. We use a Mapper Snap to extract the file name from the Upload file output view.

We pass the extracted file name along with its location (in a shared library) using an expression in the Source Relative Path/ID field, for checking out the file.

Check Out File SnapOutput

The Check Out File Snap provides the name of the checked-out file in the $Item field and the result of the check-out operation. We use a Mapper Snap again to retrieve this value in $Item and pass it to the Check In File Snap — to check in the same file after it is updated.

In the Check In File Snap, we provide the file details in the Source Relative Path/ID field and an editing comment in the Check In Comment field. This Snap outputs a similar information - $Item and Result of the check in operation.

Check In File SnapOutput

Now, we directly pass the value in $Item field of the output to a Download File Snap to download the file. The Snap downloads the file and returns the location where the file is downloaded. In addition to this, the Snap also relays the (original) output from the previous Snap (Check In File Snap).

Download File Snap

Output

Download this Pipeline.

Add a download link to the Pipeline in the "Download" text above. Explain the Pipeline/Snap configuration in detail if a complex enough example has been used. Ensure that the functionality you are trying to illustrate is captured correctly. Include caveats as appropriate. To insert link: Press Ctrl + K --> Files --> Select the SLP file corresponding to the example. 

Downloads

  1. Download and import the Pipeline into SnapLogic.
  2. Configure Snap accounts as applicable.
  3. Provide Pipeline parameters as applicable.

Edit the Excerpt Include macro below to link to the Snap Pack page for this Snap page. Ensure that the heading Snap Pack History is not within the Snap Pack's history Excerpt. 


See Also

Provide links to the endpoint's official documentation, any relevant or related internal documentation, and any other links you have referred to on this page. Care should be taken when referencing external sites/documentation that it is an official site/documentation. Do not refer to forums such as stackoverflow.