Public/Get-ADPObjectFromAPIObject.ps1

function Get-ADPObjectFromAPIObject {
    <#
    .SYNOPSIS
        Get a user's ADP Object from ADP API Object

    .DESCRIPTION
        Get a user's ADP Object from ADP API Object

    .PARAMETER ADPObject
        Object which holds the ADP Object

    .PARAMETER UserList
        List of all the users

    .EXAMPLE
        Input Object: ADP API Object
        Input Object: List of users
        Return Object: <ADP Object>

    .NOTES
        This is used when passing the full adp worker object from ADP's API

    .FUNCTIONALITY
        Powershell Language
    #>

    [CmdletBinding()]
    param (
        [Parameter( Mandatory = $true,
            Position = 0,
            ValueFromPipeline = $true
        )]
        $APIObject
    )

    return [PSCustomObject]@{
        associateOID      = ( $APIObject | Get-ADPAssociateOID );
        firstName         = ( $APIObject | Get-ADPFirstName );
        lastName          = ( $APIObject | Get-ADPLastName );
        login             = ( $APIObject | Get-ADPLogin );
        email             = ( $APIObject | Get-ADPEmail );
        title             = ( $APIObject | Get-ADPTitle );
        displayName       = ( $APIObject | Get-ADPDisplayName );
        secondEmail       = ( $APIObject | Get-ADPSecondEmail );
        mobilePhone       = ( $APIObject | Get-ADPMobilePhone );
        streetAddress     = ( $APIObject | Get-ADPLocation).street;
        city              = ( $APIObject | Get-ADPLocation).city;
        state             = ( $APIObject | Get-ADPLocation).state;
        zipCode           = ( $APIObject | Get-ADPLocation).zipCode;
        countryCode       = ( $APIObject | Get-ADPLocation).country;
        preferredLanguage = ( $APIObject | Get-ADPRegion).preferredLanguage;
        locale            = ( $APIObject | Get-ADPRegion).locale;
        userType          = ( $APIObject | Get-ADPUserType );
        employeeNumber    = ( $APIObject | Get-ADPEmployeeNumber );
        organization      = ( $APIObject | Get-ADPOrganization );
        costCenter          = ( $APIObject | Get-ADPOrgStructure ).costCenter;
        department      = ( $APIObject | Get-ADPOrgStructure ).department;
        managerAOID       = ( $APIObject | Get-ADPManagerAOID )
        managerId         = $null;
        manager           = $null;
        hireDate          = ( $APIObject | Get-ADPHireDate ).mmddyyyySlash;
        pronouns          = ( $APIObject | Get-ADPPronouns );
        simpplrHireDate   = ( $APIObject | Get-ADPHireDate ).yyyymmddHyphen;
        managerEmail      = $null;
        terminationDate   = ( $APIObject | Get-ADPTerminationDate );
        workLocation      = ( $APIObject | Get-ADPWorkLocation )
    }
}