Class: Google::Apis::AdexchangebuyerV1_4::Product

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

Overview

A product is segment of inventory that a seller wishes to sell. It is associated with certain terms and targeting information which helps buyer know more about the inventory. Each field in a product can have one of the following setting: (readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ Product

Returns a new instance of Product.


2862
2863
2864
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2862

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

Instance Attribute Details

#creation_time_msString

Creation time in ms. since epoch (readonly) Corresponds to the JSON property creationTimeMs

Returns:

  • (String)

2734
2735
2736
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2734

def creation_time_ms
  @creation_time_ms
end

#creator_contactsArray<Google::Apis::AdexchangebuyerV1_4::ContactInformation>

Optional contact information for the creator of this product. (buyer-readonly) Corresponds to the JSON property creatorContacts


2739
2740
2741
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2739

def creator_contacts
  @creator_contacts
end

#delivery_controlGoogle::Apis::AdexchangebuyerV1_4::DeliveryControl

The set of fields around delivery control that are interesting for a buyer to see but are non-negotiable. These are set by the publisher. This message is assigned an id of 100 since some day we would want to model this as a protobuf extension. Corresponds to the JSON property deliveryControl


2747
2748
2749
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2747

def delivery_control
  @delivery_control
end

#flight_end_time_msString

The proposed end time for the deal (ms since epoch) (buyer-readonly) Corresponds to the JSON property flightEndTimeMs

Returns:

  • (String)

2752
2753
2754
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2752

def flight_end_time_ms
  @flight_end_time_ms
end

#flight_start_time_msString

Inventory availability dates. (times are in ms since epoch) The granularity is generally in the order of seconds. (buyer-readonly) Corresponds to the JSON property flightStartTimeMs

Returns:

  • (String)

2758
2759
2760
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2758

def flight_start_time_ms
  @flight_start_time_ms
end

#has_creator_signed_offBoolean Also known as: has_creator_signed_off?

If the creator has already signed off on the product, then the buyer can finalize the deal by accepting the product as is. When copying to a proposal, if any of the terms are changed, then auto_finalize is automatically set to false. Corresponds to the JSON property hasCreatorSignedOff

Returns:

  • (Boolean)

2766
2767
2768
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2766

def has_creator_signed_off
  @has_creator_signed_off
end

#inventory_sourceString

What exchange will provide this inventory (readonly, except on create). Corresponds to the JSON property inventorySource

Returns:

  • (String)

2772
2773
2774
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2772

def inventory_source
  @inventory_source
end

#kindString

Identifies what kind of resource this is. Value: the fixed string " adexchangebuyer#product". Corresponds to the JSON property kind

Returns:

  • (String)

2778
2779
2780
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2778

def kind
  @kind
end

#labelsArray<Google::Apis::AdexchangebuyerV1_4::MarketplaceLabel>

Optional List of labels for the product (optional, buyer-readonly). Corresponds to the JSON property labels


2783
2784
2785
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2783

def labels
  @labels
end

#last_update_time_msString

Time of last update in ms. since epoch (readonly) Corresponds to the JSON property lastUpdateTimeMs

Returns:

  • (String)

2788
2789
2790
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2788

def last_update_time_ms
  @last_update_time_ms
end

#legacy_offer_idString

Optional legacy offer id if this offer is a preferred deal offer. Corresponds to the JSON property legacyOfferId

Returns:

  • (String)

2793
2794
2795
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2793

def legacy_offer_id
  @legacy_offer_id
end

#nameString

The name for this product as set by the seller. (buyer-readonly) Corresponds to the JSON property name

Returns:

  • (String)

2798
2799
2800
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2798

def name
  @name
end

#private_auction_idString

Optional private auction id if this offer is a private auction offer. Corresponds to the JSON property privateAuctionId

Returns:

  • (String)

2803
2804
2805
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2803

def private_auction_id
  @private_auction_id
end

#product_idString

The unique id for the product (readonly) Corresponds to the JSON property productId

Returns:

  • (String)

2808
2809
2810
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2808

def product_id
  @product_id
end

#publisher_profile_idString

Id of the publisher profile for a given seller. A (seller.account_id, publisher_profile_id) pair uniquely identifies a publisher profile. Buyers can call the PublisherProfiles::List endpoint to get a list of publisher profiles for a given seller. Corresponds to the JSON property publisherProfileId

Returns:

  • (String)

2816
2817
2818
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2816

def publisher_profile_id
  @publisher_profile_id
end

#publisher_provided_forecastGoogle::Apis::AdexchangebuyerV1_4::PublisherProvidedForecast

This message carries publisher provided forecasting information. Corresponds to the JSON property publisherProvidedForecast


2821
2822
2823
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2821

def publisher_provided_forecast
  @publisher_provided_forecast
end

#revision_numberString

The revision number of the product. (readonly) Corresponds to the JSON property revisionNumber

Returns:

  • (String)

2826
2827
2828
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2826

def revision_number
  @revision_number
end

#sellerGoogle::Apis::AdexchangebuyerV1_4::Seller

Information about the seller that created this product (readonly, except on create) Corresponds to the JSON property seller


2832
2833
2834
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2832

def seller
  @seller
end

#shared_targetingsArray<Google::Apis::AdexchangebuyerV1_4::SharedTargeting>

Targeting that is shared between the buyer and the seller. Each targeting criteria has a specified key and for each key there is a list of inclusion value or exclusion values. (buyer-readonly) Corresponds to the JSON property sharedTargetings


2839
2840
2841
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2839

def shared_targetings
  @shared_targetings
end

#stateString

The state of the product. (buyer-readonly) Corresponds to the JSON property state

Returns:

  • (String)

2844
2845
2846
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2844

def state
  @state
end

#syndication_productString

The syndication product associated with the deal. (readonly, except on create) Corresponds to the JSON property syndicationProduct

Returns:

  • (String)

2849
2850
2851
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2849

def syndication_product
  @syndication_product
end

#termsGoogle::Apis::AdexchangebuyerV1_4::DealTerms

The negotiable terms of the deal (buyer-readonly) Corresponds to the JSON property terms


2854
2855
2856
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2854

def terms
  @terms
end

#web_property_codeString

The web property code for the seller. This field is meant to be copied over as is when creating deals. Corresponds to the JSON property webPropertyCode

Returns:

  • (String)

2860
2861
2862
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2860

def web_property_code
  @web_property_code
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object


2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
# File 'generated/google/apis/adexchangebuyer_v1_4/classes.rb', line 2867

def update!(**args)
  @creation_time_ms = args[:creation_time_ms] if args.key?(:creation_time_ms)
  @creator_contacts = args[:creator_contacts] if args.key?(:creator_contacts)
  @delivery_control = args[:delivery_control] if args.key?(:delivery_control)
  @flight_end_time_ms = args[:flight_end_time_ms] if args.key?(:flight_end_time_ms)
  @flight_start_time_ms = args[:flight_start_time_ms] if args.key?(:flight_start_time_ms)
  @has_creator_signed_off = args[:has_creator_signed_off] if args.key?(:has_creator_signed_off)
  @inventory_source = args[:inventory_source] if args.key?(:inventory_source)
  @kind = args[:kind] if args.key?(:kind)
  @labels = args[:labels] if args.key?(:labels)
  @last_update_time_ms = args[:last_update_time_ms] if args.key?(:last_update_time_ms)
  @legacy_offer_id = args[:legacy_offer_id] if args.key?(:legacy_offer_id)
  @name = args[:name] if args.key?(:name)
  @private_auction_id = args[:private_auction_id] if args.key?(:private_auction_id)
  @product_id = args[:product_id] if args.key?(:product_id)
  @publisher_profile_id = args[:publisher_profile_id] if args.key?(:publisher_profile_id)
  @publisher_provided_forecast = args[:publisher_provided_forecast] if args.key?(:publisher_provided_forecast)
  @revision_number = args[:revision_number] if args.key?(:revision_number)
  @seller = args[:seller] if args.key?(:seller)
  @shared_targetings = args[:shared_targetings] if args.key?(:shared_targetings)
  @state = args[:state] if args.key?(:state)
  @syndication_product = args[:syndication_product] if args.key?(:syndication_product)
  @terms = args[:terms] if args.key?(:terms)
  @web_property_code = args[:web_property_code] if args.key?(:web_property_code)
end