# Directory Changed

Trigger `folder`

trigger.directory_changed

Fires when files change in a watched directory. Unlike the File Changed trigger which monitors a single file, this trigger watches an entire directory and optionally its subdirectories for file system events.

You can filter by event type (created, modified, deleted, or all) and choose whether to recurse into subdirectories. This makes it ideal for watching download folders, project directories, or any location where new files may appear.

## Ports

Direction | Name | Data Type | Description
--- | --- | --- | ---
Outlet | Output | Any | Payload emitted when a file in the directory changes

## Configuration

Field | Type | Default | Description
--- | --- | --- | ---
Directory | `Directory Picker` | — | Path to the directory to watch
Watch Subdirectories | `Boolean` | true | Whether to recursively watch subdirectories
Event Types | `Dropdown` | All Events | Filter by event type: Created, Modified, Deleted, or All Events
Custom Arguments | `Key-Value` | — | Additional key-value pairs included in the output payload

## Output Variables

Variable | Type | Description
--- | --- | ---
`filePath` | String | Full path of the changed file
`fileName` | String | Name of the changed file
`directory` | String | Parent directory path
`fileExtension` | String | Lowercased extension without the dot (e.g. `pdf`) — handy for `{{directory}}/{{fileType}}/{{fileName}}` sorting
`fileType` | String | Coarse category for organizing by type (Images, Documents, Audio, Videos, Spreadsheets, Presentations, Archives, Other)
`changeType` | String | Type of change (created / modified / deleted)
`timestamp` | String | ISO 8601 timestamp of the event

## Example

Watch a Downloads folder and auto-organize new files by extension: