# frozen_string_literal: true # Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Auto-generated by gapic-generator-ruby. DO NOT EDIT! module Google module Shopping module Merchant module Products module V1beta # The processed product, built from multiple [product # inputs][[google.shopping.content.bundles.Products.ProductInput] after # applying rules and supplemental data sources. This processed product matches # what is shown in your Merchant Center account and in Shopping ads and other # surfaces across Google. Each product is built from exactly one primary # data source product input, and multiple supplemental data source inputs. # After inserting, updating, or deleting a product input, it may take # several minutes before the updated processed product can be retrieved. # # All fields in the processed product and its sub-messages match the name of # their corresponding attribute in the [Product data # specification](https://support.google.com/merchants/answer/7052112) with some # exceptions. # @!attribute [rw] name # @return [::String] # The name of the product. # Format: # `"{product.name=accounts/{account}/products/{product}}"` # @!attribute [r] channel # @return [::Google::Shopping::Type::Channel::ChannelEnum] # Output only. The # [channel](https://support.google.com/merchants/answer/7361332) of the # product. # @!attribute [r] offer_id # @return [::String] # Output only. Your unique identifier for the product. This is the same for # the product input and processed product. Leading and trailing whitespaces # are stripped and multiple whitespaces are replaced by a single whitespace # upon submission. See the [product data # specification](https://support.google.com/merchants/answer/188494#id) for # details. # @!attribute [r] content_language # @return [::String] # Output only. The two-letter [ISO # 639-1](http://en.wikipedia.org/wiki/ISO_639-1) language code for the # product. # @!attribute [r] feed_label # @return [::String] # Output only. The feed label for the product. # @!attribute [r] data_source # @return [::String] # Output only. The primary data source of the product. # @!attribute [r] version_number # @return [::Integer] # Output only. Represents the existing version (freshness) of the product, # which can be used to preserve the right order when multiple updates are # done at the same time. # # If set, the insertion is prevented when version number is lower than # the current version number of the existing product. Re-insertion (for # example, product refresh after 30 days) can be performed with the current # `version_number`. # # Only supported for insertions into primary data sources. # # If the operation is prevented, the aborted exception will be # thrown. # @!attribute [r] attributes # @return [::Google::Shopping::Merchant::Products::V1beta::Attributes] # Output only. A list of product attributes. # @!attribute [r] custom_attributes # @return [::Array<::Google::Shopping::Type::CustomAttribute>] # Output only. A list of custom (merchant-provided) attributes. It can also # be used to submit any attribute of the data specification in its generic # form (for example, # `{ "name": "size type", "value": "regular" }`). # This is useful for submitting attributes not explicitly exposed by the # API, such as additional attributes used for Buy on Google. # @!attribute [r] product_status # @return [::Google::Shopping::Merchant::Products::V1beta::ProductStatus] # Output only. The status of a product, data validation issues, that is, # information about a product computed asynchronously. class Product include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for the GetProduct method. # @!attribute [rw] name # @return [::String] # Required. The name of the product to retrieve. # Format: `accounts/{account}/products/{product}` class GetProductRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for the ListProducts method. # @!attribute [rw] parent # @return [::String] # Required. The account to list processed products for. # Format: accounts/\\{account} # @!attribute [rw] page_size # @return [::Integer] # The maximum number of products to return. The service may return fewer than # this value. # The maximum value is 1000; values above 1000 will be coerced to 1000. # If unspecified, the maximum number of products will be returned. # @!attribute [rw] page_token # @return [::String] # A page token, received from a previous `ListProducts` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to `ListProducts` must # match the call that provided the page token. class ListProductsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Response message for the ListProducts method. # @!attribute [rw] products # @return [::Array<::Google::Shopping::Merchant::Products::V1beta::Product>] # The processed products from the specified account. These are your processed # products after applying rules and supplemental data sources. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. class ListProductsResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end end end end end