GetClientAccessToken operation
Find information about the GetClientAccessToken EWS operation.
The GetClientAccessToken operation gets a client access token for a mail app for Outlook.
This operation was introduced in Exchange Server 2013.
Using the GetClientAccessToken operation
The GetClientAccessToken operation request takes two required arguments: the identifier of the app, and the token type. You can use the GetAppManifests operation to request the app identifier.
GetClientAccessToken operation SOAP headers
The GetClientAccessToken operation can use the SOAP headers that are listed in the following table.
Header name | Element | Description |
---|---|---|
RequestVersion |
RequestServerVersion |
Identifies the schema version for the operation request. This header is applicable to a request. |
ServerVersion |
ServerVersionInfo |
Identifies the version of the server that responded to the request. This header is applicable to a response. |
GetClientAccessToken operation request example: Get a caller identity token
The following example of a GetClientAccessToken operation request shows how to get a caller identity token for an app.
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages">
<soap:Header>
<t:RequestServerVersion Version="Exchange2013" />
</soap:Header>
<soap:Body >
<m:GetClientAccessToken>
<m:TokenRequests>
<t:TokenRequest>
<t:Id>1C50226D-04B5-4AB2-9FCD-42E236B59E4B</t:Id>
<t:TokenType>CallerIdentity</t:TokenType>
</t:TokenRequest>
</m:TokenRequests>
</m:GetClientAccessToken>
</soap:Body>
</soap:Envelope>
The request SOAP body contains the following elements:
Successful GetClientAccessToken operation response
The following example shows a successful response to a GetClientAccessToken operation request to get a caller identity token for an app.
Note
The token values in this article have been shortened to preserve readability.
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<h:ServerVersionInfo MajorVersion="15"
MinorVersion="0"
MajorBuildNumber="556"
MinorBuildNumber="14"
Version="Exchange2013"
xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<m:GetClientAccessTokenResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<m:ResponseMessages>
<m:GetClientAccessTokenResponseMessage ResponseClass="Success">
<m:ResponseCode>NoError</m:ResponseCode>
<m:Token>
<t:Id>1C50226D-04B5-4AB2-9FCD-42E236B59E4B</t:Id>
<t:TokenType>CallerIdentity</t:TokenType>
<t:TokenValue>eyJ0eXAmv0QitaJg</t:TokenValue>
<t:TTL>479</t:TTL>
</m:Token>
</m:GetClientAccessTokenResponseMessage>
</m:ResponseMessages>
</m:GetClientAccessTokenResponse>
</s:Body>
</s:Envelope>
The response SOAP body contains the following elements:
GetClientAccessToken operation error response
The following example shows an error response to a GetClientAccessToken operation request. This is a response to a request to get an extension callback token without the appropriate permissions.
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<h:ServerVersionInfo MajorVersion="15"
MinorVersion="0"
MajorBuildNumber="556"
MinorBuildNumber="14"
Version="Exchange2013"
xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<m:GetClientAccessTokenResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<m:ResponseMessages>
<m:GetClientAccessTokenResponseMessage ResponseClass="Error">
<m:MessageText>The caller does not have enough permission for this token request.</m:MessageText>
<m:ResponseCode>ErrorInvalidClientAccessTokenRequest</m:ResponseCode>
<m:DescriptiveLinkKey>0</m:DescriptiveLinkKey>
</m:GetClientAccessTokenResponseMessage>
</m:ResponseMessages>
</m:GetClientAccessTokenResponse>
</s:Body>
</s:Envelope>
The error response SOAP body contains the following elements:
For additional error codes that are generic to EWS and specific to this operation, see ResponseCode.