![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Go) Office365 IMAP List MailboxesSee more Office365 ExamplesList the Office365 IMAP mailboxes.Note: This example requires Chilkat v11.0.0 or greater.
success := false // An Office365 OAuth2_Ref.html">OAuth2 access token must first be obtained prior // to running this code. // Getting the OAuth2_Ref.html">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_Ref.html">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_Ref.html">OAuth2 access token. jsonToken := JsonObject_Ref.html">chilkat.NewJsonObject() success = jsonToken.LoadFile("qa_data/tokens/office365.json") if success == false { fmt.Println("Failed to open the office365 OAuth JSON file.") jsonToken.DisposeJsonObject() return } imap := Imap_Ref.html">chilkat.NewImap() imap.SetSsl(true) imap.SetPort(993) // Connect to the Office365 IMAP server. success = imap.Connect("outlook.office365.com") if success == false { fmt.Println(imap.LastErrorText()) jsonToken.DisposeJsonObject() imap.DisposeImap() return } // Use OAuth2_Ref.html">OAuth2 authentication. imap.SetAuthMethod("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 == false { fmt.Println(imap.LastErrorText()) jsonToken.DisposeJsonObject() imap.DisposeImap() return } fmt.Println("O365 OAuth authentication is successful.") // Get the list of mailboxes. refName := "" wildcardedMailbox := "*" subscribed := false mboxes := Mailboxes_Ref.html">chilkat.NewMailboxes() success = imap.MbxList(subscribed,refName,wildcardedMailbox,mboxes) if success == false { fmt.Println(imap.LastErrorText()) jsonToken.DisposeJsonObject() imap.DisposeImap() mboxes.DisposeMailboxes() return } i := 0 for i < mboxes.Count() { fmt.Println(*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_Ref.html">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() jsonToken.DisposeJsonObject() imap.DisposeImap() mboxes.DisposeMailboxes() |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.