Sample code for 30+ languages & platforms
VBScript

Get an IMAP Mailbox Quota

See more IMAP Examples

Demonstrates the Chilkat Imap.GetQuota method, which sends the IMAP GETQUOTA command for a quota root and returns the server response as JSON. The server must advertise the IMAP QUOTA extension. This example queries the default quota root.

Tip: JSON parsing code for this result can be generated at Chilkat Tools.

Background: Mail servers often cap how much storage an account may use. The IMAP QUOTA extension reports the current usage and limit for a quota root — a scope that may cover one mailbox or a whole account. Reading it lets an application warn a user who is nearing their limit, or refuse to append large messages that would exceed it. Check HasCapability for QUOTA first, since not all servers support it.

Chilkat VBScript Downloads

VBScript
Dim fso, outFile
Set fso = CreateObject("Scripting.FileSystemObject")
'Create a Unicode (utf-16) output text file.
Set outFile = fso.CreateTextFile("output.txt", True, True)

success = 0

'  Demonstrates the Imap.GetQuota method, which sends the IMAP GETQUOTA command for a quota
'  root and returns the server response as JSON.  The server must advertise the IMAP QUOTA
'  extension.

set imap = CreateObject("Chilkat.Imap")

imap.Ssl = 1
imap.Port = 993

success = imap.Connect("imap.example.com")
If (success = 0) Then
    outFile.WriteLine(imap.LastErrorText)
    WScript.Quit
End If

success = imap.Login("user@example.com","myPassword")
If (success = 0) Then
    outFile.WriteLine(imap.LastErrorText)
    WScript.Quit
End If

'  Get the quota for a quota root (an empty string queries the default quota root).
quotaJson = imap.GetQuota("")
If (imap.LastMethodSuccess = 0) Then
    outFile.WriteLine(imap.LastErrorText)
    WScript.Quit
End If

outFile.WriteLine(quotaJson)

'  JSON parsing code for this result can be generated at Chilkat's online tool:
'  https://tools.chilkat.io/jsonParse

success = imap.Disconnect()
If (success = 0) Then
    outFile.WriteLine(imap.LastErrorText)
    WScript.Quit
End If


outFile.Close