Lists customers to which the authenticated user has access.
Filter/Search
Search parameter 'startswith' and 'contains' will try to find the result in customer name, account number and reference number. We also provide a separate query method ?referenceNumber=123456 that will return a Show on the exact customer whose reference number is as specified.
GET '/customers?size=100\u0026offset=10,' 'text/xml'" });
{ "offset":0, "size":50, "total":3, "customers":[ { "name":"API Customer 17", "accountNumber":"460182", "referenceNumber":"49" }, { "name":"API Customer 39", "accountNumber":"460181", "referenceNumber":"23" }, { "name":"API Customer 50", "accountNumber":"460183", "referenceNumber":"10" } ] }
<?xml version="1.0" encoding="UTF-8"?> <customerList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:customerList"> <offset>0</offset> <size>50</size> <total>3</total> <customers> <customer> <name>API Customer 17</name> <accountNumber>460182</accountNumber> <referenceNumber>49</referenceNumber> </customer> <customer> <name>API Customer 39</name> <accountNumber>460181</accountNumber> <referenceNumber>23</referenceNumber> </customer> <customer> <name>API Customer 50</name> <accountNumber>460183</accountNumber> <referenceNumber>10</referenceNumber> </customer> </customers> </customerList>
Adds a sub-account.
Note that customer number is not known until the customer is added.
| Field Name | Data Type | Description |
| name | string | The customer's display name (Required for Add) |
| referenceNumber | string | The reference number of this account |
POST '/customers', 'text/xml', { 'name' =\u003E 'Name' }" });
This operation does not return a response body.
Shows sub-account details.
Remarks
To do the show operation on the account that is logged in instead of a customer's account, use "me" in the place of the customer account number i.e. 'https://api.emailsrvr.com/v0/customers/me'.
The show operation only supports the GET HTTP verb. For text/xml format, refer to the following schema document: Customer.xsd
Example: Querying with Reference Number
The query string "referenceNumber=xx" searches for a customer with an exact reference number.
GET '/customers?referenceNumber=49', 'text/xml'
GET /customers/me, text/xml" });
<?xml version="1.0" encoding="UTF-8"?> <customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:customer"> <name>API Customer 17</name> <accountNumber>460182</accountNumber> <referenceNumber>49</referenceNumber> </customer>
{"name":"API Customer 17","accountNumber":"460182","referenceNumber":"49"}
Updates a sub-account.
| Parameter | Style | Type | Description |
|---|---|---|---|
| name | plain | xsd:string |
The display name for the customer. |
| referenceNumber (Optional) | plain | xsd:string |
The reference number for the account |
PUT '/customers/999999', 'text/xml', { 'name' =\u003E 'NewName', 'referenceNumber' =\u003E '12345' }" });
This operation does not return a response body.
Deletes a sub-account.
DELETE '/customers/999999', 'text/xml'" });
This operation does not return a response body.
Generates a login token that a customer can use to SSO into the Control Panel.
Login tokens can be generated for virtual and non-virtual users.
Virtual user gets the administrator's privileges when SSOed into the Control Panel.
Non-virtual user gets only as much privileges as are given to him/her when his/her account was created.
A Login token is valid for ten minutes after its creation. The "dateCreated" field indicates the time when the login token is created.
Using the generated login token shown in the example below, the customer with account number 460896 can SSO into the Control Panel using the following URL: http://ControlPanelURL/TokenLogin.aspx?loginToken=EEB0012D8DBC2CAC26E28365D44B537FFF0D79350
A customer can also use the login token to log into their private label control panel (E.g.: cp.mydomain.com/logintokens.aspx).
| Field Name | Data Type | Description |
| userName | string | The name for which login token needs to be created. |
| virtualUser | string | A flag indicating whether the user for whom the login token needs to be generated is virtual or non-virtual. Valid values: true/false. When set to true, the userName is treated as a virtual user. When set to false, the userName is treated as a non-virtual user.
If you specify a customer account, a list of admins under that specific account are returned.
This operation returns a list of admins under the account. If you specify a customer account, a list of admins under that specific account is returned.
Alternate route: /v0/admins
Remarks
To retrieve a list of admins owned by the account that is logged in, use "me" as the customer account number i.e. 'https://api.emailsrvr.com/v0/customers/me/domains'.
GET '/customers/999999/admins?size=5\u0026page=1', 'text/xml'" });
{"admins":[{"adminId":"apiadmin37","enabled":true,"locked":false,"type":"super"},{"adminId":"apiadmin76","enabled":true,"locked":false,"type":"super"},{"adminId":"apiadmin94","enabled":true,"locked":false,"type":"super"}],"offset":0,"size":50,"total":3}
<?xml version="1.0" encoding="utf-8"?> <adminList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:adminList"> <offset>0</offset> <size>50</size> <total>3</total> <admins> <admin> <adminId>apiadmin37</adminId> <type>super</type> <enabled>true</enabled> <locked>false</locked> </admin> <admin> <adminId>apiadmin76</adminId> <type>super</type> <enabled>true</enabled> <locked>false</locked> </admin> <admin> <adminId>apiadmin94</adminId> <type>super</type> <enabled>true</enabled> <locked>false</locked> </admin> </admins> </adminList>
Shows admin details.
The show operation will return detailed information about the specified admin.
Alternate route: /v0/admins/{admin name}
Remarks
The show operation only supports the GET HTTP verb. For text/xml format, refer to the following schema document: Admin.xsd
GET '/customers/999999/admins/admin1', 'text/xml'" });
{"adminId":"apiadmin1","allowSimultaneousLogins":false,"email":"first.last@rackspace.com","firstName":"First","enabled":true,"locked":false,"lastName":"Last","passwordExpiration":10,"restrictedIps":["<IP_ADDRESS>","<IP_ADDRESS>","<IP_ADDRESS>"],"type":"super"}
<?xml version="1.0" encoding="utf-8"?> <admin xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:admin"> <adminId>apiadmin1</adminId> <type>super</type> <enabled>true</enabled> <locked>false</locked> <firstName>First</firstName> <lastName>Last</lastName><EMAIL_ADDRESS><passwordExpiration>10</passwordExpiration> <allowSimultaneousLogins>false</allowSimultaneousLogins> <restrictedIps> <restrictedIps><IP_ADDRESS></restrictedIps> <restrictedIps><IP_ADDRESS></restrictedIps> <restrictedIps><IP_ADDRESS></restrictedIps> </restrictedIps> </admin>
Adds an admin to a specified account.
Add a new admin under the specified account.
Alternate route: /v0/admins/{admin name}
| Field Name | Data Type | Description |
| type | string | Admin type (Required for Add). Must be "super", "standard" or "limited". Can't change permissions and domain access for limited admin at this point. |
| password | string | Admin log in password (Required for Add) |
| firstName | string | Admin first name (Required for Add) |
| lastName | string | Admin last name (Required for Add) |
| string | Admin contact email (Required for Add) | |
| securityQuestion | string | Security question (Required for Add) |
| securityAnswer | string | Security answer (Required for Add) |
| passwordExpiration | int | The number of days in which password expires. 0 means password never expires. |
| allowSimultaneousLogins | boolean | Allow simultaneous logins using this Administrative ID |
| restrictedIps | string | Login restricted to IP address(es). Can be up to 3 valid addresses separated by commas. |
| enabled | boolean | Enable/disable admin account |
| locked | boolean | Lock/unlock admin account |
POST '/customers/999999/admins/admin1', { 'type' =\u003E 'super', 'password' =\u003E 'password', 'firstName' =\u003E 'First', 'lastName' =\u003E 'Last', 'email' =\u003E<EMAIL_ADDRESS>'securityQuestion' =\u003E 'Q', 'securityAnswer' =\u003E 'A' }, 'text/xml'" });
This operation does not return a response body.
Updates an admin for a specified account.
Edit an existing admin under the specified account.
Alternate route: /v0/admins/{admin name}
| Field Name | Data Type | Description |
| type | string | Admin type (Required for Add). Must be "super", "standard" or "limited". Can't change permissions and domain access for limited admin at this point. |
| password | string | Admin log in password (Required for Add) |
| firstName | string | Admin first name (Required for Add) |
| lastName | string | Admin last name (Required for Add) |
| string | Admin contact email (Required for Add) | |
| securityQuestion | string | Security question (Required for Add) |
| securityAnswer | string | Security answer (Required for Add) |
| passwordExpiration | int | The number of days in which password expires. 0 means password never expires. |
| allowSimultaneousLogins | boolean | Allow simultaneous logins using this Administrative ID |
| restrictedIps | string | Login restricted to IP address(es). Can be up to 3 valid addresses separated by commas. |
| enabled | boolean | Enable/disable admin account |
| locked | boolean | Lock/unlock admin account |
PUT '/customers/999999/admins/admin2', { 'enabled' =\u003E 'true', 'locked' =\u003E 'false', 'passwordExpiration' =\u003E '0', 'allowSimultaneousLogins' =\u003E 'true', 'restrictedIps' =\u003E '<IP_ADDRESS>' }, 'text/xml'" });
This operation does not return a response body.
Deletes an admin for a specified account.
Deletes an admin
Alternate route: /v0/admins/{admin name}
DELETE '/customers/999999/admins/admin1', 'text/xml'" });
This operation does not return a response body.
Lists domains in a specified account.
If you specify a customer account, a list of domains under that specific account is returned.
Remarks
To retrieve a list of domains owned by the account that is logged in, use "me" as the customer account number i.e. 'https://api.emailsrvr.com/v0/customers/me/domains'. To retrieve a list of domains owned by all customer sub-accounts and your own account, use "all" as the customer account number.
GET '/customers/all/domains?size=100\u0026offset=10', 'text/xml'" });
{"offset":0,"size":50,"total":3,"domains": [{"name":"apidomain53.com","accountNumber":"100000","serviceType":"both"}, {"name":"apidomain66.com","accountNumber":"100001","serviceType":"both"}, {"name":"apidomain68.com","accountNumber":"100002","serviceType":"both"}]}
<?xml version="1.0" encoding="utf-8"?> <domainList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:domainList"> <offset>0</offset> <size>50</size> <total>3</total> <domains> <domain> <name>apidomain53.com</name> <accountNumber>100000</accountNumber> <serviceType>both</serviceType> </domain> <domain> <name>apidomain66.com</name> <accountNumber>100001</accountNumber> <serviceType>both</serviceType> </domain> <domain> <name>apidomain68.com</name> <accountNumber>100002</accountNumber> <serviceType>both</serviceType> </domain> </domains> </domainList>
Shows domain details.
Remarks
The show operation only supports the GET HTTP verb.
Notes
These two fields 'exchangeUsedStorage' and 'rsEmailUsedStorage' actually return the number of active mailboxes in each service respectively.
Due to a performance issue Domain Public Folder Status is now returned from an individual URL. The field 'publicFoldersEnabled' from Show Domain result always returns 'false' at this moment.
GET '/customers/999999/domains/example.com', 'text/xml'" });
{"name":"apidomain21.com","accountNumber":"100000","serviceType":"both", "exchangeBaseMailboxSize":2048,"exchangeUsedStorage":0,"exchangeTotalStorage":18432, "exchangeExtraStorage":10240,"exchangeMaxNumMailboxes":4,"rsEmailBaseMailboxSize":2048, "rsEmailMaxNumberMailboxes":4,"rsEmailExtraStorage":10240,"rsEmailUsedStorage":0, "aliases":[],"archivingServiceEnabled":false,"publicFoldersEnabled":false, "blackBerryMobileServiceEnabled":true,"blackBerryLicenses":4,"activeSyncMobileServiceEnabled":true, "activeSyncLicenses":4}
<?xml version="1.0" encoding="utf-8"?> <domain xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:domain"> <name>apidomain21.com</name> <accountNumber>100000</accountNumber> <serviceType>both</serviceType> <exchangeBaseMailboxSize>2048</exchangeBaseMailboxSize> <exchangeUsedStorage>0</exchangeUsedStorage> <exchangeTotalStorage>18432</exchangeTotalStorage> <exchangeExtraStorage>10240</exchangeExtraStorage> <exchangeMaxNumMailboxes>4</exchangeMaxNumMailboxes> <rsEmailBaseMailboxSize>2048</rsEmailBaseMailboxSize> <rsEmailMaxNumberMailboxes>4</rsEmailMaxNumberMailboxes> <rsEmailExtraStorage>10240</rsEmailExtraStorage> <rsEmailUsedStorage>0</rsEmailUsedStorage> <aliases /> <archivingServiceEnabled>false</archivingServiceEnabled> <publicFoldersEnabled>false</publicFoldersEnabled> <blackBerryMobileServiceEnabled>true</blackBerryMobileServiceEnabled> <blackBerryLicenses>4</blackBerryLicenses> <activeSyncMobileServiceEnabled>true</activeSyncMobileServiceEnabled> <activeSyncLicenses>4</activeSyncLicenses> </domain>
Adds an domain and specified data to an account.
Adds a domain to the account with the data specified.
To add a domain to your own account, use your own account id.
| Field Name | Data Type | Description |
| serviceType | string | Domain service type. "rsemail" = "Rackspace Email Only". "exchange" = "Exchange Only". "both" = "Rackspace Email and Exchange" |
| exchangeExtraStorage | int | Exchange service extra storage in megabytes |
| exchangeMaxNumMailboxes | int | Maximum number of mailboxes allowed under the domain Exchange service. Required for Adding Exchange service |
| rsEmailBaseMailboxSize | int | Rackspace Email base mailbox size in megabytes |
| rsEmailMaxNumberMailboxes | int | Maximum number of mailboxes allowed under the domain Rackspace Email service. Required for Adding Rackspace Email service |
| rsEmailExtraStorage | int | Rackspace Email service extra storage in megabytes |
| blackBerryMobileServiceEnabled | boolean | Enable or disable domain BlackBerry Mobile service |
| blackBerryLicenses | int | Maximum number of mailboxes allowed to have BlackBerry Mobile service. 0 means unlimited |
| activeSyncMobileServiceEnabled | boolean | Enable or disable domain ActiveSync Mobile service |
| activeSyncLicenses | int | Maximum number of mailboxes allowed to have ActiveSync Mobile service. 0 means unlimited |
| goodMobileServiceEnabled (deprecated) | boolean | Enable or disable domain Good Mobile service |
| goodMobileLicenses (deprecated) | int | Maximum number of mailboxes allowed to have Good Mobile service. 0 means unlimited |
| archivingServiceEnabled | boolean | Enable or disable domain archiving service |
POST '/customers/123455/domains/newcompany.com', 'text/xml', { 'maxNumMailboxes' =\u003E '5', 'extraStorage' =\u003E '1024' }" });
This operation does not return a response body.
Updates an account domain with specified data.
| Field Name | Data Type | Description |
| serviceType | string | Domain service type. "rsemail" = "Rackspace Email Only". "exchange" = "Exchange Only". "both" = "Rackspace Email and Exchange" |
| exchangeExtraStorage | int | Exchange service extra storage in megabytes |
| exchangeMaxNumMailboxes | int | Maximum number of mailboxes allowed under the domain Exchange service. Required for Adding Exchange service |
| rsEmailBaseMailboxSize | int | Rackspace Email base mailbox size in megabytes |
| rsEmailMaxNumberMailboxes | int | Maximum number of mailboxes allowed under the domain Rackspace Email service. Required for Adding Rackspace Email service |
| rsEmailExtraStorage | int | Rackspace Email service extra storage in megabytes |
| blackBerryMobileServiceEnabled | boolean | Enable or disable domain BlackBerry Mobile service |
| blackBerryLicenses | int | Maximum number of mailboxes allowed to have BlackBerry Mobile service. 0 means unlimited |
| activeSyncMobileServiceEnabled | boolean | Enable or disable domain ActiveSync Mobile service |
| activeSyncLicenses | int | Maximum number of mailboxes allowed to have ActiveSync Mobile service. 0 means unlimited |
| goodMobileServiceEnabled (deprecated) | boolean | Enable or disable domain Good Mobile service |
| goodMobileLicenses (deprecated) | int | Maximum number of mailboxes allowed to have Good Mobile service. 0 means unlimited |
| archivingServiceEnabled | boolean | Enable or disable domain archiving service |
PUT '/customers/123455/domains/newcompany.com', 'text/xml', { 'maxNumMailboxes' =\u003E '25', 'extraStorage' =\u003E '2048' }" });
This operation does not return a response body.
Moves a domain to a specified customer account.
Remarks
'Move Domain' and 'Edit Domain' share the same URI and HTTP verb. When the domain doesn't belong to the customer and 'moveDomain' is set to 'true', API will take the request as a 'Move Domain' call.
| Field Name | Data Type | Description |
| moveDomain | boolean | Indicate whether or not moving the domain |
PUT '/customers/123456/domains/newcompany.com', 'text/xml', { 'moveDomain' =\u003E 'true' }" });
This operation does not return a response body.
Lists domain aliases and accepted alternate domains for a specified domain.
This operation returns a list of Domain Aliases and Accepted Domains for the domain.
The type of the alternate domain is indicated by the 'type' data field.
GET '/customers/12345678/domains/test.com/alternatedomains', 'text/xml'" });
{"alternateDomains":[{"name":"domainalias.com","type":"DomainAlias"},{"name":"accepteddomain.com","type":"AcceptedDomain"}]}
<?xml version="1.0" encoding="utf-8"?> <alternateDomainList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:domainAlternateList"> <alternateDomains> <alternateDomain> <name>domainalias.com</name> <type>DomainAlias</type> </alternateDomain> <alternateDomain> <name>accepteddomain.com</name> <type>AcceptedDomain</type> </alternateDomain> </alternateDomains> </alternateDomainList>
Adds a domain alias or accepted alternate domain to a specified domain.
| Field Name | Data Type | Description |
| type | string | Alternate domain type. Send "DomainAlias" for a domain alias, and "AcceptedDomain" for an accepted domain. (Required) |
| createForExistingRecipients | boolean | Whether the alternate addresses should be created for existing mailboxes when adding an Accepted Domain. Sending this field in the request when the type is Domain Alias will throw an error. This defaults to false. |
POST '/customers/123456/domains/example.com/alternatedomains/accepteddomain.com', 'text/xml', { 'type' =\u003E 'AcceptedDomain' 'createForExistingRecipients' =\u003E 'true' }" });
This operation does not return a response body.
Deletes an alternate domain.
DELETE '/customers/12345678/domains/example.com/alternatedomains/accepteddomain.com'" });
This operation does not return a response body.
Shows current external email server details.
Shows the current external email server.
GET '/customers/12345678/domains/company.com/splitdomainrouting', 'text/xml'" });
{"externalServer":"email.externalserver.com"}
<?xml version="1.0" encoding="utf-8"?> <splitDomainRouting xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:splitDomainRouting"> <externalServer>email.externalserver.com</externalServer> </splitDomainRouting>
Sets the external email server.
This command will return a success when the verification passes. Since this involves communication to the external server the request may take some time. If the verification fails a 400 return code is sent back with the verification's error message.
| Field Name | Data Type | Description |
| externalServer | string | The address of the external email server. To turn off split domain routing send 'none'. (Required) |
| verificationAddress | string | An email address part of your domain or one of the alternate domains that the external server is already set up to handle. (Required only when turning on split domain routing, Do not send this field if turning off.) |
PUT '/customers/12345678/domains/company.com/splitdomainrouting', 'text/xml', { 'externalServer' =\u003E 'email.externalserver.com', 'verificationAddress' =\u003E<EMAIL_ADDRESS>}" });
This operation does not return a response body.
Gets the domain archiving service SSO login URL.
Remarks
The retrieved URL can be used in browser to access the domain archiving control panel.
GET '/customers/12345678/domains/company.com/archivingSSOLoginURL', 'text/xml'" });
This operation does not return a response body.
Shows the Exchange public folders status for the domain.
Shows the Exchange public folders status for the domain.
GET '/customers/12345678/domains/company.com/ex/publicFolders', 'text/xml'" });
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?> <domainPublicFolders xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:domainPublicFolders"> <enabled>true</enabled> </domainPublicFolders>
Enables the Exchange public folders feature on the domain. Once enabled, it cannot be disabled.
| Field Name | Data Type | Description |
| enabled | string | Whether to enable public folders. Once enabled, it cannot be disabled. |
PUT '/customers/12345678/domains/company.com/ex/publicFolders', 'text/xml', { 'enabled' =\u003E 'true' }" });
This operation does not return a response body.
Sends an email to all mailboxes for the domain. This request returns a list of recipients.
Send an email to all mailboxes for the domain. This request returns a list of recipients.
Alternate route: /v0/domains/{domain name}/emaileveryone
| Field Name | Data Type | Description |
| fromName | string | Sender's Name |
| fromAddress | string | Sender's Email Address |
| subject | string | Message subject |
| body | string | Message body |
POST '/customers/12345678/domains/example.com/emaileveryone', 'text/xml', { 'fromName' =\u003E 'John Doe', 'fromAddress' =\u003E<EMAIL_ADDRESS>'subject' =\u003E 'Hi All', 'body' =\u003E 'Hello World.', }" });
{"emailAddresses":["a<EMAIL_ADDRESS><?xml version="1.0" encoding="utf-8"?> <emailAddressList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:emailAddressList"> <emailAddresses><EMAIL_ADDRESS><EMAIL_ADDRESS></emailAddresses> </emailAddressList>
Returns the Catch-All Address for the domain. Returns empty string when no Catch-All Address set for the domain.
Return the Catch-All Address for the domain. Returns empty string when no Catch-All Address set for the domain.
Alternate route: /v0/domains/{domain name}/catchalladdress
Remarks
When an email is sent to a mailbox that does not exist on your domain, deliver the email to this address.
GET '/customers/999999/domains/example.com/catchalladdress', 'text/xml'" });
<EMAIL_ADDRESS><?xml version="1.0" encoding="utf-8"?> <emailAddress xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:emailAddress"><EMAIL_ADDRESS></emailAddress>
Edits the Catch-All Address for the domain.
Edit the Catch-All Address for the domain.
Alternate route: /v0/domains/{domain name}/catchalladdress
Remarks
When an email is sent to a mailbox that does not exist on your domain, deliver the email to this address.
Notes
This request may take about 1-2 minutes to be applied to the domain.
| Field Name | Data Type | Description |
| address | string | The Catch-All email address. Set address to empty string to remove Catch-All Address. |
PUT '/customers/12345678/domains/example.com/emaileveryone', 'text/xml', { 'address' =\u003E<EMAIL_ADDRESS>}" });
This operation does not return a response body.
Shows the domain spam settings.
Remarks
The Show operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/settings', 'text/xml'" });
{"filterLevel":"on","rsEmailSettings":{"spamHandling":"toAddress","hasFolderCleaner":false,"spamFolderAgeLimit":0,"spamFolderNumLimit":0,"spamForwardingAddress":"someone@mail.com"},"exchangeSettings":{"forwardToDomainQuarantine":"on","quarantineOwner":"someone<EMAIL_ADDRESS><?xml version="1.0" encoding="utf-8"?> <domainSpamSettings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:DomainSpamSettings"> <filterLevel>on</filterLevel> <rsEmailSettings> <spamHandling>toAddress</spamHandling> <hasFolderCleaner>false</hasFolderCleaner> <spamFolderAgeLimit>0</spamFolderAgeLimit> <spamFolderNumLimit>0</spamFolderNumLimit><EMAIL_ADDRESS></rsEmailSettings> <exchangeSettings> <forwardToDomainQuarantine>on</forwardToDomainQuarantine><EMAIL_ADDRESS><EMAIL_ADDRESS></exchangeSettings> </domainSpamSettings>
Updates 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 is redirected to. This field is required when the spamHandling field is set to 'toAddress' |
PUT '/customers/100018/domains/resellerallservices.net/rs/mailboxes/unittestexist/spam/settings', { 'filterLevel' =\u003E 'on', 'rsEmail.spamHandling' =\u003E 'toFolder', 'rsEmail.hasFolderCleaner' =\u003E 'true', 'rsEmail.spamFolderAgeLimit' =\u003E '7', 'rsEmail.spamFolderNumLimit' =\u003E '100', }, Formats.xml" });
This operation does not return a response body.
Returns IP blacklist associated with the domain.
Remarks:
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/ipblacklist', 'text/xml'" });
{"addresses":["<IP_ADDRESS>","<IP_ADDRESS>"]}
<?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><IP_ADDRESS></ip> <ip><IP_ADDRESS></ip> </addresses> </ipBlacklist>
Edits IP addresses on the blacklist.
Remarks
You can use a '%' as a wildcard in the last octets to specify IP ranges. For example: 216.12.34.%, 216.12.%.%, 216.%.%.%.
| 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 |
PUT '/customers/12345678/domains/example.com/spam/ipblacklist', { 'addList' =\u003E '216.12.34.%,216.12.%.%', 'removeList' =\u003E '216.%.%.%' }, 'text/xml'" });
This operation does not return a response body.
Adds an IP to the blacklist.
POST '/customers/12345678/domains/example.com/spam/blacklist/<IP_ADDRESS>', 'text/xml'" });
This operation does not return a response body.
Removes an IP from the blacklist.
DELETE '/customers/12345678/domains/example.com/spam/ipblacklist/<IP_ADDRESS>', 'text/xml'" });
This operation does not return a response body.
Returns the email address blacklist associated with the domain.
Remarks
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/blacklist', 'text/xml'" });
{"addresses":["name1<EMAIL_ADDRESS><?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><EMAIL_ADDRESS><EMAIL_ADDRESS></addresses> </blacklist>
Edits email addresses on the blacklist.
Remarks
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.
| 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 |
PUT '/customers/12345678/domains/example.com/spam/blacklist', { 'addList' =\u003E '<EMAIL_ADDRESS>'removeList' =\u003E<EMAIL_ADDRESS>}, 'text/xml'" });
This operation does not return a response body.
Adds an email address or domain to the blacklist.
POST<EMAIL_ADDRESS>'text/xml'" });
This operation does not return a response body.
Removes an email address or domain from the blacklist.
DELETE<EMAIL_ADDRESS>'text/xml'" });
This operation does not return a response body.
Returns email address safelist associated with the domain.
Remarks
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/safelist', 'text/xml'" });
{"addresses":["name1<EMAIL_ADDRESS><?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><EMAIL_ADDRESS><EMAIL_ADDRESS></addresses> </safelist>
Edits email addresses on the safelist.
Remarks
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.
| 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 |
PUT '/customers/12345678/domains/example.com/spam/safelist', { 'addList' =\u003E '<EMAIL_ADDRESS>'removeList' =\u003E<EMAIL_ADDRESS>}, 'text/xml'" });
This operation does not return a response body.
Adds an email address or domain to the safelist.
POST<EMAIL_ADDRESS>'text/xml'" });
This operation does not return a response body.
Removes an email address or domain from the safelist.
DELETE<EMAIL_ADDRESS>'text/xml'" });
This operation does not return a response body.
Returns IP safelist associated with the domain.
Remarks
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/ipsafelist', 'text/xml'" });
{"addresses":["<IP_ADDRESS>","<IP_ADDRESS>"]}
<?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><IP_ADDRESS></ip> <ip><IP_ADDRESS></ip> </addresses> </ipSafelist>
Edits IP addresses on the safelist.
Remarks
You can use a '%' as a wildcard in the last octets to specify IP ranges. For example: 216.12.34.%, 216.12.%.%, 216.%.%.%.
| 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 |
PUT '/customers/12345678/domains/example.com/spam/ipsafelist', { 'addList' =\u003E '216.12.34.%,216.12.%.%', 'removeList' =\u003E '216.%.%.%' }, 'text/xml'" });
This operation does not return a response body.
Adds an IP to the safelist.
POST '/customers/12345678/domains/example.com/spam/safelist/<IP_ADDRESS>', 'text/xml'" });
This operation does not return a response body.
Removes an IP from the safelist.
DELETE '/customers/12345678/domains/example.com/spam/ipsafelist/<IP_ADDRESS>', 'text/xml'" });
This operation does not return a response body.
Lists domain mailboxes.
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.
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', 'enabled', 'createdDate', and 'lastLogin'
GET '/customers/12345678/domains/example.com/rs/mailboxes?fields=size,currentUsage', 'text/xml'
GET '/customers/12345678/domains/example.com/rs/mailboxes', 'text/xml'" });
{"offset":0,"size":50,"total":2,"rsMailboxes":[{"name":"apirsmailbox37"},{"name":"apirsmailbox91"}]}
<?xml version="1.0" encoding="utf-8"?> <rsMailboxList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:rsMailboxList"> <offset>0</offset> <size>50</size> <total>2</total> <rsMailboxes> <rsMailbox> <name>apirsmailbox37</name> </rsMailbox> <rsMailbox> <name>apirsmailbox91</name> </rsMailbox> </rsMailboxes> </rsMailboxList>
Shows mailbox details.
Remarks
The show operation only supports the GET HTTP verb.
 ,"pagerNumber":"555.123.0002" ,"businessCity":"" ,"businessCountry":"" ,"businessPostalCode":"" ,"businessState":"" ,"businessStreet":"" ,"employeeType":"DoesNotExist" ,"generationQualifier":"Jr" ,"homeCity":"" ,"homeCountry":"" ,"homeFaxNumber":"555.123.0006" ,"homePostalCode":"" ,"homeState":"" ,"homeStreet":"" ,"initials":"A" ,"organizationUnit":"IT" ,"organizationalStatus":"gainfully employed" ,"title":"My Title" ,"userID":"J.Test", "customID":"0123456789"},"name":"unittestexist" ,"saveForwardedEmail":false,"size":10240,"vacationMessage":"Test Vacation Message", "createdDate":"4\/10\/2006 7:47:34 PM", "currentUsage":1024, "visibleInExchangeGAL":false, "visibleInRackspaceEmailCompanyDirectory":false}
Adds a Rackspace mailbox by using the following form fields.
| Field Name | Data Type | Description |
| password | string | Password (Required for Add) |
| size | positive integer | Mailbox size in megabytes (Required for Add) |
| enableVacationMessage | boolean | indicates whether vacation message has been enabled |
| vacationMessage | string | A mailbox's vacation message |
| emailForwardingAddresses | string | A comma delimited list, Maximum 15 addresses, 4 of which can be outside of this domain |
| saveForwardedEmail | string | Indicates whether to save a copy of any forwarded email |
| lastName | string | A last name |
| firstName | string | A first name |
| generationQualifier | string | A person's generation (ex. Jr., Sr., III) |
| initials | string | A person's middle initial |
| organizationUnit | string | A person's organization unit (ex. Marketing) |
| 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 |
| homeFaxNumber | string | Home Fax phone number |
| businessStreet | string | The business street address for a contact |
| businessCity | string | The business city for a contact |
| businessState | string | The business state for a contact |
| businessPostalCode | string | The business postal code/zip code for a contact |
| businessCountry | string | The business country for a contact |
| homeStreet | string | The home street address for a contact |
| homeCity | string | The home city for a contact |
| homeState | string | The home state for a contact |
| homePostalCode | string | The home postal code/zip code for a contact |
| homeCountry | string | The home country for a contact |
| notes | string | Any notes for the mailbox |
| title | string | A contact's title |
| userID | string | A user ID for a contact |
| organizationalStatus | string | A contact's organization status |
| employeeType | string | A contact's employee type |
| customID | string | A custom field that can be used to tie user mailboxes to external user systems |
| enabled | boolean | Status of the mailbox: true = enabled, false = disabled. |
| visibleInRackspaceEmailCompanyDirectory | boolean | Flag indicating whether the mailbox is visible in the company directory |
| visibleInExchangeGAL | boolean | Flag indicating whether the mailbox is visible in the Exchange Global Address List |
| currentUsage (read only) | positive integer | Current space used in mailbox (in MB) |
| createdDate (read only) | string | Date of mailbox creation, EST Time (in string format) |
| lastLogin (read only) | string | Date of last login, EST Time (in string format) |
POST '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith', 'text/xml', { 'password' =\u003E 'Secret13!@#', 'size' =\u003E '2048', 'enableVacationMessage' =\u003E 'true', 'vacationMessage' =\u003E 'My Vacation Message', 'emailForwardingAddresses' =\u003E 'sampletest<EMAIL_ADDRESS>'saveForwardedEmail' =\u003E 'false' 'lastName' =\u003E 'Testlastname', 'firstName' =\u003E 'Jay', 'generationQualifier' =\u003E 'III', 'initials' =\u003E 'A', 'organizationUnit' =\u003E 'IT', 'businessStreet' =\u003E '123 Biz St.', 'businessCity' =\u003E 'Blacksburg', 'businessState' =\u003E 'VA', 'businessPostalCode' =\u003E '24060', 'businessCountry' =\u003E 'USA', 'homeStreet' =\u003E '456 Home St.', 'homeCity' =\u003E 'Charlotte', 'homeState' =\u003E 'NC', 'homePostalCode' =\u003E '28210', 'homeCountry' =\u003E 'USA', 'notes' =\u003E 'This is my note about my mailbox.', 'title' =\u003E 'My Title', 'userID' =\u003E 'J.Test', 'customID' =\u003E '0123456789', 'organizationalStatus' =\u003E 'OrgStatus', 'employeeType' =\u003E 'Full-Time' 'visibleInExchangeGAL'=\u003E'true', 'visibleInRackspaceEmailCompanyDirectory' =\u003E 'false' }" });
This operation does not return a response body.
Updates a Rackspace mailbox by using the following form fields.
| Field Name | Data Type | Description |
| password | string | Password (Required for Add) |
| size | positive integer | Mailbox size in megabytes (Required for Add) |
| enableVacationMessage | boolean | indicates whether vacation message has been enabled |
| vacationMessage | string | A mailbox's vacation message |
| emailForwardingAddresses | string | A comma delimited list, Maximum 15 addresses, 4 of which can be outside of this domain |
| saveForwardedEmail | string | Indicates whether to save a copy of any forwarded email |
| lastName | string | A last name |
| firstName | string | A first name |
| generationQualifier | string | A person's generation (ex. Jr., Sr., III) |
| initials | string | A person's middle initial |
| organizationUnit | string | A person's organization unit (ex. Marketing) |
| 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 |
| homeFaxNumber | string | Home Fax phone number |
| businessStreet | string | The business street address for a contact |
| businessCity | string | The business city for a contact |
| businessState | string | The business state for a contact |
| businessPostalCode | string | The business postal code/zip code for a contact |
| businessCountry | string | The business country for a contact |
| homeStreet | string | The home street address for a contact |
| homeCity | string | The home city for a contact |
| homeState | string | The home state for a contact |
| homePostalCode | string | The home postal code/zip code for a contact |
| homeCountry | string | The home country for a contact |
| notes | string | Any notes for the mailbox |
| title | string | A contact's title |
| userID | string | A user ID for a contact |
| organizationalStatus | string | A contact's organization status |
| employeeType | string | A contact's employee type |
| customID | string | A custom field that can be used to tie user mailboxes to external user systems |
| enabled | boolean | Status of the mailbox: true = enabled, false = disabled. |
| visibleInRackspaceEmailCompanyDirectory | boolean | Flag indicating whether the mailbox is visible in the company directory |
| visibleInExchangeGAL | boolean | Flag indicating whether the mailbox is visible in the Exchange Global Address List |
| currentUsage (read only) | positive integer | Current space used in mailbox (in MB) |
| createdDate (read only) | string | Date of mailbox creation, EST Time (in string format) |
| lastLogin (read only) | string | Date of last login, EST Time (in string format) |
PUT '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith', 'text/xml', { 'password' =\u003E 'Secret13!@#', 'size' =\u003E '2048', 'enableVacationMessage' =\u003E 'true', 'vacationMessage' =\u003E 'My Vacation Message', 'emailForwardingAddresses' =\u003E 'sampletest<EMAIL_ADDRESS>'saveForwardedEmail' =\u003E 'false' 'lastName' =\u003E 'Testlastname', 'firstName' =\u003E 'Jay', 'generationQualifier' =\u003E 'III', 'initials' =\u003E 'A', 'organizationUnit' =\u003E 'IT', 'businessStreet' =\u003E '123 Biz St.', 'businessCity' =\u003E 'Blacksburg', 'businessState' =\u003E 'VA', 'businessPostalCode' =\u003E '24060', 'businessCountry' =\u003E 'USA', 'homeStreet' =\u003E '456 Home St.', 'homeCity' =\u003E 'Charlotte', 'homeState' =\u003E 'NC', 'homePostalCode' =\u003E '28210', 'homeCountry' =\u003E 'USA', 'notes' =\u003E 'This is my note about my mailbox.', 'title' =\u003E 'My Title', 'userID' =\u003E 'J.Test', 'customID' =\u003E '0123456789', 'organizationalStatus' =\u003E 'OrgStatus', 'employeeType' =\u003E 'Full-Time' 'visibleInExchangeGAL'=\u003E'true', 'visibleInRackspaceEmailCompanyDirectory' =\u003E 'false' } " });
This operation does not return a response body.
Deletes the mailbox.
Remarks
The mailbox and mailbox contents are deleted permanently.
DELETE '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith', 'text/xml'" });
This operation does not return a response body.
Generates a login token that the user can use to log in to a mailbox.
This operation returns a loginToken, created date, and expiration date.
Remarks
The login token is valid until the current time (EST) passes the expiration date, and can be used until that point.
Using the generate login token shown in the example below, a user can SSO into<EMAIL_ADDRESS>at the following URL: https://{webmail address}/mail/src/redirect.php?user_name={testmailbox<EMAIL_ADDRESS>POST '/customers/460896/domains/testapidomain.net/rs/mailboxes/testmailbox/loginToken', {}, 'text/xml'" });
<?xml version="1.0" encoding="utf-8"?> <rsMailboxLoginToken xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:rsMailboxLoginToken"> <token>5b5e27419a363fc5b65bbb63d1c2d3f8</token> <dateCreated>9/22/2010 9:33:15 AM</dateCreated> <expirationDate>9/22/2010 9:53:14 AM</expirationDate> </rsMailboxLoginToken>
Lists Mobile Sync users on a domain.
This list contains all potential users of Mobile Sync and their current status (enabled/disabled).
Filter/Search
Searches may be filtered by the 'name' property using query methods ?startsWith= or ?contains=.
Ordering
Searches may be ordered by any of their properties. You can order by multiple properties. Some examples are:
?order=Name%20asc (Order by name ascending)
?order=Enabled%20desc (Order by enabled descending)
?order[0]=Name%20desc&order[1]=Enabled%20asc (Order by name descending then enabled ascending)
Note: It is important to capitalize the first letter of the property.
Paging
Searches may be paged using ?size= and/or ?offset=. Some examples are:
?size=3 (Return a maximum of 3 results)
?offset=2 (Return results starting with the 3rd entry)
?size=5&offset=5 (Return 5 results starting with the 6th entry)
Remarks
The index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/mobilesync/users?startsWith=a\u0026size=50\u0026offset=100\u0026order=Enabled%20asc', 'text/xml'" });
{"offset":100,"size":50,"total":1000,"users":[{"details":null,"domain":"example.com","enabled":false,"name":"alex"},{"details":null,"domain":"example.com","enabled":true,"name":"ann"}]}
<?xml version="1.0" encoding="utf-8"?> <mobileSyncUserList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:mobileSyncUserList"> <offset>100</offset> <size>50</size> <total>1000</total> <users> <user> <name>alex</name> <domain>example.com</domain> <enabled>false</enabled> <details></details> </user> <user> <name>ann</name> <domain>example.com</domain> <enabled>true</enabled> <details></details> </user> </users> </mobileSyncUserList>
Shows domain auto-provisioning setting.
Remarks
The index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/mobilesync', 'text/xml'\u003C 200" });
{"autoProvision":true}
<?xml version="1.0" encoding="utf-8"?> <mobileSyncDomainInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:mobileSyncDomainInfo"> <autoProvision>false</autoProvision> </mobileSyncDomainInfo>
Enables or disables Mobile Sync auto-provisioning for a domain.
Special Considerations
Enabling Mobile Sync auto-provisioning will add Mobile Sync to all existing Rackspace Email mailboxes on the domain. Any new Rackspace Email mailbox will have Mobile Sync as well.
Disabling Mobile Sync auto-provisioning will only prevent new mailboxes having Mobile Sync when they are created. It will not disable Mobile Sync for the existing mailboxes. New mailboxes can still add Mobile Sync later.
| Field Name | Data Type | Description |
| autoProvision | Boolean | 'True' for enable and 'False' for disable |
PUT '/customers/12345678/domains/example.com/mobilesync', 'text/xml', { 'autoProvision' =\u003E 'True' } " });
This operation does not return a response body.
Enables Mobile Sync for users.
Special Considerations
Enabling Mobile Sync for a user will increase your monthly bill.
This is a throttled operation. Send as many users as you can at once instead of making the call multiple times, once per user.
The maximum number of users per request is 250.
| Field Name | Data Type | Description |
| users | String array | Comma-separated list of user names to enable/disable |
POST '/customers/12345678/domains/example.com/mobilesync/users/enable', 'text/xml', { 'users' =\u003E 'user1,user2,user3' } " });
This operation does not return a response body.
Disables Mobile Sync for users.
Special Considerations
Enabling Mobile Sync for a user will increase your monthly bill.
This is a throttled operation. Send as many users as you can at once instead of making the call multiple times, once per user.
The maximum number of users per request is 250.
| Field Name | Data Type | Description |
| users | String array | Comma-separated list of user names to enable/disable |
POST '/customers/12345678/domains/example.com/mobilesync/users/disable', 'text/xml', { 'users' =\u003E 'user1,user2,user3' } " });
This operation does not return a response body.
Shows the mailbox spam settings.
GET /customers/12345678/domains/example.com/rs/mailboxes/alex.smith/spam/settings', 'text/xml'" });
{"filterLevel":"on","rsEmailSettings":"hasFolderCleaner":false,"spamFolderAgeLimit":0,"spamFolderNumLimit":0,"spamForwardingAddress":"","spamHandling":"toFolder"}}
<?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>
Shows the domain spam settings.
Remarks
The Show operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/settings', 'text/xml'" });
{"filterLevel":"on","rsEmailSettings":{"spamHandling":"toAddress","hasFolderCleaner":false,"spamFolderAgeLimit":0,"spamFolderNumLimit":0,"spamForwardingAddress":"someone@mail.com"},"exchangeSettings":{"forwardToDomainQuarantine":"on","quarantineOwner":"someone<EMAIL_ADDRESS><?xml version="1.0" encoding="utf-8"?> <domainSpamSettings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:DomainSpamSettings"> <filterLevel>on</filterLevel> <rsEmailSettings> <spamHandling>toAddress</spamHandling> <hasFolderCleaner>false</hasFolderCleaner> <spamFolderAgeLimit>0</spamFolderAgeLimit> <spamFolderNumLimit>0</spamFolderNumLimit><EMAIL_ADDRESS></rsEmailSettings> <exchangeSettings> <forwardToDomainQuarantine>on</forwardToDomainQuarantine><EMAIL_ADDRESS><EMAIL_ADDRESS></exchangeSettings> </domainSpamSettings>
Updates 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 is redirected to. This field is required when the spamHandling field is set to 'toAddress' |
PUT '/customers/100018/domains/resellerallservices.net/rs/mailboxes/unittestexist/spam/settings', { 'filterLevel' =\u003E 'on', 'rsEmail.spamHandling' =\u003E 'toFolder', 'rsEmail.hasFolderCleaner' =\u003E 'true', 'rsEmail.spamFolderAgeLimit' =\u003E '7', 'rsEmail.spamFolderNumLimit' =\u003E '100', }, Formats.xml" });
This operation does not return a response body.
Returns IP blacklist associated with the domain.
Remarks:
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/ipblacklist', 'text/xml'" });
{"addresses":["<IP_ADDRESS>","<IP_ADDRESS>"]}
<?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><IP_ADDRESS></ip> <ip><IP_ADDRESS></ip> </addresses> </ipBlacklist>
Edits IP addresses on the blacklist.
Remarks
You can use a '%' as a wildcard in the last octets to specify IP ranges. For example: 216.12.34.%, 216.12.%.%, 216.%.%.%.
| 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 |
PUT '/customers/12345678/domains/example.com/spam/ipblacklist', { 'addList' =\u003E '216.12.34.%,216.12.%.%', 'removeList' =\u003E '216.%.%.%' }, 'text/xml'" });
This operation does not return a response body.
Adds an IP to the blacklist.
POST '/customers/12345678/domains/example.com/spam/blacklist/<IP_ADDRESS>', 'text/xml'" });
This operation does not return a response body.
Removes an IP from the blacklist.
DELETE '/customers/12345678/domains/example.com/spam/ipblacklist/<IP_ADDRESS>', 'text/xml'" });
This operation does not return a response body.
Returns the email address blacklist associated with the domain.
Remarks
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/blacklist', 'text/xml'" });
{"addresses":["name1<EMAIL_ADDRESS><?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><EMAIL_ADDRESS><EMAIL_ADDRESS></addresses> </blacklist>
Edits email addresses on the blacklist.
Remarks
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.
| 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 |
PUT '/customers/12345678/domains/example.com/spam/blacklist', { 'addList' =\u003E '<EMAIL_ADDRESS>'removeList' =\u003E<EMAIL_ADDRESS>}, 'text/xml'" });
This operation does not return a response body.
Adds an email address or domain to the blacklist.
POST<EMAIL_ADDRESS>'text/xml'" });
This operation does not return a response body.
Removes an email address or domain from the blacklist.
DELETE<EMAIL_ADDRESS>'text/xml'" });
This operation does not return a response body.
Returns email address safelist associated with the domain.
Remarks
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/safelist', 'text/xml'" });
{"addresses":["name1<EMAIL_ADDRESS><?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><EMAIL_ADDRESS><EMAIL_ADDRESS></addresses> </safelist>
Edits email addresses on the safelist.
Remarks
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.
| 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 |
PUT '/customers/12345678/domains/example.com/spam/safelist', { 'addList' =\u003E '<EMAIL_ADDRESS>'removeList' =\u003E<EMAIL_ADDRESS>}, 'text/xml'" });
This operation does not return a response body.
Adds an email address or domain to the safelist.
POST<EMAIL_ADDRESS>'text/xml'" });
This operation does not return a response body.
Removes an email address or domain from the safelist.
DELETE<EMAIL_ADDRESS>'text/xml'" });
This operation does not return a response body.
Returns IP safelist associated with the domain.
Remarks
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/ipsafelist', 'text/xml'" });
{"addresses":["<IP_ADDRESS>","<IP_ADDRESS>"]}
<?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><IP_ADDRESS></ip> <ip><IP_ADDRESS></ip> </addresses> </ipSafelist>
Edits IP addresses on the safelist.
Remarks
You can use a '%' as a wildcard in the last octets to specify IP ranges. For example: 216.12.34.%, 216.12.%.%, 216.%.%.%.
| 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 |
PUT '/customers/12345678/domains/example.com/spam/ipsafelist', { 'addList' =\u003E '216.12.34.%,216.12.%.%', 'removeList' =\u003E '216.%.%.%' }, 'text/xml'" });
This operation does not return a response body.
Adds an IP to the safelist.
POST '/customers/12345678/domains/example.com/spam/safelist/<IP_ADDRESS>', 'text/xml'" });
This operation does not return a response body.
Removes an IP from the safelist.
DELETE '/customers/12345678/domains/example.com/spam/ipsafelist/<IP_ADDRESS>', 'text/xml'" });
This operation does not return a response body.
Shows details for a specified domain's Rackspace Mailbox storage notification settings that control whether an email notification is sent to users when their mailbox reaches a certain capacity.
Remarks
The index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/rs/storageNotification', 'text/xml'" });
{"enabled":true<EMAIL_ADDRESS>"notificationMessage":"Test", "notificationPercentage":99}
<rsStorageNotification xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:rsStorageNotification"> <enabled>true</enabled><EMAIL_ADDRESS><notificationMessage>The mailbox is getting full.</notificationMessage> <notificationPercentage>99</notificationPercentage> </rsStorageNotification>
Updates detailed information about a given domain's Rackspace Mailbox storage notification settings.
| Field Name | Data Type | Description |
| enabled | boolean | Activates domain storage notification. (Required) |
| notificationPercentage | int | The storage percentage that triggers the notification. (Required for Add) (Valid Values: 50, 60, 70, 80, 90, 99) |
| notificationMessage | string | The notification message. (The special tag <*USER*> will substitute in the username. The special tag <*DOMAIN*> will substitute in the domain.) |
| notificationCC | string | An email address the notification message will be carbon copied to. |
PUT '/customers/12345678/domains/example.com/rs/mailboxes/alex.smith', 'text/xml', { 'enabled' =\u003E 'true', 'notificationPercentage' =\u003E '90', 'notificationMessage' =\u003E 'Your mailbox \"\u003C*USER*\u003E@\u003C*DOMAIN*\u003E\" is almost full.', 'notificationCC' =\u003E<EMAIL_ADDRESS>} " });
This operation does not return a response body.
Lists domain aliases and accepted alternate domains for a specified domain.
This operation returns a list of Domain Aliases and Accepted Domains for the domain.
The type of the alternate domain is indicated by the 'type' data field.
GET '/customers/12345678/domains/test.com/alternatedomains', 'text/xml'" });
{"alternateDomains":[{"name":"domainalias.com","type":"DomainAlias"},{"name":"accepteddomain.com","type":"AcceptedDomain"}]}
<?xml version="1.0" encoding="utf-8"?> <alternateDomainList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:domainAlternateList"> <alternateDomains> <alternateDomain> <name>domainalias.com</name> <type>DomainAlias</type> </alternateDomain> <alternateDomain> <name>accepteddomain.com</name> <type>AcceptedDomain</type> </alternateDomain> </alternateDomains> </alternateDomainList>
Adds a domain alias or accepted alternate domain to a specified domain.
| Field Name | Data Type | Description |
| type | string | Alternate domain type. Send "DomainAlias" for a domain alias, and "AcceptedDomain" for an accepted domain. (Required) |
| createForExistingRecipients | boolean | Whether the alternate addresses should be created for existing mailboxes when adding an Accepted Domain. Sending this field in the request when the type is Domain Alias will throw an error. This defaults to false. |
POST '/customers/123456/domains/example.com/alternatedomains/accepteddomain.com', 'text/xml', { 'type' =\u003E 'AcceptedDomain' 'createForExistingRecipients' =\u003E 'true' }" });
This operation does not return a response body.
Shows details for a specified alias.
Remarks
The show operation only supports the GET HTTP verb.
GET '/customers/100018/domains/resellerallservices.net/rs/aliases/alias1', Formats.xml" });
{"emailAddressList":{"emailAddress":["jane.doe@resellerallservices.net","e3@yahoo.com"]},"name":"alias3"}
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?> <alias xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:alias"> <name>alias1</name> <emailAddressList><EMAIL_ADDRESS><EMAIL_ADDRESS></emailAddressList> </alias>
Deletes the alias.
DELETE '/customers/100018/domains/resellerallservices.net/rs/aliases/alias1', Formats.xml" });
This operation does not return a response body.
Adds an email address to the domain email list or to the non-domain email list.
POST<EMAIL_ADDRESS>{}, Formats.xml" });
This operation does not return a response body.
Deletes the alias.
DELETE '/customers/100018/domains/resellerallservices.net/rs/aliases/alias1', Formats.xml" });
This operation does not return a response body.
Updates an existing alias by replacing its contents with the new email addresses specified in the field aliasEmails.
The following list shows the number of email addresses you can specify:
1 - 50 domain email addresses
1 - 4 non-domain addresses
You must specify at least one email address. By default, the maximum combined total of email addresses you can specify is 50.
You cannot delete a specific email address using DELETE. If you use DELETE with this operation, the entire alias is deleted.
| Field Name | Data Type | Description |
| aliasEmail | string | A comma separated list of email addresses. |
PUT '/customers/100487/domains/testdomain.com/rs/aliases/alias_name', { aliasEmails=email@outsider.com,abc<EMAIL_ADDRESS><EMAIL_ADDRESS>}, 'text/xml'" });
This operation does not return a response body.
Shows the Exchange public folders status for the domain.
Shows the Exchange public folders status for the domain.
GET '/customers/12345678/domains/company.com/ex/publicFolders', 'text/xml'" });
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?> <domainPublicFolders xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:domainPublicFolders"> <enabled>true</enabled> </domainPublicFolders>
Enables the Exchange public folders feature on the domain. Once enabled, it cannot be disabled.
| Field Name | Data Type | Description |
| enabled | string | Whether to enable public folders. Once enabled, it cannot be disabled. |
PUT '/customers/12345678/domains/company.com/ex/publicFolders', 'text/xml', { 'enabled' =\u003E 'true' }" });
This operation does not return a response body.
Shows the domain spam settings.
Remarks
The Show operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/settings', 'text/xml'" });
{"filterLevel":"on","rsEmailSettings":{"spamHandling":"toAddress","hasFolderCleaner":false,"spamFolderAgeLimit":0,"spamFolderNumLimit":0,"spamForwardingAddress":"someone@mail.com"},"exchangeSettings":{"forwardToDomainQuarantine":"on","quarantineOwner":"someone<EMAIL_ADDRESS><?xml version="1.0" encoding="utf-8"?> <domainSpamSettings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:DomainSpamSettings"> <filterLevel>on</filterLevel> <rsEmailSettings> <spamHandling>toAddress</spamHandling> <hasFolderCleaner>false</hasFolderCleaner> <spamFolderAgeLimit>0</spamFolderAgeLimit> <spamFolderNumLimit>0</spamFolderNumLimit><EMAIL_ADDRESS></rsEmailSettings> <exchangeSettings> <forwardToDomainQuarantine>on</forwardToDomainQuarantine><EMAIL_ADDRESS><EMAIL_ADDRESS></exchangeSettings> </domainSpamSettings>
Updates 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 is redirected to. This field is required when the spamHandling field is set to 'toAddress' |
PUT '/customers/100018/domains/resellerallservices.net/rs/mailboxes/unittestexist/spam/settings', { 'filterLevel' =\u003E 'on', 'rsEmail.spamHandling' =\u003E 'toFolder', 'rsEmail.hasFolderCleaner' =\u003E 'true', 'rsEmail.spamFolderAgeLimit' =\u003E '7', 'rsEmail.spamFolderNumLimit' =\u003E '100', }, Formats.xml" });
This operation does not return a response body.
Returns IP blacklist associated with the domain.
Remarks:
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/ipblacklist', 'text/xml'" });
{"addresses":["<IP_ADDRESS>","<IP_ADDRESS>"]}
<?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><IP_ADDRESS></ip> <ip><IP_ADDRESS></ip> </addresses> </ipBlacklist>
Edits IP addresses on the blacklist.
Remarks
You can use a '%' as a wildcard in the last octets to specify IP ranges. For example: 216.12.34.%, 216.12.%.%, 216.%.%.%.
| 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 |
PUT '/customers/12345678/domains/example.com/spam/ipblacklist', { 'addList' =\u003E '216.12.34.%,216.12.%.%', 'removeList' =\u003E '216.%.%.%' }, 'text/xml'" });
This operation does not return a response body.
Adds an IP to the blacklist.
POST '/customers/12345678/domains/example.com/spam/blacklist/<IP_ADDRESS>', 'text/xml'" });
This operation does not return a response body.
Removes an IP from the blacklist.
DELETE '/customers/12345678/domains/example.com/spam/ipblacklist/<IP_ADDRESS>', 'text/xml'" });
This operation does not return a response body.
Returns the email address blacklist associated with the domain.
Remarks
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/blacklist', 'text/xml'" });
{"addresses":["name1<EMAIL_ADDRESS><?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><EMAIL_ADDRESS><EMAIL_ADDRESS></addresses> </blacklist>
Edits email addresses on the blacklist.
Remarks
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.
| 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 |
PUT '/customers/12345678/domains/example.com/spam/blacklist', { 'addList' =\u003E '<EMAIL_ADDRESS>'removeList' =\u003E<EMAIL_ADDRESS>}, 'text/xml'" });
This operation does not return a response body.
Adds an email address or domain to the blacklist.
POST<EMAIL_ADDRESS>'text/xml'" });
This operation does not return a response body.
Removes an email address or domain from the blacklist.
DELETE<EMAIL_ADDRESS>'text/xml'" });
This operation does not return a response body.
Returns email address safelist associated with the domain.
Remarks
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/safelist', 'text/xml'" });
{"addresses":["name1<EMAIL_ADDRESS><?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><EMAIL_ADDRESS><EMAIL_ADDRESS></addresses> </safelist>
Edits email addresses on the safelist.
Remarks
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.
| 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 |
PUT '/customers/12345678/domains/example.com/spam/safelist', { 'addList' =\u003E '<EMAIL_ADDRESS>'removeList' =\u003E<EMAIL_ADDRESS>}, 'text/xml'" });
This operation does not return a response body.
Adds an email address or domain to the safelist.
POST<EMAIL_ADDRESS>'text/xml'" });
This operation does not return a response body.
Removes an email address or domain from the safelist.
DELETE<EMAIL_ADDRESS>'text/xml'" });
This operation does not return a response body.
Returns IP safelist associated with the domain.
Remarks
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/spam/ipsafelist', 'text/xml'" });
{"addresses":["<IP_ADDRESS>","<IP_ADDRESS>"]}
<?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><IP_ADDRESS></ip> <ip><IP_ADDRESS></ip> </addresses> </ipSafelist>
Edits IP addresses on the safelist.
Remarks
You can use a '%' as a wildcard in the last octets to specify IP ranges. For example: 216.12.34.%, 216.12.%.%, 216.%.%.%.
| 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 |
PUT '/customers/12345678/domains/example.com/spam/ipsafelist', { 'addList' =\u003E '216.12.34.%,216.12.%.%', 'removeList' =\u003E '216.%.%.%' }, 'text/xml'" });
This operation does not return a response body.
Adds an IP to the safelist.
POST '/customers/12345678/domains/example.com/spam/safelist/<IP_ADDRESS>', 'text/xml'" });
This operation does not return a response body.
Removes an IP from the safelist.
DELETE '/customers/12345678/domains/example.com/spam/ipsafelist/<IP_ADDRESS>', 'text/xml'" });
This operation does not return a response body.
Returns a list of contacts under the domain.
GET '/customers/12345678/domains/example.com/ex/contacts?contains=john', 'text/xml'" });
{"offset":0,"size":50,"total":3,"contacts":[{"name":"apiexcontact66","displayName":"API Test","externalEmail":"externalemail58@yahoo.com"},{"name":"apiexcontact73","displayName":"API Test","externalEmail":"externalemail98@yahoo.com"},{"name":"apiexcontact81","displayName":"API<EMAIL_ADDRESS><?xml version="1.0" encoding="utf-8"?> <contactList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:contactList"> <offset>0</offset> <size>50</size> <total>3</total> <contacts> <contact> <name>apiexcontact66</name> <displayName>API Test</displayName><EMAIL_ADDRESS></contact> <contact> <name>apiexcontact73</name> <displayName>API Test</displayName><EMAIL_ADDRESS></contact> <contact> <name>apiexcontact81</name> <displayName>API Test</displayName><EMAIL_ADDRESS></contact> </contacts> </contactList>
Returns the contact's details.
GET '/customers/12345678/domains/example.com/ex/contacts/alex.smith', 'text/xml'" });
{"name":"apiexcontact73","displayName":"API Test","externalEmail":"externalemail98@yahoo.com","isHidden":false,"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"}}
<?xml version="1.0" encoding="utf-8"?> <contact xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:contact"> <name>apiexcontact73</name> <displayName>API Test</displayName><EMAIL_ADDRESS><isHidden>false</isHidden> <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> </contactInfo> </contact>
Adds the contact's details as specified. If the contact does not exist, use Add, if it does, use Edit.
| Field Name | Data Type | Description |
| displayName | string | Name of contact when displayed (Required for add) |
| externalEmail | string | Email address (Required for add) |
| isHidden | boolean | Whether the contact is hidden from the Global List |
| firstName | string | First name |
| lastName | string | Last name |
| jobTitle | string | Job title |
| company | string | Company |
| department | string | Department |
| businessNumber | string | Business phone number |
| homeNumber | string | Home phone number |
| mobileNumber | string | Mobile phone number |
| faxNumber | string | Fax number |
| pagerNumber | string | Pager number |
| addressLine1 | string | Street address |
| city | string | City |
| state | string | State |
| zip | string | Zip or postal code |
| country | string | Country |
| notes | string | Notes field |
POST '/customers/12345678/domains/example.com/ex/contacts/alex.smith', 'text/xml', { 'displayName' =\u003E 'Johnny Customer', 'externalEmail' =\u003E<EMAIL_ADDRESS>}" });
This operation does not return a response body.
Updates the contact's details as specified. If the contact does not exist, use Add, if it does, use Edit.
| Field Name | Data Type | Description |
| displayName | string | Name of contact when displayed (Required for add) |
| externalEmail | string | Email address (Required for add) |
| isHidden | boolean | Whether the contact is hidden from the Global List |
| firstName | string | First name |
| lastName | string | Last name |
| jobTitle | string | Job title |
| company | string | Company |
| department | string | Department |
| businessNumber | string | Business phone number |
| homeNumber | string | Home phone number |
| mobileNumber | string | Mobile phone number |
| faxNumber | string | Fax number |
| pagerNumber | string | Pager number |
| addressLine1 | string | Street address |
| city | string | City |
| state | string | State |
| zip | string | Zip or postal code |
| country | string | Country |
| notes | string | Notes field |
POST '/customers/12345678/domains/example.com/ex/contacts/alex.smith', 'text/xml', { 'displayName' =\u003E 'Johnny Customer', 'externalEmail' =\u003E<EMAIL_ADDRESS>}" });
This operation does not return a response body.
Deletes the contact.
Remarks
Contact is deleted immediately without verification and data is lost permanently.
DELETE '/customers/12345678/domains/example.com/ex/contacts/alex.smith', 'text/xml'" });
This operation does not return a response body.
Lists Distribution Lists, supports exporting. (see Listings)
Lists Distribution Lists, supports exporting. (see Listings)
Data Model:
GET https://api.emailsrvr.com/v1/domains/example.com/ex/distributionlists" });
{ "DistributionLists": [ { "Description": "This is an example of an edited DL.", "MemberCount": 0, "CommonName": "exampledl", "DisplayName": "ExampleDL", "Alias": "exampledl.example.com", "IsHiddenFromAddressList": false, "PrimarySmtpAddress"<EMAIL_ADDRESS>"Status": "showy", "LegacyExchangeDn": "/o=e14s/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=exampledl59c" } ], "Sort": "primarysmtpaddress", "Limit": 25, "Total": 1, "Order": "asc" }
Shows a distribution list.
Use this route to read an existing Distribution List.
Data Model: Distribution List
Notes
The Distribution List resource contains some paged data that must be accessed via separate GET requests.
Properties directly on the object can be accessed via a GET on the base resource, however Members, Senders, and Managers must each be retrieved by separate requests.
GET https://api.emailsrvr.com/v1/domains/example.com/ex/distributionlists/ExampleDL" });
{ "Description": "This is an example DL.", "MemberCount": 2, "CommonName": "exampledl", "DisplayName": "Example DL", "Alias": "exampledl.example.com", "IsHiddenFromAddressList": false, "PrimarySmtpAddress"<EMAIL_ADDRESS>"Status": "showy", "LegacyExchangeDn": "/o=e14s/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=exampledl59c" }
Adds a Distribution List.
Use this route to add a new Distribution List.
Supports Asynchronous Statuses and Asynchronous Errors.
Data Model: Distribution List
POST https://api.emailsrvr.com/v1/domains/example.com/ex/distributionlists { "Description" : "This is an example DL." "CommonName" : "ExampleDL" "DisplayName" : "ExampleDL" "IsHiddenFromAddressList": false, "EmailAddresses": [ \t{ "Action\":\"Add" "Value"<EMAIL_ADDRESS>"AddressPrimary": false, "AddressProtocol" : "smtp" } ], "Members": { "Recipients": [ \t{ \t \"Action\":\"Add" \t \"Value\":\"mexuser1" \t}, \t{ \t \"Action\":\"Add" \t \"Value\":\"mexuser2" \t} ] }, "ManagedBy": { "Recipients": [ \t{ \t \"Action\":\"Add" \t \"Value\":\"mexuser1" \t}, \t{ \t \"Action\":\"Add" \t \"Value\":\"mexuser2" \t} ] }, "AcceptMessagesOnlyFrom": { "All\":\"restricted" "Recipients": [ \t{ \t \"Action\":\"Add" \t \"Value\":\"mexuser1" \t}, \t{ \t \"Action\":\"Add" \t \"Value\":\"mexuser2" \t} ] } }" });
This operation does not return a response body.
Updates an existing Distribution List.
Updates an existing Distribution List.
Supports Asynchronous Statuses and Asynchronous Errors.
Data Model: Distribution List
Notes
All data that is part of the Exchange Distribution List resource can be updated in a single PUT request.
Recipients, ManagedBy, and AcceptMessagesOnlyFrom
must specify an Action, set to either Add or Remove,
to specify the operation for that value.
AcceptMessagesOnlyFrom also has an additional parameter All that can be set to restricted (to specify specific allowed senders) or public.
PUT https://api.emailsrvr.com/v1/domains/example.com/ex/distributionlists/ExampleDL { "Description" : "This is an example of an edited DL." "DisplayName" : "ExampleDL" "EmailAddresses": [ { "Action\":\"remove" "Value"<EMAIL_ADDRESS>"AddressPrimary": false, "AddressProtocol" : "smtp" } ], "Members": { "Recipients": [ \t{ \t\t\"Action\":\"Remove" \t\t\"Value\":\"mexuser1" \t}, \t{ \t\t\"Action\":\"Add" \t\t\"Value\":\"mexuser3" \t} ] }, "ManagedBy": { "Recipients": [ \t{ \t\t\"Action\":\"Remove" \t\t\"Value\":\"mexuser1" \t}, \t{ \t\t\"Action\":\"Add" \t\t\"Value\":\"mexuser3" \t} ] }, "AcceptMessagesOnlyFrom": { "All\":\"restricted" "Recipients": [ \t{ \t\t\"Action\":\"Remove" \t\t\"Value\":\"mexuser3" \t}, \t{ \t\t\"Action\":\"Add" \t\t\"Value\":\"mexuser2" \t} ] } }" });
This operation does not return a response body.
Deletes a distribution list.
Use this route to delete a distribution list.
Supports Asynchronous Statuses and Asynchronous Errors.
Data Model: None
DELETE https://api.emailsrvr.com/v1/domains/example.com/ex/distributionList/ExampleDL" });
This operation does not return a response body.
Exports a file of distribution lists.
Use this route to export a file of distribution lists.
Data Model: Distribution List Listing
| Parameter | Style | Type | Description |
|---|---|---|---|
| exportTo (Optional) | xs:string |
GET<EMAIL_ADDRESS>});
This operation does not return a response body.
Imports a file of distribution lists.
Use this route to import a file of distribution lists.
Data Model: FileUrl (string)
Instructions
Create a CSV (comma-separated values) file containing the distribution lists you'd like to import. You can get a valid CSV file format by bulk-exporting your current distribution lists.
Upload the file to a public accessible URL (e.g. cloud-files, CDN, etc.)
Call this endpoint with the url of the file in the body.
You will receive a confirmation email to the address specified in the URL when the import is complete. Any rows that were not able to be imported are available via a link provided in the confirmation email.
| Parameter | Style | Type | Description |
|---|---|---|---|
| emailAddress (Optional) | xs:string |
POST https://api.emailsrvr.com/v1/domains/example.com/ex/distributionLists?emailAddress=myAdminEmail.com { "FileUrl" : "http://asdfasdfzxcvzxcvasdfasdf.cf1.rackcdn.com/MyDistributionLists.csv" }" });
This operation does not return a response body.
Lists an existing Distribution List's alternate email addresses. (see Listings).
Lists an existing Distribution List's alternate email addresses. (see Listings)
Data Model:
GET https://api.emailsrvr.com/v1/domains/example.com/ex/distributionlists/ExampleDL/emailaddresses" });
{ "EmailAddresses": [ { "Value"<EMAIL_ADDRESS>"AddressPrimary": true, "AddressProtocol": "smtp" }, { "Value"<EMAIL_ADDRESS>"AddressPrimary": false, "AddressProtocol": "smtp" } ], "Limit": 25, "Total": 2, "Order": "asc" }
Lists resource mailboxes.
Use this to list resource mailboxes, supports exporting, supports exporting. (see Listings)
Data Model:
GET https://api.emailsrvr.com/v1/domains/example.com/ex/resources" });
{ "ResourceMailboxes": [ { "Type": "Room", "PhoneNumber": "1234567890", "Upn"<EMAIL_ADDRESS>"ResourceCapacity": 25, "CustomProperties": [ { "Value": "Videoconferencing", "ExchangeAction": 0 }, { "Value": "Whiteboard", "ExchangeAction": 0 } ], "CommonName": "room.101", "DisplayName": "Room 101", "Alias": "room.101.example.com", "IsHiddenFromAddressList": false, "PrimarySmtpAddress": null, "EmailAddresses": null, "Status": "showy", "SamAccountName": "room.101", "LegacyExchangeDn": "/o=e14s/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=room.101b5c" }, { "Type": "Room", "PhoneNumber": "1234567890", "Upn"<EMAIL_ADDRESS>"ResourceCapacity": 25, "CustomProperties": [ { "Value": "Videoconferencing", "ExchangeAction": 0 }, { "Value": "Whiteboard", "ExchangeAction": 0 } ], "CommonName": "room.102", "DisplayName": "Room 101", "Alias": "room.102.example.com", "IsHiddenFromAddressList": false, "PrimarySmtpAddress": null, "EmailAddresses": null, "Status": "showy", "SamAccountName": "room.102", "LegacyExchangeDn": "/o=e14s/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=room.1029fd" }, { "Type": "Room", "PhoneNumber": "1234567890", "Upn"<EMAIL_ADDRESS>"ResourceCapacity": 25, "CustomProperties": [ { "Value": "Videoconferencing", "ExchangeAction": 0 }, { "Value": "Whiteboard", "ExchangeAction": 0 } ], "CommonName": "room.103", "DisplayName": "Room 103", "Alias": "room.103.example.com", "IsHiddenFromAddressList": false, "PrimarySmtpAddress": null, "EmailAddresses": null, "Status": "showy", "SamAccountName": "room.103", "LegacyExchangeDn": "/o=e14s/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=room.10370c" } ], "Sort": "cn", "Limit": 50, "Total": 3, "Order": "asc" }
Adds a resource mailbox.
Use this route to add a new resource mailbox.
Data Model:
POST https://api.emailsrvr.com/v1/domains/example.com/ex/resources { "CommonName" : "room.101" "Type" : "Room" "DisplayName" : "Room 101" "PhoneNumber" : "1234567890" "ResourceCapacity": 25, "CustomProperties": [ { "Value" : "Videoconferencing" }, { "Value" : "Whiteboard" } ], "CalendarProcessing": { "AutoBooking" : "AutoUpdate" "BookingWindowInDays": 90, "EnforceSchedulingHorizon": false, "AllowConflicts": true, "AllowRecurringMeetings": false, "ScheduleOnlyDuringWorkHours": true, "MaximumDurationInMinutes": 720, "MaximumConflictInstances": 1, "ConflictPercentageAllowed": 50, "AdditionalResponse": { "Enable": true, "Value" : "This is an additional response" } }, "Delegates": [ { "Value" : "user1" }, { "Value" : "user2" }, { "Value" : "user3" } ], "Permissions": [ { "Recipient" : "user5" "Types": [ "FullAccess" ] }, { "Recipient" : "user6" "Types": [ "SendAs" ] }, { "Recipient" : "user7" "Types": [ "FullAccess" "SendAs" ] } ], "BookInPolicy": { "Recipients": [ { "Value" : "user1" }, { "Value" : "user2" } ] }, "RequestInPolicy": { "Recipients": [ { "Value" : "user4" }, { "Value" : "user5" } ] }, "RequestOutOfPolicy": { "AllUsers": true } }" });
This operation does not return a response body.
Exports a file of resource mailboxes.
Use this route to export a file of resource mailboxes.
Data Model:
| Parameter | Style | Type | Description |
|---|---|---|---|
| exportTo (Optional) | xs:string |
GET<EMAIL_ADDRESS>});
This operation does not return a response body.
Lists the resource mailboxes associated with the domain.
Remarks
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/ex/resources?size=100\u0026offset=10\u0026contains=conference', 'text/xml'" });
{"offset":0,"size":50,"total":3,"resources":[{"name":"apiexresource43","displayName":"API Test","type":"room"},{"name":"apiexresource5","displayName":"API Test","type":"equipment"},{"name":"apiexresource85","displayName":"API Test","type":"room"}]}
<?xml version="1.0" encoding="utf-8"?> <resourceList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:resourceList"> <offset>0</offset> <size>50</size> <total>3</total> <resources> <resource> <name>apiexresource43</name> <displayName>API Test</displayName> <type>room</type> </resource> <resource> <name>apiexresource5</name> <displayName>API Test</displayName> <type>equipment</type> </resource> <resource> <name>apiexresource85</name> <displayName>API Test</displayName> <type>room</type> </resource> </resources> </resourceList>
Shows resource details.
Remarks
The Show operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/ex/resource/conference.room', 'text/xml'" });
{"name":"apiexresource43","displayName":"API Test","type":"room"}
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?> <resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:resource"> <name>apiexresource43</name> <displayName>API Test</displayName> <type>room</type> </resource>
Adds a resource with the specified information.
Required fields must be supplied when adding. Others are optional.
| Field Name | Data Type | Description |
| displayName | string | Resource display name (Required for add) |
| type | string | The resource type, 'room' or 'equipment' (Required for add) |
| password | string | The password to change the settings of the mailbox or add/remove admins (Required for add) |
POST '/customers/12345678/domains/example.com/ex/resources/conference.room', { 'displayName' =\u003E 'Conference Room' 'type' =\u003E 'room' 'password' =\u003E 'abcDEF123' }, 'text/xml'" });
This operation does not return a response body.
Updates a resource with the specified information.
Required fields must be supplied when adding. Others are optional.
| Field Name | Data Type | Description |
| displayName | string | Resource display name (Required for add) |
| type | string | The resource type, 'room' or 'equipment' (Required for add) |
| password | string | The password to change the settings of the mailbox or add/remove admins (Required for add) |
PUT '/customers/12345678/domains/example.com/ex/resources/all.employees', { 'displayName' =\u003E 'Conference Room A' 'password' =\u003E 'ABCd4321' }, 'text/xml'," });
This operation does not return a response body.
Deletes a resource.
DELETE '/customers/12345678/domains/example.com/ex/resources/all.employees', 'text/xml'" });
This operation does not return a response body.
Lists resource admins.
Remarks
The Index operation only supports the GET HTTP verb.
GET '/customers/12345678/domains/example.com/ex/resources/conference.room/admins', 'text/xml'" });
{"offset":0,"size":50,"total":3,"admins":["apiexmailbox70@apidomain90.com","apiexmailbox87<EMAIL_ADDRESS><?xml version="1.0" encoding="utf-8"?> <resourceAdminList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:resourceAdminList"> <offset>0</offset> <size>50</size> <total>3</total> <admins><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS></admins> </resourceAdminList>
Adds an admin to a resource.
POST '/customers/12345678/domains/example.com/ex/resources/conference.room/admins/john.smith', {}, 'text/xml'" });
This operation does not return a response body.
Deletes the admin from a resource.
DELETE '/customers/12345678/domains/example.com/ex/resources/conference.room/admins/john.smith', 'text/xml'" });
This operation does not return a response body.
Shows a resource mailbox.
Use this route to read an existing resource mailbox.
Data Model:
Notes
The Exchange Resource resource contains some paged data that must be accessed via separate GET requests.
Properties directly on the object and CustomProperties, can be accessed via a GET on the base resource.
GET https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.1" });
{ "Type": "Room", "PhoneNumber": "1234567890", "Upn"<EMAIL_ADDRESS>"ResourceCapacity": 25, "CustomProperties": [ { "Value": "Videoconferencing", "ExchangeAction": 0 }, { "Value": "Whiteboard", "ExchangeAction": 0 } ], "CommonName": "room.101", "DisplayName": "Room 101", "Alias": "room.101.example.com", "IsHiddenFromAddressList": false, "PrimarySmtpAddress": null, "EmailAddresses": null, "Status": "showy", "SamAccountName": "room.101", "LegacyExchangeDn": "/o=e14s/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=room.1019d4" }
Updates a resource mailbox.
Use this route to update an existing resource mailbox.
Data Model:
Notes
All data that is part of the 'Exchange Resource' resource can be updated in a single PUT request.
CustomProperties, Delegates, and policies must specify an Action, set to either Add or Remove, to specify the operation for that value.
Permissions must be specified in whole. For example<EMAIL_ADDRESS>has user5's permission types set to FullAccess.
To add SendAs, the request must contain both FullAccess and SendAs for that user.
To remove all permissions from user7, the request must contain an empty Type array for that user.
PUT https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.101 { "Type" : "Room" "DisplayName" : "Conference Room 101" "PhoneNumber" : "try shouting" "ResourceCapacity" : "30" "CustomProperties": [ { "Value" : "Whiteboard" "Action" : "Remove" } ], "CalendarProcessing": { "AutoBooking" : "AutoUpdate" "BookingWindowInDays": 180, "EnforceSchedulingHorizon": true, "AllowConflicts": false, "AllowRecurringMeetings": true, "ScheduleOnlyDuringWorkHours": false, "MaximumDurationInMinutes": 1440, "MaximumConflictInstances": 0, "ConflictPercentageAllowed": 0, "AdditionalResponse": { "Enable": false } }, "Delegates": [ { "Value" : "user3" "Action" : "Remove" }, { "Value" : "user4" "Action" : "Add" } ], "Permissions": [ { "Recipient" : "user5" "Types": [ "FullAccess" "SendAs" ] }, { "Recipient" : "user7" "Types": [] }, { "Recipient" : "user8" "Types": [ "FullAccess" ] } ], "BookInPolicy": { "Recipients": [ { "Value" : "user2" "Action" : "Remove" }, { "Value" : "user3" "Action" : "Add" } ] }, "RequestInPolicy": { "AllUsers": true }, "RequestOutOfPolicy": { "AllUsers": false, "Recipients": [ { "Value" : "user7" "Action" : "Add" }, { "Value" : "user8" "Action" : "Add" } ] } }" });
This operation does not return a response body.
Deletes a resource mailbox.
DELETE https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.101" });
This operation does not return a response body.
Shows resource mailbox calendar.
Use this route to read an existing resource mailbox's calendar processing data.
Data Model:
GET https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.101/calendarProcessing" });
{ "AutoBooking": "AutoUpdate", "BookingWindowInDays": 90, "EnforceSchedulingHorizon": false, "AllowConflicts": true, "AllowRecurringMeetings": false, "ScheduleOnlyDuringWorkHours": true, "MaximumDurationInMinutes": 720, "MaximumConflictInstances": 1, "ConflictPercentageAllowed": 50, "AdditionalResponse": { "Enable": true, "Value": "This is an additional response" } }
Updates resource mailbox calendar.
Use this route to update an existing resource mailbox's calendar processing data.
Although Calendar Processing settings can be updated as part of the base Exchange Resource update, a convenience route is also available for just sending just the Calendar Processing part of the request.
Data Model:
PUT https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.101/calendarProcessing { "AutoBooking" : "AutoUpdate" "BookingWindowInDays": 180, "EnforceSchedulingHorizon": true, "AllowConflicts": false, "AllowRecurringMeetings": true, "ScheduleOnlyDuringWorkHours": false, "MaximumDurationInMinutes": 1440, "MaximumConflictInstances": 0, "ConflictPercentageAllowed": 0, "AdditionalResponse": { "Enable": false } }" });
This operation does not return a response body.
Bulk-updates calendar for resource mailbox.
Use this route to read an existing resource mailbox's calendar processing data.
Although Permissions settings can be updated as part of the base Exchange Resource update, a convenience route is also available for just sending the Permissions part of the request.
Data Model:
PUT https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.101/permissions [ { "Recipient" : "user5" "Types": [ "FullAccess" "SendAs" ] }, { "Recipient" : "user7" "Types": [] }, { "Recipient" : "user8" "Types": [ "FullAccess" ] } ]" });
This operation does not return a response body.
Lists resource mailbox delegates.
Use this route to read an existing resource mailbox's delegates data.
Data Model:
GET https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.101/delegates" });
{ "Delegates": [ { "Value": "user1" }, { "Value": "user2" }, { "Value": "user3" } ], "Limit": 50, "Total": 3, "Order": "asc" }
Bulk-updates delegates.
Use this route to update an existing resource mailbox's delegates data.
Although Delegates settings can be updated as part of the base Exchange Resource update, a convenience route is also available for just sending the Delegates part of the request.
Data Model:
PUT https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.101/delegates [ { "Value" : "user1" "Action" : "Remove" }, { "Value" : "user2" "Action" : "Remove" }, { "Value" : "user5" "Action" : "Add" } ]" });
This operation does not return a response body.
Shows resource mailbox permissions.
Use this route to read an existing resource mailbox's permissions data.
Data Model:
GET https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.101/permissions" });
{ "Permissions": [ { "Recipient": "user5", "Types": [ "FullAccess" ] }, { "Recipient": "user6", "Types": [ "SendAs" ] }, { "Recipient": "user7", "Types": [ "FullAccess", "SendAs" ] } ], "Limit": 50, "Total": 3, "Order": "asc" }
Lists policies.
Use this route to read an existing resource mailbox's permissions data.
Examples in this section will use BookInPolicy, but the interface for the three is all the same.
Data Model:
URL Format
BookIn, RequestIn, and RequestOutOf policies can all be accessed via the resource's URL followed by /bookInPolicy, /requestInPolicy, and /requestOutOfPolicy, respectively.
/v1/customers/{customer account number}/domains/{domain name}/ex/resources/{common name}/bookInPolicy
/v1/customers/{customer account number}/domains/{domain name}/ex/resources/{common name}/requestInPolicy
/v1/customers/{customer account number}/domains/{domain name}/ex/resources/{common name}/requestOutOfPolicy
GET https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.101/bookInPolicy" });
{ "Recipients": [ { "Value": "user1" }, { "Value": "user2" } ], "AllUsers":false, "Limit": 50, "Total": 2, "Order": "asc" }
Bulk-updates policies.
Use this route to read an existing resource mailbox's policies data.
Although policies settings can be updated as part of the base Exchange Resource update, a convenience route is also available for just sending the just the policies part of the request.
Data Model:
URL Format
BookIn, RequestIn, and RequestOutOf policies can all be accessed via the resource's URL followed by /bookInPolicy, /requestInPolicy, and /requestOutOfPolicy, respectively.
/v1/customers/{customer account number}/domains/{domain name}/ex/resources/{common name}/bookInPolicy
/v1/customers/{customer account number}/domains/{domain name}/ex/resources/{common name}/requestInPolicy
/v1/customers/{customer account number}/domains/{domain name}/ex/resources/{common name}/requestOutOfPolicy
PUT https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.101/bookInPolicy { "Recipients": [ { "Value" : "user2" "Action" : "Remove" }, { "Value" : "user3" "Action" : "Add" } ], "AllUsers\":false }" });
This operation does not return a response body.
Lists recipients with resource permissions on a domain.
Use this route to list recipients that can have permissions for a new resource on a given domain.
Data Model:
Note
https://api.emailsrvr.com/v1/domains/(domain)/ex/resourceOptions/ is the base URL for getting complete sets of valid data that can be submitted as part of an Exchange Resource add operation.
GET https://api.emailsrvr.com/v1/domains/example.com/ex/resourceOptions/AvailablePermissionsRecipients" });
{ "Recipients": [ { "Value": "user1" }, { "Value": "user10" }, { "Value": "user2" }, { "Value": "user3" }, { "Value": "user4" }, { "Value": "user5" }, { "Value": "user6" }, { "Value": "user7" }, { "Value": "user8" }, { "Value": "user9" } ], "Limit": 50, "Total": 10, "Order": "asc" }
Lists recipients that can be resource delegates on a domain.
Use this route to list recipients that can be delegates for a new resource on a given domain.
Data Model:
Note
https://api.emailsrvr.com/v1/domains/{domain}/ex/resourceOptions/ is the base URL for getting complete sets of valid data that can be submitted as part of an Exchange Resource add operation.
GET https://api.emailsrvr.com/v1/domains/example.com/ex/resourceOptions/AvailableDelegatesRecipients" });
{ "Recipients": [ { "Value": "user1" }, { "Value": "user10" }, { "Value": "user2" }, { "Value": "user3" }, { "Value": "user4" }, { "Value": "user5" }, { "Value": "user6" }, { "Value": "user7" }, { "Value": "user8" }, { "Value": "user9" } ], "Limit": 50, "Total": 10, "Order": "asc" }
Lists recipients that can be delegates for a resource.
Use this route to list recipients that can be delegates for an existing resource.
Data Model:
Note
https://api.emailsrvr.com/v1/domains/{domain}/ex/resource/{common name}/options is the base URL for getting complete sets of valid data that can be submitted as part of an Exchange Resource edit operation.
GET https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.101/options/AvailableDelegatesRecipients" });
{ "Recipients": [ { "Value": "user10" }, { "Value": "user4" }, { "Value": "user5" }, { "Value": "user6" }, { "Value": "user7" }, { "Value": "user8" }, { "Value": "user9" } ], "Limit": 50, "Total": 7, "Order": "asc" }
Lists recipients that can be resource delegates on a domain.
Use this route to list recipients that can be delegates for a new resource on a given domain.
Data Model:
Note
https://api.emailsrvr.com/v1/domains/{domain}/ex/resourceOptions/ is the base URL for getting complete sets of valid data that can be submitted as part of an Exchange Resource add operation.
GET https://api.emailsrvr.com/v1/domains/example.com/ex/resourceOptions/AvailableDelegatesRecipients" });
{ "Recipients": [ { "Value": "user1" }, { "Value": "user10" }, { "Value": "user2" }, { "Value": "user3" }, { "Value": "user4" }, { "Value": "user5" }, { "Value": "user6" }, { "Value": "user7" }, { "Value": "user8" }, { "Value": "user9" } ], "Limit": 50, "Total": 10, "Order": "asc" }
Lists recipients that can be delegates for a resource.
Use this route to list recipients that can be delegates for an existing resource.
Data Model:
Note
https://api.emailsrvr.com/v1/domains/{domain}/ex/resource/{common name}/options is the base URL for getting complete sets of valid data that can be submitted as part of an Exchange Resource edit operation.
GET https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.101/options/AvailableDelegatesRecipients" });
{ "Recipients": [ { "Value": "user10" }, { "Value": "user4" }, { "Value": "user5" }, { "Value": "user6" }, { "Value": "user7" }, { "Value": "user8" }, { "Value": "user9" } ], "Limit": 50, "Total": 7, "Order": "asc" }
Lists recipients that can be in resource policies for a domain.
Use this route to list recipients that can be in policies for a new resource on a given domain.
Data Model:
URL Format
Available BookIn, RequestIn, and RequestOutOf policy recipients can all be accessed via the resourceOptions URL followed by /availableBookInPolicyRecipients, /availableRequestInPolicyRecipients, /availableRequestOutOfRecipients respectively. The example in this section will use BookInPolicy, but the interface for the three is all the same.
/v1/customers/{customer account number}/domains/{domain name}/ex/resources/resourceOptions/availableBookInPolicyRecipients
/v1/customers/{customer account number}/domains/{domain name}/ex/resources/resourceOptions/availableRequestInPolicyRecipients
/v1/customers/{customer account number}/domains/{domain name}/ex/resources/resourceOptions/availableRequestOutOfRecipients
Note
https://api.emailsrvr.com/v1/domains/{domain}/ex/resourceOptions/ is the base URL for getting complete sets of valid data that can be submitted as part of an Exchange Resource add operation.
GET https://api.emailsrvr.com/v1/domains/example.com/ex/resourceOptions/availableBookInPolicyRecipients" });
{ "Recipients": [ { "Value": "user1" }, { "Value": "user10" }, { "Value": "user2" }, { "Value": "user3" }, { "Value": "user4" }, { "Value": "user5" }, { "Value": "user6" }, { "Value": "user7" }, { "Value": "user8" }, { "Value": "user9" } ], "Limit": 50, "Total": 10, "Order": "asc" }
Lists recipients that have permissions for a resource.
Use this route to list recipients that can have permissions for an existing resource.
Data Model:
Note
https://api.emailsrvr.com/v1/domains/{domain}/ex/resource/{common name}/options is the base URL for getting complete sets of valid data that can be submitted as part of an Exchange Resource edit operation.
GET https://api.emailsrvr.com/v1/domains/example.com/ex/resources/room.101/options/AvailablePermissionsRecipients" });
{ "Recipients": [ { "Value": "user1" }, { "Value": "user10" }, { "Value": "user2" }, { "Value": "user3" }, { "Value": "user4" }, { "Value": "user8" }, { "Value": "user9" } ], "Limit": 50, "Total": 7, "Order": "asc" }