New-FilesFile

Upload File.

Syntax

New-FilesFile [-Path] <System.String> [-Action <System.String>] [-CustomMetadata <System.Collections.IDictionary>] [-EtagsEtag <System.String[]>] [-EtagsPart <System.Int64[]>] [-Length <System.Int64>] [-MkdirParents <System.Boolean>] [-Part <System.Int64>] [-Parts <System.Int64>] [-ProvidedMtime <System.DateTimeOffset>] [-Ref <System.String>] [-Restart <System.Int64>] [-Size <System.Int64>] [-CopyBehaviors <System.Boolean>] [-Structure <System.String>] [-WithRename <System.Boolean>] [-BufferedUpload <System.Boolean>] [-WithDirectConnectionInfo <System.Boolean>] [-Connection <FilesCom.PowerShell.FilesConnection>] [-WorkspaceScope <System.Int64>] [-NoWorkspaceScope] [-WhatIf] [-Confirm] [<CommonParameters>]

Description

Upload File.

The command supports -WhatIf, which describes the change without sending it to Files.com, and -Confirm, which asks before sending it.

Examples

Example 1: Upload File

New-FilesFile -Path 'path' -CustomMetadata @{ department = 'finance' }

Writes the remote file returned.

Example 2: Preview the change

New-FilesFile -Path 'path' -CustomMetadata @{ department = 'finance' } -WhatIf

Describes the change without sending anything to Files.com.

Parameters

-Path

Path to operate on.

  • Type: System.String
  • Parameter sets: (All) (required, position 0)

-Action

The action to perform. Can be append, attachment, end, upload, put, or may not exist

  • Type: System.String
  • Parameter sets: (All)

-CustomMetadata

Custom metadata map to save when action=end completes the upload. Replaces existing metadata; an empty map clears it. No separate metadata-edit permission is required. Supported on native files and configured remote mounts, excluding remote server automount paths. Limited to 32 keys, 256 characters per key and 1024 characters per value. Give a hashtable or PSCustomObject; keys keep their case and values their types.

  • Type: System.Collections.IDictionary
  • Parameter sets: (All)

-EtagsEtag

etag identifier.

  • Type: System.String[]
  • Parameter sets: (All)

-EtagsPart

Part number.

  • Type: System.Int64[]
  • Parameter sets: (All)

-Length

Length of file.

  • Type: System.Int64
  • Parameter sets: (All)

-MkdirParents

Create parent directories if they do not exist?

  • Type: System.Boolean
  • Parameter sets: (All)

-Part

Part if uploading a part.

  • Type: System.Int64
  • Parameter sets: (All)

-Parts

How many parts to fetch?

  • Type: System.Int64
  • Parameter sets: (All)

-ProvidedMtime

User provided modification time. Give a DateTime from Get-Date, a DateTimeOffset, or ISO 8601 text with an offset such as 2026-01-31T14:00:00Z.

  • Type: System.DateTimeOffset
  • Parameter sets: (All)

-Ref

Ref

  • Type: System.String
  • Parameter sets: (All)

-Restart

File byte offset to restart from.

  • Type: System.Int64
  • Parameter sets: (All)

-Size

Size of file.

  • Type: System.Int64
  • Parameter sets: (All)

-CopyBehaviors

If copying a folder, also copy supported behaviors, email notification subscriptions, and per-folder branding to the destination folder tree?

  • Type: System.Boolean
  • Parameter sets: (All)

-Structure

If copying folder, copy just the structure?

  • Type: System.String
  • Parameter sets: (All)

-WithRename

Allow file rename instead of overwrite?

  • Type: System.Boolean
  • Parameter sets: (All)

-BufferedUpload

If true, and the path refers to a destination not stored on Files.com (such as a remote server mount), the upload will be uploaded first to Files.com before being sent to the remote server mount. This can allow clients to upload using parallel parts to a remote server destination that does not offer parallel parts support natively.

  • Type: System.Boolean
  • Parameter sets: (All)

-WithDirectConnectionInfo

Include optional direct connection information for a direct Agent transfer attempt?

  • Type: System.Boolean
  • Parameter sets: (All)

-Connection

The connection to use, from Connect-FilesAccount. Defaults to the connection of the -InputObject or -Continuation given, and otherwise to the current runspace's default connection.

  • Type: FilesCom.PowerShell.FilesConnection
  • Parameter sets: (All)

-WorkspaceScope

Runs this command's requests in this workspace, including workspace 0, instead of the connection's or, for an -InputObject, instead of the workspace the object was read in. The connection and the object are unchanged.

  • Type: System.Int64
  • Parameter sets: (All)

-NoWorkspaceScope

Runs this command's requests in no workspace, even if the connection has one. The connection itself is unchanged.

  • Type: System.Management.Automation.SwitchParameter
  • Parameter sets: (All)

-Confirm

Prompts you for confirmation before running the cmdlet.

  • Type: System.Management.Automation.SwitchParameter
  • Confirm impact: Medium. At the default $ConfirmPreference of High, the command runs without asking; -Confirm makes it ask before each change.

-WhatIf

Shows what the cmdlet would change without sending anything to Files.com.

  • Type: System.Management.Automation.SwitchParameter

Common Parameters

This cmdlet supports the PowerShell common parameters, such as -Verbose and -ErrorAction.

Inputs

None. The command takes no pipeline input.

Outputs

  • FilesCom.PowerShell.Models.RemoteFile: the remote file as Files.com returned it.

Notes

Failures are written as error records with IDs such as Files.NotFound or Files.Authentication. Run Get-Help about_FilesCom for connections, paging, errors and previewing changes.