Difference between revisions of "Rackspace Mailbox Spam (Rest API)"

From Rackspace Email & Apps API
Jump to: navigation, search
(Index)
(v1 documentation)
Line 1: Line 1:
 
__TOC__
 
__TOC__
  
== Spam Settings ==
+
== v0 - Current ==
  
=== Show ===
+
=== Spam Settings ===
 +
 
 +
==== Show ====
  
 
''URL'':
 
''URL'':
Line 45: Line 47:
 
</pre>
 
</pre>
  
=== Edit ===
+
==== Edit ====
  
 
''URL'':
 
''URL'':
Line 153: Line 155:
  
  
== Blacklist ==
+
=== Blacklist ===
  
=== Index ===
+
==== Index ====
  
 
''URL'':
 
''URL'':
Line 195: Line 197:
 
{"addresses":["name1@spam.com","name2@spam.com"]}
 
{"addresses":["name1@spam.com","name2@spam.com"]}
  
=== Add ===
+
==== Add ====
  
 
''URL'':
 
''URL'':
Line 229: Line 231:
 
|}
 
|}
  
=== Delete ===
+
==== Delete ====
  
 
''URL'':
 
''URL'':
Line 263: Line 265:
 
|}
 
|}
  
=== Edit ===
+
==== Edit ====
  
 
''URL'':
 
''URL'':
Line 301: Line 303:
 
</pre>
 
</pre>
  
== IP Blacklist ==
+
=== IP Blacklist ===
  
=== Index ===
+
==== Index ====
  
 
''URL'':
 
''URL'':
Line 342: Line 344:
 
{"addresses":["216.12.34.1","216.12.34.2"]}
 
{"addresses":["216.12.34.1","216.12.34.2"]}
  
=== Add ===
+
==== Add ====
  
 
''URL'':
 
''URL'':
Line 359: Line 361:
 
</pre>
 
</pre>
  
=== Delete ===
+
==== Delete ====
  
 
''URL'':
 
''URL'':
Line 389: Line 391:
 
|}
 
|}
  
=== Edit ===
+
==== Edit ====
  
 
''URL'':
 
''URL'':
Line 428: Line 430:
 
</pre>
 
</pre>
  
== Safelist ==
+
=== Safelist ===
  
=== Index ===
+
==== Index ====
  
 
''URL'':
 
''URL'':
Line 470: Line 472:
 
{"addresses":["name1@notspam.com","name2@notspam.com"]}
 
{"addresses":["name1@notspam.com","name2@notspam.com"]}
  
=== Add ===
+
==== Add ====
  
 
''URL'':
 
''URL'':
Line 500: Line 502:
 
|}
 
|}
  
=== Delete ===
+
==== Delete ====
  
 
''URL'':
 
''URL'':
Line 534: Line 536:
 
|}
 
|}
  
=== Edit ===
+
==== Edit ====
  
 
''URL'':
 
''URL'':
Line 573: Line 575:
 
</pre>
 
</pre>
  
== IP Safelist ==
+
=== IP Safelist ===
  
=== Index ===
+
==== Index ====
  
 
''URL'':
 
''URL'':
Line 615: Line 617:
 
{"addresses":["192.168.0.1","192.168.0.2"]}
 
{"addresses":["192.168.0.1","192.168.0.2"]}
  
=== Add ===
+
==== Add ====
  
 
''URL'':
 
''URL'':
Line 645: Line 647:
 
|}
 
|}
  
=== Delete ===
+
==== Delete ====
  
 
''URL'':
 
''URL'':
Line 675: Line 677:
 
|}
 
|}
  
=== Edit ===
+
==== Edit ====
  
 
''URL'':
 
''URL'':

Revision as of 14:23, 4 December 2013

v0 - Current

Spam Settings

Show

URL:

[GET] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
        /rs/mailboxes/(mailbox name)/spam/settings


Description:

This operation returns the spam settings associated with the mailbox. For .xml format refer to the following schema document: RSMailboxSpamSetting.xsd


Example:

get '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/settings', 'text/xml'


XML Result Example:

<?xml version="1.0" encoding="utf-8"?>
<rsMailboxSpamSetting xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:RSMailboxSpamSetting">
  <filterLevel>on</filterLevel>
  <rsEmailSettings>
    <spamHandling>toFolder</spamHandling>
    <hasFolderCleaner>false</hasFolderCleaner>
    <spamFolderAgeLimit>0</spamFolderAgeLimit>
    <spamFolderNumLimit>0</spamFolderNumLimit>
    <spamForwardingAddress />
  </rsEmailSettings>
</rsMailboxSpamSetting>

Json Result Example:

{"filterLevel":"on","rsEmailSettings":"hasFolderCleaner":false,"spamFolderAgeLimit":0,"spamFolderNumLimit":0,
"spamForwardingAddress":"","spamHandling":"toFolder"}}

Edit

URL:

[PUT] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
        /rs/mailboxes/(mailbox name)/spam/settings


Description:

This operation will modify the mailbox spam settings.


Field Name Data Type Description
filterLevel string This is a required field. Spam filter status: 'on', 'off', or 'exclusive'. Exclusive mode allows only email cleared by the Safelist.
rsEmail.spamHandling string The string 'toFolder' will deliver the email to the user's Spam folder, 'delete' will delete the mail immediately, 'labelSubject' will prepend [SPAM] to the email's subject line, and 'toAddress' will send the email to a specified folder instead.

Valid Field Combinations:

(toFolder => hasFolderCleaner, spamFolderAgeLimit, spamFolderNumLimit)

(toAddress => spamForwardingAddress)

rsEmail.hasFolderCleaner string This field is effective when rsEmail.spamHandling option is set to 'toFolder'. This field controls how the spam that is delivered o the spam folder is handled. There are currently two options supported for handling spam. First option is to set a limit after which the spam gets deleted. One can set limit on the number of days or on the number of spam emails. Second option is to never automatically delete the spam. For both these options to be enabled the rsEmail.hasFolderCleaner field should be set to 'true'.

The folder cleaner fields (hasFolderCleaner, spamFolderAgeLimit, spamFolderNumLimit) are allowed only when the spamHandling field is set to 'toFolder'. In order to never delete the spam set the spamFolderAgeLimit and spamFolderNumLimit fields to 0.

rsEmail.spamFolderAgeLimit string The number of days a message stays in the Spam folder before its deleted. This field is effective only when rsEmail.spamHandling is set to 'toFolder', and 'rs.hasFolderCleaner' is set to 'true'. This field cannot have negative value.
rsEmail.spamFolderNumLimit string The maximum number of emails the Spam folder holds. This field is effective only when rsEmail.spamHandling is set to 'toFolder', and 'rs.hasFolderCleaner' is set to 'true'. This field cannot have negative value.
rsEmail.spamForwardingAddress string The email address that Spam emails will be redirected to. This field is required when the spamHandling field is set to 'toAddress'

Example:

put '/customers/100018/domains/resellerallservices.net/rs/mailboxes/unittestexist/spam/settings', 
{
      'filterLevel' => 'on',  
      'rsEmail.spamHandling' => 'toFolder',
      'rsEmail.hasFolderCleaner' => 'true',
      'rsEmail.spamFolderAgeLimit' => '7',
      'rsEmail.spamFolderNumLimit' => '100',
}, Formats.xml

Errors:

Description HTTP Response Code Sample Message
Invalid input for form field 'filterLevel' 400 Invalid FilterLevel: Input must be: on/off/exclusive
Invalid input for form field 'spamHandling' 400 Invalid RSEmail SpamHandling: Input must be: toFolder/delete/labelSubject/toAddress
Invalid email address in spam forwarding address 400 Invalid email address
Empty forwarding address 400 Spam Forwarding Address cannot be empty for spam handling policy: toAddress
Invalid value for field 'spamFolderAgeLimit' 400 Invalid RSEmail SpamCleanupOption: -1. rsEmail.spamFolderAgeLimit should be non-negative
Invalid value for field 'spamFolderNumLimit' 400 Invalid RSEmail SpamCleanupOption: -1. rsEmail.spamNumberLimit should be non-negative.
Invalid field combination 400 Invalid field combination: Folder cleaner options cannot be specified with spam handling policy: delete.
Invalid field combination 400 Invalid field combination: Folder cleaner options cannot be specified with spam handling policy: labelSubject.
Invalid field combination 400 Invalid field combination: Folder cleaner options cannot be specified with spam handling policy: toAddress.


Blacklist

Index

URL:

[GET] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
        /rs/mailboxes/(mailbox name)/spam/blacklist


Description:

This operation returns email address blacklist associated with the mailbox.


Remarks:

The Index operation only supports the GET HTTP verb. For .xml format refer to the following schema document: Blacklist.xsd


Example:

get '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/blacklist', 'text/xml'


XML Result Example:

<?xml version="1.0" encoding="utf-8"?>
<blacklist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:blacklist">
  <addresses>
    <address>name1@spam.com</address>
    <address>name2@spam.com</address>
  </addresses>
</blacklist>


Json Result Example:

{"addresses":["name1@spam.com","name2@spam.com"]}

Add

URL:

[POST] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
        /rs/mailboxes/(mailbox name)/spam/blacklist/(email address)


Description:

Adds an email address or domain to the blacklist.


Example:

post '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/blacklist/anyone@spam.com', {},'text/xml'


Errors:

Description HTTP Response Code Sample Message
Entered invalid email or domain 400 invalid email address: abc
Entered current domain 400 Adding example.com would blacklist the current domain

Delete

URL:

[DELETE] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
            /rs/mailboxes/(mailbox name)/spam/blacklist/(email address)


Description:

Removes an email address or domain from the blacklist.


Example:

delete '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/blacklist/anyone@yahoo.com', 'text/xml'


Errors:

Description HTTP Response Code Sample Message
Entered invalid email or domain 400 invalid email address: abc
Entered email or domain is not on the current blacklist 400 abc@junkmail.com is not found on the blacklist

Edit

URL:

[PUT] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
               /rs/mailboxes/(mailbox name)/spam/blacklist

Description:

Edit email addresses on the blacklist.

Field Name Data Type Description
addList string Comma separated list of email addresses to add to the list
removeList string Comma separated list of email addresses to remove from the list

Note:

You can use a '%' as a wildcard in domains, but not in the TLD (.com, .net, etc). You cannot use wildcards in email addresses. For example, the following are allowed: @%.example.com, @examp%.com.

Example:

put '/customers/12345678/domains/example.com/rs/mailboxes/jane.doe/spam/blacklist',
{
  'addList' => '@%.example.com,abc@example.com',
  'removeList' => '@examp%.com'
},
'text/xml'

IP Blacklist

Index

URL:

[GET] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
        /rs/mailboxes/(mailbox name)/spam/ipblacklist


Description:

This operation returns IP blacklist associated with the mailbox.


Remarks:

The Index operation only supports the GET HTTP verb. For .xml format refer to the following schema document: IpBlacklist.xsd


Example:

get '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/ipblacklist', 'text/xml'

XML Result Example':

<?xml version="1.0" encoding="utf-8"?>
<ipBlacklist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:ipBlacklist">
  <addresses>
    <ip>216.12.34.1</ip>
    <ip>216.12.34.2</ip>
  </addresses>
</ipBlacklist>


Json Result Example:

{"addresses":["216.12.34.1","216.12.34.2"]}

Add

URL:

[POST] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
        /rs/mailboxes/(mailbox name)/spam/ipblacklist/(ip address)


Description:

Adds an IP to the blacklist.


Example:

post '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/blacklist/216.12.34.1', {},'text/xml'

Delete

URL:

[DELETE] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
            /rs/mailboxes/(mailbox name)/spam/ipblacklist/(ip address)


Description:

Removes an IP from the blacklist.


Example:

delete '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/ipblacklist/216.12.34.1', 'text/xml'


Errors:

Description HTTP Response Code Sample Message
Entered IP is not on the current blacklist 400 216.12.34.1 is not found on the blacklist

Edit

URL:

[PUT] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
               /rs/mailboxes/(mailbox name)/spam/ipblacklist


Description:

Edit IP addresses on the blacklist.

Field Name Data Type Description
addList string Comma separated list of IP addresses to add to the list
removeList string Comma separated list of IP addresses to remove from the list

Note:

You can use a '%' as a wildcard in the last octets to specify IP ranges. For example: 216.12.34.%, 216.12.%.%, 216.%.%.%.

Example:

put '/customers/12345678/domains/example.com/rs/mailboxes/jane.doe/spam/ipblacklist',
{
  'addList' => '216.12.34.%,216.12.%.%',
  'removeList' => '216.%.%.%'
},
'text/xml'

Safelist

Index

URL:

[GET] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
        /rs/mailboxes/(mailbox name)/spam/safelist


Description:

This operation returns email address safelist associated with the mailbox.


Remarks:

The Index operation only supports the GET HTTP verb. For .xml format refer to the following schema document: Safelist.xsd


Example:

get '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/safelist', 'text/xml'


XML Result Example:

<?xml version="1.0" encoding="utf-8"?>
<safelist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:safelist">
  <addresses>
    <address>name1@notspam.com</address>
    <address>name2@notspam.com</address>
  </addresses>
</safelist>


Json Result Example:

{"addresses":["name1@notspam.com","name2@notspam.com"]}

Add

URL:

[POST] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
        /rs/mailboxes/(mailbox name)/spam/safelist/(email address)


Description:

Adds an email address or domain to the safelist.


Example:

post '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/safelist/anyone@yahoo.com', {},'text/xml'


Errors:

Description HTTP Response Code Sample Message
Entered invalid email or domain 400 invalid email address: abc

Delete

URL:

[DELETE] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
            /rs/mailboxes/(mailbox name)/spam/safelist/(email address)


Description:

Removes an email address or domain from the safelist.


Example:

delete '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/safelist/anyone@yahoo.com', 'text/xml'


Errors:

Description HTTP Response Code Sample Message
Entered invalid email or domain 400 invalid email address: abc
Entered email or domain is not on the current safelist 400 anyone@yahoo.com is not found on the safelist

Edit

URL:

[PUT] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
               /rs/mailboxes/(mailbox name)/spam/safelist


Description:

Edit email addresses on the safelist.

Field Name Data Type Description
addList string Comma separated list of email addresses to add to the list
removeList string Comma separated list of email addresses to remove from the list

Note:

You can use a '%' as a wildcard in domains, but not in the TLD (.com, .net, etc). You cannot use wildcards in email addresses. For example, the following are allowed: @%.example.com, @examp%.com.

Example:

put '/customers/12345678/domains/example.com/rs/mailboxes/jane.doe/spam/safelist',
{
  'addList' => '@%.example.com,abc@example.com',
  'removeList' => '@examp%.com'
},
'text/xml'

IP Safelist

Index

URL:

[GET] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
        /rs/mailboxes/(mailbox name)/spam/ipsafelist


Description:

This operation returns IP safelist associated with the mailbox.


Remarks:

The Index operation only supports the GET HTTP verb. For .xml format refer to the following schema document: IpSafelist.xsd


Example:

get '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/ipsafelist', 'text/xml'


XML Result Example:

<?xml version="1.0" encoding="utf-8"?>
<ipSafelist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:ipSafelist">
  <addresses>
    <ip>192.168.0.1</ip>
    <ip>192.168.0.2</ip>
  </addresses>
</ipSafelist>


Json Result Example:

{"addresses":["192.168.0.1","192.168.0.2"]}

Add

URL:

[POST] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
        /rs/mailboxes/(mailbox name)/spam/ipsafelist/(ip address)


Description:

Adds an IP to the ipsafelist.


Example:

post '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/ipsafelist/216.12.34.1', {},'text/xml'


Errors:

Description HTTP Response Code Sample Message
Entered invalid IP address 400 invalid ip address: 123

Delete

URL:

[DELETE] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
            /rs/mailboxes/(mailbox name)/spam/ipsafelist/(email address)


Description:

Removes an IP from the safelist.


Example:

delete '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/ipsafelist/216.12.34.1', 'text/xml'


Errors:

Description HTTP Response Code Sample Message
Entered IP is not on the current safelist 400 216.12.34.1 is not found on the safelist

Edit

URL:

[PUT] https://api.emailsrvr.com/v0/customers/(customer account number)/domains/(domain name)
               /rs/mailboxes/(mailbox name)/spam/ipsafelist


Description:

Edit IP addresses on the safelist.

Field Name Data Type Description
addList string Comma separated list of IP addresses to add to the list
removeList string Comma separated list of IP addresses to remove from the list

Note:

You can use a '%' as a wildcard in the last octets to specify IP ranges. For example: 216.12.34.%, 216.12.%.%, 216.%.%.%.

Example:

put '/customers/12345678/domains/example.com/rs/mailboxes/jane.doe/spam/ipsafelist',
{
  'addList' => '216.12.34.%,216.12.%.%',
  'removeList' => '216.%.%.%'
},
'text/xml'