AddEntityFeedback operation
Article 29/03/2023
4 contributors
Feedback
In this article
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.
FindPeople request examples
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.
Expand table
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
The API can log a batch of feedback entries, we log all that we can. This field represents the number of error entries that were not logged.
Details pertaining to the errors above separates by ;
.
Currently supported values
Expand table
ClientIdType Enumeration
Desktop
Exchange
IMAP4
Lync
MacMail
MacOutlook
Mobile
Other
Outlook
OutlookService
POP3
Tablet
Web
Expand table
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
<?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 >
<?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 >