Method: projects.locations.catalogs.servingConfigs.conversationalSearch

Performs a conversational search.

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

HTTP request

POST https://retail.googleapis.com/v2alpha/{placement=projects/*/locations/*/catalogs/*/servingConfigs/*}: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)
  },
  "userLabels": {
    string: string,
    ...
  },
  "safetySettings": [
    {
      object (SafetySetting)
    }
  ]
}
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. servingConfigs.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.

userLabels

map (key: string, value: string)

Optional. The user labels applied to a resource must meet the following requirements:

  • Each resource can have multiple labels, up to a maximum of 64.
  • Each label must be a key-value pair.
  • Keys have a minimum length of 1 character and a maximum length of 63 characters and cannot be empty. Values can be empty and have a maximum length of 63 characters.
  • Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes. All characters must use UTF-8 encoding, and international characters are allowed.
  • The key portion of a label must be unique. However, you can use the same key with multiple resources.
  • Keys must start with a lowercase letter or international character.

See Google Cloud Document for more details.

safetySettings[]

object (SafetySetting)

Optional. The safety settings to be applied to the generated content.

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.