Public/Targets/Update-SIASSHCAPublicKey.ps1

function Update-SIASSHCAPublicKey {
    <#
    .SYNOPSIS
        Rotates the SIA SSH CA key by generating a new version.
    .DESCRIPTION
        Generates a new SSH CA key version. The previous version keeps
        signing sessions until you deactivate it with Disable-SIASSHCAPublicKey,
        which lets you redeploy the new public key to targets before cutting
        over.
    .EXAMPLE
        Update-SIASSHCAPublicKey

        Generates a new SSH CA key version.
    .INPUTS
        None.
    .OUTPUTS
        psSIA.SSHCAPublicKey
    .LINK
        https://api-docs.cyberark.com/secure-infra-access/docs/sia-ssh-public-keys-api
    #>

    [CmdletBinding(SupportsShouldProcess, ConfirmImpact = 'High')]
    [OutputType('psSIA.SSHCAPublicKey')]
    param()

    if ($PSCmdlet.ShouldProcess('SIA SSH CA key', 'Generate new version')) {
        Invoke-SIARequest -Method POST -Path '/api/public-keys/rotation/generate-new' |
            ConvertFrom-SIAResponse -TypeName 'psSIA.SSHCAPublicKey'
    }
}