Microsoft Windows SMB operation
The connector follows Boomi's operation model. Select an operation and object type, then provide the file or directory path through the standard object ID and/or dynamic operation properties described below.
| Supported Action | Object Type | Brief Description |
|---|---|---|
| Get | File | Read a file's binary content from the share; optionally delete or rename the file after a successful read |
| File Metadata | Retrieve a file's metadata (existence, size, and timestamps) as JSON | |
| Folder Metadata | Retrieve a folder's metadata, including whether it exists, as JSON | |
| Create | File | Upload a file to the share, with options for handling existing files, staging, and directory creation |
| Directory | Create a directory, including any missing parent directories | |
| Delete | File | Remove a file from the share |
| Directory | Remove a directory, optionally with all of its contents |
Get
Use Get to read a file or retrieve metadata for a file or folder.
Get — File
- Object type: File
- Input body: None
- Path: The object ID, or the fileName dynamic operation property when provided
- Output: Binary file content streamed to the process
- Tracked properties: fileName, directory
The connector retains the SMB session lease until the Boomi runtime consumes the stream. Downstream components should consume the output in full so that the file handle and pooled session can be released correctly.
Optional operation fields:
| Field | Default | Description |
|---|---|---|
| Action After Read | None | After a fully successful read, leave the source unchanged, delete it, or rename it. |
| Fail Document if After-Read Action Fails | false | When true, an error deleting or renaming after the read fails the document. When false, the connector logs the after-read failure and keeps the successful read result. |
| Rename-After-Read Suffix | .done | Suffix appended to the complete source path when Action After Read is Rename (e.g., inbound\report.csv.done). |
Note: After-read actions are performed only after the downstream read completes successfully. They are not performed when opening or streaming the file fails.
Example path configuration:
- Connection Share Name: data
- Connection Default Directory: inbound
- Object ID: 2026/report.csv
- Effective path: inbound\2026\report.csv
Get — File Metadata
- Object type: File Metadata
- Input body: None
- Path: The object ID, or the fileName dynamic operation property
- Output: JSON metadata
A missing file is a successful metadata response with exists: false; it is not returned as a not-found error.
Example response for an existing file:
{
"exists": true,
"fileName": "report.csv",
"directory": "inbound\\2026",
"path": "inbound\\2026\\report.csv",
"fileSize": "18432",
"isDirectory": false,
"lastModified": "2026-10-07T12:34:56Z",
"created": "2026-10-01T08:15:00Z"
}
Example response for a missing file:
{
"exists": false,
"path": "inbound\\2026\\missing.csv"
}
Get — Folder Metadata
- Object type: Folder Metadata
- Input body: None
- Path: The object ID, or the fileName dynamic operation property
- Output: JSON metadata
Folder metadata follows the same response shape as file metadata. The isDirectory value is true when the target exists and is a directory. A missing folder returns exists: false and the normalized path.
Create
Use Create to upload a file or create a directory.
Create — File
- Object type: File
- Input body: Binary
- Required path: fileName operation field or document dynamic fileName
- Output: JSON metadata for the written file
- Success message: File created
The fileName may contain child directory segments relative to the effective directory. For example, with a default directory of outbound, a fileName of 2026/report.csv writes to outbound\2026\report.csv.
| Field | Default | Description |
|---|---|---|
| Folder / File Name (fileName) | — | Required target file name or share-relative child path. |
| Action If File Exists | Error | Select Error, Overwrite, Create Unique Name, or Append. |
| Create Directory If Missing | false | When enabled, recursively creates the target and staging directories if they do not exist. |
| Staging Directory | Target directory | Optional share-relative directory for the temporary upload file. The staging directory must exist unless directory creation is enabled. |
| Temporary File Extension | .tmp | Extension used for the in-progress temporary file. The connector adds a UUID to keep temporary names distinct. |
Collision behavior:
| Value | Behavior |
|---|---|
| ERROR | Fails the document when the final target already exists. |
| OVERWRITE | Uploads successfully, then replaces the existing target during the final rename. |
| FORCE_UNIQUE_NAMES | Finds a free name using _1, _2, and so on before falling back to a UUID suffix. Up to 10,000 candidates are checked. |
| APPEND | Writes directly to the final file, appending the input bytes. This mode does not use temp-file staging and is not retried after a partial write. |
Example file-create result:
{
"fileName": "report.csv",
"directory": "outbound",
"path": "outbound\\report.csv",
"fileSize": "18432",
"isDirectory": false,
"lastModified": "2026-10-07T12:34:56Z"
}
The fileSize value is serialized as a string in JSON, even though the underlying Java metadata value is numeric.
Create — Directory
- Object type: Directory
- Input body: None
- Path: The effective directory, optionally joined with fileName
- Output: JSON result
When fileName is blank, the connector creates the effective directory. A blank effective directory and blank fileName are rejected because the connector does not create the share root.
Example:
{
"success": true,
"path": "outbound\\archive"
}
Directory creation is recursive and tolerates concurrent creation by another process.
Delete
Use Delete to remove a file or directory.
- Object type: File or Directory
- Input body: None
- Path: The fileName dynamic operation property when provided; otherwise the object ID
- Output: Empty success payload
| Field | Default | Description |
|---|---|---|
| Recursive Directory Delete | false | Applies to the Directory object type. When enabled, deletes the directory and its contents. |
Errors and Response Codes
The connector uses Boomi operation statuses together with connector response codes.
| Code | Typical status | Meaning |
|---|---|---|
| 0 | Success | Operation completed successfully. |
| 1 | Application error | The requested file or directory was not found, or another document-level application condition occurred. |
| -1 | Application error or Failure | Any other failure: document-level validation errors such as a missing file name, an invalid path, a file that already exists, or a directory that does not exist; or an unexpected transport, session, or other error. |