PowerShell
PowerShell
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 PowerShell Downloads
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"
$success = $false
# 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.
$imap = New-Object Chilkat.Imap
$imap.Ssl = $true
$imap.Port = 993
$success = $imap.Connect("imap.example.com")
if ($success -eq $false) {
$($imap.LastErrorText)
exit
}
$success = $imap.Login("user@example.com","myPassword")
if ($success -eq $false) {
$($imap.LastErrorText)
exit
}
# Get the quota for a quota root (an empty string queries the default quota root).
$quotaJson = $imap.GetQuota("")
if ($imap.LastMethodSuccess -eq $false) {
$($imap.LastErrorText)
exit
}
$($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 -eq $false) {
$($imap.LastErrorText)
exit
}