UiPathOrch.psd1

#
# Module manifest for module 'UiPathOrch'
#
# Generated by: Yoshifumi Tsuda
#
# Generated on: 2023/08/28
#

@{

# Script module or binary module file associated with this manifest.
RootModule = 'UiPathOrch.dll'

# Version number of this module.
ModuleVersion = '1.21.1'

# Supported PSEditions
CompatiblePSEditions = @('Core')

# ID used to uniquely identify this module
GUID = '7098583d-d092-4fe9-bf36-a652e7a51efb'

# Author of this module
Author = 'Yoshifumi Tsuda'

# Company or vendor of this module
CompanyName = 'UiPath'

# Copyright statement for this module
Copyright = 'Copyright 2023-2026 UiPath'

# Description of the functionality provided by this module
Description = 'Open-source PSDrives and cmdlets for managing UiPath Orchestrator. Not an official abbreviation of, or part of, the Orchestrator product. 💡 First time? Run: Get-OrchHelp'

# Minimum version of the PowerShell engine required by this module
PowerShellVersion = '7.4.2'

# Name of the PowerShell host required by this module
# PowerShellHostName = ''

# Minimum version of the PowerShell host required by this module
# PowerShellHostVersion = ''

# Minimum version of Microsoft .NET Framework required by this module. This prerequisite is valid for the PowerShell Desktop edition only.
# DotNetFrameworkVersion = ''

# Minimum version of the common language runtime (CLR) required by this module. This prerequisite is valid for the PowerShell Desktop edition only.
# ClrVersion = ''

# Processor architecture (None, X86, Amd64) required by this module
# ProcessorArchitecture = ''

# Modules that must be imported into the global environment prior to importing this module
# RequiredModules = @()

# Assemblies that must be loaded prior to importing this module
# RequiredAssemblies = @()

# Script files (.ps1) that are run in the caller's environment prior to importing this module.
# ScriptsToProcess = @()

# Type files (.ps1xml) to be loaded when importing this module
# TypesToProcess = @()

# Format files (.ps1xml) to be loaded when importing this module
FormatsToProcess = @('UiPathOrch.Format.ps1xml')

# Modules to import as nested modules of the module specified in RootModule/ModuleToProcess
NestedModules = @('UiPathOrch.psm1')

# Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export.
FunctionsToExport = @(
'Enable-OrchUserAttended',
'Disable-OrchUserAttended',
'Enable-OrchPersonalWorkspace',
'Disable-OrchPersonalWorkspace',
'Find-OrchFolderNoUserAssigned',
'Get-OrchJobVideo',
'Format-OrchQueueItem',
'Format-OrchTestDataQueueItem'
)

# Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export.
CmdletsToExport = @(
'Import-OrchConfig',
'New-OrchPSDrive',
'Invoke-OrchApi',
'Switch-OrchCurrentUser',
'Get-OrchPSDrive',
'Get-OrchProductVersion',
'Resolve-OrchAuthError',

'Get-OrchLibrary',
'Get-OrchLibraryVersion',
'Get-OrchLibraryDependency',
'Remove-OrchLibrary',
'Import-OrchLibrary',
'Export-OrchLibrary',
'Copy-OrchLibrary',

'Get-OrchPackage',
'Copy-OrchPackage',
'Get-OrchPackageVersion',
'Get-OrchPackageDependency',
'Get-OrchPackageWorkflow',
'Remove-OrchPackage',
'Import-OrchPackage',
'Export-OrchPackage',

'Get-OrchJob',
'Start-OrchJob',
'Stop-OrchJob',
'Wait-OrchJob',
'Restart-OrchJob',
'Resume-OrchJob',
'Open-OrchJob',

'Get-OrchLog',
'Measure-OrchLog',
'Get-OrchAuditLog',

'Get-OrchJobMedia',
'Export-OrchJobMedia',
'Remove-OrchJobMedia',

'Get-OrchProcess',
'Get-OrchProcessDetail',
'Get-OrchProcessDependency',
'Get-OrchProcessWorkflow',
'New-OrchProcess',
'Update-OrchProcess',
'Copy-OrchProcess',
'Compare-OrchProcess',
'Remove-OrchProcess',
'Edit-OrchProcess',
'Update-OrchProcessVersion',
'Reset-OrchProcessVersion',
'Get-OrchProcessRequirement',

'Get-OrchRobot',

'Get-OrchUser',
'Compare-OrchUser',
'Get-OrchUserDetail',
'Get-OrchUserPrivilege',
'Add-OrchUser',
'Update-OrchUser',
'Copy-OrchUser',
'Remove-OrchUser',
'Remove-OrchRoleFromUser',
'Get-OrchCurrentUser',
'Update-OrchCurrentUserURPassword',
'Find-OrchAccountReference',

'Get-OrchLicenseNamedUser',
'Get-OrchLicenseRuntime',
'Enable-OrchLicenseRuntime',
'Disable-OrchLicenseRuntime',

'Get-PmAuditLog',
'Get-PmAuthenticationSetting',

'Get-PmLicense',
'Get-PmLicenseAllocation',
'Set-PmLicenseAllocation',
'Get-PmLicenseProductAllocation',
'Get-PmLicenseServiceAllocation',
'Get-PmLicenseInventory',
'Get-PmLicenseContract',

'Get-PmGroupLicense',
'Add-PmGroupLicense',
'Remove-PmGroupLicense',
'Remove-PmGroupLicenseAllocation',
'Remove-PmLicensedGroup',

'Get-PmUserLicense',
'Add-PmUserLicense',
'Remove-PmUserLicense',
'Remove-PmLicensedUser',

'Get-OrchClassicRobot',
'Get-OrchClassicEnvironment',

'Get-OrchUserSession',
'Get-OrchMachineSession',
'Get-OrchUnattendedSession',
'Clear-OrchInactiveSession',

'Get-OrchTask',
'Get-OrchTaskAcrossFolder',
'Set-OrchTask',
'Remove-OrchTask',

'Enable-OrchMaintenanceMode',
'Disable-OrchMaintenanceMode',

'Get-OrchJobStats',
'Get-OrchLicenseStats',

'Get-OrchRole',
'Set-OrchRole',
'Remove-OrchRole',
'Copy-OrchRole',
'Compare-OrchRole',

'Get-OrchCalendar',
'Remove-OrchCalendar',
'Copy-OrchCalendar',
'Compare-OrchCalendar',

'Get-OrchCalendarDate',
'Add-OrchCalendarDate',
'Remove-OrchCalendarDate',

'Get-OrchPersonalWorkspace',
'Remove-OrchPersonalWorkspace',
'Get-OrchFolderUsage',

'Get-OrchFolderUser',
'Compare-OrchFolderUser',
'Add-OrchFolderUser',
'Copy-OrchFolderUser',
'Move-OrchFolderUser',
'Remove-OrchFolderUser',

'Add-OrchRoleToFolderUser',
'Remove-OrchRoleFromFolderUser',

'Get-OrchMachine',
'Update-OrchMachine',
'New-OrchMachine',
'Remove-OrchMachine',
'Copy-OrchMachine',
'Compare-OrchMachine',
'Get-OrchMachineClientSecretId',
'Add-OrchMachineClientSecret',
'Remove-OrchMachineClientSecret',

'Get-OrchFolderMachine',
'Compare-OrchFolderMachine',
'Add-OrchFolderMachine',
'Copy-OrchFolderMachine',
'Remove-OrchFolderMachine',
'Enable-OrchFolderMachineInherit',
'Disable-OrchFolderMachineInherit',

'Get-OrchFolderMachineAccountMapping',
'Enable-OrchFolderMachineAccountMapping',
'Disable-OrchFolderMachineAccountMapping',

'Get-OrchAsset',
'Set-OrchAsset',
'Copy-OrchAsset',
'Compare-OrchAsset',
'Move-OrchAsset',
'Remove-OrchAsset',

'Set-OrchCredentialAsset',
'Get-OrchCredentialAsset',

'Set-OrchSecretAsset',
'Get-OrchSecretAsset',

'Remove-OrchAssetUserValue',

'Get-OrchCredentialStore',
'Copy-OrchCredentialStore',
'Compare-OrchCredentialStore',
'Update-OrchCredentialStore',
'Remove-OrchCredentialStore',

'Get-OrchAssetLink',
'Add-OrchAssetLink',
'Remove-OrchAssetLink',

'Get-OrchBucketLink',
'Add-OrchBucketLink',
'Remove-OrchBucketLink',

'Get-OrchQueueLink',
'Add-OrchQueueLink',
'Remove-OrchQueueLink',

'Get-OrchTrigger',
'Get-OrchTriggerDetail',
'New-OrchTrigger',
'Update-OrchTrigger',
'Remove-OrchTrigger',
'Copy-OrchTrigger',
'Compare-OrchTrigger',
'Enable-OrchTrigger',
'Disable-OrchTrigger',
'Test-OrchTrigger',

'Get-OrchApiTrigger',
'New-OrchApiTrigger',
'Update-OrchApiTrigger',
'Remove-OrchApiTrigger',
'Copy-OrchApiTrigger',
'Compare-OrchApiTrigger',
'Enable-OrchApiTrigger',
'Disable-OrchApiTrigger',

'Get-OrchEventTrigger',
'Compare-OrchEventTrigger',
'Remove-OrchEventTrigger',
'Enable-OrchEventTrigger',
'Disable-OrchEventTrigger',

'Get-OrchQueue',
'New-OrchQueue',
'Update-OrchQueue',
'Copy-OrchQueue',
'Compare-OrchQueue',
'Move-OrchQueue',
'Remove-OrchQueue',

'Get-OrchQueueItem',
'Import-OrchQueueItem',
'Redo-OrchQueueItem',
'Copy-OrchQueueItem',
'Remove-OrchQueueItem',

'Get-OrchTestSet',
'Compare-OrchTestSet',
'Get-OrchTestSetDetail',
'New-OrchTestSet',
'Copy-OrchTestSet',
'Remove-OrchTestSet',
'Start-OrchTestSet',

'Get-OrchTestCase',
'Get-OrchTestCaseExecution',
'Get-OrchTestCaseAssertion',
'Remove-OrchTestCase',

'Get-OrchTestSetExecution',
'Stop-OrchTestSetExecution',

'Get-OrchTestSetSchedule',
'Compare-OrchTestSetSchedule',
'New-OrchTestSetSchedule',
'Update-OrchTestSetSchedule',
'Copy-OrchTestSetSchedule',
'Remove-OrchTestSetSchedule',
'Enable-OrchTestSetSchedule',
'Disable-OrchTestSetSchedule',

'Get-OrchTestDataQueue',
'Compare-OrchTestDataQueue',
'New-OrchTestDataQueue',
'Copy-OrchTestDataQueue',
'Remove-OrchTestDataQueue',

'Get-OrchTestDataQueueItem',
'Import-OrchTestDataQueueItem',
'Reset-OrchTestDataQueueItem',

'Get-OrchAlert',

'Get-OrchBucket',
'New-OrchBucket',
'Copy-OrchBucket',
'Compare-OrchBucket',
'Move-OrchBucket',
'Update-OrchBucket',
'Remove-OrchBucket',

'Get-OrchBucketItem',
'Copy-OrchBucketItem',
'Export-OrchBucketItem',
'Import-OrchBucketItem',
'Remove-OrchBucketItem',

'Get-OrchWebhook',
'New-OrchWebhook',
'Copy-OrchWebhook',
'Compare-OrchWebhook',
'Update-OrchWebhook',
'Remove-OrchWebhook',
'Enable-OrchWebhook',
'Disable-OrchWebhook',
'Get-OrchWebhookEventType',
'Test-OrchWebhook',

'Get-OrchSetting',
'Set-OrchSetting',
'Get-OrchExecutionSetting',
'Get-OrchWebSetting',
'Get-OrchAuthenticationSetting',
'Get-OrchActivitySetting',
'Get-OrchConnectionString',
'Get-OrchLicense',
'Get-OrchUpdateSetting',

'Get-OrchActionCatalog',
'Compare-OrchActionCatalog',
'New-OrchActionCatalog',
'Copy-OrchActionCatalog',
'Remove-OrchActionCatalog',

'Search-OrchDirectory',
'Search-PmDirectory',
'Resolve-PmDirectoryNameBulk',

'Get-PmUser',
'Update-PmUser',
'Remove-PmUser',
'New-PmUser',
'Copy-PmUser',

'Get-PmRobotAccount',
'New-PmRobotAccount',
'Set-PmRobotAccount',
'Copy-PmRobotAccount',
'Remove-PmRobotAccount',

'Get-PmUserPreference',
'Set-PmUserPreference',
'Copy-PmUserPreference',
'Get-PmNotificationSubscription',
'Set-PmNotificationSubscription',
'Copy-PmNotificationSubscription',

'Get-PmGroup',
'New-PmGroup',
'Copy-PmGroup',
'Remove-PmGroup',

'Get-PmGroupMember',
'Add-PmGroupMember',
'Move-PmGroupMember',
'Remove-PmGroupMember',

'Get-PmExternalApiResource',
'Get-PmExternalApplication',
'Copy-PmExternalApplication',
'New-PmExternalApplication',
'Test-PmExternalApplication',
'Remove-PmExternalApplication',

'Get-PmAccessAllowedMember',

'Get-DuRole',
'Get-DuDocumentType',
'Get-DuClassifier',
'Get-DuExtractor',

'Get-DuUser',
'Add-DuUser',
'Remove-DuRoleFromDuUser',

'Get-TmConfiguration',
'Get-TmProjectSetting',
'Get-TmProjectPermission',
'Get-TmServerInfo',

'Get-TmRequirement',
'Remove-TmRequirement',

'Get-TmTestCase',
'Remove-TmTestCase',

'Get-TmTestSet',
'Remove-TmTestSet',

'Get-TmTestExecution',

'Get-OrchHelp',
'Clear-OrchCache',
'Get-OrchConfigPath',
'Edit-OrchConfig',
'Set-OrchLocation',
'Get-OrchLogLocation',
'Open-OrchLogLocation',

'New-OrchUserMappingCsv',
'Test-OrchUserMappingCsv'
)

# Variables to export from this module
VariablesToExport = @()

# Aliases to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no aliases to export.
AliasesToExport = @('!Show-OrchGuide')

# DSC resources to export from this module
# DscResourcesToExport = @()

# List of all modules packaged with this module
# ModuleList = @()

# List of all files packaged with this module
# FileList = @()

# Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell.
PrivateData = @{

    PSData = @{

        # Tags applied to this module. These help with module discovery in online galleries.
        Tags = @('UiPath', 'Orchestrator', 'RPA', 'Automation', 'PSDrive', 'PSProvider', 'Cloud', 'OnPremises')

        # A URL to the license for this module.
        LicenseUri = 'https://github.com/UiPath-Services/UiPathOrch/blob/master/LICENSE'

        # A URL to the main website for this project.
        ProjectUri = 'https://github.com/UiPath-Services/UiPathOrch'

        # A URL to an icon representing this module.
        # IconUri = ''

        # ReleaseNotes of this module.
        # Single-quoted here-string (@'...'@) so apostrophes (e.g. "task's") inside the
        # body don't have to be doubled. The closing '@ MUST be at column 0 (no leading
        # whitespace) — that's the only termination rule.
        ReleaseNotes = @'
1.21.1
 
Removed: Import-OrchQueueItem -IncludeProcessedItems (added in 1.21.0). It created the rows as New,
which its name did not say. To queue finished items again, remove the @Status column from the
exported file (or set a row's @Status to New) and import it.
 
Fixed: Import-OrchQueueItem reads the web's Deadline and Postpone columns (the item's due and
postpone dates) as the web does; they were stored as SpecificContent. Get-OrchQueueItem -ExportCsv
writes them in place of @DueDate/@DeferDate, so moved items keep their dates, and writes nothing
for a queue whose read failed part-way instead of a file that looks complete.
 
1.21.0
 
Added: Get-OrchQueueItem -ExportCsv writes queue items in any status to CSV, one file per queue: the
web Upload Items columns (Reference, Priority, one column per SpecificContent key) followed by the
item's history in '@' columns (@Status, @Output, @Robot, processing times, ...). Import-OrchQueueItem
reads such a file back, keeps the '@' columns out of SpecificContent and imports only the New rows
unless -IncludeProcessedItems is given.
 
Added: Import-OrchQueueItem -DynamicTyping, as the web's Dynamic typing check box (two web defects
not reproduced), and delimiter detection (comma, tab, |, ;).
 
Changed: Import-OrchQueueItem was checked file by file against the web Upload Items. It sends 1,000
rows per request (AllOrNothing stays one request) and reports the rows sent and not sent if a request
fails; rejects rows with fewer fields than the header, as Import-OrchTestDataQueueItem now does too;
renames repeated column names as the web does; accepts a single-column CSV.
 
Fixed: line breaks inside quoted values are kept as written; spaces around a Priority value are
ignored; CSV error row numbers no longer shift after a rejected row; a large BulkAddQueueItems request
waits up to 30 minutes instead of 100 seconds; Remove-OrchQueueItem -Id with many ids looks them up
100 per request instead of one by one.
 
1.20.0
 
Added: Wait-OrchJob waits until jobs end, and Start-OrchJob -Wait starts and waits. Jobs come from
the pipeline, -Id or -BatchExecutionKey; -Timeout leaves the jobs still running as errors.
 
Added: Measure-OrchLog counts robot logs per folder with Get-OrchLog's filters, without fetching
them and without the 10,000 cap of @odata.count on Automation Cloud.
 
Added: Find-OrchAccountReference finds where a Windows account is used -- users, robots,
credential assets, per-user asset values and the triggers on a matched user's robot -- for
example before its password changes.
 
Added: a user mapping CSV moves a tenant's users onto other users of the same tenant, for a domain
change or a switch of identity provider (New-OrchUserMappingCsv -SourceDomain/-DestinationDomain,
then Copy-OrchUser and Copy-OrchFolderUser within one tenant).
 
Added: New-PmExternalApplication registers an external application; Test-PmExternalApplication
reviews registrations (secrets, scopes, redirect URLs) and tests a client-credentials sign-in.
 
Added: Start-OrchJob sets the Start Job dialog's options (-Priority, -StopStrategy, stop, kill and
alert times). The sign-in page names the server's edition and version, and a Scope refused for its
length says so with the server's limit.
 
Changed: the API version is read from /api/Status/Version, so OR.Settings is no longer needed or
warned about at mount. API triggers and Secret assets follow each server's web UI. License cmdlets
skip robot types an older server lacks. A 401 re-sign-in tries the refresh token before the browser.
 
Fixed: Get-OrchLog reads past 10,000 logs on Automation Cloud; -Machine and -WindowsIdentity with a
name that matches nothing return no logs, and -Machine finds machines not assigned to the folder.
Copy-OrchFolderUser -UserMappingCsv keeps the roles of a user already in the folder. Start-OrchJob
starts one job on 20.10 to 22.10. Two on-premises drives no longer share organization data.
Get-OrchFolderMachineAccountMapping works on 22.10 and later. Copy-Item copies test data queues on
standalone 24.10 and 25.10. Platform Management list cmdlets carry on past a drive without the
feature.
 
1.19.1
 
Fixed: triggers keep their robot assignment on on-premises servers and Automation Suite. 1.19.0
read it from an expanded trigger listing that only Automation Cloud fills, so there
Get-OrchTriggerDetail showed no robots, -ExportCsv wrote none and Copy-Item copied triggers without
them. Get-OrchTriggerDetail is back to one request per trigger.
 
Fixed: Update-OrchTrigger no longer clears a trigger's robot assignment, which any update did since
1.0.0.
 
Fixed: a 401 from a service other than Orchestrator (Identity, for the Pm cmdlets on 20.10) no
longer makes the whole drive fail until Import-OrchConfig.
 
Fixed: copying the same process twice in a session keeps its entry point.
 
Fixed on 20.10: exported trigger rows name their robots; a trigger priority is sent as Low / Normal
/ High; Copy-Item copies local-account folder users; Add-OrchFolderUser -Type User / Robot assigns
local accounts.
 
Changed: Get-OrchProcessDetail reads entry point paths from the listing, one request fewer per
process; Get-OrchTestSetDetail prints each folder as it arrives.
 
1.19.0
 
Added: Get-OrchProcessDependency and Get-OrchProcessWorkflow read the dependencies and the .xaml
files of the package a process runs -- the "Explore package" view, which Orchestrator has no
endpoint for, so the package is downloaded once and only the two lists are kept.
-Dependency takes wildcards: -Recurse -Dependency 'UiPath.UIAutomation*' names every process using
that activity package. Get-OrchPackageDependency, Get-OrchPackageWorkflow and
Get-OrchLibraryDependency ask the same of a feed package or a library.
 
Changed: Remove-OrchPackage names the processes that block a delete, after Orchestrator's own
"referred in active processes" refusal.
 
Changed: Get-OrchTriggerDetail reads a folder in one request (200 triggers: 401 requests and 25.6 s
became 1 and 0.32 s), and ExecutorRobots carries the robots' names. Get-OrchProcessDetail skips the
retention request when the release detail already has it (API 19+) and caches retention;
Get-OrchTestSetDetail fetches in parallel and caches. Rows from parallel reads appear as they
arrive instead of mostly at the end.
 
Changed: progress bars have a fixed noun label, with the destination inside the bar, and nested
bars are shown under the bar they belong to. Copy-Item's folder bar counts folders.
 
Fixed: one Ctrl+C stops Copy-Item, where it used to begin the next folder.
 
Fixed: tables grouped by Path no longer clip later rows to the width of a folder's first row.
 
1.18.0
 
Added: Set-PmLicenseAllocation allocates robot runtimes and consumable units to one tenant
(-AppTestRobot, -PlatformUnits, -ScreenPlayRuns, ..., or -Products @{ CODE = qty }). The API
replaces a service's whole allocation, so the cmdlet re-sends the tenant's current codes with the
requested ones overlaid; a code it cannot place in a service is reported, never guessed.
 
Added: Get-PmLicenseProductAllocation reports one tenant's allocation per product code, including
the codes at 0, and Get-PmLicenseServiceAllocation groups it by the service that grants each code
-- the codes one write re-sends together.
 
Added: New-OrchMachine and Update-OrchMachine can set every runtime slot the API models:
-AppTestSlots (the App Testing runtime Test Cloud application testing runs on), -HostingSlots,
-HeadlessSlots, -PerformanceTestSlots, -AgentSlots, -FunctionSlots, -AutomationCloudSlots and
-AutomationCloudTestAutomationSlots. The four newest are refused on an older server with a message
naming the version. Nothing else is pre-empted: probing a 21.10.4 server (Web API 13.0) showed the
inherited "introduced in" notes wrong in both directions.
 
Changed: when the machine PATCH endpoint answers "machineDto must not be null", naming nothing, a
warning beside the untouched error lists the properties the request set and the server's version.
 
Fixed: the Pm* license cmdlets work on Automation Suite, which their help denied.
 
Fixed: drive-scoped warnings quote their target, so a drive name's own colon no longer runs into
the one the sentence needs ("local:\:").
'@


        # Prerelease string of this module
        # Prerelease = ''

        # Flag to indicate whether the module requires explicit user acceptance for install/update/save
        # RequireLicenseAcceptance = $false

        # External dependent modules of this module
        # ExternalModuleDependencies = @()

    } # End of PSData hashtable

} # End of PrivateData hashtable

# HelpInfo URI of this module
# HelpInfoURI = ''

# Default prefix for commands exported from this module. Override the default prefix using Import-Module -Prefix.
# DefaultCommandPrefix = ''

}