I wanted to post this so others wont go through the headaches I just went through trying to create Address Lists in Exchange Online.
First, make sure you are assigned the Address List role. This isn't assigned to any group by default. I had to add it to the Organization Management role.
Second, don't use double quotes in your powershell commands anywhere when using the "RecipientFilter" parameter, only use single quotes. Using double quotes will give you the error "Cannot bind parameter 'RecipientFilter' to the target. Exception setting "RecipientFilter": "Invalid filter syntax."
This was the big one I wanted to point out since I spent the most time trying to figure out why this wasn't working. I was using PowerShell commands that I successfully used in my on-prem Exchange as well as copied the commandsexactly from the TechNet articles for New-AddressList onExchange Online (the double quotes around the Name is what caused the command to error out).
So, I hope this helps some people since I couldn't really find anything related to this quirk.
For the record, the syntax that worked for me was:
New-AddressList -Name 'O365_AL' -RecipientFilter {(RecipientType -eq 'UserMailbox') -and (CustomAttribute15 -eq 'o365_mail_user')} –DisplayName 'O365 Address List'