Sample code for 30+ languages & platforms
Xbase++

Rename an IMAP Mailbox

See more IMAP Examples

Demonstrates the Chilkat Imap.RenameMailbox method, which renames a mailbox from the first name to the second. Changing the hierarchy components in the new name can also move a mailbox within the server's folder tree. This example renames OldName to NewName.

Background: Because a mailbox's full name encodes its place in the folder hierarchy, renaming is also how you move a folder: renaming Inbox/Draft to Archive/Draft relocates it under a different parent. The messages inside move along with the folder. This makes RenameMailbox the tool for both relabeling and reorganizing an account's folder structure.

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oImap

nSuccess := 0

//  Demonstrates the Imap.RenameMailbox method, which renames a mailbox.  Changing hierarchy
//  components can also move a mailbox within the server's folder tree.

oImap := CreateObject("Chilkat.Imap")

oImap:Ssl := 1
oImap:Port := 993

nSuccess := oImap:Connect("imap.example.com")
IF (nSuccess == 0)
    ? oImap:LastErrorText
    oImap:destroy()
    RETURN
ENDIF

nSuccess := oImap:Login("user@example.com", "myPassword")
IF (nSuccess == 0)
    ? oImap:LastErrorText
    oImap:destroy()
    RETURN
ENDIF

//  Rename a mailbox from "OldName" to "NewName".
nSuccess := oImap:RenameMailbox("OldName", "NewName")
IF (nSuccess == 0)
    ? oImap:LastErrorText
    oImap:destroy()
    RETURN
ENDIF

? "Mailbox renamed."

nSuccess := oImap:Disconnect()
IF (nSuccess == 0)
    ? oImap:LastErrorText
    oImap:destroy()
    RETURN
ENDIF

oImap:destroy()