Public/Get-IAMCoreIdentity.ps1

<#
.SYNOPSIS
    Gets CoreIdentity objects from the IAM Core API.

.DESCRIPTION
    This function retrieves CoreIdentity objects from the IAM Core API.

.EXAMPLE
    Get-IAMCoreIdentity
#>

function Get-IAMCoreIdentity {
    [CmdletBinding(DefaultParameterSetName = "Default")]
    param (
        [Parameter(Mandatory = $false, ParameterSetName = "Default")]
        [int] $PageSize = 10000,

        [Parameter(Mandatory = $true, ParameterSetName = "Single", ValueFromPipelineByPropertyName = $true)]
        [ValidatePattern("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$", ErrorMessage = "Id must be a valid GUID.")] # Is a guid connector object id
        [string] $Id
    )

    process {
        if ($PSCmdlet.ParameterSetName -eq "Single") {
            Get-IAMCoreObject -ObjectType "CoreIdentity" -Id $Id
        }
        else {
            Get-IAMCoreObject -ObjectType "CoreIdentity" -PageSize $PageSize
        }
    }
}