![]() |
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
(Visual FoxPro) Office365 IMAP List MailboxesSee more Office365 ExamplesList the Office365 IMAP mailboxes.Note: This example requires Chilkat v11.0.0 or greater.
LOCAL lnSuccess LOCAL loJsonToken LOCAL loImap LOCAL lcRefName LOCAL lcWildcardedMailbox LOCAL lnSubscribed LOCAL loMboxes LOCAL i lnSuccess = 0 * 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. loJsonToken = CreateObject('Chilkat.JsonObject') lnSuccess = loJsonToken.LoadFile("qa_data/tokens/office365.json") IF (lnSuccess = 0) THEN ? "Failed to open the office365 OAuth JSON file." RELEASE loJsonToken CANCEL ENDIF loImap = CreateObject('Chilkat.Imap') loImap.Ssl = 1 loImap.Port = 993 * Connect to the Office365 IMAP server. lnSuccess = loImap.Connect("outlook.office365.com") IF (lnSuccess = 0) THEN ? loImap.LastErrorText RELEASE loJsonToken RELEASE loImap CANCEL ENDIF * Use OAuth2 authentication. loImap.AuthMethod = "XOAUTH2" * Login using our username (i.e. email address) and the access token for the password. lnSuccess = loImap.Login("OFFICE365_EMAIL_ADDRESS",loJsonToken.StringOf("access_token")) IF (lnSuccess = 0) THEN ? loImap.LastErrorText RELEASE loJsonToken RELEASE loImap CANCEL ENDIF ? "O365 OAuth authentication is successful." * Get the list of mailboxes. lcRefName = "" lcWildcardedMailbox = "*" lnSubscribed = 0 loMboxes = CreateObject('Chilkat.Mailboxes') lnSuccess = loImap.MbxList(lnSubscribed,lcRefName,lcWildcardedMailbox,loMboxes) IF (lnSuccess = 0) THEN ? loImap.LastErrorText RELEASE loJsonToken RELEASE loImap RELEASE loMboxes CANCEL ENDIF i = 0 DO WHILE i < loMboxes.Count ? loMboxes.GetName(i) i = i + 1 ENDDO * 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. lnSuccess = loImap.Disconnect() RELEASE loJsonToken RELEASE loImap RELEASE loMboxes |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.