LeaveFeedback

Use this call to leave feedback about another user at the conclusion of a successful order. Both participants in the call (the requestor and the target user) must have been in a successful order within the last 60 days, one as the seller and the other as the buyer.

A user (buyer or seller) may leave just one feedback entry per order line item. LeaveFeedback provides the means for posting a single feedback entry. If an application needs to post multiple feedback entries, call LeaveFeedback repetitively, once for each feedback entry.

Request Details

LeaveFeedback takes as input the eBay user ID for whom the feedback is being left, as well as the ItemID/TransactionID pair or OrderLineItemID, comment text, and comment type (Negative, Neutral, and Positive). If a buyer is leaving Positive feedback, they should also leave a set of Detailed Seller Ratings (DSRs) in the SellerItemRatingDetailArray.

At a minimum, the request must specify the user about whom the feedback is being left, the item ID for the associated listing, a feedback score, and a feedback comment. If the order line item associated with the feedback was a multi-quantity listing, then the call must also include the TransactionID (or just supply the OrderLineItemID) for that order line item. This is necessary to ensure the feedback is directed at the appropriate user--there may be multiple buyers for such a listing type.

Note that if the seller ends the item early and cancels all bids, prospective buyers cannot leave feedback because there is no completed order line item.

If the LeaveFeedback execution is successful, the response contains only the fields of the abstract response object, there are no call-specific return fields. An ack of Success serves as confirmation that the feedback was successfully submitted.

Testing LeaveFeedback

You can test LeaveFeedback in the Sandbox environment. To test the call, you must have at least two test users, one to act in the capacity of an item seller and the other as a buyer.

Before you can test LeaveFeedback, an order line item must have been created. That is, an item was listed (for example, using AddItem) and successfully sold.

For auction listings, a buyer must place a bid on the item and the listing must end with the sale. You can use the Sandbox UI to place bids on the item and then end it early using EndItem. With EndItem, the seller can end the auction early without canceling the bids, and the listing ends as a successfully concluded auction.

For fixed-price listings, a TransactionID (and OrderLineItemID) is created shortly after the buyer purchases the item(s) from the listing. One order line item is created for each listing where there is a commitment to buy from a buyer. You can call LeaveFeedback for each completed order line item, either as the buyer or the seller.

Use GetItemTransactions or GetSellerTransactions to retrieve a list of the order line items for which you can leave feedback.

To verify the feedback left as a result of this testing, retrieve the feedback data for the target user with GetFeedback. The feedback retrieved should be the same (the same scores and comments) as those left during the testing.

Related Information

See:
    Leaving and Retrieving Feedback
    Introduction to Feedback
    Leaving Feedback for Another User
    Detailed Seller Ratings

See also the reference documentation for these calls:



Back to top

LeaveFeedback Input

The box below lists all fields that could be included in the call request. To learn more about an individual field or its type, click its name in the box (or scroll down to find it in the table below the box).

See also Samples.

See also the Deprecated Objects link above. Fields presented in this color are deprecated, and fields presented in this color are (or soon will be) non-operational.

The XML prototype does not include requester credentials. This is a documentation limitation only (see Standard Requester Credentials for Making Calls).

<?xml version="1.0" encoding="utf-8"?>
<LeaveFeedbackRequest xmlns="urn:ebay:apis:eBLBaseComponents">
  <!-- Call-specific Input Fields -->
  <CommentText> string </CommentText>
  <CommentType> CommentTypeCodeType </CommentType>
  <ItemID> ItemIDType (string) </ItemID>
  <OrderLineItemID> string </OrderLineItemID>
  <SellerItemRatingDetailArray> ItemRatingDetailArrayType
    <ItemRatingDetails> ItemRatingDetailsType
      <Rating> int </Rating>
      <RatingDetail> FeedbackRatingDetailCodeType </RatingDetail>
    </ItemRatingDetails>
    <!-- ... more ItemRatingDetails nodes allowed here ... -->
  </SellerItemRatingDetailArray>
  <TargetUser> UserIDType (string) </TargetUser>
  <TransactionID> string </TransactionID>
  <!-- Standard Input Fields -->
  <ErrorLanguage> string </ErrorLanguage>
  <MessageID> string </MessageID>
  <Version> string </Version>
  <WarningLevel> WarningLevelCodeType </WarningLevel>
</LeaveFeedbackRequest>
Argument Type Occurrence Meaning
Call-specific Input Fields [Jump to standard fields]
CommentText string Required Textual comment that explains, clarifies, or justifies the Feedback rating specified in CommentType.

This comment will still be displayed even if submitted Feedback is withdrawn.
Max length: 80.
CommentType CommentTypeCodeType Required

Applicable values:

•   CustomCode

(in/out) This value is reserved for internal or future use.

•   Negative

(in/out) This value indicates that the submitting user's experience with the other user (receiving feedback) was rated as a "Negative" experience. If an eBay user receives a Negative rating for an order line item from a Verified User, their overall Feedback score decreases by a value of 1.

•   Neutral

(in/out) This value indicates that the submitting user's experience with the other user (receiving feedback) was rated as a "Neutral" experience. If an eBay user receives a Neutral rating for an order line item from a Verified User, their overall Feedback score remains the same.

•   Positive

(in/out) This value indicates that the submitting user's experience with the other user (receiving feedback) was rated as a "Positive" experience. If an eBay user receives a Positive rating for an order line item from a Verified User, their overall Feedback score increases by a value of 1.


(Not all values in CommentTypeCodeType apply to this field.)
ItemID ItemIDType (string) Conditional Unique identifier for an eBay item listing. A listing can have multiple order line items, but only one ItemID. Unless an OrderLineItemID is specified in the LeaveFeedback request, the ItemID is required along with the TargetUser to identify an order line item existing between the caller and the TargetUser that requires feedback. A Feedback entry will be posted for this order line item. If there are multiple order line items between the two order partners that still require feedback, the TransactionID will also be required to isolate the targeted order line item. Feedback cannot be left for order line items with creation dates more than 60 days in the past.
Max length: 19 (Note: The eBay database specifies 38. ItemIDs are usually 9 to 12 digits).
OrderLineItemID string Conditional OrderLineItemID is a unique identifier for an eBay order line item and is based upon the concatenation of ItemID and TransactionID, with a hyphen in between these two IDs. If an OrderLineItemID is included in the request, the ItemID, TransactionID, and TargetUser fields are not required. Feedback cannot be left for order line items with creation dates more than 60 days in the past.
Max length: 100.
SellerItemRatingDetailArray ItemRatingDetailArrayType Optional Container for detailed seller ratings (DSRs). If a buyer is providing DSRs, they are specified in this container. Sellers have access to the number of ratings they've received, as well as to the averages of the DSRs they've received in each DSR area (i.e., to the average of ratings in the item-description area, etc.).

See Detailed Seller Ratings.

SellerItemRatingDetailArray
  .ItemRatingDetails
ItemRatingDetailsType Optional,
repeatable: [0..*]
The ItemRatingDetails container is for detailed seller ratings about an order line item. When buyers leave an overall Feedback rating (positive, neutral, or negative) for a seller, they also can leave ratings in four areas: item as described, communication, shipping time, and charges for shipping and handling. Users retrieve detailed ratings as averages of the ratings left by buyers.

Applicable to sites that support the Detailed Seller Ratings feature.
SellerItemRatingDetailArray
  .ItemRatingDetails.Rating
int Optional A detailed seller rating for an order line item applied to the area in the corresponding RatingDetail field. Valid input values are numerical integers 1 though 5.
SellerItemRatingDetailArray
  .ItemRatingDetails
  .RatingDetail
FeedbackRatingDetailCodeType Optional The area of a specific detailed seller rating for an order line item. When buyers leave an overall Feedback rating (positive, neutral, or negative) for a seller, they also can leave ratings in four areas: item as described, communication, shipping time, and charges for shipping and handling.

Applicable values:

•   Communication

(in/out) Detailed seller rating in the area of "communication."

•   CustomCode

(in/out) Reserved for internal or future use.

•   ItemAsDescribed

(in/out) Detailed seller rating in the area of "item as described."

•   ShippingAndHandlingCharges

(in/out) Detailed seller rating in the area of "charges for shipping and handling." Inapplicable to motor vehicle items.

•   ShippingTime

(in/out) Detailed seller rating in the area of "shipping time." Inapplicable to motor vehicle items.


TargetUser UserIDType (string) Required This eBay User ID identifies the recipient user for whom the feedback is being left.
TransactionID string Conditional Unique identifier for an eBay order line item (transaction). If there are multiple order line items between the two order partners that still require feedback, the TransactionID is required along with the corresponding ItemID and TargetUser to isolate the targeted order line item. If an OrderLineItemID is included in the response to identify a specific order line item, none of the preceding fields (ItemID, TransactionID, TargetUser) are needed. Feedback cannot be left for order line items with creation dates more than 60 days in the past.
Max length: 19 (Note: The eBay database specifies 38. TransactionIDs are usually 9 to 12 digits.).
Standard Input Fields  
ErrorLanguage string Optional Use ErrorLanguage to return error strings for the call in a different language from the language commonly associated with the site that the requesting user is registered with. Specify the standard RFC 3066 language identification tag (e.g., en_US).
ID--- country
----- -----
de_AT Austria
de_CH Switzerland
de_DE Germany
en_AU Australia
en_CA Canada
en_GB United Kingdom
en_SG Singapore
en_US United States
es_ES Spain
fr_BE Belgium (French)
fr_CA Canada (French)
fr_FR France
it_IT Italy
nl_BE Belgium (Dutch)
nl_NL Netherlands
zh_CN China
en_IN India
en_IE Ireland
zh_HK Hong Kong

See Tags for the Identification of Languages.

MessageID string Optional Most Trading API calls support a MessageID element in the request and a CorrelationID element in the response. If you pass in a MessageID in a request, the same value will be returned in the CorrelationID field in the response. Pairing these values can help you track and confirm that a response is returned for every request and to match specific responses to specific requests. If you do not pass a MessageID value in the request, CorrelationID is not returned.

Note: GetCategories is designed to retrieve very large sets of metadata that change once a day or less often. To improve performance, these calls return cached responses when you request all available data (with no filters). When this occurs, the MessageID and CorrelationID fields aren't applicable. However, if you specify an input filter to reduce the amount of data returned, the calls retrieve the latest data (not cached). When this occurs, MessageID and CorrelationID are applicable.
Version string Conditional The version number of the API code that you are programming against (e.g., 549). The version you specify for a call has these basic effects:
- It indicates the version of the code lists and other data that eBay should use to process your request.
- It indicates the schema version you are using.
You need to use a version that is greater than or equal to the lowest supported version.

For the SOAP API: If you are using the SOAP API, this field is required. Specify the version of the WSDL your application is using.

For the XML API: If you are using the XML API, this field has no effect. Instead, specify the version in the X-EBAY-API-COMPATIBILITY-LEVEL HTTP header. (If you specify Version in the body of an XML API request and it is different from the value in the HTTP header, eBay returns an informational warning that the value in the HTTP header was used instead.)

See:
    Routing the Request (Gateway URLs)
    eBay Schema Versioning Strategy
    Lowest Supported Version

WarningLevel WarningLevelCodeType Optional Controls whether or not to return warnings when the application passes unrecognized or deprecated elements in a request.

An unrecognized element is one that is not defined in any supported version of the schema. Schema element names are case-sensitive, so using WarningLevel can also help you remove any potential hidden bugs within your application due to incorrect case or spelling in field names before you put your application into the Production environment.

WarningLevel only validates elements; it doesn't validate XML attributes. It also doesn't control warnings related to user-entered strings or numbers, or warnings for logical errors.

We recommend that you only use this during development and debugging. Do not use this in requests in your production code.

Applicable values:

•   High

(in) Return warnings when the application passes unrecognized or deprecated elements in a request.

•   Low

(in) Do not return warnings when the application passes unrecognized or deprecated elements in a request. This is the default value if WarningLevel is not specified.


See Warning Level.



Back to top

LeaveFeedback Output

The box below lists all fields that might be returned in the response. To learn more about an individual field or its type, click its name in the box (or scroll down to find it in the table below the box).

See also Samples.

See also the Deprecated Objects link above. Fields presented in this color are deprecated, and fields presented in this color are not returned (or soon will not be returned) or are not operational (or soon will be non-operational).

<?xml version="1.0" encoding="utf-8"?>
<LeaveFeedbackResponse xmlns="urn:ebay:apis:eBLBaseComponents">
  <!-- Call-specific Output Fields -->
  <FeedbackID> string </FeedbackID>
  <!-- Standard Output Fields -->
  <Ack> AckCodeType </Ack>
  <Build> string </Build>
  <CorrelationID> string </CorrelationID>
  <Errors> ErrorType
    <ErrorClassification> ErrorClassificationCodeType </ErrorClassification>
    <ErrorCode> token </ErrorCode>
    <ErrorParameters ParamID="string"> ErrorParameterType
      <Value> string </Value>
    </ErrorParameters>
    <!-- ... more ErrorParameters nodes allowed here ... -->
    <LongMessage> string </LongMessage>
    <SeverityCode> SeverityCodeType </SeverityCode>
    <ShortMessage> string </ShortMessage>
  </Errors>
  <!-- ... more Errors nodes allowed here ... -->
  <HardExpirationWarning> string </HardExpirationWarning>
  <Timestamp> dateTime </Timestamp>
  <Version> string </Version>
</LeaveFeedbackResponse>
Return Value Type Occurrence Meaning
Call-specific Output Fields [Jump to standard fields]
FeedbackID string Always The ID of the feedback that has been left.
Standard Output Fields  
Ack AckCodeType Always A token representing the application-level acknowledgement code that indicates the response status (e.g., success). The AckCodeType list specifies the possible values for Ack.

Applicable values:

•   CustomCode

(out) Reserved for internal or future use.

•   Failure

(out) Request processing failed

•   Success

(out) Request processing succeeded

•   Warning

(out) Request processing completed with warning information being included in the response message


(Not all values in AckCodeType apply to this field.)
Build string Always This refers to the specific software build that eBay used when processing the request and generating the response. This includes the version number plus additional information. eBay Developer Support may request the build information when helping you resolve technical issues.
CorrelationID string Conditionally Most Trading API calls support a MessageID element in the request and a CorrelationID element in the response. If you pass in a MessageID in a request, the same value will be returned in the CorrelationID field in the response. Pairing these values can help you track and confirm that a response is returned for every request and to match specific responses to specific requests. If you do not pass a MessageID value in the request, CorrelationID is not returned.

Note: GetCategories is designed to retrieve very large sets of metadata that change once a day or less often. To improve performance, these calls return cached responses when you request all available data (with no filters). When this occurs, the MessageID and CorrelationID fields aren't applicable. However, if you specify an input filter to reduce the amount of data returned, the calls retrieve the latest data (not cached). When this occurs, MessageID and CorrelationID are applicable.
Errors ErrorType Conditionally,
repeatable: [0..*]
A list of application-level errors (if any) that occurred when eBay processed the request.

See Error Handling.

Errors.ErrorClassification ErrorClassificationCodeType Conditionally API errors are divided between two classes: system errors and request errors.

Applicable values:

•   CustomCode

(out) Reserved for internal or future use.

•   RequestError

(out) An error has occurred either as a result of a problem in the sending application or because the application's end-user has attempted to submit invalid data (or missing data). In these cases, do not retry the request. The problem must be corrected before the request can be made again. If the problem is due to something in the application (such as a missing required field), the application must be changed. If the problem is a result of end-user data, the application must alert the end-user to the problem and provide the means for the end-user to correct the data. Once the problem in the application or data is resolved, resend the request to eBay with the corrected data.

•   SystemError

(out) Indicates that an error has occurred on the eBay system side, such as a database or server down. An application can retry the request as-is a reasonable number of times (eBay recommends twice). If the error persists, contact Developer Technical Support. Once the problem has been resolved, the request may be resent in its original form.


Errors.ErrorCode token Conditionally A unique code that identifies the particular error condition that occurred. Your application can use error codes as identifiers in your customized error-handling algorithms. See the "Errors by Number" document.
Errors.ErrorParameters ErrorParameterType Conditionally,
repeatable: [0..*]
This optional element carries a list of context-specific error variables that indicate details about the error condition. These are useful when multiple instances of ErrorType are returned.
Errors.ErrorParameters
  [ attribute ParamID ]
string Conditionally The index of the parameter in the list of parameter types returned within the error type.
Errors.ErrorParameters.Value string Conditionally The value of the variable (e.g., the attribute set ID)
Errors.LongMessage string Conditionally A more detailed description of the condition that raised the error.
Errors.SeverityCode SeverityCodeType Conditionally Indicates whether the error is a severe error (causing the request to fail) or an informational error (a warning) that should be communicated to the user.

Applicable values:

•   CustomCode

(out) Reserved for internal or future use

•   Error

(out) Application-level error

•   Warning

(out) Warning or informational error


Errors.ShortMessage string Conditionally A brief description of the condition that raised the error.
HardExpirationWarning string Conditionally Expiration date of the user's authentication token. Only returned within the 7-day period prior to a token's expiration. To ensure that user authentication tokens are secure and to help avoid a user's token being compromised, tokens have a limited life span. A token is only valid for a period of time (set by eBay). After this amount of time has passed, the token expires and must be replaced with a new token.
Timestamp dateTime Always This value represents the date and time when eBay processed the request. The time zone of this value is GMT and the format is the ISO 8601 date and time format (YYYY-MM-DDTHH:MM:SS.SSSZ). See Time Values in the eBay Web Services guide for information about this time format and converting to and from the GMT time zone.

Note: GetCategories and other Trading API calls are designed to retrieve very large sets of metadata that change once a day or less often. To improve performance, these calls return cached responses when you request all available data (with no filters). When this occurs, this time value reflects the time the cached response was created. Thus, this value is not necessarily when the request was processed. However, if you specify an input filter to reduce the amount of data returned, the calls retrieve the latest data (not cached). When this occurs, this time value does reflect when the request was processed.
Version string Always The version of the response payload schema. Indicates the version of the schema that eBay used to process the request. See "Standard Data for All Calls" in the eBay Web Services Guide for information on using the response version when troubleshooting "CustomCode" values that appear in the response.



Back to top

LeaveFeedback Detail Controls


Detail Control: DetailLevel

This call does not support varying Detail Levels. You do not need to pass DetailLevel in the request.



Back to top

LeaveFeedback Samples

New to making API calls? Please see Routing the Request.

Note: Some item IDs, user IDs, or other data in these samples might no longer be active on eBay. If necessary, you can substitute current eBay data in your requests.

Sample: Basic Call

Leaves positive feedback for a seller, including a complete set of DSR comments.

Description

Bountiful Buyer purchased a book from Magical Bookseller and received excellent service. She wants to leave positive feedback for the order line item.

Input

When you leave Positive feedback, you should also leave a complete Detailed Seller Rating (DSR) that consists of feedback in the following fours areas:
- Communication
- ItemAsDescribed
- ShippingAndHandlingCharges
- ShippingTime

For each of these categories, leave a rating between 1 and 5, with 5 being the highest (best) rating.

Bountiful Buyer was extremely pleased with the order line item, the book was just as described. Her only complaint was that Magical Bookseller shipped the book using a budget Media service. She would have been happy to pay an extra few dollars to have the book shipped via a faster postal service.

Because of this, she left a perfect DSR rating for the entire order line item, except for the category of ShippingTime. Here, Bountiful Buyer gave the seller a bit of a lower ranking, leaving a 4.

XML format (HTTP POST). Also available is the .txt version of this XML.

<?xml version="1.0" encoding="utf-8"?>
<LeaveFeedbackRequest xmlns="urn:ebay:apis:eBLBaseComponents">
  <RequesterCredentials>
    <eBayAuthToken>ABC...123</eBayAuthToken>
  </RequesterCredentials>
  <ItemID>110043671232</ItemID>
  <CommentText>
    Excellent and quick service. The book is Beautiful. 5 **** !
  </CommentText>
  <TargetUser>magicalbookseller</TargetUser>
  <CommentType>Positive</CommentType>
  <SellerItemRatingDetailArray>
    <ItemRatingDetails>
      <RatingDetail>Communication</RatingDetail>
      <Rating>5</Rating>
    </ItemRatingDetails>
    <ItemRatingDetails>
      <RatingDetail>ItemAsDescribed</RatingDetail>
      <Rating>5</Rating>
    </ItemRatingDetails>
    <ItemRatingDetails>
      <RatingDetail>ShippingAndHandlingCharges</RatingDetail>
      <Rating>5</Rating>
    </ItemRatingDetails>
    <ItemRatingDetails>
      <RatingDetail>ShippingTime</RatingDetail>
      <Rating>4</Rating>
    </ItemRatingDetails>
  </SellerItemRatingDetailArray>
</LeaveFeedbackRequest>

Output

XML format. Also available is the .txt version of this XML.

<LeaveFeedbackResponse xmlns="urn:ebay:apis:eBLBaseComponents">
  <Timestamp>2010-02-17T18:26:44.516Z</Timestamp>
  <Ack>Success</Ack>
  <Version>655</Version>
  <Build>E655_CORE_BUNDLED_10639415_R1</Build>
  <FeedbackID>100584287010</FeedbackID>
</LeaveFeedbackResponse>



Back to top

LeaveFeedback Change History

Version Description
707
2011-02-02
  • SellerItemRatingDetailArray (modified): As announced in September 2010, for some shipping-related cases, detailed seller ratings (DSRs) are set automatically. In such cases, the LeaveFeedback call returns a warning when a value in SellerItemRatingDetailArray (for ShippingAndHandlingCharges or ShippingTime) is over-ridden.
705
2011-01-19
  • OrderLineItemID (added): The OrderLineItemID value can be used to identify an order line item (instead of ItemID/TransactionID pair).
629
2009-08-05
  • SellerItemRatingDetailArray (modified):

    DSRs left for Shipping Time will be ignored for all Local Pickup transactions. DSRs left for Shipping and Handling Charges will be ignored for Local Pickup transactions where the seller did not add any special handling fees.

    This change affects the following eBay sites: AU, Mn-AT, BE-FR, BE-NL, CA, CA-FR, FR, DE, HK, IN, Mn-IE, IT, MY, Motors, NL, PH, PL, SG, ES, Mn-CH, UK, US.

501
2007-02-21
  • SellerItemRatingDetailArray (added): For sites supporting the Detailed Seller Ratings (DSR) feature, contains detailed seller ratings.



Back to top

User-Contributed Notes

   
 
 
 

Copyright © 2005–2013 eBay, Inc. All rights reserved. This documentation and the API may only be used in accordance with the eBay Developers Program and API License Agreement.