Difference between revisions of "Exchange Mailbox (Rest API)"
(updating example) |
(→v1 - Current) |
||
(8 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
__TOC__ | __TOC__ | ||
+ | == v1 - Current == | ||
− | == Index == | + | === Index === |
''URL'': | ''URL'': | ||
− | <nowiki>[GET] http://api.emailsrvr.com/ | + | <nowiki>[GET] http://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes</nowiki> | /ex/mailboxes</nowiki> | ||
Line 22: | Line 23: | ||
''Remarks'': | ''Remarks'': | ||
− | The show operation only supports the GET HTTP verb. | + | The show operation only supports the GET HTTP verb. |
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | get '/customers/12345678/domains/example.com/ex/mailboxes | + | get '/customers/12345678/domains/example.com/ex/mailboxes' |
</pre> | </pre> | ||
Line 68: | Line 69: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | get '/customers/12345678/domains/example.com/ex/mailboxes?fields=size,currentUsage | + | get '/customers/12345678/domains/example.com/ex/mailboxes?fields=size,currentUsage' |
</pre> | </pre> | ||
− | == Show == | + | === Show === |
''URL'': | ''URL'': | ||
− | <nowiki>[GET] https://api.emailsrvr.com/ | + | <nowiki>[GET] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes/(mailbox name)</nowiki> | /ex/mailboxes/(mailbox name)</nowiki> | ||
Line 85: | Line 86: | ||
''Remarks'': | ''Remarks'': | ||
− | The show operation only supports the GET HTTP verb. | + | The show operation only supports the GET HTTP verb. |
The "samAccountName" is the logon name used to support clients and servers running older versions of the operating system. | The "samAccountName" is the logon name used to support clients and servers running older versions of the operating system. | ||
Line 92: | Line 93: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | get '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith | + | get '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith' |
</pre> | </pre> | ||
Line 130: | Line 131: | ||
</contactInfo> | </contactInfo> | ||
<emailForwardingAddress>apiexmailbox8@apidomain24.com</emailForwardingAddress> | <emailForwardingAddress>apiexmailbox8@apidomain24.com</emailForwardingAddress> | ||
+ | <saveForwardedEmail>false</saveForwardedEmail> | ||
<emailAddressList> | <emailAddressList> | ||
<emailAddress> | <emailAddress> | ||
Line 145: | Line 147: | ||
''Json Result Example'': | ''Json Result Example'': | ||
− | {"name":"apiexmailbox90", "displayName":"API Test", "size":2048, "currentUsage":0, "isHidden":false, "isPublicFolderAdmin":true, "enabled":true, "lastLogin":"2\/12\/2006 1:00:00 AM", "contactInfo":{"firstName":"API", "lastName":"Test", "jobTitle":"Dev", "company":"My Company", "department":"R&D", "businessNumber":"111-1111", "homeNumber":"222-2222", "mobileNumber":"333-3333", "faxNumber":"444-4444", "pagerNumber":"1234", "addressLine1":"123 Main Street", "city":"Blacksburg", "state":"VA", "zip":"24060", "country":"USA", "notes":"My Notes", "customID":"0123456789"}, "emailForwardingAddress":"apiexmailbox8@apidomain24.com", "emailAddressList":[{"address":"apiexmailbox90@apidomain92.com", "replyTo":true}], "hasBlackBerryMobileService":false, "hasActiveSyncMobileService":false, "samAccountName":"apiexmailbox90_53B5B", "visibleInRackspaceEmailCompanyDirectory":false} | + | {"name":"apiexmailbox90", "displayName":"API Test", "size":2048, "currentUsage":0, "isHidden":false, "isPublicFolderAdmin":true, "enabled":true, "lastLogin":"2\/12\/2006 1:00:00 AM", "contactInfo":{"firstName":"API", "lastName":"Test", "jobTitle":"Dev", "company":"My Company", "department":"R&D", "businessNumber":"111-1111", "homeNumber":"222-2222", "mobileNumber":"333-3333", "faxNumber":"444-4444", "pagerNumber":"1234", "addressLine1":"123 Main Street", "city":"Blacksburg", "state":"VA", "zip":"24060", "country":"USA", "notes":"My Notes", "customID":"0123456789"}, "emailForwardingAddress":"apiexmailbox8@apidomain24.com", "saveForwardedEmail":false, "emailAddressList":[{"address":"apiexmailbox90@apidomain92.com", "replyTo":true}], "hasBlackBerryMobileService":false, "hasActiveSyncMobileService":false, "samAccountName":"apiexmailbox90_53B5B", "visibleInRackspaceEmailCompanyDirectory":false} |
− | == Add/Edit == | + | === Add/Edit === |
''URL'': | ''URL'': | ||
− | <nowiki>Add: [POST] https://api.emailsrvr.com/ | + | <nowiki>Add: [POST] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes/(mailbox name) | /ex/mailboxes/(mailbox name) | ||
− | Edit: [PUT] https://api.emailsrvr.com/ | + | Edit: [PUT] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes/(mailbox name)</nowiki> | /ex/mailboxes/(mailbox name)</nowiki> | ||
Line 160: | Line 162: | ||
Adds/edits a mailbox using the specified form fields. All required fields must be supplied when adding. Other fields may be omitted. | Adds/edits a mailbox using the specified form fields. All required fields must be supplied when adding. Other fields may be omitted. | ||
+ | {{RouteRequiresFormEncoded}} | ||
{| class="wikitable" | {| class="wikitable" | ||
Line 257: | Line 260: | ||
| string | | 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.) | | 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.) | ||
+ | |- | ||
+ | | saveForwardedEmail | ||
+ | | boolean | ||
+ | | When true, copies of forwarded email are saved in this mailbox. When false, email is forwarded but not saved. | ||
|- | |- | ||
| visibleInRackspaceEmailCompanyDirectory | | visibleInRackspaceEmailCompanyDirectory | ||
Line 274: | Line 281: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith | + | post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith', |
{ | { | ||
'displayName' => 'Alex Smith', | 'displayName' => 'Alex Smith', | ||
Line 283: | Line 290: | ||
<pre> | <pre> | ||
− | put '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith | + | put '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith', |
{ | { | ||
'homeNumber' => '8005551234' | 'homeNumber' => '8005551234' | ||
Line 314: | Line 321: | ||
|} | |} | ||
− | == Delete == | + | === Delete === |
''URL'': | ''URL'': | ||
− | <nowiki>[DELETE] https://api.emailsrvr.com/ | + | <nowiki>[DELETE] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes/(mailbox name)</nowiki> | /ex/mailboxes/(mailbox name)</nowiki> | ||
Line 333: | Line 340: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | delete '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith | + | delete '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith' |
</pre> | </pre> | ||
− | == Add Email Address == | + | === Add Email Address === |
''URL'': | ''URL'': | ||
− | <nowiki>[POST] https://api.emailsrvr.com/ | + | <nowiki>[POST] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes/(mailbox name)/emailaddresses/(email address)</nowiki> | /ex/mailboxes/(mailbox name)/emailaddresses/(email address)</nowiki> | ||
Line 351: | Line 358: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/emailaddresses/alex@example.com', {} | + | post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/emailaddresses/alex@example.com', {} |
</pre> | </pre> | ||
− | == Delete Email Address == | + | === Delete Email Address === |
''URL'': | ''URL'': | ||
− | <nowiki>[DELETE] https://api.emailsrvr.com/ | + | <nowiki>[DELETE] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes/(mailbox name)/emailaddresses/(email address)</nowiki> | /ex/mailboxes/(mailbox name)/emailaddresses/(email address)</nowiki> | ||
Line 373: | Line 380: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | delete '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/emailaddresses/alex@example.com | + | delete '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith/emailaddresses/alex@example.com' |
</pre> | </pre> | ||
− | == Spam Settings == | + | === Spam Settings === |
See [[Mailbox_Spam_(Rest_API)| Exchange Mailbox Spam Settings]]. | See [[Mailbox_Spam_(Rest_API)| Exchange Mailbox Spam Settings]]. | ||
− | == Mailbox Permissions == | + | === Mailbox Permissions === |
Exchange mailboxes can be given permissions. A permission is defined as a tuple (mailbox, permissionType). | Exchange mailboxes can be given permissions. A permission is defined as a tuple (mailbox, permissionType). | ||
Line 388: | Line 395: | ||
permissionType:= (SendAs | FullAccess | Both) | permissionType:= (SendAs | FullAccess | Both) | ||
− | === Index Permissions === | + | ==== Index Permissions ==== |
''URL'': | ''URL'': | ||
− | <nowiki>[GET] http://api.emailsrvr.com/ | + | <nowiki>[GET] http://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes/(user)/permissions</nowiki> | /ex/mailboxes/(user)/permissions</nowiki> | ||
Line 400: | Line 407: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | get '/customers/100012/domains/enterpriseallservices.net/ex/mailboxes/jane.doe/permissions | + | get '/customers/100012/domains/enterpriseallservices.net/ex/mailboxes/jane.doe/permissions' |
</pre> | </pre> | ||
Line 428: | Line 435: | ||
that of user Joe Schmoe with permission type of "FullAccess". | that of user Joe Schmoe with permission type of "FullAccess". | ||
− | === Adding Permission === | + | ==== Adding Permission ==== |
''URL'': | ''URL'': | ||
− | <nowiki>[POST] http://api.emailsrvr.com/ | + | <nowiki>[POST] http://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes/(user1)/permissions/(user2)</nowiki> | /ex/mailboxes/(user1)/permissions/(user2)</nowiki> | ||
Line 438: | Line 445: | ||
Grants user2 the specified permission on mailbox of user1. | Grants user2 the specified permission on mailbox of user1. | ||
+ | |||
+ | {{RouteRequiresFormEncoded}} | ||
{| class="wikitable" | {| class="wikitable" | ||
Line 451: | Line 460: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | post '/customers/100012/domains/enterpriseallservices.net/ex/mailboxes/jane.doe/permissions/john.doe', {'permission' => 'fullAccess'} | + | post '/customers/100012/domains/enterpriseallservices.net/ex/mailboxes/jane.doe/permissions/john.doe', {'permission' => 'fullAccess'} |
</pre> | </pre> | ||
Line 457: | Line 466: | ||
The above result shows that on the mailbox of user Jane Doe, the user John Doe has been granted the permission of type "fullAccess". | The above result shows that on the mailbox of user Jane Doe, the user John Doe has been granted the permission of type "fullAccess". | ||
− | === Editing Permission === | + | ==== Editing Permission ==== |
''URL'': | ''URL'': | ||
− | <nowiki>[PUT] http://api.emailsrvr.com/ | + | <nowiki>[PUT] http://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes/(user1)/permissions/(user2)</nowiki> | /ex/mailboxes/(user1)/permissions/(user2)</nowiki> | ||
Line 467: | Line 476: | ||
Modifies permission granted to user2 on the mailbox of user1. | Modifies permission granted to user2 on the mailbox of user1. | ||
+ | |||
+ | {{RouteRequiresFormEncoded}} | ||
{| class="wikitable" | {| class="wikitable" | ||
Line 481: | Line 492: | ||
<pre> | <pre> | ||
put '/customers/100012/domains/enterpriseallservices.net/ex/mailboxes/jane.doe/permissions/john.doe', | put '/customers/100012/domains/enterpriseallservices.net/ex/mailboxes/jane.doe/permissions/john.doe', | ||
− | {'permission' => 'both'} | + | {'permission' => 'both'} |
</pre> | </pre> | ||
Line 487: | Line 498: | ||
The permission granted to user John Doe on the mailbox of Jane Doe is modified to "both". | The permission granted to user John Doe on the mailbox of Jane Doe is modified to "both". | ||
− | === Deleting Permission === | + | ==== Deleting Permission ==== |
''URL'': | ''URL'': | ||
− | <nowiki>[DELETE] http://api.emailsrvr.com/ | + | <nowiki>[DELETE] http://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes/(user1)/permissions/(user2)</nowiki> | /ex/mailboxes/(user1)/permissions/(user2)</nowiki> | ||
Line 500: | Line 511: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | delete '/customers/100012/domains/enterpriseallservices.net/ex/mailboxes/jane.doe/permissions/john.doe | + | delete '/customers/100012/domains/enterpriseallservices.net/ex/mailboxes/jane.doe/permissions/john.doe' |
</pre> | </pre> | ||
Line 506: | Line 517: | ||
The permission granted to user John Doe on the mailbox of Jane Doe is deleted. | The permission granted to user John Doe on the mailbox of Jane Doe is deleted. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | === ActiveSync Mobile Service === | |
− | === | + | ==== Index ==== |
''URL'': | ''URL'': | ||
− | + | <nowiki>[GET] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | <nowiki>[GET] https://api.emailsrvr.com/ | ||
/ex/activesyncmobileservices</nowiki> | /ex/activesyncmobileservices</nowiki> | ||
Line 638: | Line 540: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | get '/customers/12345678/domains/example.com/ex/activesyncmobileservices | + | get '/customers/12345678/domains/example.com/ex/activesyncmobileservices' |
</pre> | </pre> | ||
Line 664: | Line 566: | ||
{"offset":0,"size":50,"total":3,"mailboxes":["apiexmailbox36","apiexmailbox66","apiexmailbox85"]} | {"offset":0,"size":50,"total":3,"mailboxes":["apiexmailbox36","apiexmailbox66","apiexmailbox85"]} | ||
− | === Show === | + | ==== Show ==== |
''URL'': | ''URL'': | ||
− | <nowiki>[GET] https://api.emailsrvr.com/ | + | <nowiki>[GET] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes/(mailbox name)/activesyncmobileservice</nowiki> | /ex/mailboxes/(mailbox name)/activesyncmobileservice</nowiki> | ||
Line 678: | Line 580: | ||
''Remarks'': | ''Remarks'': | ||
− | The index operation only supports the GET HTTP verb. | + | The index operation only supports the GET HTTP verb. |
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | get '/customers/12345678/domains/example.com/ex/mailboxes/john.smith/activesyncmobileservice | + | get '/customers/12345678/domains/example.com/ex/mailboxes/john.smith/activesyncmobileservice' |
</pre> | </pre> | ||
Line 717: | Line 619: | ||
|} | |} | ||
− | === Add === | + | ==== Add ==== |
''URL'': | ''URL'': | ||
− | <nowiki>[POST] https://api.emailsrvr.com/ | + | <nowiki>[POST] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes/(mailbox name)/activesyncmobileservice</nowiki> | /ex/mailboxes/(mailbox name)/activesyncmobileservice</nowiki> | ||
Line 731: | Line 633: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | post '/customers/12345678/domains/example.com/ex/mailboxes/john.smith/activesyncmobileservice | + | post '/customers/12345678/domains/example.com/ex/mailboxes/john.smith/activesyncmobileservice', {} |
</pre> | </pre> | ||
Line 748: | Line 650: | ||
− | === Delete === | + | ==== Delete ==== |
''URL'': | ''URL'': | ||
− | <nowiki>[DELETE] https://api.emailsrvr.com/ | + | <nowiki>[DELETE] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/mailboxes/(mailbox name)/activesyncmobileservice</nowiki> | /ex/mailboxes/(mailbox name)/activesyncmobileservice</nowiki> | ||
Line 762: | Line 664: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | delete '/customers/12345678/domains/example.com/ex/mailboxes/john.smith/activesyncmobileservice | + | delete '/customers/12345678/domains/example.com/ex/mailboxes/john.smith/activesyncmobileservice' |
</pre> | </pre> |
Latest revision as of 07:51, 28 January 2020
Contents
v1 - Current
Index
URL:
[GET] http://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/mailboxes
Description:
Shows a list of mailboxes under the domain
Filter/Search:
Mailbox searches may be filtered by the 'enabled' flag using query methods ?enabled=true and ?enabled=false.
Remarks:
The show operation only supports the GET HTTP verb.
Example:
get '/customers/12345678/domains/example.com/ex/mailboxes'
XML Result Example:
<?xml version="1.0" encoding="utf-8"?> <mailboxList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:mailboxList"> <offset>0</offset> <size>50</size> <total>3</total> <mailboxes> <mailbox> <name>apiexmailbox55</name> <displayName>API Test</displayName> </mailbox> <mailbox> <name>apiexmailbox6</name> <displayName>API Test</displayName> </mailbox> <mailbox> <name>apiexmailbox90</name> <displayName>API Test</displayName> </mailbox> </mailboxes> </mailboxList>
Json Result Example:
{"offset":0,"size":50,"total":3,"mailboxes":[{"name":"apiexmailbox55","displayName":"API Test"},{"name":"apiexmailbox6","displayName":"API Test"},{"name":"apiexmailbox90","displayName":"API Test"}]}
Custom Fields:
The result displays each mailbox's 'name' and 'displayName' as default. There is a query string 'fields' that allows the result to display more mailbox properties. The additional properties are: 'size', 'currentUsage', 'hasBlackBerryMobileService', 'hasActiveSyncMobileService'.
Example:
get '/customers/12345678/domains/example.com/ex/mailboxes?fields=size,currentUsage'
Show
URL:
[GET] https://api.emailsrvr.com/v1/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.
The "samAccountName" is the logon name used to support clients and servers running older versions of the operating system.
Example:
get '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith'
XML Result Example:
<?xml version="1.0" encoding="utf-8"?> <mailbox xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:mailbox"> <name>apiexmailbox90</name> <displayName>API Test</displayName> <size>2048</size> <currentUsage>0</currentUsage> <isHidden>false</isHidden> <visibleInRackspaceEmailCompanyDirectory>false</visibleInRackspaceEmailCompanyDirectory> <isPublicFolderAdmin>true</isPublicFolderAdmin> <enabled>true</enabled> <lastLogin>2/12/2010 1:00:00 AM</lastLogin> <contactInfo> <firstName>API</firstName> <lastName>Test</lastName> <jobTitle>Dev</jobTitle> <company>My Company</company> <department>R&D</department> <businessNumber>111-1111</businessNumber> <homeNumber>222-2222</homeNumber> <mobileNumber>333-3333</mobileNumber> <faxNumber>444-4444</faxNumber> <pagerNumber>1234</pagerNumber> <addressLine1>123 Main Street</addressLine1> <city>Blacksburg</city> <state>VA</state> <zip>24060</zip> <country>USA</country> <notes>My Notes</notes> <customID>0123456789</customID> </contactInfo> <emailForwardingAddress>apiexmailbox8@apidomain24.com</emailForwardingAddress> <saveForwardedEmail>false</saveForwardedEmail> <emailAddressList> <emailAddress> <address>apiexmailbox90@apidomain92.com</address> <replyTo>true</replyTo> </emailAddress> </emailAddressList> <hasBlackBerryMobileService>false</hasBlackBerryMobileService> <hasActiveSyncMobileService>false</hasActiveSyncMobileService> <samAccountName>apiexmailbox90_53B5B</samAccountName> </mailbox>
Json Result Example:
{"name":"apiexmailbox90", "displayName":"API Test", "size":2048, "currentUsage":0, "isHidden":false, "isPublicFolderAdmin":true, "enabled":true, "lastLogin":"2\/12\/2006 1:00:00 AM", "contactInfo":{"firstName":"API", "lastName":"Test", "jobTitle":"Dev", "company":"My Company", "department":"R&D", "businessNumber":"111-1111", "homeNumber":"222-2222", "mobileNumber":"333-3333", "faxNumber":"444-4444", "pagerNumber":"1234", "addressLine1":"123 Main Street", "city":"Blacksburg", "state":"VA", "zip":"24060", "country":"USA", "notes":"My Notes", "customID":"0123456789"}, "emailForwardingAddress":"apiexmailbox8@apidomain24.com", "saveForwardedEmail":false, "emailAddressList":[{"address":"apiexmailbox90@apidomain92.com", "replyTo":true}], "hasBlackBerryMobileService":false, "hasActiveSyncMobileService":false, "samAccountName":"apiexmailbox90_53B5B", "visibleInRackspaceEmailCompanyDirectory":false}
Add/Edit
URL:
Add: [POST] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/mailboxes/(mailbox name) Edit: [PUT] https://api.emailsrvr.com/v1/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.
Note: this route requires that you submit the request body in Content-Type: application/x-www-form-urlencoded
format
Field Name | Data Type | Description |
---|---|---|
displayName | string | Display name (Required for Add) |
password | 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 |
customID | string | A custom field that can be used to tie user mailboxes to external user systems |
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.) |
saveForwardedEmail | boolean | When true, copies of forwarded email are saved in this mailbox. When false, email is forwarded but not saved. |
visibleInRackspaceEmailCompanyDirectory | boolean | Flag indicating whether the mailbox is visible in the company directory |
enabled | boolean | Enable/Disable mailbox, input must be "true" or "false" |
lastLogin (read only) | string | Date of last login, EST Time (in string format) |
Example:
post '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith', { 'displayName' => 'Alex Smith', 'password' => 'Secret123!@#', 'size' => '2048' }
put '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith', { 'homeNumber' => '8005551234' }
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
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 |
New mailbox password doesn't meet the password pattern requirements | 400 | Password must be at least 8 characters long |
New mailbox name (user name) already exists | 400 | The email address john.doe@abc.com is already in use |
Delete
URL:
[DELETE] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/mailboxes/(mailbox name)
Description:
Deletes the mailbox.
Remarks:
The mailbox and mailbox contents are deleted permanently.
Example:
delete '/customers/12345678/domains/example.com/ex/mailboxes/alex.smith'
Add Email Address
URL:
[POST] https://api.emailsrvr.com/v1/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', {}
Delete Email Address
URL:
[DELETE] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/mailboxes/(mailbox name)/emailaddresses/(email address)
Description:
Deletes the 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'
Spam Settings
See Exchange Mailbox Spam Settings.
Mailbox Permissions
Exchange mailboxes can be given permissions. A permission is defined as a tuple (mailbox, permissionType).
permissionType:= (SendAs | FullAccess | Both)
Index Permissions
URL:
[GET] http://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/mailboxes/(user)/permissions
Description:
Shows the current set of permissions granted on a user's mailbox.
Example:
get '/customers/100012/domains/enterpriseallservices.net/ex/mailboxes/jane.doe/permissions'
XML Result Example:
<?xml version="1.0" encoding="utf-8"?> <permissionList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:permissionList"> <offset>0</offset> <size>50</size> <total>0</total> <permissions> <permission> <emailAddress>joe.schmoe@enterpriseallservices.net</emailAddress> <permissionType>fullAccess</permissionType> </permission> </permissions> </permissionList>
Json Result Example:
{"offset":0,"size":50,"total":0,"permissions":[{"emailAddress":"joe.schmoe@enterpriseallservices.net","permissionType":"fullAccess"}]}
Comments: The above result shows the permission list for user Jane Doe's mailbox. The list contains one entry corresponding to that of user Joe Schmoe with permission type of "FullAccess".
Adding Permission
URL:
[POST] http://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/mailboxes/(user1)/permissions/(user2)
Description:
Grants user2 the specified permission on mailbox of user1.
Note: this route requires that you submit the request body in Content-Type: application/x-www-form-urlencoded
format
Field Name | Data Type | Description |
---|---|---|
permission | string | permissionType (Required) |
Example:
post '/customers/100012/domains/enterpriseallservices.net/ex/mailboxes/jane.doe/permissions/john.doe', {'permission' => 'fullAccess'}
Comments: The above result shows that on the mailbox of user Jane Doe, the user John Doe has been granted the permission of type "fullAccess".
Editing Permission
URL:
[PUT] http://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/mailboxes/(user1)/permissions/(user2)
Description:
Modifies permission granted to user2 on the mailbox of user1.
Note: this route requires that you submit the request body in Content-Type: application/x-www-form-urlencoded
format
Field Name | Data Type | Description |
---|---|---|
permission | string | permissionType (Required) |
Example:
put '/customers/100012/domains/enterpriseallservices.net/ex/mailboxes/jane.doe/permissions/john.doe', {'permission' => 'both'}
Comments: The permission granted to user John Doe on the mailbox of Jane Doe is modified to "both".
Deleting Permission
URL:
[DELETE] http://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/mailboxes/(user1)/permissions/(user2)
Description:
Deletes permission granted to user2 on the mailbox of user1.
Example:
delete '/customers/100012/domains/enterpriseallservices.net/ex/mailboxes/jane.doe/permissions/john.doe'
Comments: The permission granted to user John Doe on the mailbox of Jane Doe is deleted.
ActiveSync Mobile Service
Index
URL:
[GET] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/activesyncmobileservices
Description:
Returns a list of mailboxes that have ActiveSync mobile service enabled.
Remarks:
The index operation only supports the GET HTTP verb.
Example:
get '/customers/12345678/domains/example.com/ex/activesyncmobileservices'
XML Result Example:
<?xml version="1.0" encoding="utf-8"?> <activeSyncMobileServiceList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:activeSyncMobileServiceList"> <offset>0</offset> <size>50</size> <total>3</total> <mailboxes> <mailbox>apiexmailbox36</mailbox> <mailbox>apiexmailbox66</mailbox> <mailbox>apiexmailbox85</mailbox> </mailboxes> </activeSyncMobileServiceList>
Json Result Example:
{"offset":0,"size":50,"total":3,"mailboxes":["apiexmailbox36","apiexmailbox66","apiexmailbox85"]}
Show
URL:
[GET] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/mailboxes/(mailbox name)/activesyncmobileservice
Description:
Returns the mailbox ActiveSync mobile service setup information to access Hosted Exchange 2007.
Remarks:
The index operation only supports the GET HTTP verb.
Example:
get '/customers/12345678/domains/example.com/ex/mailboxes/john.smith/activesyncmobileservice'
XML Result Example:
<?xml version="1.0" encoding="utf-8"?> <activeSyncMobileService xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:activeSyncMobileService"> <emailAddress>john.smith@example.com</emailAddress> <serverAddress>mex07A.emailsrvr.com</serverAddress> <userName>johnsmith1234</userName> <domainAddress>mex07A.mlsrvr.com</domainAddress> </activeSyncMobileService>
Json Result Example:
{"emailAddress":"john.smith@example.com","serverAddress":"mex07A.emailsrvr.com","userName":"johnsmith1234","domainAddress":"mex07A.mlsrvr.com"}
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Mailbox has no ActiveSync service | 404 | User john.smith@example.com has no active ActiveSync Mobile Service. |
Add
URL:
[POST] https://api.emailsrvr.com/v1/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/activesyncmobileservice', {}
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Mailbox already has ActiveSync Service | 400 | User john.smith@example.com has ActiveSync Mobile Service already |
Delete
URL:
[DELETE] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/mailboxes/(mailbox name)/activesyncmobileservice
Description:
Detaches a ActiveSync mobile service from a mailbox.
Example:
delete '/customers/12345678/domains/example.com/ex/mailboxes/john.smith/activesyncmobileservice'