Retail V2 API - Class Google::Cloud::Retail::V2::Rule::PinAction (v2.1.0)

Reference documentation and code samples for the Retail V2 API class Google::Cloud::Retail::V2::Rule::PinAction.

Pins one or more specified products to a specific position in the results.

  • Rule Condition: Must specify non-empty Condition.query_terms (for search only) or Condition.page_categories (for browse only), but can't specify both.

  • Action Input: mapping of [pin_position, product_id] pairs (pin position uses 1-based indexing).

  • Action Result: Will pin products with matching ids to the position specified in the final result order.

Example: Suppose the query is shoes, the Condition.query_terms is shoes and the pin_map has {1, "pid1"}, then product with pid1 will be pinned to the top position in the final results.

If multiple PinActions are matched to a single request the actions will be processed from most to least recently updated.

Pins to positions larger than the max allowed page size of 120 are not allowed.

Inherits

  • Object

Extended By

  • Google::Protobuf::MessageExts::ClassMethods

Includes

  • Google::Protobuf::MessageExts

Methods

#pin_map

def pin_map() -> ::Google::Protobuf::Map{::Integer => ::String}
Returns
  • (::Google::Protobuf::Map{::Integer => ::String}) — Required. A map of positions to product_ids.

    Partial matches per action are allowed, if a certain position in the map is already filled that [position, product_id] pair will be ignored but the rest may still be applied. This case will only occur if multiple pin actions are matched to a single request, as the map guarantees that pin positions are unique within the same action.

    Duplicate product_ids are not permitted within a single pin map.

    The max size of this map is 120, equivalent to the max request page size.

#pin_map=

def pin_map=(value) -> ::Google::Protobuf::Map{::Integer => ::String}
Parameter
  • value (::Google::Protobuf::Map{::Integer => ::String}) — Required. A map of positions to product_ids.

    Partial matches per action are allowed, if a certain position in the map is already filled that [position, product_id] pair will be ignored but the rest may still be applied. This case will only occur if multiple pin actions are matched to a single request, as the map guarantees that pin positions are unique within the same action.

    Duplicate product_ids are not permitted within a single pin map.

    The max size of this map is 120, equivalent to the max request page size.

Returns
  • (::Google::Protobuf::Map{::Integer => ::String}) — Required. A map of positions to product_ids.

    Partial matches per action are allowed, if a certain position in the map is already filled that [position, product_id] pair will be ignored but the rest may still be applied. This case will only occur if multiple pin actions are matched to a single request, as the map guarantees that pin positions are unique within the same action.

    Duplicate product_ids are not permitted within a single pin map.

    The max size of this map is 120, equivalent to the max request page size.