Difference between revisions of "Exchange Mailbox (Rest API)"
(add Rest API Mailbox page) |
(No difference)
|
Revision as of 11:31, 25 August 2009
Contents
- 1 Mailbox
- 1.1 Index
- 1.2 Show
- 1.3 Add/Edit
- 1.4 Delete
- 1.5 Add Email Address
- 1.6 Delete Email Address
- 1.7 Spam
- 1.7.1 Index Blacklist
- 1.7.2 Index IP Blacklist
- 1.7.3 Index Safelist
- 1.7.4 Index IP Safelist
- 1.7.5 Add Blacklist
- 1.7.6 Add IP Blacklist
- 1.7.7 Add Safelist
- 1.7.8 Add IP Safelist
- 1.7.9 Delete Blacklist
- 1.7.10 Delete IP Blacklist
- 1.7.11 Delete Safelist
- 1.7.12 Delete IP Safelist
- 1.7.13 Show Spam Setting
- 1.7.14 Edit Spam Setting
- 1.8 BlackBerry Mobile Service
- 1.9 ActiveSync Mobile Service
Mailbox
Index
URL:
[GET] /customers/(customer account number)/domains/(domain name)/ex/mailboxes
Description:
Shows a list of mailboxes under the domain
Remarks:
The show operation only supports the GET HTTP verb. For .xml format refer to the following schema document: Mailboxes.xsd
Example:
get '/customers/12345678/domains/example.com/ex/mailboxes', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Show
URL:
[GET] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)
Description:
The show operation will return detailed information about the specified mailbox.
Remarks:
The show operation only supports the GET HTTP verb. For .xml format refer to the following schema document: Mailbox.xsd
Example:
get '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | Mailbox not found |
Add/Edit
URL:
[POST] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)
[PUT] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)
Description:
Adds/edits a mailbox using the specified form fields. All required fields must be supplied when adding. Other fields may be omitted.
Field Name | Data Type | Description |
---|---|---|
displayName | string | Display name (Required for Add) |
initialPassword | string | Password (Required for Add) |
size | positive integer | Mailbox size in megabytes (Required for Add) |
isHidden | boolean | Indicates whether or not the mailbox is hidden from the Global Address List |
isPublicFolderAdmin | boolean | Indicates whether or not the account is a public folder administrator |
firstName | string | First name |
lastName | string | Last name |
company | string | Company |
department | string | Department |
jobTitle | string | Job title |
addressLine1 | string | Street address |
city | string | City |
state | string | State |
zip | string | Zip or postal code |
country | string | Country |
businessnumber | string | Business phone number |
pagernumber | string | Pager phone number |
homenumber | string | Home phone number |
mobilenumber | string | Mobile phone number |
faxnumber | string | Fax phone number |
notes | string | Notes field |
emailForwardingAddress | string | Forwarding email address (If this field is assigned an email address, then email forwarding will be turned on. If this field is not assigned or assigned an empty string, then email forwarding will be disabled.) |
enabled | string | Enable/Disable mailbox, input must be "true" or "false" |
Example:
post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith', 'text/xml', { 'displayName' => 'Alex Smith', 'initialPassword' => 'Secret123!@#', 'size' => '2048' }
put '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith', 'text/xml', { 'homenumber' => '8005551234' }
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | Mailbox not found |
Required form field is missing | 400 | Missing required field: displayName |
Required form field has null or empty string input | 400 | Required field displayName cannot be empty |
New mailbox name (user name) doesn't meet the naming requirements | 400 | Invalid user name |
New mailbox display name doesn't meet the naming requirements | 400 | Invalid display name |
Integer form field has non-integer input | 400 | Invalid format for size, input must be an integer |
Boolean form field has non-boolean input | 400 | Invalid format for Enabled, input must be True or False |
New mailbox password doesn't meet the password pattern requirements | 400 | Password must be at least 8 characters long |
Form data has unrecognized field | 400 | Unrecognized field: extraStorage |
New mailbox name (user name) already exists | 400 | The email address john.doe@abc.com is already in use |
Delete
URL:
[DELETE] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)
Description:
Deletes the domain.
Remarks:
The mailbox and mailbox contents are deleted permanently.
Example:
delete '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | Mailbox not found |
Add Email Address
URL:
[POST] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)/emailaddresses/(email address)
Description:
Adds a mailbox's email address.
Example:
post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/emailaddresses/alex@example.com', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Delete Email Address
URL:
[DELETE] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)/emailaddresses/(email address)
Description:
The delete email address.
Remarks:
The operation will fail if the email address does not exist.
Example:
delete '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/emailaddresses/alex@example.com', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Spam
Index Blacklist
URL:
[GET] /customers/(customer account number)/domains/(domain name)/ex/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.
Example:
get '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/spam/blacklist', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Mailbox is not found | 404 | No user with the email address alex.smith@example.com exists |
Index IP Blacklist
URL:
[GET] /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', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Mailbox is not found | 404 | No user with the email address alex.smith@example.com exists |
Index Safelist
URL:
[GET] /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', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Mailbox is not found | 404 | No user with the email address alex.smith@example.com exists |
Index IP Safelist
URL:
[GET] /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', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Mailbox is not found | 404 | No user with the email address alex.smith@example.com exists |
Add Blacklist
URL:
[POST] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)/spam/blacklist/(email address)
Description:
Adds an email address or domain to the blacklist.
Remarks:
Using a '%' as a wildcard is allowed in domains, but not in the TLD (.com, .net, etc), nor in email addresses. For example, the following are allowed: @%.example.com, @examp%.com.
Example:
post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/spam/blacklist/anyone@spam.com', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | No user with the email address alex.smith@example.com exists |
Entered invalid email or domain | 400 | invalid email address: abc |
Entered current domain | 400 | Adding example.com would blacklist the current domain |
Add IP Blacklist
URL:
[POST] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)/spam/ipblacklist/(ip address)
Description:
Adds an IP to the blacklist.
Remarks:
Using a '%' as a wildcard in the last octets to specify IP ranges. For example: 216.12.34.%, 216.12.%.%, 216.%.%.%.
Example:
post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/spam/blacklist/216.12.34.%', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | No user with the email address alex.smith@example.com exists |
Entered invalid IP address | 400 | invalid ip address: 123 |
Add Safelist
URL:
[POST] /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.
Remarks:
Using a '%' as a wildcard is allowed in domains, but not in the TLD (.com, .net, etc), nor in email addresses. For example, the following are allowed: @%.example.com, @examp%.com.
Example:
post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/spam/safelist/anyone@yahoo.com', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | No user with the email address alex.smith@example.com exists |
Entered invalid email or domain | 400 | invalid email address: abc |
Add IP Safelist
URL:
[POST] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)/spam/safelist/(ip address)
Description:
Adds an IP to the safelist.
Remarks:
Using a '%' as a wildcard in the last octets to specify IP ranges. For example: 216.12.34.%, 216.12.%.%, 216.%.%.%.
Example:
post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/spam/safelist/216.12.34.1', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | No user with the email address alex.smith@example.com exists |
Entered invalid IP address | 400 | invalid ip address: 123 |
Delete Blacklist
URL:
[DELETE] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)/spam/blacklist/(email address)
Description: Removes an email address or domain from the blacklist.
Example:
post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/spam/blacklist/anyone@yahoo.com', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | No user with the email address alex.smith@example.com exists |
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 |
Delete IP Blacklist
URL:
[DELETE] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)/spam/ipblacklist/(ip address)
Description:
Removes an IP from the blacklist.
Example:
post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/spam/ipblacklist/216.12.34.%', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | No user with the email address alex.smith@example.com exists |
Entered invalid IP address | 400 | invalid ip address: 123 |
Entered IP is not on the current blacklist | 400 | 216.12.34.1 is not found on the blacklist |
Delete Safelist
URL:
[DELETE] /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:
post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/spam/safelist/anyone@yahoo.com', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | No user with the email address alex.smith@example.com exists |
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 |
Delete IP Safelist
URL:
[DELETE] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)/spam/ipsafelist/(email address)
Description: Removes an IP from the safelist.
Example:
post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/spam/ipsafelist/216.12.34.1', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | No user with the email address alex.smith@example.com exists |
Entered invalid IP address | 400 | invalid ip address: 123 |
Entered IP is not on the current safelist | 400 | 216.12.34.1 is not found on the safelist |
Show Spam Setting
URL:
[GET] /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', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | Mailbox not found |
Edit Spam Setting
URL:
[PUT] /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'/'off'/'exclusive' (Required) |
sendtodomainquarantine | boolean | Indicates whether or not send spam to domain quarantine |
quarantineowner | string | The email address that quarantine notifications be sent to |
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:
post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/spam/settings', 'text/xml', { 'filterlevel' => 'off' }
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | No user with the email address alex.smith@example.com exists |
Required form field is missing | 400 | Missing required field: filterlevel |
Required form field has null or empty string input | 400 | Required field filterlevel cannot be empty |
Form data has unrecognized field | 400 | Unrecognized field: address |
Boolean form field has non-boolean input | 400 | Invalid format for sendtodomainquarantine, input must be true or false |
Invalid input for form field 'filterlevel' | 400 | Invalid filterLevel, input must be: on/off/exclusive |
BlackBerry Mobile Service
Index
URL:
[GET] /customers/(customer account number)/domains/(domain name)/ex/blackberrymobileservices
Description:
Returns a list of mailboxes that has BlackBerry mobile service enabled.
Remarks:
The index operation only supports the GET HTTP verb.
Example:
get '/customers/12345678/domains/example.com/ex/blackberrymobileservices', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Add
URL:
[POST] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)/blackberrymobileservice
Description:
Attaches a BlackBerry mobile service to the mailbox.
Field Name | Data Type | Description |
---|---|---|
activationPassword | string | Activation password () (Required) |
Example:
post '/customers/12345678/domains/example.com/ex/mailboxes/john.smith/blackberrymobileservice', 'text/xml', { 'activationPassword' => '12345' }
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | Mailbox not found |
Mailbox already has BlackBerry Service | 400 | User john.smith@example.com has BlackBerry Mobile Service already |
Delete
URL:
[DELETE] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)/blackberrymobileservice
Description:
Detaches a BlackBerry mobile service from a mailbox.
Example:
delete '/customers/12345678/domains/example.com/ex/mailboxes/john.smith/blackberrymobileservice', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | Mailbox not found |
ActiveSync Mobile Service
Index
URL:
[GET] /customers/(customer account number)/domains/(domain name)/ex/activesyncmobileservices
Description:
Returns a list of mailboxes that has ActiveSync mobile service enabled.
Remarks:
The index operation only supports the GET HTTP verb.
Example:
get '/customers/12345678/domains/example.com/ex/activesyncmobileservices', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Add
URL:
[POST] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)/activesyncmobileservice
Description:
Attaches a ActiveSync service to the mailbox.
Example:
post '/customers/12345678/domains/example.com/ex/mailboxes/john.smith/blackberrymobileservice', 'text/xml', { 'activationPassword' => '12345' }
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 404 | Invalid format |
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | Mailbox not found |
Mailbox already has BlackBerry Service | 400 | User john.smith@example.com has BlackBerry Mobile Service already |
Delete
URL:
[DELETE] /customers/(customer account number)/domains/(domain name)/ex/mailboxes/(mailbox name)/blackberrymobileservice
Description:
Detaches a ActiveSync mobile service from a mailbox.
Example:
delete '/customers/12345678/domains/example.com/ex/mailboxes/john.smith/blackberrymobileservice', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Domain is not found | 404 | abc.com not found |
Mailbox is not found | 404 | Mailbox not found |