Class: Google::Apis::MerchantapiInventoriesV1beta::RegionalInventory

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/merchantapi_inventories_v1beta/classes.rb,
lib/google/apis/merchantapi_inventories_v1beta/representations.rb,
lib/google/apis/merchantapi_inventories_v1beta/representations.rb

Overview

Regional inventory information for the product. Represents specific information like price and availability for a given product in a specific region. For a list of all accepted attribute values, see the regional product inventory data specification.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ RegionalInventory

Returns a new instance of RegionalInventory.



548
549
550
# File 'lib/google/apis/merchantapi_inventories_v1beta/classes.rb', line 548

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#accountFixnum

Output only. The account that owns the product. This field will be ignored if set by the client. Corresponds to the JSON property account

Returns:

  • (Fixnum)


464
465
466
# File 'lib/google/apis/merchantapi_inventories_v1beta/classes.rb', line 464

def 
  @account
end

#availabilityString

Availability of the product in this region. For accepted attribute values, see the regional product inventory data specification. Corresponds to the JSON property availability

Returns:

  • (String)


471
472
473
# File 'lib/google/apis/merchantapi_inventories_v1beta/classes.rb', line 471

def availability
  @availability
end

#base64_encoded_nameString

Output only. The unpadded base64url encoded name of the RegionalInventory resource. Format: accounts/account/products/product/regionalInventories/ regionwhere theproduct`segment is the unpadded base64url encoded value of the identifier of the formcontent_language~feed_label~offer_id. Example: accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123for the decoded product IDen~US~sku/123andregion"region123". Can be used directly as input to the API methods that require the product identifier within the regional inventory name to be encoded if it contains special characters, for example [GetRegionalInventory](https://developers.google.com/ merchant/api/reference/rest/inventories_v1beta/accounts.products. regionalInventories/get). Corresponds to the JSON propertybase64EncodedName`

Returns:

  • (String)


486
487
488
# File 'lib/google/apis/merchantapi_inventories_v1beta/classes.rb', line 486

def base64_encoded_name
  @base64_encoded_name
end

#custom_attributesArray<Google::Apis::MerchantapiInventoriesV1beta::CustomAttribute>

A list of custom (merchant-provided) attributes. You can also use CustomAttribute to submit any attribute of the data specification in its generic form. Corresponds to the JSON property customAttributes



493
494
495
# File 'lib/google/apis/merchantapi_inventories_v1beta/classes.rb', line 493

def custom_attributes
  @custom_attributes
end

#nameString

Output only. The name of the RegionalInventory resource. Format: accounts/ account/products/product/regionalInventories/regionTheproduct segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: ` content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of theproductsegment in the URL is automatically detected by the server, supporting two options: 1. ** Encoded Format**: Theproductsegment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the ` content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` "region123", theproductsegment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5- VVN-c2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The productsegment is the tilde-separated string `content_language~feed_label~ offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in theproduct`segment is used to differentiate between the two formats. Corresponds to the JSON propertyname`

Returns:

  • (String)


521
522
523
# File 'lib/google/apis/merchantapi_inventories_v1beta/classes.rb', line 521

def name
  @name
end

#priceGoogle::Apis::MerchantapiInventoriesV1beta::Price

The price represented as a number and currency. Corresponds to the JSON property price



526
527
528
# File 'lib/google/apis/merchantapi_inventories_v1beta/classes.rb', line 526

def price
  @price
end

#regionString

Required. Immutable. ID of the region for this RegionalInventory resource. See the Regional availability and pricing for more details. Corresponds to the JSON property region

Returns:

  • (String)


533
534
535
# File 'lib/google/apis/merchantapi_inventories_v1beta/classes.rb', line 533

def region
  @region
end

#sale_priceGoogle::Apis::MerchantapiInventoriesV1beta::Price

The price represented as a number and currency. Corresponds to the JSON property salePrice



538
539
540
# File 'lib/google/apis/merchantapi_inventories_v1beta/classes.rb', line 538

def sale_price
  @sale_price
end

#sale_price_effective_dateGoogle::Apis::MerchantapiInventoriesV1beta::Interval

Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time. Corresponds to the JSON property salePriceEffectiveDate



546
547
548
# File 'lib/google/apis/merchantapi_inventories_v1beta/classes.rb', line 546

def sale_price_effective_date
  @sale_price_effective_date
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



553
554
555
556
557
558
559
560
561
562
563
# File 'lib/google/apis/merchantapi_inventories_v1beta/classes.rb', line 553

def update!(**args)
  @account = args[:account] if args.key?(:account)
  @availability = args[:availability] if args.key?(:availability)
  @base64_encoded_name = args[:base64_encoded_name] if args.key?(:base64_encoded_name)
  @custom_attributes = args[:custom_attributes] if args.key?(:custom_attributes)
  @name = args[:name] if args.key?(:name)
  @price = args[:price] if args.key?(:price)
  @region = args[:region] if args.key?(:region)
  @sale_price = args[:sale_price] if args.key?(:sale_price)
  @sale_price_effective_date = args[:sale_price_effective_date] if args.key?(:sale_price_effective_date)
end