Learn how to manage and attribute content in the Bazaarvoice Network.
Content attribution
When a brand’s content is displayed through the Network, a note is added to each review clearly stating that it was collected from another website. At most destinations, we can display the logo of the brand next to the syndicated content. The brand can provide an image file of the logo, or Bazaarvoice can use the logo from the brand's website. The image file must meet the following specifications:
- File types: PNG, GIF, JPG, JPEG
- Size: 300 pixels wide by 100 pixels high
Historical content distribution
The brand might wish to distribute content that was collected before the partner program was set up. To enable Network distribution of historical content, Bazaarvoice offers a one-time content import solution. The import is completed via the native content import feed, which is an XML document that defines products and UGC that was collected on platforms other than the Bazaarvoice platform. Content partners can use the native content import feed to import content for Bazaarvoice moderation and Network distribution.
Each product listed in the file will have its reviews nested inside it. For more information, refer to the full XML schema.
The following example shows a product with two reviews.
XML |
<Feed xmlns="http://www.bazaarvoice.com/xs/PRR/StandardClientFeed/14.8" name="client_name" extractDate="2016-02-12T05:17:33.945-06:00"> <Product id="1010"> <ExternalId>1010</ExternalId> <Reviews> <!-- The following example shows a basic review. It features the most common elements included in import feeds. These elements are required for syndication: - <IpAddress> - <DisplayName> - <SubmissionTime> --> <Review id="12" removed="false"> <UserProfileReference id="jimbob101"> <ExternalId>jimbob101</ExternalId> <DisplayName>JimBob</DisplayName> <Anonymous>false</Anonymous> <HyperlinkingEnabled>false</HyperlinkingEnabled> </UserProfileReference> <title>What an amazing product!</title> <ReviewText>This product is great and I'll definitely recommend it to my friends!</ReviewText> <Rating>4</Rating> <IpAddress>198.51.100.0</IpAddress> <Recommended>true</Recommended> <UserEmailAddress>jimbob101@example.com</UserEmailAddress> <ReviewerLocation>Austin, TX</ReviewerLocation> <SubmissionTime>2012-01-23T04:26:14.000-06:00</SubmissionTime> <Featured>false</Featured> <DisplayLocale>en_US</DisplayLocale> </Review> <!-- The following sample review features additional attributes that can be included in this file. --> <Review id="11" removed="false"> <ModerationStatus>APPROVED</ModerationStatus> <UserProfileReference id="miketester112"> <ExternalId>miketester112</ExternalId> <DisplayName>supermike</DisplayName> <Anonymous>false</Anonymous> <HyperlinkingEnabled>false</HyperlinkingEnabled> </UserProfileReference> <title>Best product ever!</title> <ReviewText>This product truly changed my life; I don't know what I'd do without it.</ReviewText> <Rating>5</Rating> <IpAddress>198.51.100.1</IpAddress> <Recommended>true</Recommended> <UserEmailAddress>supermike@example.com</UserEmailAddress> <ReviewerLocation>Austin, TX</ReviewerLocation> <SubmissionTime>2012-01-23T12:59:25.000-06:00</SubmissionTime> <Featured>false</Featured> <DisplayLocale>en_US</DisplayLocale> <!-- The following fields allow you to add photos or videos included in a review. All elements listed are required unless otherwise noted. - <Photo id="___"> and <VideoId> are both required. You can include any alphanumeric ID you'd like here, ensuring that each ID is unique. - <Caption> is an optional field. --> <Photos> <Photo id="104358"> <caption> Thumbs and some Normal </caption> <Sizes> <Size id="thumbnail" url="https://upload.wikimedia.org/wikipedia/commons/5/50/Emoji_Grinning_Face.svg"/> <Size id="normal" url="https://upload.wikimedia.org/wikipedia/commons/thumb/5/50/Emoji_Grinning_Face.svg/2000px-Emoji_Grinning_Face.svg.png"/> </Sizes> </Photo> </Photos> <Videos> <video> <caption>Burgers and Fries</caption> <VideoHost>www.youtube.com</VideoHost> <VideoId>burgersandfries</VideoId> <RawUrlInput>https://www.youtube.com/watch?v=DcJFdCmN98s</RawUrlInput> </video> </Videos> <!-- Context data values are custom fields with predefined answers that a user can choose from. All listed fields are required. - <ContextDataValue> is the response to the ContextDataDimension. - <ContextDataDimension> is the label/question being responded to. - <Label> is the client-facing label. --> <ContextDataValue id="True"> <ExternalId>True</ExternalId> <label>Yes</label> <ContextDataDimension id="IncentivizedReview"> <ExternalId>IncentivizedReview</ExternalId> <label>Incentivized Review</label> </ContextDataDimension> </ContextDataValue> <!-- The following fields add rating values to reviews. - The <Rating> field is the rating given to the value listed below. - The <RatingDimension> field contains the following: - The displayType indicates the type of tool used to provide the rating value (see below for additional examples.) - The selectedValueInDisplayEnabled indicates whether the value should be shown in display or hidden. - <ExternalId> represents the value being rated. - <Label> is the client-facing label of value being rated. - <RatingRange> represents the total rating-range available. --> <RatingValues> <RatingValue> <Rating>5</Rating> <RatingDimension displayType="NORMAL" id="Quality" selectedValueInDisplayEnabled="false"> <ExternalId>Quality</ExternalId> <label>Quality</label> <RatingRange>5</RatingRange> </RatingDimension> </RatingValue> <RatingValue> <Rating>5</Rating> <RatingDimension displayType="SLIDER" id="Fragrance" selectedValueInDisplayEnabled="false"> <ExternalId>Fragrance</ExternalId> <label>Fragrance</label> <RatingRange>5</RatingRange> </RatingDimension> </RatingValue> <RatingValue> <Rating>5</Rating> <RatingDimension displayType="RADIO" id="Effectiveness" selectedValueInDisplayEnabled="false"> <ExternalId>Effectiveness</ExternalId> <label>Effectiveness</label> <RatingRange>5</RatingRange> </RatingDimension> </RatingValue> </RatingValues> </Review> </Reviews> </Product> </Feed> |
For detailed information about creating a native content import feed, read Native content import.
Ongoing content distribution
For ongoing content distribution, the reviews will be passed from the content collection partner to Bazaarvoice in real time through the Bazaarvoice Ratings & Reviews API. Bazaarvoice will provide the Ratings & Reviews API passkeys once the brand’s Bazaarvoice account is provisioned.
Once you have your Ratings & Reviews API passkeys, use the submitreview endpoint to submit the content to Bazaarvoice.
Fields marked with an asterisk (∗) are required. If your platform does not collect some of the required information, or it collects additional information from the user that is not included in the following list, discuss this with the Bazaarvoice partnership team.
User-submitted fields
- Rating∗
- Review Title∗
- Review Text∗
- Location
- Nickname∗
- Email∗
- Would you recommend?
- Age
- Gender
- Photos and Videos
In addition to data collected from users, you must submit this information with each review:
- productID∗
- Incentivized Review∗
- Campaign ID∗
- Locale∗
- Author IP Address and Device Fingerprint∗
- Passkey∗
Campaign ID
A Campaign ID is a text string identifying the action that originated a piece of content. This crucial field allows brands to measure the success of their different content collection sources.
Your campaign ID must be:
- Unique to you.
- Similar for every submission you make for every brand client participating in the program.
-
Prefixed with your company name without any symbols or spaces (for example,
campaignid=[PARTNER]). This will help your clients identify the content they collected via your platform in their Bazaarvoice account, and will also help in any future reporting across Bazaarvoice.
Example submission request
A complete submission request should look similar to the following example.
Code |
POST /data/submitreview.json HTTP/1.1 Host: [stg.]api.bazaarvoice.com Content-Type: application/x-www-form-urlencoded X-Forwarded-For: [AuthorIPAddress] ... ApiVersion=5.4&ProductId=[productId]&Action=submit&CampaignId=[campaignid]&L ocale=[locale]&Rating=[rating]&ReviewText=[reviewText]&Title=[title]&UserNickname =[nickname]&UserEmail=[emailaddress]&UserLocation=[location]&IsRecommended=[ true/false]&contextdatavalue_IncentivizedReview=[True/False]&PassKey=[yourKey]&f p=[deviceFingerprint] |
For more information about submitting reviews, refer to Review Submission.
User authentication strings
A user authentication string (UAS) is required if a user must be logged in before writing and submitting a review. This requirement applies, for example, to sampling providers or sites requiring site authentication.
User authentication strings comprise key=value pairs that are hashed and encoded, but not encrypted. Prior to submission, a UAS is signed and encoded using a shared secret key, resulting in a UAS token. This process allows Bazaarvoice to verify that the submission comes from a trusted source, thereby preventing third parties from fabricating content or impersonating users.
When a UAS token does not exist, the partner must follow these guidelines to create and submit it:
- Send User IDs to consolidate that on the Bazaarvoice side.
-
Prefix User IDs so that they do not conflict with our data for users (for example,
userid=[PARTNER]-123).
For more information about how to encode a UAS, read Creating and encoding the UAS.