Actions / Action reference
File actions
Copy, move, rename, delete, and inspect files.
Actions
| Action | Use it to |
|---|---|
| Copy file | Copy a file. |
| Move file | Move a file. |
| Rename file | Rename a file. |
| Delete file | Delete a file. |
| Extract file metadata | Read a file's name, size, dates, and type. |
Read Shared action rules for disabling steps, outputs, error routing, and automatic recovery.
File sources and destinations
The carried file. A job carries one file, ${item.path}, set by the trigger (a watched file) or by an action that produces a file (Copy, Move, Rename, S3 Transfer when it downloads, SCP download). Every file action's Source file defaults to ${item.path}. On a step that no file reaches, such as one after a Webhook alone, Source file starts empty, and the workflow cannot be enabled until you choose a file. When an action produces a new file, the job carries that file from then on: after a Copy, ${item.path} is the copy.
Overwrite is off by default everywhere. Off means a name collision is a failure, and the source is left intact so the job can be retried. Create missing folders is on by default.
File name fields accept a name, never a path. Relay refuses a value containing a path separator.
File sources. Copy and Move require a regular file or a symbolic link to a regular file. For a symbolic-link source, they copy the target content into a regular destination file. Copy keeps the link; Move removes the source link after publication and leaves its target in place. Watch Folder does not accept symbolic links as input.
Volumes without hard links. Some volumes, such as Suite Storage and LucidLink, do not support hard links or a rename that refuses an existing name. With Overwrite existing off, Copy, Move, SCP download, and S3 Transfer downloads still work on these volumes. Relay first creates an empty file at the final name to claim it, then renames the file over it. While this happens, the empty file can be visible for a short time. If Relay stops at that moment, an empty file can remain at the final name. Delete it before you retry. This method is not fully atomic. If another program writes the same name at the same moment, after Relay checks its claim, Relay can overwrite that file. On shared storage, do not let two writers use the same final name at the same time.
If a same-filesystem Move cannot safely complete an overwrite-off relocation, it fails with same-filesystem relocation is unsupported before destructive work and leaves the source untouched. This happens only when the volume also refuses to create a new file that claims the name.
Copy, Move transfers, SCP download, and S3 Transfer downloads can fail with staged publication without overwrite is unsupported when the destination filesystem cannot safely publish a new name with Overwrite existing off. This happens only when the volume refuses hard links, a rename that refuses an existing name, and a new file that claims the name. Relay does not publish the final name. It attempts to remove its owned temporary file and reports the retained path if cleanup fails. Use a destination filesystem that supports this operation, or enable overwrite only when replacing an existing destination is intended.
If Copy file, Move file, or Rename file reaches the step with an empty effective source, Relay follows that action's selected error policy and explains how to supply the source. It does not bypass the Error output or workflow Error handling.