Exchange Skype For Business (Rest API)

From Rackspace Email & Apps API
Revision as of 09:05, 6 June 2014 by Appscp (talk | contribs) (Created page with '== v1 - Current== This resource supports enabling and disabling Lync on a specified domain as well as adding and removing users to the service with both XML and JSON. === Data …')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

v1 - Current

This resource supports enabling and disabling Lync on a specified domain as well as adding and removing users to the service with both XML and JSON.

Data Model

Lync Service

Field Name Data Type Verbs Description
Name String GET Domain Name
Status** String GET Status of the Lync service. (ready, pending, error)

User

Field Name Data Type Verbs Description
Value String GET, PUT Domain Name
Action String GET, PUT Must be "Add" or "Remove". Only valid for PUT requests.
Status** String GET Status of the Lync user. (ready, pending, error)

**A ready status means that there are no scheduled operations for the object. A pending status signifies the object is being modified. An error status is reserved for future enhancements to the Lync service, but is not currently used.


List

Verb GET
URL Format /v1/customers/{customer account number}/domains/{domain name}/ex/lync/
Description Returns Lync information for the specified domain.
Model Lync Service

HTTP Codes

Code Condition
200 OK The information was successfully retrieved and Lync is currently enabled on the domain.
400 Bad Request Lync is not available for the domain.
404 Not Found The information was successfully retrieved however Lync is not currently enabled on the domain.
Request:
GET https://api.emailsrvr.com/v1/domains/example.com/ex/lync

Response:
200 OK
{
  "Name" : "example.com",
  "Status" : "ready"
}

Enable

Verb POST
URL Format /v1/customers/{customer account number}/domains/{domain name}/ex/lync
Description Use this route to enable Lync for the specified domain.
Note Enabling Lync does not turn Lync on for all users on the domain.

Use the Update Users route to enable Lync for end users.

HTTP Codes

Code Condition
204 No Content The request has been accepted and will be processed.
404 Not Found The domain does not exist or the domain does not have Exchange. Inspect the itemNotFondFault for more detail.
Request:
POST https://api.emailsrvr.com/v1/domains/example.com/ex/lync

Response:
204 No Content

Disable

Verb DELETE
URL Format /v1/customers/{customer account number}/domains/{domain name}/ex/lync
Description Use this route to disable Lync for the specified domain.

HTTP Codes

Code Condition
204 No Content The request has been accepted and will be processed.
404 Not Found The domain does not exist or the domain does not have Exchange. Inspect the itemNotFondFault for more detail.
Request:
DELETE https://api.emailsrvr.com/v1/domains/example.com/ex/lync

Response:
204 No Content

List Users

Verb GET
URL Format /v1/customers/{customer account number}/domains/{domain name}/ex/lync/users
Description Use this route to list users who currently have Lync enabled.
Model User

HTTP Codes

Code Condition
200 OK Returns a filtered list of users who have Lync enabled.
400 Bad Request The request was invalid. Inspect the validationFault response for more detail.
404 Not Found The domain does not exist or the domain does not have Exchange. Inspect the itemNotFondFault for more detail.
Request:
GET https://api.emailsrvr.com/v1/domains/example.com/ex/lync/users
{
 "Users" : [
   {
    "Value" : "user1",
    "Status" : "ready"
   },
   {
    "Value" : "user2",
    "Status" : "ready"
   },
   {
    "Value" : "user3",
    "Status" : "ready"
   },
   {
    "Value" : "user4",
    "Status" : "ready"
   },
   {
    "Value" : "user5",
    "Status" : "pending"
   }
  ],
 "Total" : "5"
} 

Response:
200 OK

Get Individual User

Verb GET
URL Format /v1/customers/{customer account number}/domains/{domain name}/ex/lync/users/{user name}
Description Use this route to get the status for an individual enabled Lync user.
Model User

HTTP Codes

Code Condition
200 OK Returns an individual enabled Lync user.
400 Bad Request The request was invalid. Inspect the validationFault response for more detail.
404 Not Found The domain does not exist or the domain does not have Exchange. Inspect the itemNotFoundFault for more detail.
Request:
GET https://api.emailsrvr.com/v1/domains/example.com/ex/lync/users/testuser
{
    "Value": "testuser",
    "Status": "ready"
} 

Response:
200 OK

List Available Users

Verb GET
URL Format /v1/customers/{customer account number}/domains/{domain name}/ex/lync/availableUsers
Description Use this route to list users on the specified domain who do not have Lync currently enabled.
Model User

HTTP Codes

Code Condition
200 OK Returns a filtered list of users who do not have Lync enabled.
400 Bad Request The request was invalid. Inspect the validationFault response for more detail.
404 Not Found The domain does not exist or the domain does not have Exchange. Inspect the itemNotFondFault for more detail.
Request:
GET https://api.emailsrvr.com/v1/domains/example.com/ex/lync/availableUsers
{
  "Users" : [
   {
    "Value" : "user6",
    "Status" : "ready"
   },
   {
    "Value" : "user7",
    "Status" : "ready"
   },
   {
    "Value" : "user8",
    "Status" : "ready"
   },
   {
    "Value" : "user9",
    "Status" : "ready"
   },
   {
    "Value" : "user10",
    "Status" : "ready"
   }
  ],
 "Total" : "5"
}  

Response:
200 OK

Add User

Verb POST
URL Format /v1/customers/{customer account number}/domains/{domain name}/ex/lync/users/{username}
Description Use this route to add a user to the Lync service.
Model User

HTTP Codes

Code Condition
202 Accepted The request has been accepted and will be processed.
400 Bad Request The request was invalid. Inspect the validationFault response for more detail.
404 Not Found The domain does not exist or the domain does not have Exchange. Inspect the itemNotFoundFault for more detail.
Request:
POST https://api.emailsrvr.com/v1/domains/example.com/ex/lync/testuser

Response:
202 Accepted

Delete User

Verb DELETE
URL Format /v1/customers/{customer account number}/domains/{domain name}/ex/lync/users/{username}
Description Use this route to remove a user from the Lync service.
Model User

HTTP Codes

Code Condition
202 Accepted The request has been accepted and will be processed.
400 Bad Request The request was invalid. Inspect the validationFault response for more detail.
404 Not Found The domain does not exist or the domain does not have Exchange. Inspect the itemNotFoundFault for more detail.
Request:
DELETE https://api.emailsrvr.com/v1/domains/example.com/ex/lync/testuser

Response:
202 Accepted