We make changes to Bloomreach APIs based on the need to enhance API performance, streamline response, and standardize structure. Given below are some of the key API changes and updates.
API Endpoint Changes
If you are an existing customer without new integrations, you can use the following API endpoints. These endpoints are currently supported, however, it is recommended that you use the new API endpoints for better performance.
API Name | Staging Endpoint | Production Endpoint |
---|---|---|
All Organic API calls | https://bsapi-test.brsrvr.com | https://api_host.brsrvr.com |
All Personalization API calls (except Autosuggest calls) | https://brm-staging-core-0.brsrvr.com/api/v1/core/? | https://brm-core-0.brsrvr.comapi/v1/core/? |
Autosuggest API calls | https://brm-staging-core-0.brsrvr.com/api/v1/suggest/? | https://brm-core-0.brsrvr.com/api/v1/suggest/? |
Backward Compatibility Changes for V1
To maintain structure and consistency in the Search API format, changes to the JSON response has been introduced.
Whether you are an existing merchant (using the old format), or a new merchant looking to use these fields, note the following points about the JSON response:
-
New fields within metadata: New fields within the metadata (such as DidYouMean, mode and value) are introduced to consolidate all the non-document data in a single field. The values returned by the new fields within the metadata are the same as in the old format.
-
Support for old fields: While the new fields are available within the metadata, the old fields are still returned in the response body for backward compatibility.
-
Consuming the fields: If you are using any of the fields mentioned above to display messages on your UI, it is advised to start consuming the fields from within the metadata, as the fields outside (old format) will soon be deprecated.
The table below shows the new format in which the fields are returned:
Field | New Format |
---|---|
autoCorrectQuery | "metadata": { "query": { "modification": { "mode":"autoCorrectQuery", "value":"black" |
relaxed.query | "metadata": { "query": { "modification": { "mode": "relaxedQuery", "value": "pens" |
did_you_mean | "metadata": { "query": { "modification": { "mode": "autoCorrectQuery", "value": "black shirt" }, "didYouMean": [ "blue shirt", "bear shirt", "blush shirt" |