New-FilesHolidayCalendar

Create Holiday Calendar.

Syntax

New-FilesHolidayCalendar -Definition <System.Collections.IDictionary> -Name <System.String> [-Connection <FilesCom.PowerShell.FilesConnection>] [-WorkspaceScope <System.Int64>] [-NoWorkspaceScope] [-WhatIf] [-Confirm] [<CommonParameters>]

Description

Create Holiday Calendar.

The command supports -WhatIf, which describes the change without sending it to Files.com, and -Confirm, which asks before sending it.

Examples

Example 1: Create Holiday Calendar

New-FilesHolidayCalendar -Definition @{ months = @{ '0' = @(@{ name = 'Good Friday'; function = 'easter(year)'; function_modifier = -2 }); '1' = @(@{ name = 'New Year''s Day'; mday = 1; observed = 'to_weekday_if_weekend(date)' }, @{ name = 'Third Monday'; week = 3; wday = 1 }); '11' = @(@{ name = 'Thanksgiving'; week = 4; wday = 4 }); '12' = @(@{ name = 'Christmas Eve Early Close'; mday = 24; start_time = '13:00'; end_time = '17:00'; year_ranges = @{ from = 2026 } }) } } -Name 'Company Holidays'

Writes the holiday calendar returned.

Example 2: Preview the change

New-FilesHolidayCalendar -Definition @{ months = @{ '0' = @(@{ name = 'Good Friday'; function = 'easter(year)'; function_modifier = -2 }); '1' = @(@{ name = 'New Year''s Day'; mday = 1; observed = 'to_weekday_if_weekend(date)' }, @{ name = 'Third Monday'; week = 3; wday = 1 }); '11' = @(@{ name = 'Thanksgiving'; week = 4; wday = 4 }); '12' = @(@{ name = 'Christmas Eve Early Close'; mday = 24; start_time = '13:00'; end_time = '17:00'; year_ranges = @{ from = 2026 } }) } } -Name 'Company Holidays' -WhatIf

Describes the change without sending anything to Files.com.

Parameters

-Definition

Holiday rules for the calendar. Give a hashtable or PSCustomObject; keys keep their case and values their types.

  • Type: System.Collections.IDictionary
  • Parameter sets: (All) (required)

-Name

Holiday Calendar name.

  • Type: System.String
  • Parameter sets: (All) (required)

-Connection

The connection to use, from Connect-FilesAccount. Defaults to the connection of the -InputObject or -Continuation given, and otherwise to the current runspace's default connection.

  • Type: FilesCom.PowerShell.FilesConnection
  • Parameter sets: (All)

-WorkspaceScope

Runs this command's requests in this workspace, including workspace 0, instead of the connection's or, for an -InputObject, instead of the workspace the object was read in. The connection and the object are unchanged.

  • Type: System.Int64
  • Parameter sets: (All)

-NoWorkspaceScope

Runs this command's requests in no workspace, even if the connection has one. The connection itself is unchanged.

  • Type: System.Management.Automation.SwitchParameter
  • Parameter sets: (All)

-Confirm

Prompts you for confirmation before running the cmdlet.

  • Type: System.Management.Automation.SwitchParameter
  • Confirm impact: Medium. At the default $ConfirmPreference of High, the command runs without asking; -Confirm makes it ask before each change.

-WhatIf

Shows what the cmdlet would change without sending anything to Files.com.

  • Type: System.Management.Automation.SwitchParameter

Common Parameters

This cmdlet supports the PowerShell common parameters, such as -Verbose and -ErrorAction.

Inputs

None. The command takes no pipeline input.

Outputs

  • FilesCom.PowerShell.Models.HolidayCalendar: the holiday calendar as Files.com returned it.

Notes

Failures are written as error records with IDs such as Files.NotFound or Files.Authentication. Run Get-Help about_FilesCom for connections, paging, errors and previewing changes.