internal/autorest/out/nodes/Set-DracoonARNodeRoom.ps1

function Set-DracoonARNodeRoom {
<#
.SYNOPSIS
    Create new room
 
.DESCRIPTION
    ### Description:
Creates a new room at the provided parent node.
Creation of top level rooms provided.
 
### Precondition:
User has <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>&#128275; manage</span> permissions in the parent room.
 
### Postcondition:
A new room is created.
 
### Further Information:
Rooms may only have other rooms as parent.
Rooms on top level do **NOT** have any parent.
Rooms may have rooms as children on n hierarchy levels.
If permission inheritance is disabled, there **MUST** be at least one admin user / group (with neither the group nor the user having an expiration date).
 
Notes are limited to **255** characters.
 
Provided (or default) classification is taken from room when file gets uploaded without any classification.
 
### Node naming convention:
* Node (room, folder, file) names are limited to **150** characters.
* Illegal names:
`'CON', 'PRN', 'AUX', 'NUL', 'COM1', 'COM2', 'COM3', 'COM4', 'COM5', 'COM6', 'COM7', 'COM8', 'COM9', 'LPT1', 'LPT2', 'LPT3', 'LPT4', 'LPT5', 'LPT6', 'LPT7', 'LPT8', 'LPT9', (and any of those with an extension)`
* Illegal characters in names:
`'\\', '<','>', ':', '\"', '|', '?', '*', '/', leading '-', trailing '.' `
 
.PARAMETER XSdsDateFormat
    Date time format (cf. [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) & [leettime.de](http://leettime.de/))
 
.PARAMETER XSdsAuthToken
    Authentication token
 
.PARAMETER Connection
    Object of Class ARAHConnection, stores the authentication Token and the API Base-URL
 
.EXAMPLE
    PS C:\> Set-DracoonARNodeRoom -Connection $connection
 
    ### Description:
Creates a new room at the provided parent node.
Creation of top level rooms provided.
 
### Precondition:
User has <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>&#128275; manage</span> permissions in the parent room.
 
### Postcondition:
A new room is created.
 
### Further Information:
Rooms may only have other rooms as parent.
Rooms on top level do **NOT** have any parent.
Rooms may have rooms as children on n hierarchy levels.
If permission inheritance is disabled, there **MUST** be at least one admin user / group (with neither the group nor the user having an expiration date).
 
Notes are limited to **255** characters.
 
Provided (or default) classification is taken from room when file gets uploaded without any classification.
 
### Node naming convention:
* Node (room, folder, file) names are limited to **150** characters.
* Illegal names:
`'CON', 'PRN', 'AUX', 'NUL', 'COM1', 'COM2', 'COM3', 'COM4', 'COM5', 'COM6', 'COM7', 'COM8', 'COM9', 'LPT1', 'LPT2', 'LPT3', 'LPT4', 'LPT5', 'LPT6', 'LPT7', 'LPT8', 'LPT9', (and any of those with an extension)`
* Illegal characters in names:
`'\\', '<','>', ':', '\"', '|', '?', '*', '/', leading '-', trailing '.' `
 
.LINK
    <unknown>
#>

    [CmdletBinding(DefaultParameterSetName = 'default')]
    param (
        [Parameter(ValueFromPipelineByPropertyName = $true, ParameterSetName = 'default')]
        [object]
        $XSdsDateFormat,

        [Parameter(ValueFromPipelineByPropertyName = $true, ParameterSetName = 'default')]
        [string]
        $XSdsAuthToken,

        [Parameter(Mandatory = $true, ValueFromPipelineByPropertyName = $true, ParameterSetName = 'default')]
        [object]
        $Connection
    )
    process {
        $__mapping = @{
            'XSdsDateFormat' = 'X-Sds-Date-Format'
            'XSdsAuthToken' = 'X-Sds-Auth-Token'
            'Connection' = 'Connection'
        }
        $__body = $PSBoundParameters | ConvertTo-DracoonARHashtable -Include @() -Mapping $__mapping
        $__query = $PSBoundParameters | ConvertTo-DracoonARHashtable -Include @() -Mapping $__mapping
        $__header = $PSBoundParameters | ConvertTo-DracoonARHashtable -Include @('XSdsDateFormat','XSdsAuthToken') -Mapping $__mapping
        $__path = 'nodes/rooms'
        Invoke-DracoonAPI -Path $__path -Method post -Body $__body -Query $__query -Header $__header -Connection $Connection
    }
}