Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PowerShell) Office365 IMAP List MailboxesSee more Office365 ExamplesList the Office365 IMAP mailboxes.
Add-Type -Path "C:\chilkat\ChilkatDotNet47-9.5.0-x64\ChilkatDotNet47.dll" # An Office365 OAuth2 access token must first be obtained prior # to running this code. # Getting the OAuth2 access token for the 1st time requires the O365 account owner's # interactive authorizaition via a web browser. Afterwards, the access token # can be repeatedly refreshed automatically. # See the following examples for getting and refreshing an OAuth2 access token # Get Office365 SMTP/IMAP/POP3 OAuth2 Access Token # Refresh Office365 SMTP/IMAP/POP3 OAuth2 Access Token # First get our previously obtained OAuth2 access token. $jsonToken = New-Object Chilkat.JsonObject $success = $jsonToken.LoadFile("qa_data/tokens/office365.json") if ($success -eq $false) { $("Failed to open the office365 OAuth JSON file.") exit } $imap = New-Object Chilkat.Imap $imap.Ssl = $true $imap.Port = 993 # Connect to the Office365 IMAP server. $success = $imap.Connect("outlook.office365.com") if ($success -ne $true) { $($imap.LastErrorText) exit } # Use OAuth2 authentication. $imap.AuthMethod = "XOAUTH2" # Login using our username (i.e. email address) and the access token for the password. $success = $imap.Login("OFFICE365_EMAIL_ADDRESS",$jsonToken.StringOf("access_token")) if ($success -ne $true) { $($imap.LastErrorText) exit } $("O365 OAuth authentication is successful.") # The ListMailboxes method returns a Mailboxes object # that contains the collection of mailboxes. # It accepts two arguments: a refName and a wildcardedMailbox. $refName = "" # refName is usually set to an empty string. # A non-empty reference name argument is the name of a mailbox or a level of # mailbox hierarchy, and indicates the context in which the mailbox # name is interpreted. # Select all mailboxes matching this pattern: $wildcardedMailbox = "*" $mboxes = $imap.ListMailboxes($refName,$wildcardedMailbox) if ($imap.LastMethodSuccess -eq $false) { $($imap.LastErrorText) exit } $i = 0 while ($i -lt $mboxes.Count) { $($mboxes.GetName($i)) $i = $i + 1 } # Sample output looks like this: # Archive # Calendar # Calendar/Birthdays # Calendar/United States holidays # Contacts # Conversation History # Deleted Items # Drafts # INBOX # INBOX/abc # INBOX/misc # INBOX/misc/birdeye # INBOX/old # INBOX/old/large # INBOX/receipts # Journal # Junk Email # Notes # Outbox # RSS Subscriptions # Sent Items # Sync Issues # Sync Issues/Conflicts # Sync Issues/Local Failures # Sync Issues/Server Failures # Tasks # Trash # Disconnect from the IMAP server. $success = $imap.Disconnect() |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.