Method: projects.locations.catalogs.placements.conversationalSearch

Performs a conversational search.

This feature is only available for users who have Conversational placements.search enabled.

HTTP request

POST https://retail.googleapis.com/v2alpha/{placement=projects/*/locations/*/catalogs/*/placements/*}:conversationalSearch

The URL uses gRPC Transcoding syntax.

Path parameters

Parameters
placement

string

Required. The resource name of the search engine placement, such as projects/*/locations/global/catalogs/default_catalog/placements/default_search or projects/*/locations/global/catalogs/default_catalog/servingConfigs/default_serving_config This field is used to identify the serving config name and the set of models that will be used to make the search.

Request body

The request body contains data with the following structure:

JSON representation
{
  "branch": string,
  "query": string,
  "pageCategories": [
    string
  ],
  "conversationId": string,
  "searchParams": {
    object (SearchParams)
  },
  "visitorId": string,
  "userInfo": {
    object (UserInfo)
  },
  "conversationalFilteringSpec": {
    object (ConversationalFilteringSpec)
  }
}
Fields
branch

string

Required. The branch resource name, such as projects/*/locations/global/catalogs/default_catalog/branches/0.

Use "default_branch" as the branch ID or leave this field empty, to search products under the default branch.

query

string

Optional. Raw search query to be searched for.

If this field is empty, the request is considered a category browsing request.

pageCategories[]

string

Optional. The categories associated with a category page. Must be set for category navigation queries to achieve good search quality. The format should be the same as UserEvent.page_categories;

To represent full path of category, use '>' sign to separate different hierarchies. If '>' is part of the category name, replace it with other character(s).

Category pages include special pages such as sales or promotions. For instance, a special sale page may have the category hierarchy: "pageCategories" : ["Sales > 2017 Black Friday Deals"].

conversationId

string

Optional. This field specifies the conversation id, which maintains the state of the conversation between client side and server side. Use the value from the previous ConversationalSearchResponse.conversation_id. For the initial request, this should be empty.

searchParams

object (SearchParams)

Optional. placements.search parameters.

visitorId

string

Required. A unique identifier for tracking visitors. For example, this could be implemented with an HTTP cookie, which should be able to uniquely identify a visitor on a single device. This unique identifier should not change if the visitor logs in or out of the website.

This should be the same identifier as UserEvent.visitor_id.

The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.

userInfo

object (UserInfo)

Optional. User information.

conversationalFilteringSpec

object (ConversationalFilteringSpec)

Optional. This field specifies all conversational filtering related parameters.

Response body

If successful, the response body contains a stream of ConversationalSearchResponse instances.

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/cloud-platform

For more information, see the Authentication Overview.