internal/autorest/out/nodes/Get-DracoonARNode.ps1
function Get-DracoonARNode { <# .SYNOPSIS Request list of nodes .DESCRIPTION ### Description: Provides a hierarchical list of file system nodes (rooms, folders or files) of a given parent that are accessible by the current user. ### Precondition: Authenticated user. ### Postcondition: List of nodes is returned. ### Further Information: `EncryptionInfo` is **NOT** provided. ### Filtering: All filter fields are connected via logical conjunction (**AND**) Filter string syntax: `FIELD_NAME:OPERATOR:VALUE[:VALUE...]` <details style="padding-left: 10px"> <summary style="cursor: pointer; outline: none"><strong>Example</strong></summary> `type:eq:room:folder|perm:eq:read` Get nodes where type equals (`room` **OR** `folder`) **AND** user has `read` permissions. </details> ### Filtering options: <details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;"> <summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary> | `FIELD_NAME` | Filter Description | `OPERATOR` | Operator Description | `VALUE` | | :--- | :--- | :--- | :--- | :--- | | `type` | Node type filter | `eq` | Node type equals value.<br>Multiple values are allowed and will be connected via logical disjunction (**OR**).<br>e.g. `type:eq:room:folder` | <ul><li>`room`</li><li>`folder`</li><li>`file`</li></ul> | | `perm` | Permission filter | `eq` | Permission equals value.<br>Multiple values are allowed and will be connected via logical disjunction (**OR**).<br>e.g. `perm:eq:read:create:delete` | <ul><li>`manage`</li><li>`read`</li><li>`change`</li><li>`create`</li><li>`delete`</li><li>`manageDownloadShare`</li><li>`manageUploadShare`</li><li>`canReadRecycleBin`</li><li>`canRestoreRecycleBin`</li><li>`canDeleteRecycleBin`</li></ul> | | `childPerm` | Same as `perm`, but less restrictive (applies to child nodes only).<br>Child nodes of the parent node which do not meet the filter condition<br>are **NOT** returned. | `eq` | cf. `perm` | cf. `perm` | | `name` | Node name filter | `cn, eq` | Node name contains / equals value. | `search String` | | `encrypted` | Node encryption status filter | `eq` | | `true or false` | | `branchVersion` | Node branch version filter | `ge, le` | Branch version is greater / less equals than value.<br>Multiple operator values are allowed and will be connected via logical conjunction (**AND**).<br>e.g. `branchVersion:ge:1423280937404`|`branchVersion:le:1523280937404` | `version number` | | `timestampCreation` | Creation timestamp filter | `ge, le` | Creation timestamp is greater / less equals than value.<br>Multiple operator values are allowed and will be connected via logical conjunction (**AND**).<br>e.g. `timestampCreation:ge:2016-12-31T23:00:00.123`|<br>`timestampCreation:le:2018-01-01T11:00:00.540` | `Date (yyyy-MM-dd)` | | `timestampModification` | Modification timestamp filter | `ge, le` | Modification timestamp is greater / less equals than value.<br>Multiple operator values are allowed and will be connected via logical conjunction (**AND**).<br>e.g. `timestampModification:ge:2016-12-31T23:00:00.123`|<br>`timestampModification:le:2018-01-01T11:00:00.540` | `Date (yyyy-MM-dd)` | </details> --- ### Sorting: Sort string syntax: `FIELD_NAME:ORDER` `ORDER` can be `asc` or `desc`. Multiple sort fields are **NOT** supported. Nodes are sorted by type first, then by sent sort string. <details style="padding-left: 10px"> <summary style="cursor: pointer; outline: none"><strong>Example</strong></summary> `name:desc` Sort by `name` descending. </details> ### Sorting options: <details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;"> <summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary> | `FIELD_NAME` | Description | | :--- | :--- | | `name` | Node name | | `createdAt` | Creation date | | `createdBy` | Creator first name, last name | | `updatedAt` | Last modification date | | `updatedBy` | Last modifier first name, last name | | `fileType` | File type (extension) | | `classification` | Classification ID:<ul><li>1 - public</li><li>2 - internal</li><li>3 - confidential</li><li>4 - strictly confidential</li></ul> | | `size` | Node size | | `cntDeletedVersions` | Number of deleted versions of this file / folder (**NOT** recursive; for files and folders only) | | `timestampCreation` | Creation timestamp | | `timestampModification` | Modification timestamp | </details> ### Deprecated sorting options: <details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;"> <summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary> | `FIELD_NAME` | Description | | :--- | :--- | | <del>`cntAdmins`</del> | Number of admins (for rooms only) | | <del>`cntUsers`</del> | Number of users (for rooms only) | | <del>`cntChildren`</del> | Number of direct children (**NOT** recursive; for rooms and folders only) | </details> .PARAMETER XSdsAuthToken Authentication token .PARAMETER Connection Object of Class ARAHConnection, stores the authentication Token and the API Base-URL .PARAMETER Filter Filter string .PARAMETER Offset Range offset .PARAMETER Parent_id Parent node ID. Only rooms and folders can be parents. Parent ID `0` or empty is the root node. .PARAMETER Node_id Node ID .PARAMETER Room_manager Show all rooms for management perspective. Only possible for _Rooms Managers_. For all other users, it will be ignored. .PARAMETER Sort Sort string .PARAMETER Limit Range limit. Maximum 500. For more results please use paging (`offset` + `limit`). .PARAMETER XSdsDateFormat Date time format (cf. [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) & [leettime.de](http://leettime.de/)) .PARAMETER Depth_level * `0` - top level nodes only * `n` (any positive number) - include `n` levels starting from the current node .EXAMPLE PS C:\> Get-DracoonARNode -Connection $connection ### Description: Provides a hierarchical list of file system nodes (rooms, folders or files) of a given parent that are accessible by the current user. ### Precondition: Authenticated user. ### Postcondition: List of nodes is returned. ### Further Information: `EncryptionInfo` is **NOT** provided. ### Filtering: All filter fields are connected via logical conjunction (**AND**) Filter string syntax: `FIELD_NAME:OPERATOR:VALUE[:VALUE...]` <details style="padding-left: 10px"> <summary style="cursor: pointer; outline: none"><strong>Example</strong></summary> `type:eq:room:folder|perm:eq:read` Get nodes where type equals (`room` **OR** `folder`) **AND** user has `read` permissions. </details> ### Filtering options: <details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;"> <summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary> | `FIELD_NAME` | Filter Description | `OPERATOR` | Operator Description | `VALUE` | | :--- | :--- | :--- | :--- | :--- | | `type` | Node type filter | `eq` | Node type equals value.<br>Multiple values are allowed and will be connected via logical disjunction (**OR**).<br>e.g. `type:eq:room:folder` | <ul><li>`room`</li><li>`folder`</li><li>`file`</li></ul> | | `perm` | Permission filter | `eq` | Permission equals value.<br>Multiple values are allowed and will be connected via logical disjunction (**OR**).<br>e.g. `perm:eq:read:create:delete` | <ul><li>`manage`</li><li>`read`</li><li>`change`</li><li>`create`</li><li>`delete`</li><li>`manageDownloadShare`</li><li>`manageUploadShare`</li><li>`canReadRecycleBin`</li><li>`canRestoreRecycleBin`</li><li>`canDeleteRecycleBin`</li></ul> | | `childPerm` | Same as `perm`, but less restrictive (applies to child nodes only).<br>Child nodes of the parent node which do not meet the filter condition<br>are **NOT** returned. | `eq` | cf. `perm` | cf. `perm` | | `name` | Node name filter | `cn, eq` | Node name contains / equals value. | `search String` | | `encrypted` | Node encryption status filter | `eq` | | `true or false` | | `branchVersion` | Node branch version filter | `ge, le` | Branch version is greater / less equals than value.<br>Multiple operator values are allowed and will be connected via logical conjunction (**AND**).<br>e.g. `branchVersion:ge:1423280937404`|`branchVersion:le:1523280937404` | `version number` | | `timestampCreation` | Creation timestamp filter | `ge, le` | Creation timestamp is greater / less equals than value.<br>Multiple operator values are allowed and will be connected via logical conjunction (**AND**).<br>e.g. `timestampCreation:ge:2016-12-31T23:00:00.123`|<br>`timestampCreation:le:2018-01-01T11:00:00.540` | `Date (yyyy-MM-dd)` | | `timestampModification` | Modification timestamp filter | `ge, le` | Modification timestamp is greater / less equals than value.<br>Multiple operator values are allowed and will be connected via logical conjunction (**AND**).<br>e.g. `timestampModification:ge:2016-12-31T23:00:00.123`|<br>`timestampModification:le:2018-01-01T11:00:00.540` | `Date (yyyy-MM-dd)` | </details> --- ### Sorting: Sort string syntax: `FIELD_NAME:ORDER` `ORDER` can be `asc` or `desc`. Multiple sort fields are **NOT** supported. Nodes are sorted by type first, then by sent sort string. <details style="padding-left: 10px"> <summary style="cursor: pointer; outline: none"><strong>Example</strong></summary> `name:desc` Sort by `name` descending. </details> ### Sorting options: <details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;"> <summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary> | `FIELD_NAME` | Description | | :--- | :--- | | `name` | Node name | | `createdAt` | Creation date | | `createdBy` | Creator first name, last name | | `updatedAt` | Last modification date | | `updatedBy` | Last modifier first name, last name | | `fileType` | File type (extension) | | `classification` | Classification ID:<ul><li>1 - public</li><li>2 - internal</li><li>3 - confidential</li><li>4 - strictly confidential</li></ul> | | `size` | Node size | | `cntDeletedVersions` | Number of deleted versions of this file / folder (**NOT** recursive; for files and folders only) | | `timestampCreation` | Creation timestamp | | `timestampModification` | Modification timestamp | </details> ### Deprecated sorting options: <details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;"> <summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary> | `FIELD_NAME` | Description | | :--- | :--- | | <del>`cntAdmins`</del> | Number of admins (for rooms only) | | <del>`cntUsers`</del> | Number of users (for rooms only) | | <del>`cntChildren`</del> | Number of direct children (**NOT** recursive; for rooms and folders only) | </details> .EXAMPLE PS C:\> Get-DracoonARNode -Node_id $node_id ### Description: Get node (room, folder or file). ### Precondition: User has <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read</span> permissions in auth parent room. ### Postcondition: Requested node is returned. ### Further Information: None. .LINK <unknown> #> [CmdletBinding(DefaultParameterSetName = 'default')] param ( [Parameter(ValueFromPipelineByPropertyName = $true, ParameterSetName = 'default')] [Parameter(ValueFromPipelineByPropertyName = $true, ParameterSetName = 'requestNode')] [string] $XSdsAuthToken, [Parameter(Mandatory = $true, ValueFromPipelineByPropertyName = $true, ParameterSetName = 'default')] [object] $Connection, [Parameter(ValueFromPipelineByPropertyName = $true, ParameterSetName = 'default')] [string] $Filter, [Parameter(ValueFromPipelineByPropertyName = $true, ParameterSetName = 'default')] [object] $Offset, [Parameter(ValueFromPipelineByPropertyName = $true, ParameterSetName = 'default')] [object] $Parent_id, [Parameter(Mandatory = $true, ValueFromPipelineByPropertyName = $true, ParameterSetName = 'requestNode')] [string] $Node_id, [Parameter(ValueFromPipelineByPropertyName = $true, ParameterSetName = 'default')] [boolean] $Room_manager, [Parameter(ValueFromPipelineByPropertyName = $true, ParameterSetName = 'default')] [string] $Sort, [Parameter(ValueFromPipelineByPropertyName = $true, ParameterSetName = 'default')] [object] $Limit, [Parameter(ValueFromPipelineByPropertyName = $true, ParameterSetName = 'default')] [Parameter(ValueFromPipelineByPropertyName = $true, ParameterSetName = 'requestNode')] [object] $XSdsDateFormat, [Parameter(ValueFromPipelineByPropertyName = $true, ParameterSetName = 'default')] [object] $Depth_level ) process { $__mapping = @{ 'XSdsAuthToken' = 'X-Sds-Auth-Token' 'Connection' = 'Connection' 'Filter' = 'filter' 'Offset' = 'offset' 'Parent_id' = 'parent_id' 'Room_manager' = 'room_manager' 'Sort' = 'sort' 'Limit' = 'limit' 'XSdsDateFormat' = 'X-Sds-Date-Format' 'Depth_level' = 'depth_level' } $__body = $PSBoundParameters | ConvertTo-DracoonARHashtable -Include @() -Mapping $__mapping $__query = $PSBoundParameters | ConvertTo-DracoonARHashtable -Include @('Filter','Offset','Parent_id','Room_manager','Sort','Limit','Depth_level') -Mapping $__mapping $__header = $PSBoundParameters | ConvertTo-DracoonARHashtable -Include @('XSdsAuthToken','XSdsDateFormat') -Mapping $__mapping $__path = 'nodes' if ($Node_id) { $__path += "/$Node_id" } Invoke-DracoonAPI -Path $__path -Method get -Body $__body -Query $__query -Header $__header -Connection $Connection } } |