Feedback Submissions

🚧

Only API keys on our Conversations PRR platform are eligible to use this API version. Refer to the Platforms section of our Platform & API Concepts documentation to learn which platform your API keys are on.

Submit feedback on a review, question, answer, story (This feature will not be available or will behave differently in future versions of the Conversations API. Click for more information) , review comment, or story comment (This feature will not be available or will behave differently in future versions of the Conversations API. Click for more information)

Examples

Submitting a helpfulness vote

POST /data/submitfeedback.[FORMAT] HTTP/1.1
Host: [stg.]api.bazaarvoice.com
X-Forwarded-For: [AuthorIPAddress]
Content-Type: application/x-www-form-urlencoded
...

ApiVersion=[latestApiVersion]&ContentType=[ContentType]&ContentId=[ContentId]&UserId=[UserId]&FeedbackType=helpfulness&Vote=[HelpfulnessVote]&PassKey=[yourKey]

Ellipses (...) in above example indicate that your app may generate other headers.

Submission of feedback must take the form of an HTTP POST.

Submitting inappropriate feedback

POST /data/submitfeedback.[FORMAT] HTTP/1.1
Host: [stg.]api.bazaarvoice.com
X-Forwarded-For: [AuthorIPAddress]
Content-Type: application/x-www-form-urlencoded
...

ApiVersion=[latestApiVersion]&ContentType=[ContentType]&ContentId=[ContentId]&UserId=[UserId]&FeedbackType=inappropriate&ReasonText=[ReasonText]&PassKey=[yourKey]

Ellipses (...) in above example indicate that your app may generate other headers.

Submission of feedback must take the form of an HTTP POST.

Headers

NameDescription
Content-TypeThe media-type type of the request body. Value must be application/x-www-form-urlencoded.

πŸ“
Required
This field is required in all API requests.
X-Forwarded-ForIP address of content author. This header is only necessary when performing submissions from your server. See Authenticity Tutorial for more information.

Per the Bazaarvoice Authenticity Policy, you must send author IP address attached to each submission. If you fail to send author IP address with your submission, Bazaarvoice may take any action deemed necessary in Bazaarvoice’s sole discretion to protect the integrity of the network. Such actions may include but are not limited to: rejection of your content, halting syndication of your content on the Bazaarvoice network, revocation of your API key, or revocation of your API license.

Alert Failure to submit this field will result in your content being ineligible for syndication, authenticity or other business processes.

Your app may generate other headers.

Parameters

NameDescription
[FORMAT]Response format (
xml This feature will not be available or will behave differently in future versions of the Conversations API. Click for more information.
or json)

πŸ“
Required
This field is required in all API requests.
ApiVersionThe API version, e.g. 5.4.

πŸ“
Required
This field is required in all API requests.
ContentIdArbitrary text that may be saved alongside content to indicate vehicle by which content was captured, e.g. β€œpost-purchase email”.
ID of the content with which the feedback is associated.
ContentTypeType of content with which the feedback is associated (review,
story This feature will not be available or will behave differently in future versions of the Conversations API. Click for more information.
, question, answer,
story_commentThis feature will not be available or will behave differently in future versions of the Conversations API. Click for more information.
, review_comment)

πŸ“
Required
This field is required in all API requests.
FeedbackTypeType of feedback (inappropriate, helpfulness).

πŸ“
Required
This field is required in all API requests.
PassKeyAPI key is required to authenticate API user and check permission to access particular client's data.

πŸ“
Required
This field is required in all API requests.
ReasonTextReason this content has been flagged as inappropriate.

PRR
This feature is only available to clients on our Conversations PRR platform. Learn more

⚠️
Caution
This field may be required depending on per client configurations.
UserIdUser's external ID. May be required for Positive, Negative and Inappropriate depending on configuration. Always required for
UNDO This feature will not be available or will behave differently in future versions of the Conversations API. Click for more information.
.

πŸ”Ί
Alert
Do not use an email address for this value.

⚠️
Caution
This field may be required depending on per client configurations.
VoteHelpfulness vote for this content. Valid votes are: Positive, Negative,
UNDO This feature will not be available or will behave differently in future versions of the Conversations API. Click for more information.
.. This parameter is only required for FeedbackType=helpfulness.

πŸ“
Required
This field is required in all API requests.

Response format

The following is an example of an inappropriate feedback submission response after submitting the form by HTTP POST:

{
   "Data":{},
   "HasErrors":false,
   "Form":[],
   "FormErrors":{},
   "TypicalHoursToPost":null,
   "SubmissionId":null,
   "Feedback":{
     "Inappropriate":
     {
     "ReasonText":"This is where the reason text would go",
     "AuthorId":"alphauser",
     }
   },
   "Locale":"en_US",
   "Errors":[]
}

The following is an example of a helpfulness vote feedback submission response after submitting the form by HTTP POST:

{
   "Data":{},
   "HasErrors":false,
   "Form":[],
   "FormErrors":{},
   "TypicalHoursToPost":null,
   "SubmissionId":null,
   "Feedback":{
     "Helpfulness":
     {
     "Vote":"POSITIVE",
     "AuthorId":"alphauser",
     }
   },
   "Locale":"en_US",
   "Errors":[]
}

Response elements

NameDescription
DataSection containing the fields and field groups.
ErrorsError section is populated instead of other fields if there is an error with a query syntax or problem executing a query.
FeedbackSection containing the feedback data
FormSection containing an array of field and group references.
TypicalHoursToPostUsual time it takes for the content to get posted.

Error codes

ValueDescription
ERROR_ACCESS_DENIEDInsufficient privileges to perform the operation
ERROR_DUPLICATE_SUBMISSIONDuplicate feedback submission
ERROR_FORM_DUPLICATEThe nickname is already in use.
ERROR_FORM_DUPLICATE_NICKNAMEThe nickname is already in use.
ERROR_FORM_EMOJIEmoji are not supported.
ERROR_FORM_INVALID_EMAILADDRESSEmail address is not in the proper format.
ERROR_FORM_INVALID_IPADDRESSThe IP address is invalid.
ERROR_FORM_INVALID_OPTIONThe selected option has been removed.
ERROR_FORM_PATTERN_MISMATCHThis field is not in the correct format.
ERROR_FORM_PROFANITYThe content contains inappropriate language.
ERROR_FORM_REJECTEDThe submission was rejected.
ERROR_FORM_REQUIREDA required field was not supplied.
ERROR_FORM_REQUIRED_EITHERBoth of the required hosted authentication parameters are missing.
ERROR_FORM_REQUIRED_NICKNAMEYou must enter a nickname.
ERROR_FORM_REQUIRES_TRUEA field requires a value of true. (e.g., "You must agree to the terms and conditions.")
ERROR_FORM_RESTRICTEDContent provider's age is too young. (e.g., "Content cannot be accepted from minors under age 13.")
ERROR_FORM_STORAGE_PROVIDER_FAILEDThe uploaded file could not be stored. Try uploading again later.
ERROR_FORM_SUBMITTED_NICKNAMEThis nickname has already been submitted.
ERROR_FORM_TOO_FEWThere must be a minimum number of items contributed for this field.
ERROR_FORM_TOO_HIGHThis field has too many items.
ERROR_FORM_TOO_LONGThe field has too many characters.
ERROR_FORM_TOO_LOWThis field has too few items.
ERROR_FORM_TOO_SHORTThe field doesn't have enough characters.
ERROR_FORM_UPLOAD_IOThe item could not be uploaded. Ensure that it is a valid file type.
ERROR_PARAM_DUPLICATE_SUBMISSIONDuplicate submissions are not allowed for this client
ERROR_PARAM_INVALID_API_KEYInvalid API Key value
ERROR_PARAM_INVALID_PARAMETERSInvalid parameter in content submission
ERROR_PARAM_MISSING_USER_IDThis client does not allow unauthenticated submissions. A valid UserId is required.
ERROR_REQUEST_LIMIT_REACHEDRate limiting error, i.e. too many requests per time interval
ERROR_UNKNOWNUnknown error (internal server error, for instance)
ERROR_UNSUPPORTEDFor unsupported features, clients etc.