Retail V2 API - Class Google::Cloud::Retail::V2::UserEventService::Client (v1.2.0)

Reference documentation and code samples for the Retail V2 API class Google::Cloud::Retail::V2::UserEventService::Client.

Client for the UserEventService service.

Service for ingesting end user actions on the customer website.

Inherits

  • Object

Methods

.configure

def self.configure() { |config| ... } -> Client::Configuration

Configure the UserEventService Client class.

See Configuration for a description of the configuration fields.

Yields
  • (config) — Configure the Client client.
Yield Parameter
Example
# Modify the configuration for all UserEventService clients
::Google::Cloud::Retail::V2::UserEventService::Client.configure do |config|
  config.timeout = 10.0
end

#collect_user_event

def collect_user_event(request, options = nil) -> ::Google::Api::HttpBody
def collect_user_event(prebuilt_rule: nil, parent: nil, user_event: nil, uri: nil, ets: nil, raw_json: nil) -> ::Google::Api::HttpBody

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.

Overloads
def collect_user_event(request, options = nil) -> ::Google::Api::HttpBody
Pass arguments to collect_user_event via a request object, either of type CollectUserEventRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Retail::V2::CollectUserEventRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def collect_user_event(prebuilt_rule: nil, parent: nil, user_event: nil, uri: nil, ets: nil, raw_json: nil) -> ::Google::Api::HttpBody
Pass arguments to collect_user_event via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • prebuilt_rule (::String) — The prebuilt rule name that can convert a specific type of raw_json. For example: "ga4_bq" rule for the GA4 user event schema.
  • parent (::String) — Required. The parent catalog name, such as projects/1234/locations/global/catalogs/default_catalog.
  • user_event (::String) — Required. URL encoded UserEvent proto with a length limit of 2,000,000 characters.
  • uri (::String) — 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.
  • ets (::Integer) — The event timestamp in milliseconds. This prevents browser caching of otherwise identical get requests. The name is abbreviated to reduce the payload bytes.
  • raw_json (::String) — An arbitrary serialized JSON string that contains necessary information that can comprise a user event. When this field is specified, the user_event field will be ignored. Note: line-delimited JSON is not supported, a single JSON only.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/retail/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Retail::V2::UserEventService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Retail::V2::CollectUserEventRequest.new

# Call the collect_user_event method.
result = client.collect_user_event request

# The returned object is of type Google::Api::HttpBody.
p result

#configure

def configure() { |config| ... } -> Client::Configuration

Configure the UserEventService Client instance.

The configuration is set to the derived mode, meaning that values can be changed, but structural changes (adding new fields, etc.) are not allowed. Structural changes should be made on Client.configure.

See Configuration for a description of the configuration fields.

Yields
  • (config) — Configure the Client client.
Yield Parameter

#import_user_events

def import_user_events(request, options = nil) -> ::Gapic::Operation
def import_user_events(parent: nil, input_config: nil, errors_config: nil) -> ::Gapic::Operation

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.

Overloads
def import_user_events(request, options = nil) -> ::Gapic::Operation
Pass arguments to import_user_events via a request object, either of type ImportUserEventsRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Retail::V2::ImportUserEventsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def import_user_events(parent: nil, input_config: nil, errors_config: nil) -> ::Gapic::Operation
Pass arguments to import_user_events via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
  • response (::Gapic::Operation)
  • operation (::GRPC::ActiveCall::Operation)
Returns
  • (::Gapic::Operation)
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/retail/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Retail::V2::UserEventService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Retail::V2::ImportUserEventsRequest.new

# Call the import_user_events method.
result = client.import_user_events request

# The returned object is of type Gapic::Operation. You can use it to
# check the status of an operation, cancel it, or wait for results.
# Here is how to wait for a response.
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "No response received."
end

#initialize

def initialize() { |config| ... } -> Client

Create a new UserEventService client object.

Yields
  • (config) — Configure the UserEventService client.
Yield Parameter
Returns
  • (Client) — a new instance of Client
Example
# Create a client using the default configuration
client = ::Google::Cloud::Retail::V2::UserEventService::Client.new

# Create a client using a custom configuration
client = ::Google::Cloud::Retail::V2::UserEventService::Client.new do |config|
  config.timeout = 10.0
end

#location_client

def location_client() -> Google::Cloud::Location::Locations::Client

Get the associated client for mix-in of the Locations.

Returns
  • (Google::Cloud::Location::Locations::Client)

#logger

def logger() -> Logger

The logger used for request/response debug logging.

Returns
  • (Logger)

#operations_client

def operations_client() -> ::Google::Cloud::Retail::V2::UserEventService::Operations

Get the associated client for long-running operations.

#purge_user_events

def purge_user_events(request, options = nil) -> ::Gapic::Operation
def purge_user_events(parent: nil, filter: nil, force: nil) -> ::Gapic::Operation

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.

Overloads
def purge_user_events(request, options = nil) -> ::Gapic::Operation
Pass arguments to purge_user_events via a request object, either of type PurgeUserEventsRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Retail::V2::PurgeUserEventsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def purge_user_events(parent: nil, filter: nil, force: nil) -> ::Gapic::Operation
Pass arguments to purge_user_events via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The resource name of the catalog under which the events are created. The format is projects/${projectId}/locations/global/catalogs/${catalogId}
  • filter (::String) — 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.

  • force (::Boolean) — Actually perform the purge. If force is set to false, the method will return the expected purge count without deleting any user events.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
  • response (::Gapic::Operation)
  • operation (::GRPC::ActiveCall::Operation)
Returns
  • (::Gapic::Operation)
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/retail/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Retail::V2::UserEventService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Retail::V2::PurgeUserEventsRequest.new

# Call the purge_user_events method.
result = client.purge_user_events request

# The returned object is of type Gapic::Operation. You can use it to
# check the status of an operation, cancel it, or wait for results.
# Here is how to wait for a response.
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "No response received."
end

#rejoin_user_events

def rejoin_user_events(request, options = nil) -> ::Gapic::Operation
def rejoin_user_events(parent: nil, user_event_rejoin_scope: nil) -> ::Gapic::Operation

Starts a user-event rejoin operation with latest product catalog. Events are not annotated with detailed product information for products that are missing from the catalog when the user event is ingested. These events are stored as unjoined events with limited usage on training and serving. You can use this method to start a join operation on specified events with the latest version of product catalog. You can also use this method to correct events joined with the wrong product catalog. A rejoin operation can take hours or days to complete.

Overloads
def rejoin_user_events(request, options = nil) -> ::Gapic::Operation
Pass arguments to rejoin_user_events via a request object, either of type RejoinUserEventsRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Retail::V2::RejoinUserEventsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def rejoin_user_events(parent: nil, user_event_rejoin_scope: nil) -> ::Gapic::Operation
Pass arguments to rejoin_user_events via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The parent catalog resource name, such as projects/1234/locations/global/catalogs/default_catalog.
  • user_event_rejoin_scope (::Google::Cloud::Retail::V2::RejoinUserEventsRequest::UserEventRejoinScope) — 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.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
  • response (::Gapic::Operation)
  • operation (::GRPC::ActiveCall::Operation)
Returns
  • (::Gapic::Operation)
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/retail/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Retail::V2::UserEventService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Retail::V2::RejoinUserEventsRequest.new

# Call the rejoin_user_events method.
result = client.rejoin_user_events request

# The returned object is of type Gapic::Operation. You can use it to
# check the status of an operation, cancel it, or wait for results.
# Here is how to wait for a response.
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "No response received."
end

#universe_domain

def universe_domain() -> String

The effective universe domain

Returns
  • (String)

#write_user_event

def write_user_event(request, options = nil) -> ::Google::Cloud::Retail::V2::UserEvent
def write_user_event(parent: nil, user_event: nil, write_async: nil) -> ::Google::Cloud::Retail::V2::UserEvent

Writes a single user event.

Overloads
def write_user_event(request, options = nil) -> ::Google::Cloud::Retail::V2::UserEvent
Pass arguments to write_user_event via a request object, either of type WriteUserEventRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Retail::V2::WriteUserEventRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def write_user_event(parent: nil, user_event: nil, write_async: nil) -> ::Google::Cloud::Retail::V2::UserEvent
Pass arguments to write_user_event via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The parent catalog resource name, such as projects/1234/locations/global/catalogs/default_catalog.
  • user_event (::Google::Cloud::Retail::V2::UserEvent, ::Hash) — Required. User event to write.
  • write_async (::Boolean) — If set to true, the user event will be written asynchronously after validation, and the API will respond without waiting for the write. Therefore, silent failures can occur even if the API returns success. In case of silent failures, error messages can be found in Stackdriver logs.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/retail/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Retail::V2::UserEventService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Retail::V2::WriteUserEventRequest.new

# Call the write_user_event method.
result = client.write_user_event request

# The returned object is of type Google::Cloud::Retail::V2::UserEvent.
p result