filesystem.listdir¶
Get the contents of a directory.
The select option may be used to optimize listdir performance. Metadata-related fields that are not selected will not be retrieved from the filesystem.
For example {“select”: [“path”, “type”]} will avoid querying an xattr list and ZFS attributes for files in a directory.
NOTE: an empty list for select (default) is treated as requesting all information.
Each entry of the list consists of: name(str): name of the file path(str): absolute path of the entry realpath(str): absolute real path of the entry (if SYMLINK) type(str): DIRECTORY | FILE | SYMLINK | OTHER size(int): size of the entry allocation_size(int): on-disk size of entry mode(int): file mode/permission uid(int): user id of entry owner gid(int): group id of entry owner acl(bool): extended ACL is present on file is_mountpoint(bool): path is a mountpoint is_ctldir(bool): path is within special .zfs directory attributes(list): list of statx file attributes that apply to the file. See statx(2) manpage for more details. xattrs(list): list of extended attribute names. zfs_attrs(list): list of ZFS file attributes on file
No Additional Items
Tuple Validation
Parameter 1: path
path
Type: stringMust be at least 1
characters long
Parameter 2: query_filters
query_filters
Type: array Default: []List of filters for query results. See API documentation for "Query Methods" for more guidance.
No Additional ItemsEach item of this array must be:
[
[
"name",
"=",
"bob"
]
]
[
[
"OR",
[
[
[
"name",
"=",
"bob"
]
],
[
[
"name",
"=",
"larry"
]
]
]
]
]
Parameter 3: query_options
query_options
Type: objectQuery options customize the results returned by a query method. More complete documentation with examples
are covered in the "Query methods" section of the TrueNAS API documentation.
Relationships
Type: boolean Default: trueExtend
Default: nullExtend Fk
Type: array of string Default: []No Additional Items
Each item of this array must be:
Extend Context
Default: nullPrefix
Default: nullExtra
Type: object Default: {}Extra options are defined on a per-endpoint basis and are described in the documentation for the associated
query method.
Order By
Type: array of string Default: []An array of field names describing the manner in which query results should be ordered. The field names may
also have one of more of the following special prefixes: -
(reverse sort direction), nulls_first:
(place
any null values at the head of the results list), nulls_last:
(place any null values at the tail of the
results list).
Each item of this array must be:
[
"size",
"-devname",
"nulls_first:-expiretime"
]
Select
Type: array Default: []An array of field names specifying the exact fields to include in the query return. The dot character .
may be used to explicitly select only subkeys of the query result.
Each item of this array must be:
No Additional Items
Each item of this array must be:
[
"username",
"Authentication.status"
]
Count
Type: boolean Default: falseReturn a numeric value representing the number of items that match the specified query-filters
.
Get
Type: boolean Default: falseReturn the JSON object of the first result matching the specified query-filters
. The query fails
if there specified query-filters
return no results.
Offset
Type: integer Default: 0This specifies the beginning offset of the results array. When combined with the limit
query-option
it may be used to implement pagination of large results arrays. WARNING: some query methods provide
volatile results and the onus is on the developer to understand whether pagination is appropriate
for a particular query API method.
Limit
Type: integer Default: 0This specifies the maximum number of results matching the specified query-filters
to return. When
combined wtih the offset
query-option it may be used to implement pagination of large results arrays.
WARNING: some query methods provide volatile results and the onus is on the developer to understand whether
pagination is appropriate for a particular query API method.
Force Sql Filters
Type: boolean Default: falseResult
No Additional Items
Each item of this array must be:
FilesystemDirQueryResultItem
Type: objectNo Additional Properties
Name
Type: stringEntry's base name.
Must be at least 1
characters long
Path
Type: stringEntry's full path.
Must be at least 1
characters long
Realpath
Type: stringCanonical path of the entry, eliminating any symbolic links
Must be at least 1
characters long
Type
Type: enum (of string)Must be one of:
- "DIRECTORY"
- "FILE"
- "SYMLINK"
- "OTHER"
Size
Type: integerSize in bytes of a plain file. This corresonds with stx_size.
Allocation Size
Type: integerAllocated size of file. Calculated by multiplying stx_blocks by 512.
Mode
Type: integerEntry's mode including file type information and file permission bits. This corresponds with stx_mode.
Mount Id
Type: integerThe mount ID of the mount containing the entry. This corresponds to the number in first
field of /proc/self/mountinfo and stxmntid.
Acl
Type: booleanSpecifies whether ACL is present on the entry. If this is the case then file permission
bits as reported in mode
may not be representative of the actual permissions.
Uid
Type: integerUser ID of the entry's owner. This corresponds with stx_uid.
Gid
Type: integerGroup ID of the entry's owner. This corresponds with stx_gid.
Is Mountpoint
Type: booleanSpecifies whether the entry is also the mountpoint of a filesystem.
Is Ctldir
Type: booleanSpecifies whether the entry is located within the ZFS ctldir (for example a snapshot).
Attributes
Type: array of enum (of string)Extra file attribute indicators for entry as returned by statx. Expanded from stx_attributes.
No Additional ItemsEach item of this array must be:
Must be one of:
- "COMPRESSED"
- "APPEND"
- "NODUMP"
- "IMMUTABLE"
- "AUTOMOUNT"
- "MOUNT_ROOT"
- "VERIFY"
- "DAX"
Xattrs
Type: array of stringList of xattr names of extended attributes on file.
No Additional ItemsEach item of this array must be:
Must be at least 1
characters long
Zfs Attrs
List of extra ZFS-related file attribute indicators on file. Will be None type if filesystem is not ZFS.
No Additional Items
Each item of this array must be:
Must be one of:
- "READONLY"
- "HIDDEN"
- "SYSTEM"
- "ARCHIVE"
- "IMMUTABLE"
- "NOUNLINK"
- "APPENDONLY"
- "NODUMP"
- "OPAQUE"
- "AV_QUARANTINED"
- "AV_MODIFIED"
- "REPARSE"
- "OFFLINE"
- "SPARSE"
FilesystemDirQueryResultItem
Type: objectNo Additional Properties
Name
Type: stringEntry's base name.
Must be at least 1
characters long
Path
Type: stringEntry's full path.
Must be at least 1
characters long
Realpath
Type: stringCanonical path of the entry, eliminating any symbolic links
Must be at least 1
characters long
Type
Type: enum (of string)Must be one of:
- "DIRECTORY"
- "FILE"
- "SYMLINK"
- "OTHER"
Size
Type: integerSize in bytes of a plain file. This corresonds with stx_size.
Allocation Size
Type: integerAllocated size of file. Calculated by multiplying stx_blocks by 512.
Mode
Type: integerEntry's mode including file type information and file permission bits. This corresponds with stx_mode.
Mount Id
Type: integerThe mount ID of the mount containing the entry. This corresponds to the number in first
field of /proc/self/mountinfo and stxmntid.
Acl
Type: booleanSpecifies whether ACL is present on the entry. If this is the case then file permission
bits as reported in mode
may not be representative of the actual permissions.
Uid
Type: integerUser ID of the entry's owner. This corresponds with stx_uid.
Gid
Type: integerGroup ID of the entry's owner. This corresponds with stx_gid.
Is Mountpoint
Type: booleanSpecifies whether the entry is also the mountpoint of a filesystem.
Is Ctldir
Type: booleanSpecifies whether the entry is located within the ZFS ctldir (for example a snapshot).
Attributes
Type: array of enum (of string)Extra file attribute indicators for entry as returned by statx. Expanded from stx_attributes.
No Additional ItemsEach item of this array must be:
Must be one of:
- "COMPRESSED"
- "APPEND"
- "NODUMP"
- "IMMUTABLE"
- "AUTOMOUNT"
- "MOUNT_ROOT"
- "VERIFY"
- "DAX"
Xattrs
Type: array of stringList of xattr names of extended attributes on file.
No Additional ItemsEach item of this array must be:
Must be at least 1
characters long
Zfs Attrs
List of extra ZFS-related file attribute indicators on file. Will be None type if filesystem is not ZFS.
No Additional Items
Each item of this array must be:
Must be one of:
- "READONLY"
- "HIDDEN"
- "SYSTEM"
- "ARCHIVE"
- "IMMUTABLE"
- "NOUNLINK"
- "APPENDONLY"
- "NODUMP"
- "OPAQUE"
- "AV_QUARANTINED"
- "AV_MODIFIED"
- "REPARSE"
- "OFFLINE"
- "SPARSE"
Required roles: FILESYSTEM_ATTRS_READ