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 );
        qualificationSuffix = ( $APIObject | Get-ADPQualificationSuffix );
        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 )
    }
}