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

From Rackspace Email & Apps API
Jump to: navigation, search
m
(Update route names and get XML payload)
Line 161: Line 161:
  
  
=== Blacklist ===
+
=== Blocklist ===
  
 
==== Index ====
 
==== Index ====
Line 167: Line 167:
 
''URL'':
 
''URL'':
 
  <nowiki>[GET] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name)
 
  <nowiki>[GET] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name)
         /rs/mailboxes/(mailbox name)/spam/blacklist</nowiki>
+
         /rs/mailboxes/(mailbox name)/spam/blocklist</nowiki>
  
  
 
''Description'':
 
''Description'':
  
This operation returns email address blacklist associated with the mailbox.  
+
This operation returns email address blocklist associated with the mailbox.  
  
  
Line 182: Line 182:
 
''Example'':
 
''Example'':
 
<pre>
 
<pre>
get '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/blacklist'
+
get '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/blocklist'
 
</pre>
 
</pre>
  
Line 190: Line 190:
 
<pre>
 
<pre>
 
<?xml version="1.0" encoding="utf-8"?>
 
<?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">
+
<blocklist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:blocklist">
 
   <addresses>
 
   <addresses>
 
     <address>name1@spam.com</address>
 
     <address>name1@spam.com</address>
 
     <address>name2@spam.com</address>
 
     <address>name2@spam.com</address>
 
   </addresses>
 
   </addresses>
</blacklist>
+
</blocklist>
 
</pre>
 
</pre>
  
Line 207: Line 207:
 
''URL'':
 
''URL'':
 
  <nowiki>[POST] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name)
 
  <nowiki>[POST] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name)
         /rs/mailboxes/(mailbox name)/spam/blacklist/(email address)</nowiki>
+
         /rs/mailboxes/(mailbox name)/spam/blocklist/(email address)</nowiki>
  
  
 
''Description'':
 
''Description'':
  
Adds an email address or domain to the blacklist.
+
Adds an email address or domain to the blocklist.
  
  
 
''Example'':
 
''Example'':
 
<pre>
 
<pre>
post '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/blacklist/anyone@spam.com', {}
+
post '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/blocklist/anyone@spam.com', {}
 
</pre>
 
</pre>
  
Line 234: Line 234:
 
| Entered current domain
 
| Entered current domain
 
| 400
 
| 400
| Adding example.com would blacklist the current domain
+
| Adding example.com would blocklist the current domain
 
|}
 
|}
  
Line 241: Line 241:
 
''URL'':
 
''URL'':
 
  <nowiki>[DELETE] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name)
 
  <nowiki>[DELETE] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name)
             /rs/mailboxes/(mailbox name)/spam/blacklist/(email address)</nowiki>
+
             /rs/mailboxes/(mailbox name)/spam/blocklist/(email address)</nowiki>
  
  
 
''Description'':
 
''Description'':
  
Removes an email address or domain from the blacklist.
+
Removes an email address or domain from the blocklist.
  
  
 
''Example'':
 
''Example'':
 
<pre>
 
<pre>
delete '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/blacklist/anyone@yahoo.com'
+
delete '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/blocklist/anyone@yahoo.com'
 
</pre>
 
</pre>
  
Line 266: Line 266:
 
| invalid email address: abc
 
| invalid email address: abc
 
|-
 
|-
| Entered email or domain is not on the current blacklist
+
| Entered email or domain is not on the current blocklist
 
| 400
 
| 400
| abc@junkmail.com is not found on the blacklist
+
| abc@junkmail.com is not found on the blocklist
 
|}
 
|}
  
Line 275: Line 275:
 
''URL'':
 
''URL'':
 
  <nowiki>[PUT] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name)
 
  <nowiki>[PUT] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name)
               /rs/mailboxes/(mailbox name)/spam/blacklist</nowiki>
+
               /rs/mailboxes/(mailbox name)/spam/blocklist</nowiki>
  
 
''Description'':
 
''Description'':
  
Edit email addresses on the blacklist.
+
Edit email addresses on the blocklist.
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 301: Line 301:
 
''Example'':
 
''Example'':
 
<pre>
 
<pre>
put '/customers/12345678/domains/example.com/rs/mailboxes/jane.doe/spam/blacklist',
+
put '/customers/12345678/domains/example.com/rs/mailboxes/jane.doe/spam/blocklist',
 
{
 
{
 
   'addList' => '@%.example.com,abc@example.com',
 
   'addList' => '@%.example.com,abc@example.com',

Revision as of 13:10, 14 October 2020

v1 - Current

Spam Settings

Show

URL:

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


Description:

This operation returns the spam settings associated with the mailbox.


Example:

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


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/v1/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.


Blocklist

Index

URL:

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


Description:

This operation returns email address blocklist associated with the mailbox.


Remarks:

The Index operation only supports the GET HTTP verb.


Example:

get '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/blocklist'


XML Result Example:

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


Json Result Example:

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

Add

URL:

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


Description:

Adds an email address or domain to the blocklist.


Example:

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


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 blocklist the current domain

Delete

URL:

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


Description:

Removes an email address or domain from the blocklist.


Example:

delete '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/blocklist/anyone@yahoo.com'


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 blocklist 400 abc@junkmail.com is not found on the blocklist

Edit

URL:

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

Description:

Edit email addresses on the blocklist.

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/blocklist',
{
  'addList' => '@%.example.com,abc@example.com',
  'removeList' => '@examp%.com'
}

IP Blacklist

Index

URL:

[GET] https://api.emailsrvr.com/v1/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.


Example:

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

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/v1/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', {}

Delete

URL:

[DELETE] https://api.emailsrvr.com/v1/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'


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/v1/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.%.%.%'
}

Safelist

Index

URL:

[GET] https://api.emailsrvr.com/v1/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.


Example:

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


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/v1/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', {}


Errors:

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

Delete

URL:

[DELETE] https://api.emailsrvr.com/v1/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'


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/v1/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'
}

IP Safelist

Index

URL:

[GET] https://api.emailsrvr.com/v1/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.


Example:

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


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/v1/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', {}


Errors:

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

Delete

URL:

[DELETE] https://api.emailsrvr.com/v1/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'


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/v1/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.%.%.%'
}