Skip to main content
RichRelevance

Core Integration recsForPlacements API

An overview of Core Integration recsForPlacements API .

Description

This endpoint logs shopper behavior and when used with a placement name returns recommendations for a named placement.

URL

Production

Use this URL to request personalization from your production environment.

https://recs.richrelevance.com/rrserver/api/rrPlatform/recsForPlacements

Integration

Use this URL to request personalization from your QA, staging or development environment. This way, you can test change without impacting your production environment.

https://integration.richrelevance.com/rrserver/api/rrPlatform/recsForPlacements

Parameters

Note

  • You need only call parameters. 
  • Algonomy operates off a set of APIs that support many applications and clients concurrently. Algonomy may update and enhance these APIs at any time. 
  • All parameters are case sensitive.
Name Required or Optional Description
aari Optional

Already added registry items. A single (or list of) product ID(s). If there is more than one product in the registry, separate the IDs using the pipe '|' character.

Example: ​aari=33306|909119|305466

apiClientKey Required

A unique key specific to each API implementation. It identifies the specific application or client for reporting, permissions, and merchandising. This is provided by RichRelevance.

Example: apiClientKey=b0126f995ac848159d

apiKey Required

A unique key that identifies the site. Each RichRelevance client has a unique API key to separate data and traffic from other clients. This is provided by RichRelevance.

Example: apiKey=4faeaf752ee40a0f

atcid Required on Add to Cart page

Add to Cart ID. This can be a single product ID or a list of product IDs. If more than one product is added to the cart, separate the product IDs by using the pipe "|" character.

Example: atcid=uv2345|xt1234

bi Optional

A list of product IDs that should not be recommended in this response. Use the pipe "|" character to separate product IDs.

Example: bi=93874|04495|043945

categoryData Optional

Omits category data (categoryIds and categories) when set to false. The default is true.

Example: categoryData=false

categoryId Required on category_page

The category ID of the category the merchant wants to investigate. The value must match the external ID provided by the merchant to RichRelevance for the category.

Example: categoryId=902312

chi Optional

Supplies category hint IDs. Category hints can be added to any page type. Each category hint qualifies the page for merchandising rules that are associated to the category. Merchants can add multiple category hints to a single page. The values are separated by the pipe "|" character. 

Example: chi=1913000|1903094

count Optional

The total number of products to return in the response. This value overrides the return count set in the placement or in the Search and Browse configuration. For example, if you want to return products 30 through 60, set the value to 30. The maximum value is 1000.

Example: count=30

Note: This is for Search and Browse only. When using pagination this parameter together with st is required.

excludeHtml Optional

True/false. If true, it omits the HTML returned in the RichRelevance server response. If false, the response includes the HTML for the placement which is set in the layout of the html field. The default is false. 

Example: excludeHtml=true

 
filterAtr Optional

Filter types and values selected by the shopper. Place quotation marks around all attributes, separate the types by using the pipe "|" character, and separate the values by using a semicolon. You must include quotation marks around all attributes.

Example: filterAtr=brand:"adidas"|size:"M";"L"

Note: This is for Search and Browse only, and it needs configuration by RichRelevance first.

flv Optional

Flash version of the browser. It's only used if content displayed is flash.

Example: flv=20.0.0.306

fpb Optional

The brand featured on the page. Used to set the seed for brand-seeded strategies, such as Brand Top Sellers.

Example: fpb=Microsoft

includeBrandFilteredProducts Optional

True/false. Changes the function of filbr from exclude to include. If not specified, the default is false, which will exclude the specified brand. If true, the brand filter excludes all products except the specified brand.

Example: includeBrandFilteredProducts=true

ipor Optional

Shopper IP address. Only use if the API request is not coming from the shopper’s device (for example, server-side integration).

Example: ipor=255.255.255.255

jcb Required for jsonp

Name of the JavaScript function that JSON data is passed to. Must be specified if jsonp is set to true.

Example: jcb=processData

jsonp Optional

Boolean flag. The only valid value is true. If set to true, the jcb parameter must also be provided.

Example: jsonp=true

o

 

Required on purchase_complete_page

Order ID. Part of the order definition. Example: o=902312

placements Required

List of placement identifiers. Each identifier consists of a page type and a placement name. The identifiers are separated by the pipe "|" character.

  • You'll receive one set of recommendations per placement.
  • All placements must be for the same page type.
  • The first placement is assumed to be the "best" placement, and will receive the best recommendation strategy.
  • When multiple placements are requested, each will receive a unique strategy and unique products.

Example: placements=item_page.horizontal|item_page.vertical

pp

Required on purchase_complete_page

Optional on cart_page

Product prices. A list defining the prices of purchased products. The index of product prices in the list corresponds to the products passed in productId. This is part of the order definition. Use either pp or ppc to define the price of items purchased. If you use pp, the site’s currency multiplier is applied. The values are separated by the pipe "|" character.

Example: pp=29.99|32.97

ppc

Required on purchase_complete_page

Optional on cart_page

Product prices in cents. A list defining the prices of purchased products. The index of product prices in the list corresponds to the products passed in productId. This is part of the order definition. Use either pp or ppc to define the price of items purchased. If you use ppc, the site’s currency multiplier is not applied.

The passed value is accepted as-is, and is converted from a string to an integer. Be certain that the string you pass contains only numerals (no currency symbols or separators). The values are separated by the pipe "|" character.

Example: ppc=2999|3297 (these values are $29.99 and $32.97)

productId Required on item_page, purchase_complete_page, and cart_page (when not empty)

A single product ID, or a list of product IDs. Part of an order definition on the purchase complete page. Use the pipe "|" character to separate the product IDs.

Example: productId=uv2345|xt1234

Note: For the add_to_cart_page request, the product ID is passed as the Add to Cart ID through the 'atcid' parameter. Hence this productId field is not required.

Note:  SKU IDs can be passed to API calls as well. When specifying a PRODUCT ID, the SKU ID should be appended with a tilde ('~') separator. Example: ...&productId=[product_id]~[sku_id]

q

Required on purchase_complete_page

Optional on cart_page

Item quantities. A list defining the quantities of products purchased. The index of quantities in the list corresponds to the index of the products passed in productId. This is part of the order definition. Multiple entries are separated by the pipe "|" character.

Example: q=2|1

rcs Required

Algonomy Cookie String. This is the encrypted Algonomy cookie for the user associated with the API request. It should be passed exactly as it was received in a prior API response.

Clients should ensure to preserve the 'rcs' value just as it was served. The 'rcs' parameter is always alphanumeric and case-sensitive, with the token value including a mix of uppercase letters, lowercase letters, and numbers.

Note: The 'rcs' parameter allows merchants to effectively provide the Algonomy platform access to a user's Algonomy browser cookie by acting as a cookie proxy (or cookie pass-through). This process involves the merchant reading and writing a user's Algonomy browser cookie and passing it to and from Algonomy via the server-side API.

rg Optional

Used to identify a particular registry.

Example: rg=Registry123454321

rgt Optional

Registry type ID. Contact RichRelevance for a list of registry type IDs for your site.

Example: ​rgt=wedding

rid Optional

Region ID. Must be consistent with the ID used in the product region feed.

Example: rid=Switzerland-France

searchTerm Required on search_page

The search term typed in by the shopper. You can also use the productId parameter to provide product IDs of the products in the search results.

Example: searchTerm=adriana lima

sessionId Required

Identifies a single visit by a shopper.  Sessions are used by behavioral models (to scope user behaviour in a shopping session) and reporting metrics.

Example: sessionId=93484

sgs Optional

Supply user segments. Used for segment-targeted campaigns. List each segment using the format segment_number:segment_name, and then use the pipe "|" character to separate segments. You must pass both the segment ID and a segment name for each segment.

Example: sgs=101:NewUser|202:Male

st Optional

The starting number for the products that you want to return. For example, if you want to return products 30 through 60, set the value to 30.

Note: this is for Search and Browse only. When using pagination this parameter together with count is required.

Example: st=30

ts Optional

Timestamp. It's used for browser cache busting, and is highly recommended. If excluded, you may see cached responses.

Example: ts=1376676943

userAttribute Optional

Custom keys and values that describe the current shopper. Separate information using a semicolon and the pipe "|" character.

Example: userAttribute=eye_color:blue;green|hair_color:brown

userAttributeReplace Optional

Usage is same as userAttribute, except that the attributes sent along with userAttributeReplace will replace all previously sent values for that attribute.
Example: userAttributeReplace=eye_color:black
In the above example all previous values of eye_color will be removed and replaced with black.
If the same attribute is sent along in a single request in userAttribute as well as userAttributeReplace, then the value sent in userAttributeReplace will take precedence.
This attribute also supports Delete update against attribute values. 

Example: userAttribute=eye_color:|hair_color:

userId Optional

User ID. A unique string to identify each shopper (user). All shopper behavior is stored using this key. It is case-sensitive, and should be the same user ID sent to RichRelevance in other applications.

Example: userId=0982347

#1 Example Requests (Core)

Retrieve the rcs parameter with Home Page placement page type.

GET /rrserver/api/rrPlatform/recsForPlacements?apiKey=showcaseparent&apiClientKey=776cdd80331919e7&userId=48454648&sessionId=827ccb0eea8a706c4c34a16891f84e7b&placements=home_page

Retrieve the rcs parameter with Item Page placement page  type using the seed product ID 24516217 for the user with ID 48454648.

GET /rrserver/api/rrPlatform/recsForPlacements?apiKey=showcaseparent&apiClientKey=776cdd80331919e7&userId=48454648&sessionId=827ccb0eea8a706c4c34a16891f84e7b&placements=item_page&productId=24516217

Retrieve the rcs parameter with Add to Cart Page placement page  type, for the user with ID 48454648, passing 24516217 (the ID of the product added to the cart) in the atcid parameter.

GET /rrserver/api/rrPlatform/recsForPlacements?apiKey=showcaseparent&apiClientKey=776cdd80331919e7&userId=48454648&sessionId=827ccb0eea8a706c4c34a16891f84e7b&placements=add_to_cart_page&atcid=24516217

#1 Example Response 

{
  "rcs": "eF5j4cotK8lM4TMzsNA11DVkKU32MEkyBAJjM11jYzMzXRNTozRdA0sgYZxiammQaGJmZmaaDABuTQ0O",
  "status": "ok"
}

#2 Example Requests

Retrieve the rcs parameter with Category Page placement page for user ID 48454648, and for category 6406:

GET /rrserver/api/rrPlatform/recsForPlacements?apiKey=a6x5029gd6941a22&st=0&count=20&apiClientKey=x3f023fd649003&placements=category_page &sessionId=27083322340392734752015&userId=48454648&categoryId=6406

#2 Example Response 

The response is a JSON object with rcs and status.

{
  "rcs": "eF5j48otK8lM4TGy0DXUNWQpTfZINU80TLG0NNdNtrRM1DUxSk3WNTY3NdI1MjM1MUg1TzI0SzPgKgXqSeYwstBLBAAmHBDP",
  "status": "ok"
}
  • Was this article helpful?