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.11.7' # 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', 'Remove-OrchLibrary', 'Import-OrchLibrary', 'Export-OrchLibrary', 'Copy-OrchLibrary', 'Get-OrchPackage', 'Copy-OrchPackage', 'Get-OrchPackageVersion', 'Remove-OrchPackage', 'Import-OrchPackage', 'Export-OrchPackage', 'Get-OrchJob', 'Start-OrchJob', 'Stop-OrchJob', 'Restart-OrchJob', 'Resume-OrchJob', 'Open-OrchJob', 'Get-OrchLog', 'Get-OrchAuditLog', 'Get-OrchJobMedia', 'Export-OrchJobMedia', 'Remove-OrchJobMedia', 'Get-OrchProcess', 'Get-OrchProcessDetail', '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', 'Get-OrchLicenseNamedUser', 'Get-OrchLicenseRuntime', 'Enable-OrchLicenseRuntime', 'Disable-OrchLicenseRuntime', 'Get-PmAuditLog', 'Get-PmAuthenticationSetting', 'Get-PmLicense', 'Get-PmLicenseAllocation', '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', '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.11.7 Added: Invoke-OrchApi -Uri now tab-completes the known API endpoints -- 873 of them, from a catalog generated out of UiPath's swagger documents (Orchestrator, Identity, Portal, Test Manager, Document Understanding, AI Center), with each endpoint's HTTP verbs and summary in the tooltip. The candidates are filtered to the target tenant: an Orchestrator endpoint is offered only if the tenant's Web API version actually has it, so an old on-prem tenant is never shown an endpoint it cannot serve. -Identity / -Portal select their own endpoint sets and -Method narrows to the endpoints serving that verb. Ids the drive context knows are substituted into the completed URI -- {partitionGlobalId}, and {projectId} when the location is a Document Understanding or Test Manager project -- so the completion is ready to send. An id that cannot be resolved without an API call is left as its placeholder, with the tooltip naming the -Path that would fill it; completion never triggers a sign-in. Added: Invoke-OrchApi now runs from a Document Understanding or Test Manager drive, which it used to reject. A DU/TM drive is a view onto the same tenant, so the call runs against its parent Orchestrator drive's authentication and base URLs, with the project the location points at supplying {projectId}: cd Orch1Tm:\MyProject, then Invoke-OrchApi -Uri '/testmanager_/api/v2/{projectId}/testcases'. Orchestrator, Identity and Portal endpoints remain reachable from there too. Placeholders are filled by the cmdlet as well as by tab completion, so a template pasted from the swagger docs runs as written, and a {projectId} the context cannot supply is refused with the -Path that would supply it rather than sent as a literal. Fixed: Get-PmGroupLicense -ExportCsv produced a CSV that could not be re-imported. A dangling license allocation -- a group deleted from the directory that still holds a bundle -- comes back with an empty name, and was exported as a row with an empty GroupName, which Add-PmGroupLicense then refused ("Cannot bind argument to parameter 'GroupName' because it is an empty string"). One such allocation broke the whole export/import round trip. Orphans are now left out of the export, as they already were for users; Get-PmGroupLicense still emits them as objects. Fixed: New-PSDrive -PSProvider UiPathOrchDu / UiPathOrchTm crashed with an InvalidCastException, so the configuration file was the only way a Document Understanding or Test Manager drive could exist. The provider now builds its typed drive from the one the engine passes. A DU/TM drive also links to its parent Orchestrator drive regardless of which provider PowerShell initialized first (the parent is resolved by name on first use), and a drive whose parent is genuinely absent now reports that instead of throwing a NullReferenceException. Fixed: Enable-OrchUserAttended, Disable-OrchUserAttended, Enable-OrchPersonalWorkspace and Disable-OrchPersonalWorkspace could not be invoked at all -- every call failed with "Multiple ambiguous overloads found for .ctor", their -UserName / -Path tab completion fell back to file-system paths, and Get-Help on them failed. These four are PowerShell functions rather than compiled cmdlets, and their [ArgumentCompleter([...])] attributes still named a completer shape that no longer exists (a generic completer with a type argument that had been removed). A compiled typeof() would not have built; a PowerShell type literal resolves only at run time, so the break shipped unnoticed. The attributes now name the real completers, and a unit test checks every completer a shipped function names against the assembly. Fixed: tab completion on a Document Understanding or Test Manager drive offered unusable paths. `cd `<Ctrl+Space> at Orch1Du:\ completed to ".\Orch1Du:\MyProject" -- a ".\" prefix glued onto the full drive-qualified path -- instead of ".\MyProject". The DU/TM providers had taken the drive-root re-rooting that PSParentPath and the dir "Directory:" header need, without the path relativization that has to accompany it; both halves now live in one shared place that all three providers call. 1.11.6 Fixed: Per-user asset values now honor folder access granted through an assigned directory group or tenant role. Set-OrchAsset, Set-OrchCredentialAsset, Set-OrchSecretAsset and Copy-OrchAsset used to require the -UserName account to be directly assigned to the target folder, and rejected it as "not assigned" (or dropped the copied per-user value) whenever the account only reached the folder through a group or a tenant role. The client-side folder-scope check has been removed: the cmdlets now resolve -UserName against the tenant user list and let Orchestrator decide, which accepts a per-user value for any existing tenant user regardless of direct folder assignment. A directory user who is not yet a tenant user still cannot be referenced -- add them to the destination first with Add-OrchFolderUser / Copy-OrchFolderUser (as you would copy a package before a process), then re-run. Changed: Set-OrchCredentialAsset now warns instead of silently skipping when a new credential asset is requested without a password. A credential asset cannot exist without a secret (a password, or an ExternalName that references a credential store), so a create request that supplies neither is skipped with a clear warning instead of no output at all, which also surfaces a mistyped or since-deleted asset name in a bulk-update CSV. Updating an existing credential is unchanged. 1.11.5 Fixed: Get-PmGroupLicense -ExpandAllocation no longer stops at 50 members. The Automation Cloud license allocations endpoint now caps each page at 50, and the cmdlet was treating that short page as the last one, so a group with more than 50 licensed members was truncated to 50 (a group with 50 or fewer looked fine, which made it seem intermittent); it now pages through all of them. The Automation-Cloud-only licensing cmdlets (Get-PmGroupLicense / Get-PmUserLicense / Get-PmLicense / Get-PmLicenseAllocation / Get-PmLicenseContract / Get-PmLicenseInventory) also report a clear "available only on Automation Cloud" message when run against on-prem Orchestrator, instead of a cryptic "'<' is an invalid start of a value" JSON parse error. Subfolders that a solution deploy creates inside a personal workspace are visible again to dir / cd / Get-Item / wildcard resolution / Remove-Item — Orchestrator stopped returning them from /odata/Folders, so the folder catalog now grafts them in from /api/Folders/GetAllForCurrentUser. That navigation endpoint is paged (take is capped at 1000), so it is now read page by page until its Count total is reached — a tenant with more folders than one page no longer drops the tail. And under -Recurse a personal workspace's subfolders now group right after the workspace instead of sorting in among every other folder by name — for dir -Recurse and for the entity cmdlets that walk EnumFolders (Get-OrchAsset -Recurse, etc.), so e.g. a workspace subfolder's assets list right after the workspace's own. 1.11.4 Added: New-OrchUserMappingCsv now also enumerates robot accounts — robot rows resolve against the destination tenant user list (same-named robots auto-fill, renamed ones stay empty for manual mapping), carry "robot" in the SourceSource column, and the CSV lists directory users first, then robots. Test-OrchUserMappingCsv checks tenant-user reachability first (which validates robot rows correctly), reports directory-only entries once as an aggregated Pending warning instead of per-row noise, and shows a per-entry progress bar. Fixed: folder-assignment checks and listings now read the union of GetUsersForFolder's includeInherited true/false forms — in one customer Automation Cloud environment the true form omitted a directly-assigned robot account, so the asset copy dropped its per-user values as "not assigned" and skipped per-user-only assets entirely; Set-OrchAsset / Set-OrchCredentialAsset / Set-OrchSecretAsset -UserName, name completion, and Get-OrchFolderUser -IncludeInherited read the same view and are all fixed by the union. User-mapping CSV lookups are no longer case-sensitive on SourceUserName, and the "not assigned" drop warning's example command now uses the source user name. Cmdlets that need an endpoint the connected Orchestrator predates now report that instead of a bare Not Found, and every Orchestrator-version gate now carries live measurements (20.10.16 through 25.10.2 plus Automation Cloud). 1.11.3 Added: Test-OrchUserMappingCsv now also verifies each DestinationUserName is reachable as a destination tenant user, not just resolvable in the destination directory — a mapping that only resolved at directory level validated clean and then dropped every per-user asset value at copy time; such entries now warn up front. Asset copies now end with a one-line drop summary listing the distinct users / machines that failed to resolve, even after per-value warnings hit the throttle; the "does not have user with Name" warning is throttled through the same budget and its users are included in the summary. Full release notes: https://github.com/UiPath-Services/UiPathOrch/blob/master/CHANGELOG.md '@ # 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 = '' } |