Public/PSGSuite/Get-PSGUser.ps1
function Get-PSGUser { [CmdletBinding()] Param ( ) $UserList = Get-GSUser -Filter * foreach ($User in $UserList) { $Forward = Get-GSGmailAutoForwardingSettings -User $User.User [PSCustomObject]@{ Name = $User.Name.FullName GivenName = $User.Name.GivenName FamilyName = $User.Name.FamilyName PrimaryEmail = $User.PrimaryEmail Emails = @($User.Emails.Address) -ne $User.PrimaryEmail -join '|' Addresses = @(@($User.Addresses).ForEach{ if ($_.Type) { '{0}:{1}' -f $_.Type, $_.Formatted } else { $_.Formatted } }) -ne '' -join '|' EmailType = @(@($User.Emails).ForEach{ if ($_.Type) { '{0}:{1}' -f $_.Type, $_.Address } else { $_.Address } }) -ne '' -join '|' User = $User.User Department = $User.Department PhonePrimary = @(@($User.Phones).ForEach{ if ($_.Primary) { if ($_.Type) { '{0}:{1}' -f $_.Type, $_.Value } else { $_.Value } } }) -ne '' -join '|' PhoneType = @(@($User.Phones).ForEach{ if ($_.Type) { '{0}:{1}' -f $_.Type, $_.Value } else { $_.Value } }) -ne '' -join '|' OrganizationPrimary = @(@($User.Organization).ForEach{ if ($_.Primary) { if ($_.CustomType) { '{0}:{1}' -f $_.CustomType, $_.Department } else { $_.Department } } }) -ne '' -join '|' OrgUnitPath = $User.OrgUnitPath Forward = @(@($Forward).ForEach{ if ($_.Enabled) { '{0}:{1}' -f $_.Disposition, $_.EmailAddress } elseif ($_.EmailAddress) { 'DISABLED::{0}:{1}' -f $_.Disposition, $_.EmailAddress } }) -ne '' -join '|' Suspended = $User.Suspended SuspensionReason = $User.SuspensionReason ChangePasswordAtNextLogin = $User.changePasswordAtNextLogin CreationTime = $User.CreationTime IncludeInGlobalAddressList = $User.IncludeInGlobalAddressList IpWhitelisted = $User.IpWhitelisted IsAdmin = $User.IsAdmin IsDelegatedAdmin = $User.IsDelegatedAdmin IsEnforcedIn2Sv = $User.IsEnforcedIn2Sv IsEnrolledIn2Sv = $User.IsEnrolledIn2Sv IsMailboxSetup = $User.IsMailboxSetup NonEditableAliases = @($User.NonEditableAliases) -ne '' -join '|' ThumbnailPhotoEtag = $User.ThumbnailPhotoEtag ThumbnailPhotoUrl = $User.ThumbnailPhotoUrl } } } |