Uploads the contents to a SharePoint document library or folder using the Microsoft graph API.
The SharePoint 365 nodes integrate with SharePoint Online.
The node uses the OAuth 2.0 client credentials flow to access the REST API, using the mandatory ClientId, TenantId and ClientSecret credential fields. Before working with this node, ensure that your SharePoint administrator has granted the required permissions for you to access the SharePoint files and folders.
Specify the local file or folder path to upload in the LocalPath property. To authenticate, obtain the following SharePoint information from your SharePoint administrator and use it to configure the corresponding node properties:
SharePoint information | Node property |
---|---|
Application (client) ID | ClientId |
Directory (tenant) ID | TenantId |
Client secret (can also be referred to as the application password) | ClientSecret |
Properties
LocalPath
Specify the local file or folder path to upload. This path must be an absolute path.
If the LocalPath is pointing to a folder the entire contents of this folder will be uploaded and created in your chosen SharePoint location.
Choose the (from Field) variant of this property to look up the value from an input field with the name specified.
UploadBufferSizeMib
Optionally specify the size of the byte range to be uploaded in one upload request.
By default value of this property is 4 MiB.
The maximum size is 60 MiB.
1 MiB(Mebibyte)=1024*1024 bytes.
SharePointUrl
Specify the SharePoint URL hosting the SharePoint site (e.g. https://sharepoint-server.example.com). The URL must be correctly formatted, or the node will fail.
Choose the (from Field) variant of this property to look up the value from an input field with the name specified.
A value is required for this property.
SitePath
Optionally specify the SharePoint site name. Leave this property blank to connect to the default or root site (e.g. CommunicationSite).
It can be a relative URL for a subsite (e.g. CommunicationSite/SampleSubSite).
Choose the (from Field) variant of this property to look up the value from an input field with the name specified.
DocumentLibrary
Optionally specify the document library name under the specified SharePoint site (e.g. MySharedDocuments).
Leave this property blank to use the root document library of the specified site.
Choose the (from Field) variant of this property to look up the value from an input field with the name specified.
FolderPath
Optionally specify the target folder path on the server relative to the specified document library where the contents are to be uploaded. Do not include the site name or document library in this path.
Choose the (from Field) variant of this property to look up the value from an input field with the name specified.
Pattern
Optionally specify a case insensitive expression used to select which files to upload from the local folder, e.g. "Data" would match files in the folder named Region1Data.xlsx, Region2Data.xlsx, DataForPreviousYears.csv and testdata.txt
Choose the (from Field) variant of this property to look up the value from an input field with the name specified.
ClientId
Specify the client ID or application ID registered with Azure Active Directory.
A value is required for this property.
Choose the (from Field) variant of this property to look up the value from an input field with the name specified.
TenantId
Specify the Tenant ID registered with Azure Active Directory.
A value is required for this property.
Choose the (from Field) variant of this property to look up the value from an input field with the name specified.
ClientSecret
Specify the Client Secret for the registered client/application with Azure Active Directory.
A value is required for this property.
Choose the (from Field) variant of this property to look up the value from an input field with the name specified.
Recurse
Optionally specify whether to upload the contents of folders recursively or not.
By default this property is set to False.
SiteRoot
Optionally specify the SharePoint root site location under which the site was created. The default root location for Team sites can be changed in the SharePoint admin center settings under Site creation.
Choose from:
- sites
- teams
The default value is sites.
PassThroughFields
Optionally specify which input fields will "pass through" the node unchanged from the input to the output, assuming that the input exists. The input fields specified will appear on those output records which were produced as a result of the input fields. Choose from:
- All - Passes through all the input data fields to the output.
- None - Passes none of the input data fields to the output; as such, only the fields created by the node appear on the output.
- Used - Passes through all the fields that the node used to create the output. Used fields include any input field referenced by a property, be it explicitly (i.e., via a 'field1' reference) or via a field pattern (i.e., '1:foo*').
- Unused - Passes through all the fields that the node did not use to create the output.
The default value is Used.
If a naming conflict exists between a pass-through field and an explicitly named output field, an error will occur.
ConnectionTimeout
Optionally specify the maximum period (in seconds) to wait before the connection times out.
By default, a connection timeout period does not apply.
StatusCodeOutputField
Optionally specify the name of the output field that will contain the upload status code.
This status code is a numeric value that indicates the status code of the HTTP response.
The default value is _StatusCode.
StatusMessageOutputField
Optionally specify the name of the output field that will contain the error message that describes the status of the upload.
The default value is _StatusMessage.
ContentTypeOutputField
Optionally specify an easy way to output the Content-Type header of the HTTP response separately from the rest of the HTTP headers.
Since the Content-Type identifies the type of file that is returned with the response (it functions very similarly to a file extension) this header is most commonly the only header that the user needs to output.
Placing a field name in this property will cause the value of the Content-Type header to be output separately in a field of this type.
If this property is left blank, then the content type is not output via this property.
FileIdOutputField
Optionally specify the output field that will contain the id of the file or folder on the SharePoint server.
The default value is "_FileId".
SitePathOutputField
Optionally specify the output field that will contain the site path of the SharePoint server.
The default value is "_SitePath".
DocumentLibraryOutputField
Optionally specify the output field that will contain the document library of the site on the SharePoint server.
The default value is "_DocumentLibrary".
FolderPathOutputField
Optionally specify the output field that will contain the folder on the SharePoint server.
The default value is "_Folder".
ItemTypeOutputField
Optionally specify the field that will contain the type item in the file list whether it is File or Folder.
The default value is "_FileType".
LengthOutputField
Optionally specify the output field that will contain the length of the uploaded file.
The default value is "_Length".
ServerRelativeUrlOutputField
Optionally specify the output field that contains the search results for Files/Folders on the SharePoint server (e.g. /Documents/TestFolder/testFile.txt).
The default value is "_ServerRelativeUrl".
MimeTypeOutputField
Optionally specify the output field that will contain the mime type of the file.
The default value is "_MimeType".
TimeCreatedOutputField
Optionally specify the output field that will contain the time the downloaded file was created on the SharePoint server.
The default value is "_TimeCreated".
TimeLastModifiedOutputField
Optionally specify the output field that will contain the time the uploaded file was last modified on the SharePoint server.
The default value is "_TimeLastModified".
RetryCondition
Optionally specify under what conditions to retry a request.
Choose from:
- Never - Never retry a request.
- Http Status Error - Retry the request if the response status code is in the 4xx client error or 5xx server error categories.
- Network Error - Retry the request if a network error occurs. A network error is any low level network error that might occur. This could be a socket or connection timeout, TLS error and so on.
- Any Error - Retry the request if the response contains a http status error or a network error.
The default value is Never.
MaxRetries
Optionally specify the number of times to attempt an unsuccessful retry before error.
The default value is unlimited.
RetryTimeout
Optionally specify the maximum total amount of time to attempt to retry a failed request regardless of the number of attempts.
The default value is unlimited, the node will not timeout.
ProxyUrl
Optionally specify the URL of the proxy server to use for the HTTP requests. The URL should contain the protocol (http or https), the host, and the port. All other parts of the URL will be ignored.
The URL should be in a format similar to the following:
- HTTP proxy: http://proxy.example.com:1234
- HTTPS proxy: https://proxy.example.com:443
The node supports automatic detection of system proxy settings To override system proxy settings see the IgnoreSystemProxy property.
ProxyUsername
Optionally specify the proxy username, where the proxy requires authentication.
This property should be left blank if ProxyUrl is not set.
ProxyPassword
Optionally specify the proxy password, where the proxy requires authentication.
This property should be left blank if ProxyUrl is not set.
ProxyAuthenticationMethod
Optionally specify the authentication method used to verify the user of the proxy server. Choose from:
- Basic
- Digest
- NTLM
If it is not set - it will try to automatically detect the best one. Not set by default.
FileExistsBehavior
Optionally specify what to do when a file being uploaded already exists on the local machine. Choose from:
- Error - Give a transfer error and skip the file.
- Log - Log a warning message and skip the file.
- Ignore - Skip the file.
- Overwrite - Overwrite the file.
- Update - Overwrite if the file being uploaded is newer than the existing file.
The default value is Error.
ProcessingErrorBehavior
Optionally specify the behavior of the node if any kind of error occurs during the processing of an input record. Errors will always be included on the error output pin. Choose from:
- Error - Logs an error to the Errors panel and node fails.
- Log - Logs a warning to the Errors panel.
- Ignore - Ignores the error.
The default value is Error.
ErrorThreshold
Optionally specify the number of transfer errors that will cause the node to give up and fail.
Each record on the input pin is a "request". A transfer error is any error that causes a request to fail (e.g. a requested file does not exist). Setting this property instructs the node to continue processing requests as long as the number of errors remains below the given threshold.
An error threshold of 0 means never fail on a transfer error (the node will still fail on more serious errors).
The default value is 1; the node fails on the first error encountered.
LogLevel
Optionally specify the level at which non-fatal messages are logged. The lower the level, the more information will be recorded in the log file.
Choose from:
0 - Information
1 - Low
2 - Medium
3 - High
4 - Fatal
The default value is 2 (Medium), which can be changed in the ls_brain_node.prop configuration file by modifying the property ls.brain.node.logLevel.
Enabled
Optionally specify whether the node is enabled or disabled. You can either choose from True or False, or reference another property (see the topic Using derived property values) which will be evaluated to a true/false value.
Disabled nodes are not executed, even if they are selected to run.
The default value is True.
The Enabled property cannot reference (either directly or indirectly) any of the Run Properties of a data flow.
Inputs and outputs
Inputs: 1 optional.
Outputs: Uploaded Files and Errors.