Difference between revisions of "Exchange Contact (Rest API)"
(remove accept header from examples to avoid confusion) |
|||
(11 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | |||
− | |||
__TOC__ | __TOC__ | ||
+ | == v1 - Current == | ||
=== Index === | === Index === | ||
''URL'': | ''URL'': | ||
− | <nowiki>[GET] | + | <nowiki>[GET] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/contacts</nowiki> | /ex/contacts</nowiki> | ||
Line 15: | Line 14: | ||
Returns a list of contacts under the domain. | Returns a list of contacts under the domain. | ||
+ | ''Example'': | ||
+ | <pre> | ||
+ | get '/customers/12345678/domains/example.com/ex/contacts?contains=john' | ||
+ | </pre> | ||
− | |||
− | + | ''XML Result Example'': | |
− | |||
− | |||
<pre> | <pre> | ||
− | + | <?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> | ||
+ | <externalEmail>externalemail58@yahoo.com</externalEmail> | ||
+ | </contact> | ||
+ | <contact> | ||
+ | <name>apiexcontact73</name> | ||
+ | <displayName>API Test</displayName> | ||
+ | <externalEmail>externalemail98@yahoo.com</externalEmail> | ||
+ | </contact> | ||
+ | <contact> | ||
+ | <name>apiexcontact81</name> | ||
+ | <displayName>API Test</displayName> | ||
+ | <externalEmail>externalemail46@yahoo.com</externalEmail> | ||
+ | </contact> | ||
+ | </contacts> | ||
+ | </contactList> | ||
</pre> | </pre> | ||
− | '' | + | ''Json Result Example'': |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | {"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 Test","externalEmail":"externalemail46@yahoo.com"}]} | ||
=== Show === | === Show === | ||
''URL'': | ''URL'': | ||
− | <nowiki>[GET] | + | <nowiki>[GET] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/contacts/(contact name)</nowiki> | /ex/contacts/(contact name)</nowiki> | ||
Line 56: | Line 65: | ||
− | '' | + | ''Example'': |
+ | <pre> | ||
+ | get '/customers/12345678/domains/example.com/ex/contacts/alex.smith' | ||
+ | </pre> | ||
− | |||
+ | ''XML Result Example'': | ||
− | |||
<pre> | <pre> | ||
− | + | <?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> | ||
+ | <externalEmail>externalemail98@yahoo.com</externalEmail> | ||
+ | <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> | ||
</pre> | </pre> | ||
+ | |||
+ | |||
+ | ''Json Result Example'': | ||
+ | |||
+ | {"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"}} | ||
''Errors'': | ''Errors'': | ||
− | {| | + | {| class="wikitable" |
!''Description'' | !''Description'' | ||
!''HTTP Response Code'' | !''HTTP Response Code'' | ||
!''Sample Message'' | !''Sample Message'' | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| Contact is not found | | Contact is not found | ||
Line 86: | Line 118: | ||
| Contact not found | | Contact not found | ||
|} | |} | ||
− | |||
=== Add/Edit === | === Add/Edit === | ||
''URL'': | ''URL'': | ||
− | <nowiki>Add: [POST] | + | <nowiki>Add: [POST] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/contacts/(contact name) | /ex/contacts/(contact name) | ||
− | Edit: [PUT] | + | Edit: [PUT] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/contacts/(contact name)</nowiki> | /ex/contacts/(contact name)</nowiki> | ||
Line 103: | Line 134: | ||
− | {| | + | {| class="wikitable" |
!''Field Name'' | !''Field Name'' | ||
!''Data Type'' | !''Data Type'' | ||
Line 140: | Line 171: | ||
| Department | | Department | ||
|- | |- | ||
− | | | + | | businessNumber |
| string | | string | ||
| Business phone number | | Business phone number | ||
|- | |- | ||
− | | | + | | homeNumber |
| string | | string | ||
| Home phone number | | Home phone number | ||
|- | |- | ||
− | | | + | | mobileNumber |
| string | | string | ||
| Mobile phone number | | Mobile phone number | ||
|- | |- | ||
− | | | + | | faxNumber |
| string | | string | ||
| Fax number | | Fax number | ||
|- | |- | ||
− | | | + | | pagerNumber |
| string | | string | ||
| Pager number | | Pager number | ||
Line 188: | Line 219: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | post '/customers/12345678/domains/example.com/ex/contacts/alex.smith | + | post '/customers/12345678/domains/example.com/ex/contacts/alex.smith', |
{ | { | ||
'displayName' => 'Johnny Customer', | 'displayName' => 'Johnny Customer', | ||
Line 196: | Line 227: | ||
<pre> | <pre> | ||
− | put '/customers/12345678/domains/example.com/ex/contacts/alex.smith | + | put '/customers/12345678/domains/example.com/ex/contacts/alex.smith', |
{ | { | ||
'externalEmail' => 'jonnysNewEmail@microsoft.com', | 'externalEmail' => 'jonnysNewEmail@microsoft.com', | ||
Line 207: | Line 238: | ||
''Errors'': | ''Errors'': | ||
− | {| | + | {| class="wikitable" |
!''Description'' | !''Description'' | ||
!''HTTP Response Code'' | !''HTTP Response Code'' | ||
!''Sample Message'' | !''Sample Message'' | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| Contact is not found | | Contact is not found | ||
Line 227: | Line 250: | ||
| 400 | | 400 | ||
| Invalid display name | | Invalid display name | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| New display name doesn't meet the naming requirements | | New display name doesn't meet the naming requirements | ||
Line 261: | Line 268: | ||
''URL'': | ''URL'': | ||
− | <nowiki>[DELETE] | + | <nowiki>[DELETE] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) |
/ex/contacts/(contact name)</nowiki> | /ex/contacts/(contact name)</nowiki> | ||
Line 277: | Line 284: | ||
''Example'': | ''Example'': | ||
<pre> | <pre> | ||
− | delete '/customers/12345678/domains/example.com/ex/contacts/alex.smith | + | delete '/customers/12345678/domains/example.com/ex/contacts/alex.smith' |
</pre> | </pre> | ||
''Errors'': | ''Errors'': | ||
− | {| | + | {| class="wikitable" |
!''Description'' | !''Description'' | ||
!''HTTP Response Code'' | !''HTTP Response Code'' | ||
!''Sample Message'' | !''Sample Message'' | ||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| Contact is not found | | Contact is not found |
Latest revision as of 13:48, 12 January 2017
v1 - Current
Index
URL:
[GET] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/contacts
Description:
Returns a list of contacts under the domain.
Example:
get '/customers/12345678/domains/example.com/ex/contacts?contains=john'
XML Result Example:
<?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> <externalEmail>externalemail58@yahoo.com</externalEmail> </contact> <contact> <name>apiexcontact73</name> <displayName>API Test</displayName> <externalEmail>externalemail98@yahoo.com</externalEmail> </contact> <contact> <name>apiexcontact81</name> <displayName>API Test</displayName> <externalEmail>externalemail46@yahoo.com</externalEmail> </contact> </contacts> </contactList>
Json Result Example:
{"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 Test","externalEmail":"externalemail46@yahoo.com"}]}
Show
URL:
[GET] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/contacts/(contact name)
Description:
Returns the contact's details.
Example:
get '/customers/12345678/domains/example.com/ex/contacts/alex.smith'
XML Result Example:
<?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> <externalEmail>externalemail98@yahoo.com</externalEmail> <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>
Json Result Example:
{"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"}}
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Contact is not found | 404 | Contact not found |
Add/Edit
URL:
Add: [POST] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/contacts/(contact name) Edit: [PUT] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/contacts/(contact name)
Description:
Adds or edits 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 |
Example:
post '/customers/12345678/domains/example.com/ex/contacts/alex.smith', { 'displayName' => 'Johnny Customer', 'externalEmail' => 'jonny@apple.com' }
put '/customers/12345678/domains/example.com/ex/contacts/alex.smith', { 'externalEmail' => 'jonnysNewEmail@microsoft.com', 'company' => 'Microsoft', 'businessnumber' => '425 555 5555' }
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Contact is not found | 404 | No user with the email address jane.doe@abc.com exists |
New display name doesn't meet the naming requirements | 400 | Invalid display name |
New display name doesn't meet the naming requirements | 400 | Invalid display name |
New contact name (user name) already exists | 400 | The email address john.doe@abc.com is already in use |
New contact name (user name) is reserved by Exchange | 400 | user name reserved |
Delete
URL:
[DELETE] https://api.emailsrvr.com/v1/customers/(customer account number)/domains/(domain name) /ex/contacts/(contact name)
Description:
Deletes the contact.
Remarks:
Contact is deleted immediately without verification and data is lost permanently.
Example:
delete '/customers/12345678/domains/example.com/ex/contacts/alex.smith'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Contact is not found | 404 | No user with the email address jane.doe@abc.com exists |