0.62.0 -- 2026-05-15
Breaking Changes
-
RestSharp upgraded from 110.2.0 to 112.0.0. One confirmed breaking change plus one behaviour difference that may affect some environments:
-
MaxTimeout = 0now means zero timeout, not "no timeout" — affects all users. In RestSharp 110, settingMaxTimeout = 0onRestClientOptionswas treated as "wait indefinitely". In RestSharp 112,MaxTimeoutis deprecated and writing it maps to the newTimeoutproperty asTimeSpan.FromMilliseconds(0)—TimeSpan.Zero— whichHttpClientinterprets as an immediate cancellation. Every request threwTaskCanceledExceptionwith no useful diagnostic. The library now defaults toTimeSpan.FromSeconds(100)(matchingHttpClient's own default) when no explicit timeout is provided. -
TLS certificate validation behaviour may differ — affects environments with self-signed certs. If your Secret Server endpoint uses a certificate not trusted by the OS certificate store, requests may fail with an empty error response. A new
-SkipCertificateCheckswitch has been added toNew-TssSessionto handle this (see New Stuff below). Environments whose certificates are trusted by the OS do not need to change anything.
Action required if you see empty or
TaskCanceledExceptionauthentication errors: add-SkipCertificateCheckto yourNew-TssSessioncall if using a self-signed certificate, or check that your server URL is reachable:$session = New-TssSession -SecretServer https://vault.example.com -Credential $cred -SkipCertificateCheck
The flag is stored on the session object and applied automatically to all subsequent API calls — no other changes are needed. Fixes #442.
-
Bug Fixes
- REST response handling: all functions now strip unknown properties from API responses before casting to typed objects, preventing
Cannot convert valueerrors when Secret Server Cloud adds new response fields not yet reflected in module class definitions. Unknown properties are reported viaWrite-Verbose. Fixes #392, #398, #400, #406, #407, #408, #409, #410, #419. Get-TssSecretHeartbeatStatus- fix enum cast failure where the API returns a string status like"Pending";Thycotic.PowerShell.Secrets.HeartbeatStatus.Statuswas self-typed instead of theSecretHeartbeatStatusenum. Fixes #433.Search-TssConfigurationBackupLog- fixUnable to find type [Thycotic.PowerShell.Configuration.DbBackupLog]error. The C# class file was namedBackupLogwhile the cmdlet'sOutputTypeand cast referencedDbBackupLog. Renamed the class (and its file) to match the cmdlet's contract. Fixes #431.New-TssSession-OtpCodeparameter is now[string]instead of[int]. OTP codes with leading zeros (e.g.012345) were being truncated by the integer coercion before reaching the API. Existing scripts that pass a numeric literal continue to work via PowerShell's implicit conversion. Fixes #316.Get-TssConfiguration- fixCannot convert value ... to type Thycotic.PowerShell.Configuration.Generalcast failure on SS 12.0. The outer[General]cast was applied to a response whose nested sub-objects (e.g.email,applicationSettings) still contained SS 12.0 fields not modeled by the C# classes. The cmdlet now constructs theGeneralresult by drilling into each known sub-object and runningFilterTssResponseagainst it before assignment, so unknown nested fields are stripped instead of breaking the cast. Also handles the SS 12.0 rename of theemailSettingsresponse property toemail. Fixes #432.New-TssSession- authentication failures that return no error detail (e.g. TLS certificate rejection) now surface a descriptive message. When the certificate is likely the cause, the error text explicitly suggests adding-SkipCertificateCheck. Fixes #442.Get-TssRpcPasswordType- fixCannot convert value ... to type Thycotic.PowerShell.Rpc.PasswordTypeFieldcast failure on SS 12.0. The outer[PasswordType]cast left the nestedfieldsarray as untypedPSCustomObjectelements, which PowerShell could not coerce. The cmdlet now pre-coerces eachfieldselement throughFilterTssResponsebefore the outer cast. Fixes #440.Get-TssDirectoryServiceSyncStatus- fixCannot convert value ... to type Thycotic.PowerShell.DirectoryServices.DomainSyncStatuscast failure on SS 12.0. The outer[SyncStatus]cast left the nesteddomainStatusarray as untypedPSCustomObjectelements that PowerShell could not coerce. The cmdlet now pre-coerces eachdomainStatuselement throughFilterTssResponsebefore the outer cast. Same pattern as #440. Fixes #441.
New Stuff
New-TssSession- new-SkipCertificateCheckswitch parameter. When specified, the TLS certificate of the Secret Server endpoint is not validated. Equivalent toInvoke-RestMethod -SkipCertificateCheck. The setting is persisted on theTssSessionobject and automatically applied to all API calls made with that session — callers do not need to pass the flag individually to each cmdlet. Intended for on-premises environments using self-signed certificates. Fixes #442.FilterTssResponseparts utility — centralised helper called by all functions to filter and verbose-log unknown response properties before type cast.- Bundled Secret Server SDK CLI (
src/bin/ClientSdk/tss.exe) updated from 1.0.0.0 to 1.6.1. Fixes #382.
General Updates
Tests
- None