Exchange Mailbox Spam (Rest API)

From Rackspace Email & Apps API
Revision as of 14:24, 14 October 2020 by Matt.Brown (talk | contribs) (Update route names and get XML payload)
Jump to: navigation, search

v1 - Current

Spam Settings

Show

URL:

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


Description:

This operation returns the spam settings associated with the mailbox.


Remarks:

The Show operation only supports the GET HTTP verb.


Example:

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


XML Result Example:

<?xml version="1.0"  encoding="utf-8"?>
<MailboxSpamSettings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xmlns:xsd="http://www.w3.org/2001/XMLSchema"  xmlns="urn:xml:MailboxSpamSettings">
  <filterLevel>on</filterLevel>
  <sendToDomainQuarantine>false</sendToDomainQuarantine>
  <quarantineOwner />
</MailboxSpamSettings>


Json Result Example:

{"filterLevel":"on","sendToDomainQuarantine":false,"quarantineOwner":""}

Edit

URL:

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


Description:

This operation will modify the mailbox spam setting. Only 'filterlevel' is the required form field.


Field Name Data Type Description
filterlevel string Spam filter status, must be 'on' or 'off' or 'exclusive' (Required)
sendtodomainquarantine boolean Indicates whether or not send spam to domain quarantine
quarantineowner string The email address that quarantine notifications be sent to
removeQuarantineOwner boolean Set this flag to "true" to remove quarantine owner


Remarks:

Form field "filterlevel" is always required.
When "filterlevel" is "on", spam will be sent to mailbox quarantine as default, unless "sendtodomainquarantine" is set to "true".
Changing "filterlevel" to "off" will force "sendtodomainquarantine" to be "false".
When "filterlevel" is "exclusive", spam will be sent to mailbox quarantine as default, unless "sendtodomainquarantine" is set to "true". In addition, mailbox will only receive email from addresses and IPs on its safelist.


Example:

put  '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/spam/settings',
{ 
  'filterlevel' => 'off'
}  


Errors:

Description HTTP Response Code Sample Message
Invalid input for form field 'filterlevel' 400 Invalid filterLevel, input must be: on/off/exclusive

Blocklist

Index

URL:

[GET]  https://api.emailsrvr.com/v1/customers/(customer account  number)/domains/(domain name)
        /ex/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/ex/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)
        /ex/mailboxes/(mailbox  name)/spam/blocklist/(email address)


Description:

Adds an email address or domain to the blocklist.


Example:

post   '/customers/12345678/domains/example.com/ex/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)
            /ex/mailboxes/(mailbox  name)/spam/blocklist/(email address)


Description:

Removes an email address or domain from the blocklist.


Example:

delete   '/customers/12345678/domains/example.com/ex/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)
               /ex/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/ex/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)
        /ex/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/ex/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)
        /ex/mailboxes/(mailbox  name)/spam/ipblacklist/(ip address)


Description:

Adds an IP to the blacklist.


Example:

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

Delete

URL:

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


Description:

Removes an IP from the blacklist.


Example:

delete  '/customers/12345678/domains/example.com/ex/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)
               /ex/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/ex/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)
        /ex/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/ex/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)
        /ex/mailboxes/(mailbox  name)/spam/safelist/(email address)


Description:

Adds an email address or domain to the safelist.


Example:

post   '/customers/12345678/domains/example.com/ex/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)
            /ex/mailboxes/(mailbox  name)/spam/safelist/(email address)


Description:

Removes an email address or domain from the safelist.


Example:

delete   '/customers/12345678/domains/example.com/ex/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)
               /ex/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/ex/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)
        /ex/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/ex/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)
        /ex/mailboxes/(mailbox  name)/spam/ipsafelist/(ip address)


Description:

Adds an IP to the ipsafelist.


Example:

post  '/customers/12345678/domains/example.com/ex/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)
            /ex/mailboxes/(mailbox  name)/spam/ipsafelist/(email address)


Description:

Removes an IP from the safelist.


Example:

delete  '/customers/12345678/domains/example.com/ex/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)
               /ex/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/ex/mailboxes/jane.doe/spam/ipsafelist',
{
  'addList' => '216.12.34.%,216.12.%.%',
  'removeList' => '216.%.%.%'
}