AddEntityFeedback operation
Last modified: April 18, 2016
The AddEntityFeedback operation returns error information corresponding to server-side issues.
This operation relies on the type of event being logged. One of the most important events is EntityAdded, which corresponds to an entity being selected. This operation is batch, so it can be used to log batches of entries in a single request.
The AddEntityFeedback operation provides a way for clients to log details of interaction with entities returned by the service. This can be used as a signal to improve relevance behind the scenes for each client. E.g., Clients can use this operation to provide feedback on people entities returned from FindPeople.
<?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:AddEntityFeedback>
<m:EntityFeedbackEntries>
<t:EntityFeedbackEntry>
<t:ClientEventTimeUTC> 2015-07-05T22:16:18+00:00</t:ClientEventTimeUTC>
<t:ClientEventTimeLocal> 2015-07-05T22:16:18+00:00</t:ClientEventTimeLocal>
<t:ClientSessionId>00000000-0000-0000-0000-000000000012</t:ClientSessionId>
<t:ClientVersion>15.01.0101.01</t:ClientVersion>
<t:ClientId>Web</t:ClientId>
<t:TransactionId>123456789</t:TransactionId>
<t:EventType>EntityAdded</t:EventType>
<t:TargetEntityList>["a","b","c"]</t:TargetEntityList>
<t:SourceOfEntityAdded></t:SourceOfEntityAdded>
<t:JSONPropertyBag></t:JSONPropertyBag>
</t:EntityFeedbackEntry>
<t:EntityFeedbackEntry>
…
</t:EntityFeedbackEntry>
</m:EntityFeedbackEntries>
</m:AddEntityFeedback>
</soap:Body>
</soap:Envelope>
The request SOAP body contents
The soap request contains a single element EntityFeedbackEntries. This in turn contains an array of EntityFeedbackEntry objects. Each entry in the array can contain the following elements.
Request Parameters | Required | Description | Type |
|---|---|---|---|
ClientEventTimeUtc | Yes | The UTC time the event occurred on the client-side. | DateTime |
ClientEventTimeLocal | Yes | The local time the event occurred on the client side. | DateTime |
ClientId | Yes | Type of Client (E.g., Outlook, OWA, etc.). | ClientIDType Enumeration |
ClientSessionId | Yes | GUID Identifying the session ID. Generated on the client. | GUID |
ClientVersion | Yes | Version of the client (E.g., 15.01.0101.000). | String |
EntityAddSource | No | Source for EntityAded (E.g., EntityRelevanceAPI, types, pasted). | EntityAddSource Enumeration |
EntrySequenceNumber | Yes | An incremental integer per client session. Used for detecting data loss. | Int |
EventType | Yes | Type of event (E.g., Entity Added, Entity Removed). | String |
JSONPropertyBag | No | Additional properties associated with the event (JSON blob of key/value pairs). | JSON Blob |
TargetEntityList | No | List of entities associated with the event. | JSON String |
TransactionId | No | ID (GUID) correlating the ID in query logs. | String |
Successful AddEntityFeedback Operation Response
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<h:ServerVersionInfo MajorVersion="15"
MinorVersion="1"
MajorBuildNumber="228"
MinorBuildNumber="0"
Version="V2_49"
xmlns:h="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>
<AddEntityFeedbackResponse ResponseClass="Success"
xmlns="http://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ResponseCode>NoError</ResponseCode>
<ErrorCount>0</ErrorCount>
<ErrorDetails />
</AddEntityFeedbackResponse>
</s:Body>
</s:Envelope>
The response SOAP body contains the following elements
Currently Supported Values
ClientIdType Enumeration |
|---|
Desktop |
Exchange |
IMAP4 |
Lync |
MacMail |
MacOutlook |
Mobile |
Other |
Outlook |
OutlookService |
POP3 |
Tablet |
Web |
EntityAddSource Enumeration |
|---|
ActiveDirectory |
EntityRelevanceApi |
EntityRelevanceApiCache |
ExplicitTyping |
LocalCache |
LocalCacheAndEntityRelevanceAPI |
None |
Other |
Paste |
AddEntityFeedback operation error response
For error codes that are generic to EWS, see ResponseCode.
Example of AddEntityFeedback in conjunction with FindPeople
FindPeople Request
<?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:FindPeople>
<m:IndexedPageItemView BasePoint="Beginning" MaxEntriesReturned="100" Offset="0"/>
<m:QueryString>user1</m:QueryString>
<m:SearchPeopleSuggestionIndex>true</m:SearchPeopleSuggestionIndex>
</m:FindPeople>
</soap:Body>
</soap:Envelope>
FindPeople Response
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<h:ServerVersionInfo MajorVersion="15" MinorVersion="1" MajorBuildNumber="302" MinorBuildNumber="0" Version="V2_68" xmlns:h="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>
<FindPeopleResponse ResponseClass="Success" xmlns="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ResponseCode>NoError</ResponseCode>
<People>
<Persona xmlns="http://schemas.microsoft.com/exchange/services/2006/types">
<PersonaId Id="AAUQAFjZ4UxX8SZCqSPFsmh0cSo=" />
<PersonaType>Person</PersonaType>
<CreationTime>2015-10-02T23:25:42</CreationTime>
<DisplayName>user2</DisplayName>
…
</Persona>
</People>
<TotalNumberOfPeopleInView>0</TotalNumberOfPeopleInView>
<FirstMatchingRowIndex>0</FirstMatchingRowIndex>
<FirstLoadedRowIndex>0</FirstLoadedRowIndex>
<TransactionId>b56ad16e-5d5a-4574-90f8-b8dd57382be6</TransactionId>
</FindPeopleResponse>
</s:Body>
</s:Envelope>
AddEntityFeedback Request
<?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:AddEntityFeedback>
<m:EntityFeedbackEntries>
<t:EntityFeedbackEntry>
<t:ClientEventTimeUtc>2015-07-05T22:16:18+00:00</t:ClientEventTimeUtc>
<t:ClientEventTimeLocal>2015-07-05T22:16:18+00:00</t:ClientEventTimeLocal>
<t:ClientSessionId>00000000-0000-0000-0000-000000000012</t:ClientSessionId>
<t:ClientVersion>15.01.0101.01</t:ClientVersion>
<t:ClientId>Web</t:ClientId>
<t:TransactionId>b56ad16e-5d5a-4574-90f8-b8dd57382be6</t:TransactionId>
<t:EventType>EntityAdded</t:EventType>
<t:TargetEntityList>["user1@ms7.com"]</t:TargetEntityList>
<t:SourceOfEntityAdded>EntityRelevanceApi</t:SourceOfEntityAdded>
<t:JSONPropertyBag></t:JSONPropertyBag>
</t:EntityFeedbackEntry>
</m:EntityFeedbackEntries>
</m:AddEntityFeedback>
</soap:Body>
</soap:Envelope>
Note |
|---|
Using FindPeople response transaction ID as the AddEntityFeedback request transaction ID. |
AddEntityFeedback Response
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<h:ServerVersionInfo MajorVersion="15" MinorVersion="1" MajorBuildNumber="302" MinorBuildNumber="0" Version="V2_68" xmlns:h="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>
<AddEntityFeedbackResponse ResponseClass="Success" xmlns="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ResponseCode>NoError</ResponseCode>
<ErrorCount>0</ErrorCount>
<ErrorDetails />
</AddEntityFeedbackResponse>
</s:Body>
</s:Envelope>
Note