Skip to content

M365 Snippets

Exchange

Import-Module -Name ExchangeOnlineManagement
Connect-ExchangeOnline -UserPrincipalName name@example.com
Documentation

Mailboxes

All Tenant Mailboxes

Get-Mailbox -ResultSize Unlimited `
    | % { Get-MailboxStatistics $_.UserPrincipalName `
    | Select DisplayName, ItemCount, TotalItemSize, } `
    | Export-CSV -Path .\export.csv -NoTypeInformation
Additional fields: MailboxTypeDetail, DeletedItemCount, TotalDeletedItemSize

Specific User

Get-EXOMailbox -Identity name@example.com `
    | Get-EXOMailboxStatistics

Mailbox Rules

Get-InboxRule -Mailbox name@example.com
Get-InboxRule -Mailbox name@example.com | Select * | `
    Export-CSV -Path .\mboxrules.csv -NoTypeInformation`

Calendars

View Calendar Permissions

Get-MailboxFolderPermission `
    -Identity room@example.com:\Calendar | Format-List

Show Meeting Subject and Remove Organizer

Set-CalendarProcessing -Identity "room@example.com" `
    -DeleteSubject $False `
    -AddOrganizerToSubject $False

Teams

Get Outbound Dialing Policy

Get-CsUserPolicyAssignment -Identity "name@example.com"

Disable Oubound Dialing

# Before
Get-CsUserPolicyAssignment -Identity "name@example.com"

Grant-CsDialoutPolicy -Identity "name@example.com" `
    -PolicyName "DialoutCPCDisabledPSTNInternational"

# After
Get-CsUserPolicyAssignment -Identity "name@example.com"