class Google::Shopping::Merchant::Accounts::V1beta::ProgramsService::Rest::Client


explicitly enabling or disabling participation in each program.
participation in all available programs, in addition to methods for
This service exposes methods to retrieve a merchant’s
Google for free.
program, which enables products from a merchant’s store to be shown across
listings](support.google.com/merchants/topic/9240261?ref_topic=7257954,7259405,&sjid=796648681813264022-EU)
typical example of this is the [Free product
Programs provide a mechanism for adding functionality to merchant accounts. A
Service for program management.
REST client for the ProgramsService service.
#

def self.configure

Returns:
  • (Client::Configuration) -

Other tags:
    Yieldparam: config -

Other tags:
    Yield: - Configure the Client client.
def self.configure
  @configure ||= begin
    namespace = ["Google", "Shopping", "Merchant", "Accounts", "V1beta"]
    parent_config = while namespace.any?
                      parent_name = namespace.join "::"
                      parent_const = const_get parent_name
                      break parent_const.configure if parent_const.respond_to? :configure
                      namespace.pop
                    end
    default_config = Client::Configuration.new parent_config
    default_config.timeout = 60.0
    default_config.retry_policy = {
      initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14]
    }
    default_config
  end
  yield @configure if block_given?
  @configure
end

def configure

Returns:
  • (Client::Configuration) -

Other tags:
    Yieldparam: config -

Other tags:
    Yield: - Configure the Client client.
def configure
  yield @config if block_given?
  @config
end

def disable_program request, options = nil

Other tags:
    Example: Basic example -

Raises:
  • (::Google::Cloud::Error) - if the REST call is aborted.

Returns:
  • (::Google::Shopping::Merchant::Accounts::V1beta::Program) -

Other tags:
    Yieldparam: operation -
    Yieldparam: result -

Other tags:
    Yield: - Access the result along with the TransportOperation object

Parameters:
  • name (::String) --
  • options (::Gapic::CallOptions, ::Hash) --
  • request (::Google::Shopping::Merchant::Accounts::V1beta::DisableProgramRequest, ::Hash) --

Overloads:
  • disable_program(name: nil)
  • disable_program(request, options = nil)
def disable_program request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?
  request = ::Gapic::Protobuf.coerce request, to: ::Google::Shopping::Merchant::Accounts::V1beta::DisableProgramRequest
  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
  # Customize the options with defaults
  call_metadata = @config.rpcs.disable_program.metadata.to_h
  # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Shopping::Merchant::Accounts::V1beta::VERSION,
    transports_version_send: [:rest]
  call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
  call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
  options.apply_defaults timeout:      @config.rpcs.disable_program.timeout,
                         metadata:     call_metadata,
                         retry_policy: @config.rpcs.disable_program.retry_policy
  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.metadata,
                         retry_policy: @config.retry_policy
  @programs_service_stub.disable_program request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

def enable_program request, options = nil

Other tags:
    Example: Basic example -

Raises:
  • (::Google::Cloud::Error) - if the REST call is aborted.

Returns:
  • (::Google::Shopping::Merchant::Accounts::V1beta::Program) -

Other tags:
    Yieldparam: operation -
    Yieldparam: result -

Other tags:
    Yield: - Access the result along with the TransportOperation object

Parameters:
  • name (::String) --
  • options (::Gapic::CallOptions, ::Hash) --
  • request (::Google::Shopping::Merchant::Accounts::V1beta::EnableProgramRequest, ::Hash) --

Overloads:
  • enable_program(name: nil)
  • enable_program(request, options = nil)
def enable_program request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?
  request = ::Gapic::Protobuf.coerce request, to: ::Google::Shopping::Merchant::Accounts::V1beta::EnableProgramRequest
  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
  # Customize the options with defaults
  call_metadata = @config.rpcs.enable_program.metadata.to_h
  # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Shopping::Merchant::Accounts::V1beta::VERSION,
    transports_version_send: [:rest]
  call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
  call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
  options.apply_defaults timeout:      @config.rpcs.enable_program.timeout,
                         metadata:     call_metadata,
                         retry_policy: @config.rpcs.enable_program.retry_policy
  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.metadata,
                         retry_policy: @config.retry_policy
  @programs_service_stub.enable_program request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

def get_program request, options = nil

Other tags:
    Example: Basic example -

Raises:
  • (::Google::Cloud::Error) - if the REST call is aborted.

Returns:
  • (::Google::Shopping::Merchant::Accounts::V1beta::Program) -

Other tags:
    Yieldparam: operation -
    Yieldparam: result -

Other tags:
    Yield: - Access the result along with the TransportOperation object

Parameters:
  • name (::String) --
  • options (::Gapic::CallOptions, ::Hash) --
  • request (::Google::Shopping::Merchant::Accounts::V1beta::GetProgramRequest, ::Hash) --

Overloads:
  • get_program(name: nil)
  • get_program(request, options = nil)
def get_program request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?
  request = ::Gapic::Protobuf.coerce request, to: ::Google::Shopping::Merchant::Accounts::V1beta::GetProgramRequest
  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
  # Customize the options with defaults
  call_metadata = @config.rpcs.get_program.metadata.to_h
  # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Shopping::Merchant::Accounts::V1beta::VERSION,
    transports_version_send: [:rest]
  call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
  call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
  options.apply_defaults timeout:      @config.rpcs.get_program.timeout,
                         metadata:     call_metadata,
                         retry_policy: @config.rpcs.get_program.retry_policy
  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.metadata,
                         retry_policy: @config.retry_policy
  @programs_service_stub.get_program request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

def initialize

Other tags:
    Yieldparam: config -

Other tags:
    Yield: - Configure the ProgramsService client.
def initialize
  # Create the configuration object
  @config = Configuration.new Client.configure
  # Yield the configuration if needed
  yield @config if block_given?
  # Create credentials
  credentials = @config.credentials
  # Use self-signed JWT if the endpoint is unchanged from default,
  # but only if the default endpoint does not have a region prefix.
  enable_self_signed_jwt = @config.endpoint.nil? ||
                           (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
                           !@config.endpoint.split(".").first.include?("-"))
  credentials ||= Credentials.default scope: @config.scope,
                                      enable_self_signed_jwt: enable_self_signed_jwt
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
    credentials = Credentials.new credentials, scope: @config.scope
  end
  @quota_project_id = @config.quota_project
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
  @programs_service_stub = ::Google::Shopping::Merchant::Accounts::V1beta::ProgramsService::Rest::ServiceStub.new(
    endpoint: @config.endpoint,
    endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
    universe_domain: @config.universe_domain,
    credentials: credentials
  )
end

def list_programs request, options = nil

Other tags:
    Example: Basic example -

Raises:
  • (::Google::Cloud::Error) - if the REST call is aborted.

Returns:
  • (::Gapic::Rest::PagedEnumerable<::Google::Shopping::Merchant::Accounts::V1beta::Program>) -

Other tags:
    Yieldparam: operation -
    Yieldparam: result -

Other tags:
    Yield: - Access the result along with the TransportOperation object

Parameters:
  • page_token (::String) --
  • page_size (::Integer) --
  • parent (::String) --
  • options (::Gapic::CallOptions, ::Hash) --
  • request (::Google::Shopping::Merchant::Accounts::V1beta::ListProgramsRequest, ::Hash) --

Overloads:
  • list_programs(parent: nil, page_size: nil, page_token: nil)
  • list_programs(request, options = nil)
def list_programs request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?
  request = ::Gapic::Protobuf.coerce request, to: ::Google::Shopping::Merchant::Accounts::V1beta::ListProgramsRequest
  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
  # Customize the options with defaults
  call_metadata = @config.rpcs.list_programs.metadata.to_h
  # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Shopping::Merchant::Accounts::V1beta::VERSION,
    transports_version_send: [:rest]
  call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
  call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
  options.apply_defaults timeout:      @config.rpcs.list_programs.timeout,
                         metadata:     call_metadata,
                         retry_policy: @config.rpcs.list_programs.retry_policy
  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.metadata,
                         retry_policy: @config.retry_policy
  @programs_service_stub.list_programs request, options do |result, operation|
    result = ::Gapic::Rest::PagedEnumerable.new @programs_service_stub, :list_programs, "programs", request, result, options
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

def universe_domain

Returns:
  • (String) -
def universe_domain
  @programs_service_stub.universe_domain
end