{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "See, edit, configure, and delete your Google Cloud Platform data"
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://retail.googleapis.com/",
  "batchPath": "batch",
  "canonicalName": "Cloud Retail",
  "description": "Cloud Retail service enables customers to build end-to-end personalized recommendation systems without requiring a high level of expertise in machine learning, recommendation system, or Google Cloud.",
  "discoveryVersion": "v1",
  "documentationLink": "https://cloud.google.com/recommendations",
  "fullyEncodeReservedExpansion": true,
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "id": "retail:v2alpha",
  "kind": "discovery#restDescription",
  "mtlsRootUrl": "https://retail.mtls.googleapis.com/",
  "name": "retail",
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "parameters": {
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "key": {
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query",
      "type": "boolean"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "protocol": "rest",
  "resources": {
    "projects": {
      "resources": {
        "locations": {
          "resources": {
            "catalogs": {
              "methods": {
                "list": {
                  "description": "Lists all the Catalogs associated with the project.",
                  "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs",
                  "httpMethod": "GET",
                  "id": "retail.projects.locations.catalogs.list",
                  "parameterOrder": [
                    "parent"
                  ],
                  "parameters": {
                    "pageSize": {
                      "description": "Maximum number of Catalogs to return. If unspecified, defaults to 50. The maximum allowed value is 1000. Values above 1000 will be coerced to 1000. If this field is negative, an INVALID_ARGUMENT is returned.",
                      "format": "int32",
                      "location": "query",
                      "type": "integer"
                    },
                    "pageToken": {
                      "description": "A page token ListCatalogsResponse.next_page_token, received from a previous CatalogService.ListCatalogs call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to CatalogService.ListCatalogs must match the call that provided the page token. Otherwise, an INVALID_ARGUMENT error is returned.",
                      "location": "query",
                      "type": "string"
                    },
                    "parent": {
                      "description": "Required. The account resource name with an associated location. If the caller does not have permission to list Catalogs under this location, regardless of whether or not this location exists, a PERMISSION_DENIED error is returned.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v2alpha/{+parent}/catalogs",
                  "response": {
                    "$ref": "GoogleCloudRetailV2alphaListCatalogsResponse"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "patch": {
                  "description": "Updates the Catalogs.",
                  "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}",
                  "httpMethod": "PATCH",
                  "id": "retail.projects.locations.catalogs.patch",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "Required. Immutable. The fully qualified resource name of the catalog.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+$",
                      "required": true,
                      "type": "string"
                    },
                    "updateMask": {
                      "description": "Indicates which fields in the provided Catalog to update. If an unsupported or unknown field is provided, an INVALID_ARGUMENT error is returned.",
                      "format": "google-fieldmask",
                      "location": "query",
                      "type": "string"
                    }
                  },
                  "path": "v2alpha/{+name}",
                  "request": {
                    "$ref": "GoogleCloudRetailV2alphaCatalog"
                  },
                  "response": {
                    "$ref": "GoogleCloudRetailV2alphaCatalog"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                }
              },
              "resources": {
                "branches": {
                  "resources": {
                    "operations": {
                      "methods": {
                        "get": {
                          "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.",
                          "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/branches/{branchesId}/operations/{operationsId}",
                          "httpMethod": "GET",
                          "id": "retail.projects.locations.catalogs.branches.operations.get",
                          "parameterOrder": [
                            "name"
                          ],
                          "parameters": {
                            "name": {
                              "description": "The name of the operation resource.",
                              "location": "path",
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/branches/[^/]+/operations/[^/]+$",
                              "required": true,
                              "type": "string"
                            }
                          },
                          "path": "v2alpha/{+name}",
                          "response": {
                            "$ref": "GoogleLongrunningOperation"
                          },
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ]
                        }
                      }
                    },
                    "products": {
                      "methods": {
                        "create": {
                          "description": "Creates a Product.",
                          "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/branches/{branchesId}/products",
                          "httpMethod": "POST",
                          "id": "retail.projects.locations.catalogs.branches.products.create",
                          "parameterOrder": [
                            "parent"
                          ],
                          "parameters": {
                            "parent": {
                              "description": "Required. The parent catalog resource name, such as `projects/*/locations/global/catalogs/default_catalog/branches/default_branch`.",
                              "location": "path",
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/branches/[^/]+$",
                              "required": true,
                              "type": "string"
                            },
                            "productId": {
                              "description": "Required. The ID to use for the Product, which will become the final component of the Product.name. If the caller does not have permission to create the Product, regardless of whether or not it exists, a PERMISSION_DENIED error is returned. This field must be unique among all Products with the same parent. Otherwise, an ALREADY_EXISTS error is returned. This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.",
                              "location": "query",
                              "type": "string"
                            }
                          },
                          "path": "v2alpha/{+parent}/products",
                          "request": {
                            "$ref": "GoogleCloudRetailV2alphaProduct"
                          },
                          "response": {
                            "$ref": "GoogleCloudRetailV2alphaProduct"
                          },
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ]
                        },
                        "delete": {
                          "description": "Deletes a Product.",
                          "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/branches/{branchesId}/products/{productsId}",
                          "httpMethod": "DELETE",
                          "id": "retail.projects.locations.catalogs.branches.products.delete",
                          "parameterOrder": [
                            "name"
                          ],
                          "parameters": {
                            "name": {
                              "description": "Required. Full resource name of Product, such as `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/some_product_id`. If the caller does not have permission to delete the Product, regardless of whether or not it exists, a PERMISSION_DENIED error is returned. If the Product to delete does not exist, a NOT_FOUND error is returned. The Product to delete can neither be a Product.Type.COLLECTION Product member nor a Product.Type.PRIMARY Product with more than one variants. Otherwise, an INVALID_ARGUMENT error is returned. All inventory information for the named Product will be deleted.",
                              "location": "path",
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/branches/[^/]+/products/.*$",
                              "required": true,
                              "type": "string"
                            }
                          },
                          "path": "v2alpha/{+name}",
                          "response": {
                            "$ref": "GoogleProtobufEmpty"
                          },
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ]
                        },
                        "get": {
                          "description": "Gets a Product.",
                          "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/branches/{branchesId}/products/{productsId}",
                          "httpMethod": "GET",
                          "id": "retail.projects.locations.catalogs.branches.products.get",
                          "parameterOrder": [
                            "name"
                          ],
                          "parameters": {
                            "name": {
                              "description": "Required. Full resource name of Product, such as `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/some_product_id`. If the caller does not have permission to access the Product, regardless of whether or not it exists, a PERMISSION_DENIED error is returned. If the requested Product does not exist, a NOT_FOUND error is returned.",
                              "location": "path",
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/branches/[^/]+/products/.*$",
                              "required": true,
                              "type": "string"
                            }
                          },
                          "path": "v2alpha/{+name}",
                          "response": {
                            "$ref": "GoogleCloudRetailV2alphaProduct"
                          },
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ]
                        },
                        "import": {
                          "description": "Bulk import of multiple Products. Request processing may be synchronous. No partial updating is supported. Non-existing items are created. Note that it is possible for a subset of the Products to be successfully updated.",
                          "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/branches/{branchesId}/products:import",
                          "httpMethod": "POST",
                          "id": "retail.projects.locations.catalogs.branches.products.import",
                          "parameterOrder": [
                            "parent"
                          ],
                          "parameters": {
                            "parent": {
                              "description": "Required. `projects/1234/locations/global/catalogs/default_catalog/branches/default_branch` If no updateMask is specified, requires products.create permission. If updateMask is specified, requires products.update permission.",
                              "location": "path",
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/branches/[^/]+$",
                              "required": true,
                              "type": "string"
                            }
                          },
                          "path": "v2alpha/{+parent}/products:import",
                          "request": {
                            "$ref": "GoogleCloudRetailV2alphaImportProductsRequest"
                          },
                          "response": {
                            "$ref": "GoogleLongrunningOperation"
                          },
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ]
                        },
                        "patch": {
                          "description": "Updates a Product.",
                          "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/branches/{branchesId}/products/{productsId}",
                          "httpMethod": "PATCH",
                          "id": "retail.projects.locations.catalogs.branches.products.patch",
                          "parameterOrder": [
                            "name"
                          ],
                          "parameters": {
                            "allowMissing": {
                              "description": "If set to true, and the Product is not found, a new Product will be created. In this situation, `update_mask` is ignored.",
                              "location": "query",
                              "type": "boolean"
                            },
                            "name": {
                              "description": "Immutable. Full resource name of the product, such as `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/product_id`. The branch ID must be \"default_branch\".",
                              "location": "path",
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/branches/[^/]+/products/.*$",
                              "required": true,
                              "type": "string"
                            },
                            "updateMask": {
                              "description": "Indicates which fields in the provided Product to update. The immutable and output only fields are NOT supported. If not set, all supported fields (the fields that are neither immutable nor output only) are updated. If an unsupported or unknown field is provided, an INVALID_ARGUMENT error is returned.",
                              "format": "google-fieldmask",
                              "location": "query",
                              "type": "string"
                            }
                          },
                          "path": "v2alpha/{+name}",
                          "request": {
                            "$ref": "GoogleCloudRetailV2alphaProduct"
                          },
                          "response": {
                            "$ref": "GoogleCloudRetailV2alphaProduct"
                          },
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ]
                        }
                      }
                    }
                  }
                },
                "operations": {
                  "methods": {
                    "get": {
                      "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.",
                      "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/operations/{operationsId}",
                      "httpMethod": "GET",
                      "id": "retail.projects.locations.catalogs.operations.get",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "name": {
                          "description": "The name of the operation resource.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/operations/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v2alpha/{+name}",
                      "response": {
                        "$ref": "GoogleLongrunningOperation"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "list": {
                      "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `\"/v1/{name=users/*}/operations\"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.",
                      "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/operations",
                      "httpMethod": "GET",
                      "id": "retail.projects.locations.catalogs.operations.list",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "filter": {
                          "description": "The standard list filter.",
                          "location": "query",
                          "type": "string"
                        },
                        "name": {
                          "description": "The name of the operation's parent resource.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+$",
                          "required": true,
                          "type": "string"
                        },
                        "pageSize": {
                          "description": "The standard list page size.",
                          "format": "int32",
                          "location": "query",
                          "type": "integer"
                        },
                        "pageToken": {
                          "description": "The standard list page token.",
                          "location": "query",
                          "type": "string"
                        }
                      },
                      "path": "v2alpha/{+name}/operations",
                      "response": {
                        "$ref": "GoogleLongrunningListOperationsResponse"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    }
                  }
                },
                "placements": {
                  "methods": {
                    "predict": {
                      "description": "Makes a recommendation prediction.",
                      "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/placements/{placementsId}:predict",
                      "httpMethod": "POST",
                      "id": "retail.projects.locations.catalogs.placements.predict",
                      "parameterOrder": [
                        "placement"
                      ],
                      "parameters": {
                        "placement": {
                          "description": "Required. Full resource name of the format: {name=projects/*/locations/global/catalogs/default_catalog/placements/*} The ID of the Recommendations AI placement. Before you can request predictions from your model, you must create at least one placement for it. For more information, see [Managing placements](https://cloud.google.com/retail/recommendations-ai/docs/manage-placements). The full list of available placements can be seen at https://console.cloud.google.com/recommendation/catalogs/default_catalog/placements",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/placements/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v2alpha/{+placement}:predict",
                      "request": {
                        "$ref": "GoogleCloudRetailV2alphaPredictRequest"
                      },
                      "response": {
                        "$ref": "GoogleCloudRetailV2alphaPredictResponse"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    }
                  }
                },
                "userEvents": {
                  "methods": {
                    "collect": {
                      "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a 3rd party domain. This method is used only by the Retail API JavaScript pixel and Google Tag Manager. Users should not call this method directly.",
                      "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/userEvents:collect",
                      "httpMethod": "GET",
                      "id": "retail.projects.locations.catalogs.userEvents.collect",
                      "parameterOrder": [
                        "parent"
                      ],
                      "parameters": {
                        "ets": {
                          "description": "The event timestamp in milliseconds. This prevents browser caching of otherwise identical get requests. The name is abbreviated to reduce the payload bytes.",
                          "format": "int64",
                          "location": "query",
                          "type": "string"
                        },
                        "parent": {
                          "description": "Required. The parent catalog name, such as `projects/1234/locations/global/catalogs/default_catalog`.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+$",
                          "required": true,
                          "type": "string"
                        },
                        "uri": {
                          "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for 3rd party requests.",
                          "location": "query",
                          "type": "string"
                        },
                        "userEvent": {
                          "description": "Required. URL encoded UserEvent proto with a length limit of 2,000,000 characters.",
                          "location": "query",
                          "type": "string"
                        }
                      },
                      "path": "v2alpha/{+parent}/userEvents:collect",
                      "response": {
                        "$ref": "GoogleApiHttpBody"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "import": {
                      "description": "Bulk import of User events. Request processing might be synchronous. Events that already exist are skipped. Use this method for backfilling historical user events. Operation.response is of type ImportResponse. Note that it is possible for a subset of the items to be successfully inserted. Operation.metadata is of type ImportMetadata.",
                      "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/userEvents:import",
                      "httpMethod": "POST",
                      "id": "retail.projects.locations.catalogs.userEvents.import",
                      "parameterOrder": [
                        "parent"
                      ],
                      "parameters": {
                        "parent": {
                          "description": "Required. `projects/1234/locations/global/catalogs/default_catalog`",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v2alpha/{+parent}/userEvents:import",
                      "request": {
                        "$ref": "GoogleCloudRetailV2alphaImportUserEventsRequest"
                      },
                      "response": {
                        "$ref": "GoogleLongrunningOperation"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "purge": {
                      "description": "Deletes permanently all user events specified by the filter provided. Depending on the number of events specified by the filter, this operation could take hours or days to complete. To test a filter, use the list command first.",
                      "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/userEvents:purge",
                      "httpMethod": "POST",
                      "id": "retail.projects.locations.catalogs.userEvents.purge",
                      "parameterOrder": [
                        "parent"
                      ],
                      "parameters": {
                        "parent": {
                          "description": "Required. The resource name of the catalog under which the events are created. The format is `projects/${projectId}/locations/global/catalogs/${catalogId}`",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v2alpha/{+parent}/userEvents:purge",
                      "request": {
                        "$ref": "GoogleCloudRetailV2alphaPurgeUserEventsRequest"
                      },
                      "response": {
                        "$ref": "GoogleLongrunningOperation"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "rejoin": {
                      "description": "Triggers a user event rejoin operation with latest product catalog. Events will not be annotated with detailed product information if product is missing from the catalog at the time the user event is ingested, and these events are stored as unjoined events with a limited usage on training and serving. This API can be used to trigger a 'join' operation on specified events with latest version of product catalog. It can also be used to correct events joined with wrong product catalog.",
                      "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/userEvents:rejoin",
                      "httpMethod": "POST",
                      "id": "retail.projects.locations.catalogs.userEvents.rejoin",
                      "parameterOrder": [
                        "parent"
                      ],
                      "parameters": {
                        "parent": {
                          "description": "Required. The parent catalog resource name, such as `projects/1234/locations/global/catalogs/default_catalog`.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v2alpha/{+parent}/userEvents:rejoin",
                      "request": {
                        "$ref": "GoogleCloudRetailV2alphaRejoinUserEventsRequest"
                      },
                      "response": {
                        "$ref": "GoogleLongrunningOperation"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "write": {
                      "description": "Writes a single user event.",
                      "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/userEvents:write",
                      "httpMethod": "POST",
                      "id": "retail.projects.locations.catalogs.userEvents.write",
                      "parameterOrder": [
                        "parent"
                      ],
                      "parameters": {
                        "parent": {
                          "description": "Required. The parent catalog resource name, such as `projects/1234/locations/global/catalogs/default_catalog`.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v2alpha/{+parent}/userEvents:write",
                      "request": {
                        "$ref": "GoogleCloudRetailV2alphaUserEvent"
                      },
                      "response": {
                        "$ref": "GoogleCloudRetailV2alphaUserEvent"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    }
                  }
                }
              }
            },
            "operations": {
              "methods": {
                "get": {
                  "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.",
                  "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
                  "httpMethod": "GET",
                  "id": "retail.projects.locations.operations.get",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "The name of the operation resource.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v2alpha/{+name}",
                  "response": {
                    "$ref": "GoogleLongrunningOperation"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "list": {
                  "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `\"/v1/{name=users/*}/operations\"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.",
                  "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/operations",
                  "httpMethod": "GET",
                  "id": "retail.projects.locations.operations.list",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "filter": {
                      "description": "The standard list filter.",
                      "location": "query",
                      "type": "string"
                    },
                    "name": {
                      "description": "The name of the operation's parent resource.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "required": true,
                      "type": "string"
                    },
                    "pageSize": {
                      "description": "The standard list page size.",
                      "format": "int32",
                      "location": "query",
                      "type": "integer"
                    },
                    "pageToken": {
                      "description": "The standard list page token.",
                      "location": "query",
                      "type": "string"
                    }
                  },
                  "path": "v2alpha/{+name}/operations",
                  "response": {
                    "$ref": "GoogleLongrunningListOperationsResponse"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                }
              }
            }
          }
        }
      }
    }
  },
  "revision": "20210430",
  "rootUrl": "https://retail.googleapis.com/",
  "schemas": {
    "GoogleApiHttpBody": {
      "description": "Message that represents an arbitrary HTTP body. It should only be used for payload formats that can't be represented as JSON, such as raw binary or an HTML page. This message can be used both in streaming and non-streaming API methods in the request as well as the response. It can be used as a top-level request field, which is convenient if one wants to extract parameters from either the URL or HTTP template into the request fields and also want access to the raw HTTP body. Example: message GetResourceRequest { // A unique request id. string request_id = 1; // The raw HTTP body is bound to this field. google.api.HttpBody http_body = 2; } service ResourceService { rpc GetResource(GetResourceRequest) returns (google.api.HttpBody); rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty); } Example with streaming methods: service CaldavService { rpc GetCalendar(stream google.api.HttpBody) returns (stream google.api.HttpBody); rpc UpdateCalendar(stream google.api.HttpBody) returns (stream google.api.HttpBody); } Use of this type only changes how the request and response bodies are handled, all other features will continue to work unchanged.",
      "id": "GoogleApiHttpBody",
      "properties": {
        "contentType": {
          "description": "The HTTP Content-Type header value specifying the content type of the body.",
          "type": "string"
        },
        "data": {
          "description": "The HTTP request/response body as raw binary.",
          "format": "byte",
          "type": "string"
        },
        "extensions": {
          "description": "Application specific response metadata. Must be set in the first response for streaming APIs.",
          "items": {
            "additionalProperties": {
              "description": "Properties of the object. Contains field @type with type URL.",
              "type": "any"
            },
            "type": "object"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailLoggingErrorContext": {
      "description": "A description of the context in which an error occurred.",
      "id": "GoogleCloudRetailLoggingErrorContext",
      "properties": {
        "httpRequest": {
          "$ref": "GoogleCloudRetailLoggingHttpRequestContext",
          "description": "The HTTP request which was processed when the error was triggered."
        },
        "reportLocation": {
          "$ref": "GoogleCloudRetailLoggingSourceLocation",
          "description": "The location in the source code where the decision was made to report the error, usually the place where it was logged."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailLoggingErrorLog": {
      "description": "An error log which is reported to the Error Reporting system. This proto a superset of google.devtools.clouderrorreporting.v1beta1.ReportedErrorEvent.",
      "id": "GoogleCloudRetailLoggingErrorLog",
      "properties": {
        "context": {
          "$ref": "GoogleCloudRetailLoggingErrorContext",
          "description": "A description of the context in which the error occurred."
        },
        "importPayload": {
          "$ref": "GoogleCloudRetailLoggingImportErrorContext",
          "description": "The error payload that is populated on LRO import APIs."
        },
        "message": {
          "description": "A message describing the error.",
          "type": "string"
        },
        "requestPayload": {
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "description": "The API request payload, represented as a protocol buffer. Most API request types are supported. For example: \"type.googleapis.com/google.cloud.retail.v2.ProductService.CreateProductRequest\" \"type.googleapis.com/google.cloud.retail.v2.UserEventService.WriteUserEventRequest\"",
          "type": "object"
        },
        "responsePayload": {
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "description": "The API response payload, represented as a protocol buffer. This is used to log some \"soft errors\", where the response is valid but we consider there are some quality issues like unjoined events. The following API responses are supported and no PII is included: \"google.cloud.retail.v2.PredictionService.Predict\" \"google.cloud.retail.v2.UserEventService.WriteUserEvent\" \"google.cloud.retail.v2.UserEventService.CollectUserEvent\"",
          "type": "object"
        },
        "serviceContext": {
          "$ref": "GoogleCloudRetailLoggingServiceContext",
          "description": "The service context in which this error has occurred."
        },
        "status": {
          "$ref": "GoogleRpcStatus",
          "description": "The RPC status associated with the error log."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailLoggingHttpRequestContext": {
      "description": "HTTP request data that is related to a reported error.",
      "id": "GoogleCloudRetailLoggingHttpRequestContext",
      "properties": {
        "responseStatusCode": {
          "description": "The HTTP response status code for the request.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailLoggingImportErrorContext": {
      "description": "The error payload that is populated on LRO import APIs. Including: \"google.cloud.retail.v2.ProductService.ImportProducts\" \"google.cloud.retail.v2.EventService.ImportUserEvents\"",
      "id": "GoogleCloudRetailLoggingImportErrorContext",
      "properties": {
        "catalogItem": {
          "description": "The detailed content which caused the error on importing a catalog item.",
          "type": "string"
        },
        "gcsPath": {
          "description": "Cloud Storage file path of the import source. Can be set for batch operation error.",
          "type": "string"
        },
        "lineNumber": {
          "description": "Line number of the content in file. Should be empty for permission or batch operation error.",
          "type": "string"
        },
        "operationName": {
          "description": "The operation resource name of the LRO.",
          "type": "string"
        },
        "product": {
          "description": "The detailed content which caused the error on importing a product.",
          "type": "string"
        },
        "userEvent": {
          "description": "The detailed content which caused the error on importing a user event.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailLoggingServiceContext": {
      "description": "Describes a running service that sends errors.",
      "id": "GoogleCloudRetailLoggingServiceContext",
      "properties": {
        "service": {
          "description": "An identifier of the service. For example, \"retail.googleapis.com\".",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailLoggingSourceLocation": {
      "description": "Indicates a location in the source code of the service for which errors are reported.",
      "id": "GoogleCloudRetailLoggingSourceLocation",
      "properties": {
        "functionName": {
          "description": "Human-readable name of a function or method. For example, \"google.cloud.retail.v2.UserEventService.ImportUserEvents\".",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2ImportErrorsConfig": {
      "description": "Configuration of destination for Import related errors.",
      "id": "GoogleCloudRetailV2ImportErrorsConfig",
      "properties": {
        "gcsPrefix": {
          "description": "Google Cloud Storage path for import errors. This must be an empty, existing Cloud Storage bucket. Import errors will be written to a file in this bucket, one per line, as a JSON-encoded `google.rpc.Status` message.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2ImportMetadata": {
      "description": "Metadata related to the progress of the Import operation. This will be returned by the google.longrunning.Operation.metadata field.",
      "id": "GoogleCloudRetailV2ImportMetadata",
      "properties": {
        "createTime": {
          "description": "Operation create time.",
          "format": "google-datetime",
          "type": "string"
        },
        "failureCount": {
          "description": "Count of entries that encountered errors while processing.",
          "format": "int64",
          "type": "string"
        },
        "successCount": {
          "description": "Count of entries that were processed successfully.",
          "format": "int64",
          "type": "string"
        },
        "updateTime": {
          "description": "Operation last update time. If the operation is done, this is also the finish time.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2ImportProductsResponse": {
      "description": "Response of the ImportProductsRequest. If the long running operation is done, then this message is returned by the google.longrunning.Operations.response field if the operation was successful.",
      "id": "GoogleCloudRetailV2ImportProductsResponse",
      "properties": {
        "errorSamples": {
          "description": "A sample of errors encountered while processing the request.",
          "items": {
            "$ref": "GoogleRpcStatus"
          },
          "type": "array"
        },
        "errorsConfig": {
          "$ref": "GoogleCloudRetailV2ImportErrorsConfig",
          "description": "Echoes the destination for the complete errors in the request if set."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2ImportUserEventsResponse": {
      "description": "Response of the ImportUserEventsRequest. If the long running operation was successful, then this message is returned by the google.longrunning.Operations.response field if the operation was successful.",
      "id": "GoogleCloudRetailV2ImportUserEventsResponse",
      "properties": {
        "errorSamples": {
          "description": "A sample of errors encountered while processing the request.",
          "items": {
            "$ref": "GoogleRpcStatus"
          },
          "type": "array"
        },
        "errorsConfig": {
          "$ref": "GoogleCloudRetailV2ImportErrorsConfig",
          "description": "Echoes the destination for the complete errors if this field was set in the request."
        },
        "importSummary": {
          "$ref": "GoogleCloudRetailV2UserEventImportSummary",
          "description": "Aggregated statistics of user event import status."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2PurgeMetadata": {
      "description": "Metadata related to the progress of the Purge operation. This will be returned by the google.longrunning.Operation.metadata field.",
      "id": "GoogleCloudRetailV2PurgeMetadata",
      "properties": {},
      "type": "object"
    },
    "GoogleCloudRetailV2PurgeUserEventsResponse": {
      "description": "Response of the PurgeUserEventsRequest. If the long running operation is successfully done, then this message is returned by the google.longrunning.Operations.response field.",
      "id": "GoogleCloudRetailV2PurgeUserEventsResponse",
      "properties": {
        "purgedEventsCount": {
          "description": "The total count of events purged as a result of the operation.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2RejoinUserEventsMetadata": {
      "description": "Metadata for RejoinUserEvents method.",
      "id": "GoogleCloudRetailV2RejoinUserEventsMetadata",
      "properties": {},
      "type": "object"
    },
    "GoogleCloudRetailV2RejoinUserEventsResponse": {
      "description": "Response message for RejoinUserEvents method.",
      "id": "GoogleCloudRetailV2RejoinUserEventsResponse",
      "properties": {
        "rejoinedUserEventsCount": {
          "description": "Number of user events that were joined with latest product catalog.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2UserEventImportSummary": {
      "description": "A summary of import result. The UserEventImportSummary summarizes the import status for user events.",
      "id": "GoogleCloudRetailV2UserEventImportSummary",
      "properties": {
        "joinedEventsCount": {
          "description": "Count of user events imported with complete existing catalog information.",
          "format": "int64",
          "type": "string"
        },
        "unjoinedEventsCount": {
          "description": "Count of user events imported, but with catalog information not found in the imported catalog.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaBigQuerySource": {
      "description": "BigQuery source import data from.",
      "id": "GoogleCloudRetailV2alphaBigQuerySource",
      "properties": {
        "dataSchema": {
          "description": "The schema to use when parsing the data from the source. Supported values for product imports: * `product` (default): One JSON Product per line. Each product must have a valid Product.id. * `product_merchant_center`: See [Importing catalog data from Merchant Center](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog#mc). Supported values for user events imports: * `user_event` (default): One JSON UserEvent per line. * `user_event_ga360`: Using https://support.google.com/analytics/answer/3437719?hl=en.",
          "type": "string"
        },
        "datasetId": {
          "description": "Required. The BigQuery data set to copy the data from with a length limit of 1,024 characters.",
          "type": "string"
        },
        "gcsStagingDir": {
          "description": "Intermediate Cloud Storage directory used for the import with a length limit of 2,000 characters. Can be specified if one wants to have the BigQuery export to a specific Cloud Storage directory.",
          "type": "string"
        },
        "projectId": {
          "description": "The project ID (can be project # or ID) that the BigQuery source is in with a length limit of 128 characters. If not specified, inherits the project ID from the parent request.",
          "type": "string"
        },
        "tableId": {
          "description": "Required. The BigQuery table to copy the data from with a length limit of 1,024 characters.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaCatalog": {
      "description": "The catalog configuration.",
      "id": "GoogleCloudRetailV2alphaCatalog",
      "properties": {
        "displayName": {
          "description": "Required. Immutable. The catalog display name. This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.",
          "type": "string"
        },
        "name": {
          "description": "Required. Immutable. The fully qualified resource name of the catalog.",
          "type": "string"
        },
        "productLevelConfig": {
          "$ref": "GoogleCloudRetailV2alphaProductLevelConfig",
          "description": "Required. The product level configuration."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaCustomAttribute": {
      "description": "A custom attribute that is not explicitly modeled in Product.",
      "id": "GoogleCloudRetailV2alphaCustomAttribute",
      "properties": {
        "numbers": {
          "description": "The numerical values of this custom attribute. For example, `[2.3, 15.4]` when the key is \"lengths_cm\". At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.",
          "items": {
            "format": "double",
            "type": "number"
          },
          "type": "array"
        },
        "text": {
          "description": "The textual values of this custom attribute. For example, `[\"yellow\", \"green\"]` when the key is \"color\". At most 400 values are allowed. Empty values are not allowed. Each value must be a UTF-8 encoded string with a length limit of 256 characters. Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaExportErrorsConfig": {
      "description": "Configuration of destination for Export related errors.",
      "id": "GoogleCloudRetailV2alphaExportErrorsConfig",
      "properties": {
        "gcsPrefix": {
          "description": "Google Cloud Storage path for import errors. This must be an empty, existing Cloud Storage bucket. Export errors will be written to a file in this bucket, one per line, as a JSON-encoded `google.rpc.Status` message.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaExportMetadata": {
      "description": "Metadata related to the progress of the Export operation. This will be returned by the google.longrunning.Operation.metadata field.",
      "id": "GoogleCloudRetailV2alphaExportMetadata",
      "properties": {
        "createTime": {
          "description": "Operation create time.",
          "format": "google-datetime",
          "type": "string"
        },
        "updateTime": {
          "description": "Operation last update time. If the operation is done, this is also the finish time.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaExportProductsResponse": {
      "description": "Response of the ExportProductsRequest. If the long running operation is done, then this message is returned by the google.longrunning.Operations.response field if the operation was successful.",
      "id": "GoogleCloudRetailV2alphaExportProductsResponse",
      "properties": {
        "errorSamples": {
          "description": "A sample of errors encountered while processing the request.",
          "items": {
            "$ref": "GoogleRpcStatus"
          },
          "type": "array"
        },
        "errorsConfig": {
          "$ref": "GoogleCloudRetailV2alphaExportErrorsConfig",
          "description": "Echoes the destination for the complete errors in the request if set."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaExportUserEventsResponse": {
      "description": "Response of the ExportUserEventsRequest. If the long running operation was successful, then this message is returned by the google.longrunning.Operations.response field if the operation was successful.",
      "id": "GoogleCloudRetailV2alphaExportUserEventsResponse",
      "properties": {
        "errorSamples": {
          "description": "A sample of errors encountered while processing the request.",
          "items": {
            "$ref": "GoogleRpcStatus"
          },
          "type": "array"
        },
        "errorsConfig": {
          "$ref": "GoogleCloudRetailV2alphaExportErrorsConfig",
          "description": "Echoes the destination for the complete errors if this field was set in the request."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaGcsSource": {
      "description": "Google Cloud Storage location for input content. format.",
      "id": "GoogleCloudRetailV2alphaGcsSource",
      "properties": {
        "dataSchema": {
          "description": "The schema to use when parsing the data from the source. Supported values for product imports: * `product` (default): One JSON Product per line. Each product must have a valid Product.id. * `product_merchant_center`: See [Importing catalog data from Merchant Center](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog#mc). Supported values for user events imports: * `user_event` (default): One JSON UserEvent per line. * `user_event_ga360`: Using https://support.google.com/analytics/answer/3437719?hl=en.",
          "type": "string"
        },
        "inputUris": {
          "description": "Required. Google Cloud Storage URIs to input files. URI can be up to 2000 characters long. URIs can match the full object path (for example, `gs://bucket/directory/object.json`) or a pattern matching one or more files, such as `gs://bucket/directory/*.json`. A request can contain at most 100 files, and each file can be up to 2 GB. See [Importing product information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog) for the expected file format and setup instructions.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaImage": {
      "description": "Product thumbnail/detail image.",
      "id": "GoogleCloudRetailV2alphaImage",
      "properties": {
        "height": {
          "description": "Height of the image in number of pixels. This field must be nonnegative. Otherwise, an INVALID_ARGUMENT error is returned.",
          "format": "int32",
          "type": "integer"
        },
        "uri": {
          "description": "Required. URI of the image. This field must be a valid UTF-8 encoded URI with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. Google Merchant Center property [image_link](https://support.google.com/merchants/answer/6324350). Schema.org property [Product.image](https://schema.org/image).",
          "type": "string"
        },
        "width": {
          "description": "Width of the image in number of pixels. This field must be nonnegative. Otherwise, an INVALID_ARGUMENT error is returned.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaImportErrorsConfig": {
      "description": "Configuration of destination for Import related errors.",
      "id": "GoogleCloudRetailV2alphaImportErrorsConfig",
      "properties": {
        "gcsPrefix": {
          "description": "Google Cloud Storage path for import errors. This must be an empty, existing Cloud Storage bucket. Import errors will be written to a file in this bucket, one per line, as a JSON-encoded `google.rpc.Status` message.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaImportMetadata": {
      "description": "Metadata related to the progress of the Import operation. This will be returned by the google.longrunning.Operation.metadata field.",
      "id": "GoogleCloudRetailV2alphaImportMetadata",
      "properties": {
        "createTime": {
          "description": "Operation create time.",
          "format": "google-datetime",
          "type": "string"
        },
        "failureCount": {
          "description": "Count of entries that encountered errors while processing.",
          "format": "int64",
          "type": "string"
        },
        "successCount": {
          "description": "Count of entries that were processed successfully.",
          "format": "int64",
          "type": "string"
        },
        "updateTime": {
          "description": "Operation last update time. If the operation is done, this is also the finish time.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaImportProductsRequest": {
      "description": "Request message for Import methods.",
      "id": "GoogleCloudRetailV2alphaImportProductsRequest",
      "properties": {
        "errorsConfig": {
          "$ref": "GoogleCloudRetailV2alphaImportErrorsConfig",
          "description": "The desired location of errors incurred during the Import."
        },
        "inputConfig": {
          "$ref": "GoogleCloudRetailV2alphaProductInputConfig",
          "description": "Required. The desired input location of the data."
        },
        "updateMask": {
          "description": "Indicates which fields in the provided imported 'products' to update. If not set, will by default update all fields.",
          "format": "google-fieldmask",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaImportProductsResponse": {
      "description": "Response of the ImportProductsRequest. If the long running operation is done, then this message is returned by the google.longrunning.Operations.response field if the operation was successful.",
      "id": "GoogleCloudRetailV2alphaImportProductsResponse",
      "properties": {
        "errorSamples": {
          "description": "A sample of errors encountered while processing the request.",
          "items": {
            "$ref": "GoogleRpcStatus"
          },
          "type": "array"
        },
        "errorsConfig": {
          "$ref": "GoogleCloudRetailV2alphaImportErrorsConfig",
          "description": "Echoes the destination for the complete errors in the request if set."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaImportUserEventsRequest": {
      "description": "Request message for the ImportUserEvents request.",
      "id": "GoogleCloudRetailV2alphaImportUserEventsRequest",
      "properties": {
        "errorsConfig": {
          "$ref": "GoogleCloudRetailV2alphaImportErrorsConfig",
          "description": "The desired location of errors incurred during the Import. Cannot be set for inline user event imports."
        },
        "inputConfig": {
          "$ref": "GoogleCloudRetailV2alphaUserEventInputConfig",
          "description": "Required. The desired input location of the data."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaImportUserEventsResponse": {
      "description": "Response of the ImportUserEventsRequest. If the long running operation was successful, then this message is returned by the google.longrunning.Operations.response field if the operation was successful.",
      "id": "GoogleCloudRetailV2alphaImportUserEventsResponse",
      "properties": {
        "errorSamples": {
          "description": "A sample of errors encountered while processing the request.",
          "items": {
            "$ref": "GoogleRpcStatus"
          },
          "type": "array"
        },
        "errorsConfig": {
          "$ref": "GoogleCloudRetailV2alphaImportErrorsConfig",
          "description": "Echoes the destination for the complete errors if this field was set in the request."
        },
        "importSummary": {
          "$ref": "GoogleCloudRetailV2alphaUserEventImportSummary",
          "description": "Aggregated statistics of user event import status."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaListCatalogsResponse": {
      "description": "Response for CatalogService.ListCatalogs method.",
      "id": "GoogleCloudRetailV2alphaListCatalogsResponse",
      "properties": {
        "catalogs": {
          "description": "All the customer's Catalogs.",
          "items": {
            "$ref": "GoogleCloudRetailV2alphaCatalog"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "A token that can be sent as ListCatalogsRequest.page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaPredictRequest": {
      "description": "Request message for Predict method.",
      "id": "GoogleCloudRetailV2alphaPredictRequest",
      "properties": {
        "filter": {
          "description": "Filter for restricting prediction results with a length limit of 5,000 characters. Accepts values for tags and the `filterOutOfStockItems` flag. * Tag expressions. Restricts predictions to products that match all of the specified tags. Boolean operators `OR` and `NOT` are supported if the expression is enclosed in parentheses, and must be separated from the tag values by a space. `-\"tagA\"` is also supported and is equivalent to `NOT \"tagA\"`. Tag values must be double quoted UTF-8 encoded strings with a size limit of 1,000 characters. Note: \"Recently viewed\" models don't support tag filtering at the moment. * filterOutOfStockItems. Restricts predictions to products that do not have a stockState value of OUT_OF_STOCK. Examples: * tag=(\"Red\" OR \"Blue\") tag=\"New-Arrival\" tag=(NOT \"promotional\") * filterOutOfStockItems tag=(-\"promotional\") * filterOutOfStockItems If your filter blocks all prediction results, nothing will be returned. If you want generic (unfiltered) popular products to be returned instead, set `strictFiltering` to false in `PredictRequest.params`.",
          "type": "string"
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The 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](https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements) for more details.",
          "type": "object"
        },
        "pageSize": {
          "description": "Maximum number of results to return per page. Set this property to the number of prediction results needed. If zero, the service will choose a reasonable default. The maximum allowed value is 100. Values above 100 will be coerced to 100.",
          "format": "int32",
          "type": "integer"
        },
        "pageToken": {
          "description": "The previous PredictResponse.next_page_token.",
          "type": "string"
        },
        "params": {
          "additionalProperties": {
            "type": "any"
          },
          "description": "Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction 'score' corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given 'score' indicates the probability of an product being clicked/purchased given the user's context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results.",
          "type": "object"
        },
        "userEvent": {
          "$ref": "GoogleCloudRetailV2alphaUserEvent",
          "description": "Required. Context about the user, what they are looking at and what action they took to trigger the predict request. Note that this user event detail won't be ingested to userEvent logs. Thus, a separate userEvent write request is required for event logging."
        },
        "validateOnly": {
          "description": "Use validate only mode for this prediction query. If set to true, a dummy model will be used that returns arbitrary products. Note that the validate only mode should only be used for testing the API, or if the model is not ready.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaPredictResponse": {
      "description": "Response message for predict method.",
      "id": "GoogleCloudRetailV2alphaPredictResponse",
      "properties": {
        "attributionToken": {
          "description": "A unique attribution token. This should be included in the UserEvent logs resulting from this recommendation, which enables accurate attribution of recommendation model performance.",
          "type": "string"
        },
        "missingIds": {
          "description": "IDs of products in the request that were missing from the inventory.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "results": {
          "description": "A list of recommended products. The order represents the ranking (from the most relevant product to the least).",
          "items": {
            "$ref": "GoogleCloudRetailV2alphaPredictResponsePredictionResult"
          },
          "type": "array"
        },
        "validateOnly": {
          "description": "True if the validateOnly property was set in the request.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaPredictResponsePredictionResult": {
      "description": "PredictionResult represents the recommendation prediction results.",
      "id": "GoogleCloudRetailV2alphaPredictResponsePredictionResult",
      "properties": {
        "id": {
          "description": "ID of the recommended product",
          "type": "string"
        },
        "metadata": {
          "additionalProperties": {
            "type": "any"
          },
          "description": "Additional product metadata / annotations. Possible values: * `product`: JSON representation of the product. Will be set if `returnProduct` is set to true in `PredictRequest.params`. * `score`: Prediction score in double value. Will be set if `returnScore` is set to true in `PredictRequest.params`.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaPriceInfo": {
      "description": "The price information of a Product.",
      "id": "GoogleCloudRetailV2alphaPriceInfo",
      "properties": {
        "cost": {
          "description": "The costs associated with the sale of a particular product. Used for gross profit reporting. * Profit = price - cost Google Merchant Center property [cost_of_goods_sold](https://support.google.com/merchants/answer/9017895).",
          "format": "float",
          "type": "number"
        },
        "currencyCode": {
          "description": "The 3-letter currency code defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html). If this field is an unrecognizable currency code, an INVALID_ARGUMENT error is returned.",
          "type": "string"
        },
        "originalPrice": {
          "description": "Price of the product without any discount. If zero, by default set to be the price.",
          "format": "float",
          "type": "number"
        },
        "price": {
          "description": "Price of the product. Google Merchant Center property [price](https://support.google.com/merchants/answer/6324371). Schema.org property [Offer.priceSpecification](https://schema.org/priceSpecification).",
          "format": "float",
          "type": "number"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaProduct": {
      "description": "Product captures all metadata information of items to be recommended or searched.",
      "id": "GoogleCloudRetailV2alphaProduct",
      "properties": {
        "attributes": {
          "additionalProperties": {
            "$ref": "GoogleCloudRetailV2alphaCustomAttribute"
          },
          "description": "Highly encouraged. Extra product attributes to be included. For example, for products, this could include the store name, vendor, style, color, etc. These are very strong signals for recommendation model, thus we highly recommend providing the attributes here. Features that can take on one of a limited number of possible values. Two types of features can be set are: Textual features. some examples would be the brand/maker of a product, or country of a customer. Numerical features. Some examples would be the height/weight of a product, or age of a customer. For example: `{ \"vendor\": {\"text\": [\"vendor123\", \"vendor456\"]}, \"lengths_cm\": {\"numbers\":[2.3, 15.4]}, \"heights_cm\": {\"numbers\":[8.1, 6.4]} }`. This field needs to pass all below criteria, otherwise an INVALID_ARGUMENT error is returned: * Max entries count: 150 by default; 100 for Type.VARIANT. * The key must be a UTF-8 encoded string with a length limit of 128 characters.",
          "type": "object"
        },
        "availability": {
          "description": "The online availability of the Product. Default to Availability.IN_STOCK. Google Merchant Center Property [availability](https://support.google.com/merchants/answer/6324448). Schema.org Property [Offer.availability](https://schema.org/availability).",
          "enum": [
            "AVAILABILITY_UNSPECIFIED",
            "IN_STOCK",
            "OUT_OF_STOCK",
            "PREORDER",
            "BACKORDER"
          ],
          "enumDescriptions": [
            "Default product availability. Default to Availability.IN_STOCK if unset.",
            "Product in stock.",
            "Product out of stock.",
            "Product that is in pre-order state.",
            "Product that is back-ordered (i.e. temporarily out of stock)."
          ],
          "type": "string"
        },
        "availableQuantity": {
          "description": "The available quantity of the item.",
          "format": "int32",
          "type": "integer"
        },
        "availableTime": {
          "description": "The timestamp when this Product becomes available for recommendation.",
          "format": "google-datetime",
          "type": "string"
        },
        "categories": {
          "description": "Product categories. This field is repeated for supporting one product belonging to several parallel categories. Strongly recommended using the full path for better search / recommendation quality. To represent full path of category, use '>' sign to separate different hierarchies. If '>' is part of the category name, please replace it with other character(s). For example, if a shoes product belongs to both [\"Shoes & Accessories\" -> \"Shoes\"] and [\"Sports & Fitness\" -> \"Athletic Clothing\" -> \"Shoes\"], it could be represented as: \"categories\": [ \"Shoes & Accessories > Shoes\", \"Sports & Fitness > Athletic Clothing > Shoes\" ] Must be set for Type.PRIMARY Product otherwise an INVALID_ARGUMENT error is returned. At most 250 values are allowed per Product. Empty values are not allowed. Each value must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. Google Merchant Center property google_product_category. Schema.org property [Product.category] (https://schema.org/category). [mc_google_product_category]: https://support.google.com/merchants/answer/6324436",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "description": {
          "description": "Product description. This field must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. Google Merchant Center property [description](https://support.google.com/merchants/answer/6324468). schema.org property [Product.description](https://schema.org/description).",
          "type": "string"
        },
        "id": {
          "description": "Immutable. Product identifier, which is the final component of name. For example, this field is \"id_1\", if name is `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/id_1`. This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned. Google Merchant Center property [id](https://support.google.com/merchants/answer/6324405). Schema.org Property [Product.sku](https://schema.org/sku).",
          "type": "string"
        },
        "images": {
          "description": "Product images for the product.Highly recommended to put the main image to the first. A maximum of 300 images are allowed. Google Merchant Center property [image_link](https://support.google.com/merchants/answer/6324350). Schema.org property [Product.image](https://schema.org/image).",
          "items": {
            "$ref": "GoogleCloudRetailV2alphaImage"
          },
          "type": "array"
        },
        "name": {
          "description": "Immutable. Full resource name of the product, such as `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/product_id`. The branch ID must be \"default_branch\".",
          "type": "string"
        },
        "priceInfo": {
          "$ref": "GoogleCloudRetailV2alphaPriceInfo",
          "description": "Product price and cost information. Google Merchant Center property [price](https://support.google.com/merchants/answer/6324371)."
        },
        "primaryProductId": {
          "description": "Variant group identifier. Must be an id, with the same parent branch with this product. Otherwise, an error is thrown. For Type.PRIMARY Products, this field can only be empty or set to the same value as id. For VARIANT Products, this field cannot be empty. A maximum of 2,000 products are allowed to share the same Type.PRIMARY Product. Otherwise, an INVALID_ARGUMENT error is returned. Google Merchant Center Property [item_group_id](https://support.google.com/merchants/answer/6324507). Schema.org Property [Product.inProductGroupWithID](https://schema.org/inProductGroupWithID). This field must be enabled before it can be used. [Learn more](/recommendations-ai/docs/catalog#item-group-id).",
          "type": "string"
        },
        "tags": {
          "description": "Custom tags associated with the product. At most 250 values are allowed per Product. This value must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This tag can be used for filtering recommendation results by passing the tag as part of the PredictRequest.filter. Google Merchant Center property [custom_label_0\u20134](https://support.google.com/merchants/answer/6324473).",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "title": {
          "description": "Required. Product title. This field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. Google Merchant Center property [title](https://support.google.com/merchants/answer/6324415). Schema.org property [Product.name](https://schema.org/name).",
          "type": "string"
        },
        "type": {
          "description": "Immutable. The type of the product. This field is output-only. Default to Catalog.product_level_config.ingestion_product_type if unset.",
          "enum": [
            "TYPE_UNSPECIFIED",
            "PRIMARY",
            "VARIANT",
            "COLLECTION"
          ],
          "enumDescriptions": [
            "Default value. Default to Catalog.product_level_config.ingestion_product_type if unset.",
            "The primary type. As the primary unit for predicting, indexing and search serving, a Type.PRIMARY Product is grouped with multiple Type.VARIANT Products.",
            "The variant type. Type.VARIANT Products usually share some common attributes on the same Type.PRIMARY Products, but they have variant attributes like different colors, sizes and prices, etc.",
            "The collection type. Collection products are bundled Type.PRIMARY Products or Type.VARIANT Products that are sold together, such as a jewelry set with necklaces, earrings and rings, etc."
          ],
          "type": "string"
        },
        "uri": {
          "description": "Canonical URL directly linking to the product detail page. It is strongly recommended to provide a valid uri for the product, otherwise the service performance could be significantly degraded. This field must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. Google Merchant Center property [link](https://support.google.com/merchants/answer/6324416). Schema.org property [Offer.url](https://schema.org/url).",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaProductDetail": {
      "description": "Detailed product information associated with a user event.",
      "id": "GoogleCloudRetailV2alphaProductDetail",
      "properties": {
        "product": {
          "$ref": "GoogleCloudRetailV2alphaProduct",
          "description": "Required. Product information. Only Product.id field is used when ingesting an event, all other product fields are ignored as we will look them up from the catalog."
        },
        "quantity": {
          "description": "Quantity of the product associated with the user event. For example, this field will be 2 if two products are added to the shopping cart for `purchase-complete` event. Required for `add-to-cart` and `purchase-complete` event types.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaProductInlineSource": {
      "description": "The inline source for the input config for ImportProducts method.",
      "id": "GoogleCloudRetailV2alphaProductInlineSource",
      "properties": {
        "products": {
          "description": "Required. A list of products to update/create. Each product must have a valid Product.id. Recommended max of 10k items.",
          "items": {
            "$ref": "GoogleCloudRetailV2alphaProduct"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaProductInputConfig": {
      "description": "The input config source for products.",
      "id": "GoogleCloudRetailV2alphaProductInputConfig",
      "properties": {
        "bigQuerySource": {
          "$ref": "GoogleCloudRetailV2alphaBigQuerySource",
          "description": "BigQuery input source."
        },
        "gcsSource": {
          "$ref": "GoogleCloudRetailV2alphaGcsSource",
          "description": "Google Cloud Storage location for the input content."
        },
        "productInlineSource": {
          "$ref": "GoogleCloudRetailV2alphaProductInlineSource",
          "description": "The Inline source for the input content for products."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaProductLevelConfig": {
      "description": "Configures what level the product should be uploaded with regards to how users will be send events and how predictions will be made.",
      "id": "GoogleCloudRetailV2alphaProductLevelConfig",
      "properties": {
        "ingestionProductType": {
          "description": "The type of Products allowed to be ingested into the catalog. Acceptable values are: * `primary` (default): You can only ingest Product.Type.PRIMARY Products. This means Product.primary_product_id can only be empty or set to the same value as Product.id. * `variant`: You can only ingest Product.Type.VARIANT Products. This means Product.primary_product_id cannot be empty. If this field is set to an invalid value other than these, an INVALID_ARGUMENT error is returned. If this field is `variant` and merchant_center_product_id_field is `itemGroupId`, an INVALID_ARGUMENT error is returned. See [Using product levels](https://cloud.google.com/retail/recommendations-ai/docs/catalog#product-levels) for more details.",
          "type": "string"
        },
        "merchantCenterProductIdField": {
          "description": "Which field of [Merchant Center Product](/bigquery-transfer/docs/merchant-center-products-schema) should be imported as Product.id. Acceptable values are: * `offerId` (default): Import `offerId` as the product ID. * `itemGroupId`: Import `itemGroupId` as the product ID. Notice that Retail API will choose one item from the ones with the same `itemGroupId`, and use it to represent the item group. If this field is set to an invalid value other than these, an INVALID_ARGUMENT error is returned. If this field is `itemGroupId` and ingestion_product_type is `variant`, an INVALID_ARGUMENT error is returned. See [Using product levels](https://cloud.google.com/retail/recommendations-ai/docs/catalog#product-levels) for more details.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaPurchaseTransaction": {
      "description": "A transaction represents the entire purchase transaction.",
      "id": "GoogleCloudRetailV2alphaPurchaseTransaction",
      "properties": {
        "cost": {
          "description": "All the costs associated with the products. These can be manufacturing costs, shipping expenses not borne by the end user, or any other costs, such that: * Profit = revenue - tax - cost",
          "format": "float",
          "type": "number"
        },
        "currencyCode": {
          "description": "Required. Currency code. Use three-character ISO-4217 code.",
          "type": "string"
        },
        "id": {
          "description": "The transaction ID with a length limit of 128 characters.",
          "type": "string"
        },
        "revenue": {
          "description": "Required. Total non-zero revenue or grand total associated with the transaction. This value include shipping, tax, or other adjustments to total revenue that you want to include as part of your revenue calculations.",
          "format": "float",
          "type": "number"
        },
        "tax": {
          "description": "All the taxes associated with the transaction.",
          "format": "float",
          "type": "number"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaPurgeMetadata": {
      "description": "Metadata related to the progress of the Purge operation. This will be returned by the google.longrunning.Operation.metadata field.",
      "id": "GoogleCloudRetailV2alphaPurgeMetadata",
      "properties": {},
      "type": "object"
    },
    "GoogleCloudRetailV2alphaPurgeUserEventsRequest": {
      "description": "Request message for PurgeUserEvents method.",
      "id": "GoogleCloudRetailV2alphaPurgeUserEventsRequest",
      "properties": {
        "filter": {
          "description": "Required. The filter string to specify the events to be deleted with a length limit of 5,000 characters. Empty string filter is not allowed. The eligible fields for filtering are: * `eventType`: Double quoted UserEvent.event_type string. * `eventTime`: in ISO 8601 \"zulu\" format. * `visitorId`: Double quoted string. Specifying this will delete all events associated with a visitor. * `userId`: Double quoted string. Specifying this will delete all events associated with a user. Examples: * Deleting all events in a time range: `eventTime > \"2012-04-23T18:25:43.511Z\" eventTime < \"2012-04-23T18:30:43.511Z\"` * Deleting specific eventType in time range: `eventTime > \"2012-04-23T18:25:43.511Z\" eventType = \"detail-page-view\"` * Deleting all events for a specific visitor: `visitorId = \"visitor1024\"` The filtering fields are assumed to have an implicit AND.",
          "type": "string"
        },
        "force": {
          "description": "Actually perform the purge. If `force` is set to false, the method will return the expected purge count without deleting any user events.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaPurgeUserEventsResponse": {
      "description": "Response of the PurgeUserEventsRequest. If the long running operation is successfully done, then this message is returned by the google.longrunning.Operations.response field.",
      "id": "GoogleCloudRetailV2alphaPurgeUserEventsResponse",
      "properties": {
        "purgedEventsCount": {
          "description": "The total count of events purged as a result of the operation.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaRejoinUserEventsMetadata": {
      "description": "Metadata for RejoinUserEvents method.",
      "id": "GoogleCloudRetailV2alphaRejoinUserEventsMetadata",
      "properties": {},
      "type": "object"
    },
    "GoogleCloudRetailV2alphaRejoinUserEventsRequest": {
      "description": "Request message for RejoinUserEvents method.",
      "id": "GoogleCloudRetailV2alphaRejoinUserEventsRequest",
      "properties": {
        "userEventRejoinScope": {
          "description": "The type of the user event rejoin to define the scope and range of the user events to be rejoined with the latest product catalog. Defaults to USER_EVENT_REJOIN_SCOPE_UNSPECIFIED if this field is not set, or set to an invalid integer value.",
          "enum": [
            "USER_EVENT_REJOIN_SCOPE_UNSPECIFIED",
            "JOINED_EVENTS",
            "UNJOINED_EVENTS"
          ],
          "enumDescriptions": [
            "Rejoin all events with the latest product catalog, including both joined events and unjoined events.",
            "Only rejoin joined events with the latest product catalog.",
            "Only rejoin unjoined events with the latest product catalog."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaRejoinUserEventsResponse": {
      "description": "Response message for RejoinUserEvents method.",
      "id": "GoogleCloudRetailV2alphaRejoinUserEventsResponse",
      "properties": {
        "rejoinedUserEventsCount": {
          "description": "Number of user events that were joined with latest product catalog.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaUserEvent": {
      "description": "UserEvent captures all metadata information Retail API needs to know about how end users interact with customers' website.",
      "id": "GoogleCloudRetailV2alphaUserEvent",
      "properties": {
        "attributes": {
          "additionalProperties": {
            "$ref": "GoogleCloudRetailV2alphaCustomAttribute"
          },
          "description": "Extra user event features to include in the recommendation model. The key must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. For product recommendation, an example of extra user information is traffic_channel, i.e. how user arrives at the site. Users can arrive at the site by coming to the site directly, or coming through Google search, and etc.",
          "type": "object"
        },
        "attributionToken": {
          "description": "Highly recommended for user events that are the result of PredictionService.Predict. This field enables accurate attribution of recommendation model performance. The value must be a valid PredictResponse.attribution_token for user events that are the result of PredictionService.Predict. This token enables us to accurately attribute page view or purchase back to the event and the particular predict response containing this clicked/purchased product. If user clicks on product K in the recommendation results, pass PredictResponse.attribution_token as a URL parameter to product K's page. When recording events on product K's page, log the PredictResponse.attribution_token to this field.",
          "type": "string"
        },
        "cartId": {
          "description": "The id or name of the associated shopping cart. This id is used to associate multiple items added or present in the cart before purchase. This can only be set for `add-to-cart`, `purchase-complete`, or `shopping-cart-page-view` events.",
          "type": "string"
        },
        "eventTime": {
          "description": "Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.",
          "format": "google-datetime",
          "type": "string"
        },
        "eventType": {
          "description": "Required. User event type. Allowed values are: * `add-to-cart`: Products being added to cart. * `category-page-view`: Special pages such as sale or promotion pages viewed. * `detail-page-view`: Products detail page viewed. * `home-page-view`: Homepage viewed. * `promotion-offered`: Promotion is offered to a user. * `promotion-not-offered`: Promotion is not offered to a user. * `purchase-complete`: User finishing a purchase. * `search`: Product search. * `shopping-cart-page-view`: User viewing a shopping cart.",
          "type": "string"
        },
        "experimentIds": {
          "description": "A list of identifiers for the independent experiment groups this user event belongs to. This is used to distinguish between user events associated with different experiment setups (e.g. using Retail API, using different recommendation models).",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "pageCategories": {
          "description": "The categories associated with a category page. To represent full path of category, use '>' sign to separate different hierarchies. If '>' is part of the category name, please 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\"]. Required for `category-page-view` events. At least one of search_query or page_categories is required for `search` events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "pageViewId": {
          "description": "A unique id of a web page view. This should be kept the same for all user events triggered from the same pageview. For example, an item detail page view could trigger multiple events as the user is browsing the page. The `pageViewId` property should be kept the same for all these events so that they can be grouped together properly. When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically.",
          "type": "string"
        },
        "productDetails": {
          "description": "The main product details related to the event. This field is required for the following event types: * `add-to-cart` * `detail-page-view` * `purchase-complete` In a `search` event, this field represents the products returned to the end user on the current page (the end user may have not finished broswing the whole page yet). When a new page is returned to the end user, after pagination/filtering/ordering even for the same query, a new `search` event with different product_details is desired. The end user may have not finished broswing the whole page yet.",
          "items": {
            "$ref": "GoogleCloudRetailV2alphaProductDetail"
          },
          "type": "array"
        },
        "purchaseTransaction": {
          "$ref": "GoogleCloudRetailV2alphaPurchaseTransaction",
          "description": "A transaction represents the entire purchase transaction. Required for `purchase-complete` events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned."
        },
        "referrerUri": {
          "description": "The referrer URL of the current page. When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically.",
          "type": "string"
        },
        "searchQuery": {
          "description": "The user's search query. The value must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. At least one of search_query or page_categories is required for `search` events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.",
          "type": "string"
        },
        "sessionId": {
          "description": "Represents the user sessions to aggregate user behavior within a time period. If not set, heuristics will be used to autogenerate one.",
          "type": "string"
        },
        "uri": {
          "description": "Complete URL (window.location.href) of the user's current page. When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically. Maximum length 5,000 characters.",
          "type": "string"
        },
        "userInfo": {
          "$ref": "GoogleCloudRetailV2alphaUserInfo",
          "description": "User information."
        },
        "visitorId": {
          "description": "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 log in/out of the website. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned. The field should not contain PII or user-data. We recommend to use Google Analystics [Client ID](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#clientId) for this field.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaUserEventImportSummary": {
      "description": "A summary of import result. The UserEventImportSummary summarizes the import status for user events.",
      "id": "GoogleCloudRetailV2alphaUserEventImportSummary",
      "properties": {
        "joinedEventsCount": {
          "description": "Count of user events imported with complete existing catalog information.",
          "format": "int64",
          "type": "string"
        },
        "unjoinedEventsCount": {
          "description": "Count of user events imported, but with catalog information not found in the imported catalog.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaUserEventInlineSource": {
      "description": "The inline source for the input config for ImportUserEvents method.",
      "id": "GoogleCloudRetailV2alphaUserEventInlineSource",
      "properties": {
        "userEvents": {
          "description": "Required. A list of user events to import. Recommended max of 10k items.",
          "items": {
            "$ref": "GoogleCloudRetailV2alphaUserEvent"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaUserEventInputConfig": {
      "description": "The input config source for user events.",
      "id": "GoogleCloudRetailV2alphaUserEventInputConfig",
      "properties": {
        "bigQuerySource": {
          "$ref": "GoogleCloudRetailV2alphaBigQuerySource",
          "description": "Required. BigQuery input source."
        },
        "gcsSource": {
          "$ref": "GoogleCloudRetailV2alphaGcsSource",
          "description": "Required. Google Cloud Storage location for the input content."
        },
        "userEventInlineSource": {
          "$ref": "GoogleCloudRetailV2alphaUserEventInlineSource",
          "description": "Required. The Inline source for the input content for UserEvents."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2alphaUserInfo": {
      "description": "Information of an end user.",
      "id": "GoogleCloudRetailV2alphaUserInfo",
      "properties": {
        "directUserRequest": {
          "description": "True if the request is made directly from the end user, in which case the ip_address and user_agent can be populated from the HTTP request. This flag should be set only if the API request is made directly from the end user such as a mobile app (and not if a gateway or a server is processing and pushing the user events). This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent.",
          "type": "boolean"
        },
        "ipAddress": {
          "description": "The end user's IP address. This field is used to extract location information for personalization. This field must be either an IPv4 address (e.g. \"104.133.9.80\") or an IPv6 address (e.g. \"2001:0db8:85a3:0000:0000:8a2e:0370:7334\"). Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.",
          "type": "string"
        },
        "userAgent": {
          "description": "User agent as included in the HTTP header. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.",
          "type": "string"
        },
        "userId": {
          "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2betaExportErrorsConfig": {
      "description": "Configuration of destination for Export related errors.",
      "id": "GoogleCloudRetailV2betaExportErrorsConfig",
      "properties": {
        "gcsPrefix": {
          "description": "Google Cloud Storage path for import errors. This must be an empty, existing Cloud Storage bucket. Export errors will be written to a file in this bucket, one per line, as a JSON-encoded `google.rpc.Status` message.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2betaExportMetadata": {
      "description": "Metadata related to the progress of the Export operation. This will be returned by the google.longrunning.Operation.metadata field.",
      "id": "GoogleCloudRetailV2betaExportMetadata",
      "properties": {
        "createTime": {
          "description": "Operation create time.",
          "format": "google-datetime",
          "type": "string"
        },
        "updateTime": {
          "description": "Operation last update time. If the operation is done, this is also the finish time.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2betaExportProductsResponse": {
      "description": "Response of the ExportProductsRequest. If the long running operation is done, then this message is returned by the google.longrunning.Operations.response field if the operation was successful.",
      "id": "GoogleCloudRetailV2betaExportProductsResponse",
      "properties": {
        "errorSamples": {
          "description": "A sample of errors encountered while processing the request.",
          "items": {
            "$ref": "GoogleRpcStatus"
          },
          "type": "array"
        },
        "errorsConfig": {
          "$ref": "GoogleCloudRetailV2betaExportErrorsConfig",
          "description": "Echoes the destination for the complete errors in the request if set."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2betaExportUserEventsResponse": {
      "description": "Response of the ExportUserEventsRequest. If the long running operation was successful, then this message is returned by the google.longrunning.Operations.response field if the operation was successful.",
      "id": "GoogleCloudRetailV2betaExportUserEventsResponse",
      "properties": {
        "errorSamples": {
          "description": "A sample of errors encountered while processing the request.",
          "items": {
            "$ref": "GoogleRpcStatus"
          },
          "type": "array"
        },
        "errorsConfig": {
          "$ref": "GoogleCloudRetailV2betaExportErrorsConfig",
          "description": "Echoes the destination for the complete errors if this field was set in the request."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2betaImportErrorsConfig": {
      "description": "Configuration of destination for Import related errors.",
      "id": "GoogleCloudRetailV2betaImportErrorsConfig",
      "properties": {
        "gcsPrefix": {
          "description": "Google Cloud Storage path for import errors. This must be an empty, existing Cloud Storage bucket. Import errors will be written to a file in this bucket, one per line, as a JSON-encoded `google.rpc.Status` message.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2betaImportMetadata": {
      "description": "Metadata related to the progress of the Import operation. This will be returned by the google.longrunning.Operation.metadata field.",
      "id": "GoogleCloudRetailV2betaImportMetadata",
      "properties": {
        "createTime": {
          "description": "Operation create time.",
          "format": "google-datetime",
          "type": "string"
        },
        "failureCount": {
          "description": "Count of entries that encountered errors while processing.",
          "format": "int64",
          "type": "string"
        },
        "successCount": {
          "description": "Count of entries that were processed successfully.",
          "format": "int64",
          "type": "string"
        },
        "updateTime": {
          "description": "Operation last update time. If the operation is done, this is also the finish time.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2betaImportProductsResponse": {
      "description": "Response of the ImportProductsRequest. If the long running operation is done, then this message is returned by the google.longrunning.Operations.response field if the operation was successful.",
      "id": "GoogleCloudRetailV2betaImportProductsResponse",
      "properties": {
        "errorSamples": {
          "description": "A sample of errors encountered while processing the request.",
          "items": {
            "$ref": "GoogleRpcStatus"
          },
          "type": "array"
        },
        "errorsConfig": {
          "$ref": "GoogleCloudRetailV2betaImportErrorsConfig",
          "description": "Echoes the destination for the complete errors in the request if set."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2betaImportUserEventsResponse": {
      "description": "Response of the ImportUserEventsRequest. If the long running operation was successful, then this message is returned by the google.longrunning.Operations.response field if the operation was successful.",
      "id": "GoogleCloudRetailV2betaImportUserEventsResponse",
      "properties": {
        "errorSamples": {
          "description": "A sample of errors encountered while processing the request.",
          "items": {
            "$ref": "GoogleRpcStatus"
          },
          "type": "array"
        },
        "errorsConfig": {
          "$ref": "GoogleCloudRetailV2betaImportErrorsConfig",
          "description": "Echoes the destination for the complete errors if this field was set in the request."
        },
        "importSummary": {
          "$ref": "GoogleCloudRetailV2betaUserEventImportSummary",
          "description": "Aggregated statistics of user event import status."
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2betaPurgeMetadata": {
      "description": "Metadata related to the progress of the Purge operation. This will be returned by the google.longrunning.Operation.metadata field.",
      "id": "GoogleCloudRetailV2betaPurgeMetadata",
      "properties": {},
      "type": "object"
    },
    "GoogleCloudRetailV2betaPurgeUserEventsResponse": {
      "description": "Response of the PurgeUserEventsRequest. If the long running operation is successfully done, then this message is returned by the google.longrunning.Operations.response field.",
      "id": "GoogleCloudRetailV2betaPurgeUserEventsResponse",
      "properties": {
        "purgedEventsCount": {
          "description": "The total count of events purged as a result of the operation.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2betaRejoinUserEventsMetadata": {
      "description": "Metadata for RejoinUserEvents method.",
      "id": "GoogleCloudRetailV2betaRejoinUserEventsMetadata",
      "properties": {},
      "type": "object"
    },
    "GoogleCloudRetailV2betaRejoinUserEventsResponse": {
      "description": "Response message for RejoinUserEvents method.",
      "id": "GoogleCloudRetailV2betaRejoinUserEventsResponse",
      "properties": {
        "rejoinedUserEventsCount": {
          "description": "Number of user events that were joined with latest product catalog.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudRetailV2betaUserEventImportSummary": {
      "description": "A summary of import result. The UserEventImportSummary summarizes the import status for user events.",
      "id": "GoogleCloudRetailV2betaUserEventImportSummary",
      "properties": {
        "joinedEventsCount": {
          "description": "Count of user events imported with complete existing catalog information.",
          "format": "int64",
          "type": "string"
        },
        "unjoinedEventsCount": {
          "description": "Count of user events imported, but with catalog information not found in the imported catalog.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleLongrunningListOperationsResponse": {
      "description": "The response message for Operations.ListOperations.",
      "id": "GoogleLongrunningListOperationsResponse",
      "properties": {
        "nextPageToken": {
          "description": "The standard List next-page token.",
          "type": "string"
        },
        "operations": {
          "description": "A list of operations that matches the specified filter in the request.",
          "items": {
            "$ref": "GoogleLongrunningOperation"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleLongrunningOperation": {
      "description": "This resource represents a long-running operation that is the result of a network API call.",
      "id": "GoogleLongrunningOperation",
      "properties": {
        "done": {
          "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.",
          "type": "boolean"
        },
        "error": {
          "$ref": "GoogleRpcStatus",
          "description": "The error result of the operation in case of failure or cancellation."
        },
        "metadata": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.",
          "type": "object"
        },
        "name": {
          "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.",
          "type": "string"
        },
        "response": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "GoogleProtobufEmpty": {
      "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON representation for `Empty` is empty JSON object `{}`.",
      "id": "GoogleProtobufEmpty",
      "properties": {},
      "type": "object"
    },
    "GoogleRpcStatus": {
      "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).",
      "id": "GoogleRpcStatus",
      "properties": {
        "code": {
          "description": "The status code, which should be an enum value of google.rpc.Code.",
          "format": "int32",
          "type": "integer"
        },
        "details": {
          "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.",
          "items": {
            "additionalProperties": {
              "description": "Properties of the object. Contains field @type with type URL.",
              "type": "any"
            },
            "type": "object"
          },
          "type": "array"
        },
        "message": {
          "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.",
          "type": "string"
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "Retail API",
  "version": "v2alpha",
  "version_module": true
}