The Conversations API lets you programmatically retrieve and submit Bazaarvoice Conversations data for use in your applications. To learn more, go to the Conversations API documentation home page.
We've compiled some tips to get you started building your Conversations application the right way.
Help us end inauthentic content
At Bazaarvoice we believe that authentic consumer generated content represents the author's genuine, unbiased, and transparent opinion about their experience with a product or service. We expect all Conversations API applications to conform to our Authenticity policy. You can learn how to increase the likelihood that your content is considered authentic at the Authenticity tutorial.
Submit content in real-time
One set of API keys per application
You should never share an API key between multiple applications. For example, using the same key in your desktop site and mobile site. There are several reasons for this:
- Keys are used to track API usage metrics, so sharing a key will conflate application traffic.
- If you ever need to disable and replace a key, you will have more work to do.
- Keys have a rate limit, so you will be sharing the limit between multiple applications.
Escape all consumer generated content to protect against XSS
Escaping consumer generated content prior to displaying it in your application is an effective way to protect against Cross-Site Scripting (XSS) attacks and is essential to building a secure application.
We do not pre-emptively escape content returned by the API because we make no assumptions about the environment where the data will be displayed or the extent to which our API consumers would like it escaped. Instead, it is your responsibility to escape the data appropriately for your intended use case.
Be mindful of the Conversations API rate limit
The Bazaarvoice platform is a multi-tenant system in which many clients share the same system resources. It is important that excessive usage is limited to protect the stability of the network for everybody. Without a rate limit, poorly constructed applications or unforeseen circumstances could have negative consequences on network performance and availability.
Learn more about the rate limit at the Rate Limit tutorial.
Take advantage of caching
Caching your Conversations API data can provide many benefits, including reducing the number of HTTP requests you need to make, speeding up your application from the perspective of your users, reducing costs, helping you avoid rate limit issues and more.
Read our Caching tutorial to learn more about the benefits of caching and about several common caching techniques.
Use the 'Locale' parameter when submitting
Locale parameter tells our system in what language content is written. Our system uses that information to route the content to our human moderators. Without the
Locale parameter, our system defaults to English, which will result in non-English content being rejected because the moderator who processes it will be unable to read it. Even if your content is in English, it is still a good practice to use the
Locale parameter, because doing so makes your intention explicit and will make localizing your application easier should the need arise.
The Internationalization tutorial has more information on the
Maximize your ROI with BV Pixel
By implementing BV Pixel (our API analytics solution), you will get access to Bazaarvoice Conversion Impact reporting (ROI reporting) as well as Traffic reporting & analytics. Learn how by reading the BV Pixel tutorial.
Regularly rebuild your data store replica
Bazaarvoice is the primary data source for Conversations data. If you would like to maintain your own replica, then you must refresh it at least every two weeks. This reduces the likelihood of your replica drifting out of sync with the Bazaarvoice primary data store.
We provide several alternatives to iterating through the Conversations API results to make this easier:
If you haven't already, thoroughly read through all the documents in the Getting started section.
Familiarize yourself with the rest of the documentation by expanding each section in the navigation to the left.