Skip to Content
SourcesLocal Folder

Local Folder

Required
Fields required for a valid configuration.
PathTypeRequiredDescriptionDefaultConstraints
requiredobjectYesno extra properties
required.pathstringYesAbsolute path of the local folder to scan (for example, /Users/jane/Documents)
Masked
Sensitive fields under(secrets/credentials).
PathTypeRequiredDescriptionDefaultConstraints
maskedobjectNoLocal folder scans run with the desktop application's filesystem permissions; no credentials are required.no extra properties
Optional
Optional configuration fields.
PathTypeRequiredDescriptionDefaultConstraints
optionalobjectNono extra properties
optional.scopeobjectNoObject scope and filtering controls.no extra properties
optional.scope.exclude_extensionsarrayNoOptional extension denylist
optional.scope.exclude_extensions[]stringNo
optional.scope.include_content_previewbooleanNoDownload object bytes to infer MIME and extract detector-ready text previewstrue
optional.scope.include_empty_objectsbooleanNoInclude zero-byte objects in extraction resultsfalse
optional.scope.include_extensionsarrayNoOptional extension allowlist (for example, .pdf, .csv, .parquet)
optional.scope.include_extensions[]stringNo
optional.scope.include_object_metadatabooleanNoAttach provider metadata (etag, size, content-type hints, timestamps) to asset checksumstrue
optional.scope.prefixstringNoObject key prefix filter (for example, exports/2026/)
optional.traversalobjectNoDirectory traversal controls.no extra properties
optional.traversal.follow_symlinksbooleanNoFollow symbolic links while traversing (loops are not detected; leave off unless needed)false
optional.traversal.include_hiddenbooleanNoInclude hidden files and dot-directories (names starting with a dot)false
optional.traversal.max_depthintegerNoMaximum directory depth below the selected folder (unset scans all levels)min 1, max 64
optional.traversal.max_file_bytesintegerNoMaximum bytes read per file for MIME detection and text extraction10485760min 1024, max 104857600
Extracted Metadata

File

FieldTypeRequiredDescription
size_bytesintegerYesRaw byte size of the content
mime_typestringYesResolved MIME type
parse_errorstringNoSet when content extraction failed
image_widthintegerNoWidth in pixels
image_heightintegerNoHeight in pixels
page_countintegerNoNumber of pages (pdf)
paragraph_countintegerNoNumber of paragraphs (docx)
table_countintegerNoNumber of tables (docx)
row_countintegerNoNumber of data rows
columnsobject[]NoColumns as {name, type} objects (type may be empty for csv/xlsx)
encodingstringNoDetected character encoding
json_root_typestringNoRoot JSON type: object, array, or scalar
top_level_keysintegerNoNumber of top-level keys when the root is an object
array_lengthintegerNoLength when the root is an array
providerstringYesStorage provider label
object_keystringYesFile path relative to the scanned folder
etagstringNoChange signature derived from file size and modification time

Image

FieldTypeRequiredDescription
size_bytesintegerYesRaw byte size of the content
mime_typestringYesResolved MIME type
parse_errorstringNoSet when content extraction failed
providerstringNoStorage provider label
object_keystringNoFile path relative to the scanned folder
etagstringNoChange signature derived from file size and modification time
source_hashstringNoHash of the parent file asset (embedded images only)
locationstringNoLocation of the embedded image within the parent (embedded images only)

Audio

FieldTypeRequiredDescription
size_bytesintegerYesRaw byte size of the content
mime_typestringYesResolved MIME type
parse_errorstringNoSet when content extraction failed
providerstringYesStorage provider label
object_keystringYesFile path relative to the scanned folder
etagstringNoChange signature derived from file size and modification time

Video

FieldTypeRequiredDescription
size_bytesintegerYesRaw byte size of the content
mime_typestringYesResolved MIME type
parse_errorstringNoSet when content extraction failed
providerstringYesStorage provider label
object_keystringYesFile path relative to the scanned folder
etagstringNoChange signature derived from file size and modification time
Examples
Documents folder scan
Scan a local folder on this computer for documents, spreadsheets, and images (desktop app only)

Config Payload

{
  "type": "LOCAL_FOLDER",
  "required": {
    "path": "/Users/you/Documents"
  },
  "optional": {
    "scope": {
      "include_content_preview": true
    }
  },
  "sampling": {
    "strategy": "AUTOMATIC"
  }
}
Project folder scan with file-type filter
Scan a project folder restricted to office documents, skipping hidden files and very large files

Config Payload

{
  "type": "LOCAL_FOLDER",
  "required": {
    "path": "/Users/you/Projects/reports"
  },
  "optional": {
    "traversal": {
      "include_hidden": false,
      "max_depth": 10,
      "max_file_bytes": 10485760
    },
    "scope": {
      "include_extensions": [
        ".pdf",
        ".docx",
        ".xlsx",
        ".csv",
        ".txt"
      ],
      "include_content_preview": true
    }
  },
  "sampling": {
    "strategy": "ALL"
  },
  "detectors": [
    {
      "type": "PII",
      "enabled": true
    },
    {
      "type": "SECRETS",
      "enabled": true
    }
  ]
}