functions/other/Get-EmailActivity.ps1
function Get-EmailActivity{ param( [Parameter(Position=0, Mandatory=$true)] [string]$MailboxName, [Parameter(Position=1, Mandatory=$false)] [psobject]$AccessToken, [Parameter(Position=2, Mandatory=$true)] [String]$ViewType, [Parameter(Position=3, Mandatory=$true)] [String]$PeriodType ) Begin{ if($AccessToken -eq $null) { $AccessToken = Get-AccessToken -MailboxName $MailboxName } $HttpClient = Get-HTTPClient($MailboxName) $EndPoint = Get-EndPoint -AccessToken $AccessToken -Segment "reports" $RequestURL = $EndPoint + "/EmailActivity(view='$ViewType',period='$PeriodType')/content" Write-Host $RequestURL $Output = Invoke-RestGet -RequestURL $RequestURL -HttpClient $HttpClient -AccessToken $AccessToken -MailboxName $MailboxName -NoJSON $OutPutStream = $Output.ReadAsStreamAsync().Result return ConvertFrom-Csv ([System.Text.Encoding]::UTF8.GetString($OutPutStream.ToArray())) } } |