From cb637a6db2a0e406d656055a286ad921134c7d57 Mon Sep 17 00:00:00 2001
From: Google APIs <noreply@google.com>
Date: Tue, 24 Aug 2021 11:46:03 -0700
Subject: [PATCH] docs: Keep the API doc up-to-date feat: update grpc service
 config settings to reflect correct API deadlines chore: remove relative
 private links from search service comments to prevent crashing client lib
 generation tool

PiperOrigin-RevId: 392712211
---
 google/cloud/retail/v2/product.proto          |  5 +-
 .../retail/v2/retail_grpc_service_config.json | 48 +++++++++++++++++--
 google/cloud/retail/v2/search_service.proto   | 20 +++-----
 google/cloud/retail/v2alpha/product.proto     |  5 +-
 .../v2alpha/retail_grpc_service_config.json   | 48 +++++++++++++++++--
 .../cloud/retail/v2alpha/search_service.proto | 29 +++++------
 google/cloud/retail/v2beta/product.proto      |  5 +-
 .../v2beta/retail_grpc_service_config.json    | 48 +++++++++++++++++--
 .../cloud/retail/v2beta/search_service.proto  | 26 ++++------
 9 files changed, 175 insertions(+), 59 deletions(-)

diff --git a/google/cloud/retail/v2/product.proto b/google/cloud/retail/v2/product.proto
index eaefca4c8..2c4110785 100644
--- a/google/cloud/retail/v2/product.proto
+++ b/google/cloud/retail/v2/product.proto
@@ -200,6 +200,9 @@ message Product {
   // This field must be a UTF-8 encoded string with a length limit of 128
   // characters. Otherwise, an INVALID_ARGUMENT error is returned.
   //
+  // This field must be a Unigram. Otherwise, an INVALID_ARGUMENT error is
+  // returned.
+  //
   // Google Merchant Center property
   // [gtin](https://support.google.com/merchants/answer/6324461).
   // Schema.org property
@@ -434,7 +437,7 @@ message Product {
   // The pattern or graphic print of the product. For example, "striped", "polka
   // dot", "paisley".
   //
-  // A maximum of 5 values are allowed per
+  // A maximum of 20 values are allowed per
   // [Product][google.cloud.retail.v2.Product]. Each value must be a UTF-8
   // encoded string with a length limit of 128 characters. Otherwise, an
   // INVALID_ARGUMENT error is returned.
diff --git a/google/cloud/retail/v2/retail_grpc_service_config.json b/google/cloud/retail/v2/retail_grpc_service_config.json
index 5f520079e..fe9c794c9 100644
--- a/google/cloud/retail/v2/retail_grpc_service_config.json
+++ b/google/cloud/retail/v2/retail_grpc_service_config.json
@@ -3,15 +3,57 @@
     "name": [
       { "service": "google.cloud.retail.v2.CatalogService" },
       { "service": "google.cloud.retail.v2.CompletionService" },
-      { "service": "google.cloud.retail.v2.ProductService" },
       { "service": "google.cloud.retail.v2.UserEventService" },
       { "service": "google.cloud.retail.v2.PredictionService" },
       { "service": "google.cloud.retail.v2.SearchService" }
     ],
-    "timeout": "60s",
+    "timeout": "5s",
+    "retryPolicy": {
+      "initialBackoff": "0.100s",
+      "maxBackoff": "5s",
+      "backoffMultiplier": 1.3,
+      "retryableStatusCodes": [
+        "UNAVAILABLE",
+        "DEADLINE_EXCEEDED"
+      ]
+    }
+  }, {
+    "name": [
+      { "service": "google.cloud.retail.v2.ProductService" },
+      {
+        "service": "google.cloud.retail.v2.UserEventService",
+        "method": "PurgeUserEvents"
+      }
+    ],
+    "timeout": "30s",
+    "retryPolicy": {
+      "initialBackoff": "0.100s",
+      "maxBackoff": "30s",
+      "backoffMultiplier": 1.3,
+      "retryableStatusCodes": [
+        "UNAVAILABLE",
+        "DEADLINE_EXCEEDED"
+      ]
+    }
+  }, {
+    "name": [
+      {
+        "service": "google.longrunning.Operations",
+        "method": "ListOperations"
+      },
+      {
+        "service": "google.cloud.retail.v2.ProductService",
+        "method": "ImportProducts"
+      },
+      {
+        "service": "google.cloud.retail.v2.UserEventService",
+        "method": "ImportUserEvents"
+      }
+    ],
+    "timeout": "300s",
     "retryPolicy": {
       "initialBackoff": "0.100s",
-      "maxBackoff": "60s",
+      "maxBackoff": "300s",
       "backoffMultiplier": 1.3,
       "retryableStatusCodes": [
         "UNAVAILABLE",
diff --git a/google/cloud/retail/v2/search_service.proto b/google/cloud/retail/v2/search_service.proto
index acc6010c5..38ccb4649 100644
--- a/google/cloud/retail/v2/search_service.proto
+++ b/google/cloud/retail/v2/search_service.proto
@@ -289,10 +289,9 @@ message SearchRequest {
       //
       // * To boost products with product ID "product_1" or "product_2", and
       // color
-      //   "Red" or "Blue":<br>
-      //   *(id: ANY("product_1", "product_2"))<br>*
-      //   *AND<br>*
-      //   *(colorFamilies: ANY("Red", "Blue"))<br>*
+      //   "Red" or "Blue":
+      //     * (id: ANY("product_1", "product_2")) AND (colorFamilies:
+      //     ANY("Red","Blue"))
       string condition = 1;
 
       // Strength of the condition boost, which should be in [-1, 1]. Negative
@@ -414,8 +413,7 @@ message SearchRequest {
 
   // The filter syntax consists of an expression language for constructing a
   // predicate from one or more fields of the products being filtered. Filter
-  // expression is case-sensitive. See more details at this [user
-  // guide](/retail/private/docs/filter-and-order#filter).
+  // expression is case-sensitive.
   //
   // If this field is unrecognizable, an INVALID_ARGUMENT is returned.
   string filter = 10;
@@ -433,9 +431,7 @@ message SearchRequest {
 
   // The order in which products are returned. Products can be ordered by
   // a field in an [Product][google.cloud.retail.v2.Product] object. Leave it
-  // unset if ordered by relevance. OrderBy expression is case-sensitive. See
-  // more details at this [user
-  // guide](/retail/private/docs/filter-and-order#order).
+  // unset if ordered by relevance. OrderBy expression is case-sensitive.
   //
   // If this field is unrecognizable, an INVALID_ARGUMENT is returned.
   string order_by = 11;
@@ -453,13 +449,11 @@ message SearchRequest {
   // support team if you are interested in using dynamic facet feature.
   DynamicFacetSpec dynamic_facet_spec = 21;
 
-  // Boost specification to boost certain products. See more details at this
-  // [user guide](/retail/private/docs/boosting).
+  // Boost specification to boost certain products.
   BoostSpec boost_spec = 13;
 
   // The query expansion specification that specifies the conditions under which
-  // query expansion will occur. See more details at this [user
-  // guide](/retail/private/docs/result-size#query_expansion).
+  // query expansion will occur.
   QueryExpansionSpec query_expansion_spec = 14;
 
   // The keys to fetch and rollup the matching
diff --git a/google/cloud/retail/v2alpha/product.proto b/google/cloud/retail/v2alpha/product.proto
index 936e6d8b2..0fb40bc91 100644
--- a/google/cloud/retail/v2alpha/product.proto
+++ b/google/cloud/retail/v2alpha/product.proto
@@ -204,6 +204,9 @@ message Product {
   // This field must be a UTF-8 encoded string with a length limit of 128
   // characters. Otherwise, an INVALID_ARGUMENT error is returned.
   //
+  // This field must be a Unigram. Otherwise, an INVALID_ARGUMENT error is
+  // returned.
+  //
   // Google Merchant Center property
   // [gtin](https://support.google.com/merchants/answer/6324461).
   // Schema.org property
@@ -440,7 +443,7 @@ message Product {
   // The pattern or graphic print of the product. For example, "striped", "polka
   // dot", "paisley".
   //
-  // A maximum of 5 values are allowed per
+  // A maximum of 20 values are allowed per
   // [Product][google.cloud.retail.v2alpha.Product]. Each value must be a UTF-8
   // encoded string with a length limit of 128 characters. Otherwise, an
   // INVALID_ARGUMENT error is returned.
diff --git a/google/cloud/retail/v2alpha/retail_grpc_service_config.json b/google/cloud/retail/v2alpha/retail_grpc_service_config.json
index 70d8dfc77..f41af46b0 100644
--- a/google/cloud/retail/v2alpha/retail_grpc_service_config.json
+++ b/google/cloud/retail/v2alpha/retail_grpc_service_config.json
@@ -3,15 +3,57 @@
     "name": [
       { "service": "google.cloud.retail.v2alpha.CatalogService" },
       { "service": "google.cloud.retail.v2alpha.CompletionService" },
-      { "service": "google.cloud.retail.v2alpha.ProductService" },
       { "service": "google.cloud.retail.v2alpha.UserEventService" },
       { "service": "google.cloud.retail.v2alpha.PredictionService" },
       { "service": "google.cloud.retail.v2alpha.SearchService" }
     ],
-    "timeout": "60s",
+    "timeout": "5s",
+    "retryPolicy": {
+      "initialBackoff": "0.100s",
+      "maxBackoff": "5s",
+      "backoffMultiplier": 1.3,
+      "retryableStatusCodes": [
+        "UNAVAILABLE",
+        "DEADLINE_EXCEEDED"
+      ]
+    }
+  }, {
+    "name": [
+      { "service": "google.cloud.retail.v2alpha.ProductService" },
+      {
+        "service": "google.cloud.retail.v2alpha.UserEventService",
+        "method": "PurgeUserEvents"
+      }
+    ],
+    "timeout": "30s",
+    "retryPolicy": {
+      "initialBackoff": "0.100s",
+      "maxBackoff": "30s",
+      "backoffMultiplier": 1.3,
+      "retryableStatusCodes": [
+        "UNAVAILABLE",
+        "DEADLINE_EXCEEDED"
+      ]
+    }
+  }, {
+    "name": [
+      {
+        "service": "google.longrunning.Operations",
+        "method": "ListOperations"
+      },
+      {
+        "service": "google.cloud.retail.v2alpha.ProductService",
+        "method": "ImportProducts"
+      },
+      {
+        "service": "google.cloud.retail.v2alpha.UserEventService",
+        "method": "ImportUserEvents"
+      }
+    ],
+    "timeout": "300s",
     "retryPolicy": {
       "initialBackoff": "0.100s",
-      "maxBackoff": "60s",
+      "maxBackoff": "300s",
       "backoffMultiplier": 1.3,
       "retryableStatusCodes": [
         "UNAVAILABLE",
diff --git a/google/cloud/retail/v2alpha/search_service.proto b/google/cloud/retail/v2alpha/search_service.proto
index 250eeada6..f728a9eae 100644
--- a/google/cloud/retail/v2alpha/search_service.proto
+++ b/google/cloud/retail/v2alpha/search_service.proto
@@ -68,11 +68,11 @@ message SearchRequest {
     // Specifies how a facet is computed.
     message FacetKey {
       // Required. Supported textual and numerical facet keys in
-      // [Product][google.cloud.retail.v2.Product] object, over which the facet
-      // values are computed. Facet key is case-sensitive.
+      // [Product][google.cloud.retail.v2alpha.Product] object, over which the
+      // facet values are computed. Facet key is case-sensitive.
       //
       // Allowed facet keys when
-      // [FacetKey.query][google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey.query]
+      // [FacetKey.query][google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.query]
       // is not specified:
       //
       // * textual_field =
@@ -291,10 +291,9 @@ message SearchRequest {
       //
       // * To boost products with product ID "product_1" or "product_2", and
       // color
-      //   "Red" or "Blue":<br>
-      //   *(id: ANY("product_1", "product_2"))<br>*
-      //   *AND<br>*
-      //   *(colorFamilies: ANY("Red", "Blue"))<br>*
+      //   "Red" or "Blue":
+      //     * (id: ANY("product_1", "product_2")) AND (colorFamilies:
+      //     ANY("Red","Blue"))
       string condition = 1;
 
       // Strength of the condition boost, which should be in [-1, 1]. Negative
@@ -438,8 +437,7 @@ message SearchRequest {
 
   // The filter syntax consists of an expression language for constructing a
   // predicate from one or more fields of the products being filtered. Filter
-  // expression is case-sensitive. See more details at this [user
-  // guide](/retail/private/docs/filter-and-order#filter).
+  // expression is case-sensitive.
   //
   // If this field is unrecognizable, an INVALID_ARGUMENT is returned.
   string filter = 10;
@@ -458,9 +456,7 @@ message SearchRequest {
 
   // The order in which products are returned. Products can be ordered by
   // a field in an [Product][google.cloud.retail.v2alpha.Product] object. Leave
-  // it unset if ordered by relevance. OrderBy expression is case-sensitive. See
-  // more details at this [user
-  // guide](/retail/private/docs/filter-and-order#order).
+  // it unset if ordered by relevance. OrderBy expression is case-sensitive.
   //
   // If this field is unrecognizable, an INVALID_ARGUMENT is returned.
   string order_by = 11;
@@ -478,13 +474,11 @@ message SearchRequest {
   // support team if you are interested in using dynamic facet feature.
   DynamicFacetSpec dynamic_facet_spec = 21;
 
-  // Boost specification to boost certain products. See more details at this
-  // [user guide](/retail/private/docs/boosting).
+  // Boost specification to boost certain products.
   BoostSpec boost_spec = 13;
 
   // The query expansion specification that specifies the conditions under which
-  // query expansion will occur. See more details at this [user
-  // guide](/retail/private/docs/result-size#query_expansion).
+  // query expansion will occur..
   QueryExpansionSpec query_expansion_spec = 14;
 
   // The relevance threshold of the search results.
@@ -492,8 +486,7 @@ message SearchRequest {
   // Defaults to
   // [RelevanceThreshold.HIGH][google.cloud.retail.v2alpha.SearchRequest.RelevanceThreshold.HIGH],
   // which means only the most relevant results are shown, and the least number
-  // of results are returned. See more details at this [user
-  // guide](/retail/private/docs/result-size#relevance_thresholding).
+  // of results are returned.
   RelevanceThreshold relevance_threshold = 15;
 
   // The keys to fetch and rollup the matching
diff --git a/google/cloud/retail/v2beta/product.proto b/google/cloud/retail/v2beta/product.proto
index 7a1331afb..64ccef1ca 100644
--- a/google/cloud/retail/v2beta/product.proto
+++ b/google/cloud/retail/v2beta/product.proto
@@ -203,6 +203,9 @@ message Product {
   // This field must be a UTF-8 encoded string with a length limit of 128
   // characters. Otherwise, an INVALID_ARGUMENT error is returned.
   //
+  // This field must be a Unigram. Otherwise, an INVALID_ARGUMENT error is
+  // returned.
+  //
   // Google Merchant Center property
   // [gtin](https://support.google.com/merchants/answer/6324461).
   // Schema.org property
@@ -439,7 +442,7 @@ message Product {
   // The pattern or graphic print of the product. For example, "striped", "polka
   // dot", "paisley".
   //
-  // A maximum of 5 values are allowed per
+  // A maximum of 20 values are allowed per
   // [Product][google.cloud.retail.v2beta.Product]. Each value must be a UTF-8
   // encoded string with a length limit of 128 characters. Otherwise, an
   // INVALID_ARGUMENT error is returned.
diff --git a/google/cloud/retail/v2beta/retail_grpc_service_config.json b/google/cloud/retail/v2beta/retail_grpc_service_config.json
index fbf4901b6..5daa4caf6 100644
--- a/google/cloud/retail/v2beta/retail_grpc_service_config.json
+++ b/google/cloud/retail/v2beta/retail_grpc_service_config.json
@@ -3,15 +3,57 @@
     "name": [
       { "service": "google.cloud.retail.v2beta.CatalogService" },
       { "service": "google.cloud.retail.v2beta.CompletionService" },
-      { "service": "google.cloud.retail.v2beta.ProductService" },
       { "service": "google.cloud.retail.v2beta.UserEventService" },
       { "service": "google.cloud.retail.v2beta.PredictionService" },
       { "service": "google.cloud.retail.v2beta.SearchService" }
     ],
-    "timeout": "60s",
+    "timeout": "5s",
+    "retryPolicy": {
+      "initialBackoff": "0.100s",
+      "maxBackoff": "5s",
+      "backoffMultiplier": 1.3,
+      "retryableStatusCodes": [
+        "UNAVAILABLE",
+        "DEADLINE_EXCEEDED"
+      ]
+    }
+  }, {
+    "name": [
+      { "service": "google.cloud.retail.v2beta.ProductService" },
+      {
+        "service": "google.cloud.retail.v2beta.UserEventService",
+        "method": "PurgeUserEvents"
+      }
+    ],
+    "timeout": "30s",
+    "retryPolicy": {
+      "initialBackoff": "0.100s",
+      "maxBackoff": "30s",
+      "backoffMultiplier": 1.3,
+      "retryableStatusCodes": [
+        "UNAVAILABLE",
+        "DEADLINE_EXCEEDED"
+      ]
+    }
+  }, {
+    "name": [
+      {
+        "service": "google.longrunning.Operations",
+        "method": "ListOperations"
+      },
+      {
+        "service": "google.cloud.retail.v2beta.ProductService",
+        "method": "ImportProducts"
+      },
+      {
+        "service": "google.cloud.retail.v2beta.UserEventService",
+        "method": "ImportUserEvents"
+      }
+    ],
+    "timeout": "300s",
     "retryPolicy": {
       "initialBackoff": "0.100s",
-      "maxBackoff": "60s",
+      "maxBackoff": "300s",
       "backoffMultiplier": 1.3,
       "retryableStatusCodes": [
         "UNAVAILABLE",
diff --git a/google/cloud/retail/v2beta/search_service.proto b/google/cloud/retail/v2beta/search_service.proto
index 764c0e6e0..7679f9d60 100644
--- a/google/cloud/retail/v2beta/search_service.proto
+++ b/google/cloud/retail/v2beta/search_service.proto
@@ -68,11 +68,11 @@ message SearchRequest {
     // Specifies how a facet is computed.
     message FacetKey {
       // Required. Supported textual and numerical facet keys in
-      // [Product][google.cloud.retail.v2.Product] object, over which the facet
-      // values are computed. Facet key is case-sensitive.
+      // [Product][google.cloud.retail.v2beta.Product] object, over which the
+      // facet values are computed. Facet key is case-sensitive.
       //
       // Allowed facet keys when
-      // [FacetKey.query][google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey.query]
+      // [FacetKey.query][google.cloud.retail.v2beta.SearchRequest.FacetSpec.FacetKey.query]
       // is not specified:
       //
       // * textual_field =
@@ -291,10 +291,9 @@ message SearchRequest {
       //
       // * To boost products with product ID "product_1" or "product_2", and
       // color
-      //   "Red" or "Blue":<br>
-      //   *(id: ANY("product_1", "product_2"))<br>*
-      //   *AND<br>*
-      //   *(colorFamilies: ANY("Red", "Blue"))<br>*
+      //   "Red" or "Blue":
+      //     * (id: ANY("product_1", "product_2")) AND (colorFamilies:
+      //     ANY("Red","Blue"))
       string condition = 1;
 
       // Strength of the condition boost, which should be in [-1, 1]. Negative
@@ -416,8 +415,7 @@ message SearchRequest {
 
   // The filter syntax consists of an expression language for constructing a
   // predicate from one or more fields of the products being filtered. Filter
-  // expression is case-sensitive. See more details at this [user
-  // guide](/retail/private/docs/filter-and-order#filter).
+  // expression is case-sensitive.
   //
   // If this field is unrecognizable, an INVALID_ARGUMENT is returned.
   string filter = 10;
@@ -435,9 +433,7 @@ message SearchRequest {
 
   // The order in which products are returned. Products can be ordered by
   // a field in an [Product][google.cloud.retail.v2beta.Product] object. Leave
-  // it unset if ordered by relevance. OrderBy expression is case-sensitive. See
-  // more details at this [user
-  // guide](/retail/private/docs/filter-and-order#order).
+  // it unset if ordered by relevance. OrderBy expression is case-sensitive.
   //
   // If this field is unrecognizable, an INVALID_ARGUMENT is returned.
   string order_by = 11;
@@ -455,13 +451,11 @@ message SearchRequest {
   // support team if you are interested in using dynamic facet feature.
   DynamicFacetSpec dynamic_facet_spec = 21;
 
-  // Boost specification to boost certain products. See more details at this
-  // [user guide](/retail/private/docs/boosting).
+  // Boost specification to boost certain products.
   BoostSpec boost_spec = 13;
 
   // The query expansion specification that specifies the conditions under which
-  // query expansion will occur. See more details at this [user
-  // guide](/retail/private/docs/result-size#query_expansion).
+  // query expansion will occur.
   QueryExpansionSpec query_expansion_spec = 14;
 
   // The keys to fetch and rollup the matching