Public folders Address List is empty or does not contain all valid entries

At the end of last year, Microsoft made a small change in the service – they introduced a new Address List, which is supposed to include all (mail enabled) Public folders. You can get the details on the new AL via PowerShell:

PS C:\> Get-AddressList 'Public Folders' | fl RecipientFilter,LdapRecipientFilter
RecipientFilter     : ((Alias -ne $null) -and (ObjectCategory -like 'publicFolder'))
LdapRecipientFilter : (&(mailNickname=*)(objectCategory=publicFolder))

Here’s the issue – you most likely will not be able to see any entries when you select said AL from the Address book dropdown in Outlook or the relevant entry in OWA. Or, you will only see newly created public folders. On the other hand if you run the filter past Get-Recipient, you do get all the PFs:

PS C:\> Get-Recipient -RecipientPreviewFilter (Get-AddressList "Public Folders").RecipientFilter
Name                                                                                      RecipientType
----                                                                                      -------------
First Public Folder                                                                       PublicFolder
Shared Contacts                                                                           PublicFolder

If you have played with Address lists in Exchange Online previously, you probably already know why this happens and what the solution is. For those of you that don’t know, here’s the relevant KB article: New address lists that you create in Exchange Online don’t contain all the expected recipients. To solve the problem, simply run the following cmdlets in order to ‘touch’ each Public folder and have it appear in the “Public folders” address list:

PS C:\> $filter = (Get-AddressList "Public Folders").RecipientFilter
PS C:\> Get-Recipient -RecipientPreviewFilter $filter | Set-MailPublicFolder -ExtensionCustomAttribute5 1
PS C:\> Get-Recipient -RecipientPreviewFilter $filter | Set-MailPublicFolder -ExtensionCustomAttribute5 $null

You can of course use any other attribute. As soon as you ‘touch’ one of the PFs, it should appear in the “Public Folders” list.

This entry was posted in Exchange Online, Office 365, PowerShell. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *