Class UserEventServiceClient (0.53.0)

GitHub RepositoryProduct Reference

Service Description: Service for ingesting end user actions on the customer website.

This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   EventStoreName parent =
       EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
   UserEvent userEvent = UserEvent.newBuilder().build();
   UserEvent response = userEventServiceClient.writeUserEvent(parent, userEvent);
 }
 

Note: close() needs to be called on the UserEventServiceClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().

Methods
Method Description Method Variants

WriteUserEvent

Writes a single user event.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • writeUserEvent(WriteUserEventRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • writeUserEvent(EventStoreName parent, UserEvent userEvent)

  • writeUserEvent(String parent, UserEvent userEvent)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • writeUserEventCallable()

CollectUserEvent

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 Recommendations AI JavaScript pixel. Users should not call this method directly.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • collectUserEvent(CollectUserEventRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • collectUserEvent(EventStoreName parent, String userEvent, String uri, long ets)

  • collectUserEvent(String parent, String userEvent, String uri, long ets)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • collectUserEventCallable()

ListUserEvents

Gets a list of user events within a time range, with potential filtering.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • listUserEvents(ListUserEventsRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • listUserEvents(EventStoreName parent, String filter)

  • listUserEvents(String parent, String filter)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • listUserEventsPagedCallable()

  • listUserEventsCallable()

PurgeUserEvents

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.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • purgeUserEventsAsync(PurgeUserEventsRequest request)

Methods that return long-running operations have "Async" method variants that return OperationFuture, which is used to track polling of the service.

  • purgeUserEventsAsync(EventStoreName parent, String filter, boolean force)

  • purgeUserEventsAsync(String parent, String filter, boolean force)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • purgeUserEventsOperationCallable()

  • purgeUserEventsCallable()

ImportUserEvents

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.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • importUserEventsAsync(EventStoreName parent, String requestId, InputConfig inputConfig, ImportErrorsConfig errorsConfig)

  • importUserEventsAsync(String parent, String requestId, InputConfig inputConfig, ImportErrorsConfig errorsConfig)

  • importUserEventsAsync(ImportUserEventsRequest request)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • importUserEventsOperationCallable()

  • importUserEventsCallable()

See the individual methods for example code.

Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.

This class can be customized by passing in a custom instance of UserEventServiceSettings to create(). For example:

To customize credentials:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 UserEventServiceSettings userEventServiceSettings =
     UserEventServiceSettings.newBuilder()
         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
         .build();
 UserEventServiceClient userEventServiceClient =
     UserEventServiceClient.create(userEventServiceSettings);
 

To customize the endpoint:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 UserEventServiceSettings userEventServiceSettings =
     UserEventServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
 UserEventServiceClient userEventServiceClient =
     UserEventServiceClient.create(userEventServiceSettings);
 

To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over the wire:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 UserEventServiceSettings userEventServiceSettings =
     UserEventServiceSettings.newHttpJsonBuilder().build();
 UserEventServiceClient userEventServiceClient =
     UserEventServiceClient.create(userEventServiceSettings);
 

Please refer to the GitHub repository's samples for more quickstart code snippets.

Inheritance

java.lang.Object > UserEventServiceClient

Static Methods

create()

public static final UserEventServiceClient create()

Constructs an instance of UserEventServiceClient with default settings.

Returns
Type Description
UserEventServiceClient
Exceptions
Type Description
IOException

create(UserEventServiceSettings settings)

public static final UserEventServiceClient create(UserEventServiceSettings settings)

Constructs an instance of UserEventServiceClient, using the given settings. The channels are created based on the settings passed in, or defaults for any settings that are not set.

Parameter
Name Description
settings UserEventServiceSettings
Returns
Type Description
UserEventServiceClient
Exceptions
Type Description
IOException

create(UserEventServiceStub stub)

public static final UserEventServiceClient create(UserEventServiceStub stub)

Constructs an instance of UserEventServiceClient, using the given stub for making calls. This is for advanced usage - prefer using create(UserEventServiceSettings).

Parameter
Name Description
stub UserEventServiceStub
Returns
Type Description
UserEventServiceClient

Constructors

UserEventServiceClient(UserEventServiceSettings settings)

protected UserEventServiceClient(UserEventServiceSettings settings)

Constructs an instance of UserEventServiceClient, using the given settings. This is protected so that it is easy to make a subclass, but otherwise, the static factory methods should be preferred.

Parameter
Name Description
settings UserEventServiceSettings

UserEventServiceClient(UserEventServiceStub stub)

protected UserEventServiceClient(UserEventServiceStub stub)
Parameter
Name Description
stub UserEventServiceStub

Methods

awaitTermination(long duration, TimeUnit unit)

public boolean awaitTermination(long duration, TimeUnit unit)
Parameters
Name Description
duration long
unit TimeUnit
Returns
Type Description
boolean
Exceptions
Type Description
InterruptedException

close()

public final void close()

collectUserEvent(CollectUserEventRequest request)

public final HttpBody collectUserEvent(CollectUserEventRequest request)

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 Recommendations AI JavaScript pixel. Users should not call this method directly.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   CollectUserEventRequest request =
       CollectUserEventRequest.newBuilder()
           .setParent(
               EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]")
                   .toString())
           .setUserEvent("userEvent315571599")
           .setUri("uri116076")
           .setEts(100772)
           .build();
   HttpBody response = userEventServiceClient.collectUserEvent(request);
 }
 
Parameter
Name Description
request CollectUserEventRequest

The request object containing all of the parameters for the API call.

Returns
Type Description
com.google.api.HttpBody

collectUserEvent(EventStoreName parent, String userEvent, String uri, long ets)

public final HttpBody collectUserEvent(EventStoreName parent, String userEvent, String uri, long ets)

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 Recommendations AI JavaScript pixel. Users should not call this method directly.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   EventStoreName parent =
       EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
   String userEvent = "userEvent315571599";
   String uri = "uri116076";
   long ets = 100772;
   HttpBody response = userEventServiceClient.collectUserEvent(parent, userEvent, uri, ets);
 }
 
Parameters
Name Description
parent EventStoreName

Required. The parent eventStore name, such as projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store.

userEvent String

Required. URL encoded UserEvent proto.

uri String

Optional. The url including cgi-parameters but excluding the hash fragment. The URL must be truncated to 1.5K bytes to conservatively be under the 2K bytes. This is often more useful than the referer url, because many browsers only send the domain for 3rd party requests.

ets long

Optional. The event timestamp in milliseconds. This prevents browser caching of otherwise identical get requests. The name is abbreviated to reduce the payload bytes.

Returns
Type Description
com.google.api.HttpBody

collectUserEvent(String parent, String userEvent, String uri, long ets)

public final HttpBody collectUserEvent(String parent, String userEvent, String uri, long ets)

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 Recommendations AI JavaScript pixel. Users should not call this method directly.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   String parent =
       EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]").toString();
   String userEvent = "userEvent315571599";
   String uri = "uri116076";
   long ets = 100772;
   HttpBody response = userEventServiceClient.collectUserEvent(parent, userEvent, uri, ets);
 }
 
Parameters
Name Description
parent String

Required. The parent eventStore name, such as projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store.

userEvent String

Required. URL encoded UserEvent proto.

uri String

Optional. The url including cgi-parameters but excluding the hash fragment. The URL must be truncated to 1.5K bytes to conservatively be under the 2K bytes. This is often more useful than the referer url, because many browsers only send the domain for 3rd party requests.

ets long

Optional. The event timestamp in milliseconds. This prevents browser caching of otherwise identical get requests. The name is abbreviated to reduce the payload bytes.

Returns
Type Description
com.google.api.HttpBody

collectUserEventCallable()

public final UnaryCallable<CollectUserEventRequest,HttpBody> collectUserEventCallable()

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 Recommendations AI JavaScript pixel. Users should not call this method directly.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   CollectUserEventRequest request =
       CollectUserEventRequest.newBuilder()
           .setParent(
               EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]")
                   .toString())
           .setUserEvent("userEvent315571599")
           .setUri("uri116076")
           .setEts(100772)
           .build();
   ApiFuture<HttpBody> future =
       userEventServiceClient.collectUserEventCallable().futureCall(request);
   // Do something.
   HttpBody response = future.get();
 }
 
Returns
Type Description
UnaryCallable<CollectUserEventRequest,com.google.api.HttpBody>

getHttpJsonOperationsClient()

public final OperationsClient getHttpJsonOperationsClient()

Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.

Returns
Type Description
OperationsClient

getOperationsClient()

public final OperationsClient getOperationsClient()

Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.

Returns
Type Description
OperationsClient

getSettings()

public final UserEventServiceSettings getSettings()
Returns
Type Description
UserEventServiceSettings

getStub()

public UserEventServiceStub getStub()
Returns
Type Description
UserEventServiceStub

importUserEventsAsync(EventStoreName parent, String requestId, InputConfig inputConfig, ImportErrorsConfig errorsConfig)

public final OperationFuture<ImportUserEventsResponse,ImportMetadata> importUserEventsAsync(EventStoreName parent, String requestId, InputConfig inputConfig, ImportErrorsConfig errorsConfig)

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.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   EventStoreName parent =
       EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
   String requestId = "requestId693933066";
   InputConfig inputConfig = InputConfig.newBuilder().build();
   ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
   ImportUserEventsResponse response =
       userEventServiceClient
           .importUserEventsAsync(parent, requestId, inputConfig, errorsConfig)
           .get();
 }
 
Parameters
Name Description
parent EventStoreName

Required. projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store

requestId String

Optional. Unique identifier provided by client, within the ancestor dataset scope. Ensures idempotency for expensive long running operations. Server-generated if unspecified. Up to 128 characters long. This is returned as google.longrunning.Operation.name in the response. Note that this field must not be set if the desired input config is catalog_inline_source.

inputConfig InputConfig

Required. The desired input location of the data.

errorsConfig ImportErrorsConfig

Optional. The desired location of errors incurred during the Import.

Returns
Type Description
OperationFuture<ImportUserEventsResponse,ImportMetadata>

importUserEventsAsync(ImportUserEventsRequest request)

public final OperationFuture<ImportUserEventsResponse,ImportMetadata> importUserEventsAsync(ImportUserEventsRequest request)

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.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   ImportUserEventsRequest request =
       ImportUserEventsRequest.newBuilder()
           .setParent(
               EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]")
                   .toString())
           .setRequestId("requestId693933066")
           .setInputConfig(InputConfig.newBuilder().build())
           .setErrorsConfig(ImportErrorsConfig.newBuilder().build())
           .build();
   ImportUserEventsResponse response =
       userEventServiceClient.importUserEventsAsync(request).get();
 }
 
Parameter
Name Description
request ImportUserEventsRequest

The request object containing all of the parameters for the API call.

Returns
Type Description
OperationFuture<ImportUserEventsResponse,ImportMetadata>

importUserEventsAsync(String parent, String requestId, InputConfig inputConfig, ImportErrorsConfig errorsConfig)

public final OperationFuture<ImportUserEventsResponse,ImportMetadata> importUserEventsAsync(String parent, String requestId, InputConfig inputConfig, ImportErrorsConfig errorsConfig)

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.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   String parent =
       EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]").toString();
   String requestId = "requestId693933066";
   InputConfig inputConfig = InputConfig.newBuilder().build();
   ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
   ImportUserEventsResponse response =
       userEventServiceClient
           .importUserEventsAsync(parent, requestId, inputConfig, errorsConfig)
           .get();
 }
 
Parameters
Name Description
parent String

Required. projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store

requestId String

Optional. Unique identifier provided by client, within the ancestor dataset scope. Ensures idempotency for expensive long running operations. Server-generated if unspecified. Up to 128 characters long. This is returned as google.longrunning.Operation.name in the response. Note that this field must not be set if the desired input config is catalog_inline_source.

inputConfig InputConfig

Required. The desired input location of the data.

errorsConfig ImportErrorsConfig

Optional. The desired location of errors incurred during the Import.

Returns
Type Description
OperationFuture<ImportUserEventsResponse,ImportMetadata>

importUserEventsCallable()

public final UnaryCallable<ImportUserEventsRequest,Operation> importUserEventsCallable()

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.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   ImportUserEventsRequest request =
       ImportUserEventsRequest.newBuilder()
           .setParent(
               EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]")
                   .toString())
           .setRequestId("requestId693933066")
           .setInputConfig(InputConfig.newBuilder().build())
           .setErrorsConfig(ImportErrorsConfig.newBuilder().build())
           .build();
   ApiFuture<Operation> future =
       userEventServiceClient.importUserEventsCallable().futureCall(request);
   // Do something.
   Operation response = future.get();
 }
 
Returns
Type Description
UnaryCallable<ImportUserEventsRequest,Operation>

importUserEventsOperationCallable()

public final OperationCallable<ImportUserEventsRequest,ImportUserEventsResponse,ImportMetadata> importUserEventsOperationCallable()

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.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   ImportUserEventsRequest request =
       ImportUserEventsRequest.newBuilder()
           .setParent(
               EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]")
                   .toString())
           .setRequestId("requestId693933066")
           .setInputConfig(InputConfig.newBuilder().build())
           .setErrorsConfig(ImportErrorsConfig.newBuilder().build())
           .build();
   OperationFuture<ImportUserEventsResponse, ImportMetadata> future =
       userEventServiceClient.importUserEventsOperationCallable().futureCall(request);
   // Do something.
   ImportUserEventsResponse response = future.get();
 }
 
Returns
Type Description
OperationCallable<ImportUserEventsRequest,ImportUserEventsResponse,ImportMetadata>

isShutdown()

public boolean isShutdown()
Returns
Type Description
boolean

isTerminated()

public boolean isTerminated()
Returns
Type Description
boolean

listUserEvents(EventStoreName parent, String filter)

public final UserEventServiceClient.ListUserEventsPagedResponse listUserEvents(EventStoreName parent, String filter)

Gets a list of user events within a time range, with potential filtering.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   EventStoreName parent =
       EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
   String filter = "filter-1274492040";
   for (UserEvent element : userEventServiceClient.listUserEvents(parent, filter).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameters
Name Description
parent EventStoreName

Required. The parent eventStore resource name, such as projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store.

filter String

Optional. Filtering expression to specify restrictions over returned events. This is a sequence of terms, where each term applies some kind of a restriction to the returned user events. Use this expression to restrict results to a specific time range, or filter events by eventType. eg: eventTime > "2012-04-23T18:25:43.511Z" eventsMissingCatalogItems eventTime<"2012-04-23T18:25:43.511Z" eventType=search

We expect only 3 types of fields:

* eventTime: this can be specified a maximum of 2 times, once with a less than operator and once with a greater than operator. The eventTime restrict should result in one contiguous valid eventTime range.

* eventType: only 1 eventType restriction can be specified.

* eventsMissingCatalogItems: specififying this will restrict results to events for which catalog items were not found in the catalog. The default behavior is to return only those events for which catalog items were found.

Some examples of valid filters expressions:

* Example 1: eventTime > "2012-04-23T18:25:43.511Z" eventTime < "2012-04-23T18:30:43.511Z" * Example 2: eventTime > "2012-04-23T18:25:43.511Z" eventType = detail-page-view * Example 3: eventsMissingCatalogItems eventType = search eventTime < "2018-04-23T18:30:43.511Z" * Example 4: eventTime > "2012-04-23T18:25:43.511Z" * Example 5: eventType = search * Example 6: eventsMissingCatalogItems

Returns
Type Description
UserEventServiceClient.ListUserEventsPagedResponse

listUserEvents(ListUserEventsRequest request)

public final UserEventServiceClient.ListUserEventsPagedResponse listUserEvents(ListUserEventsRequest request)

Gets a list of user events within a time range, with potential filtering.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   ListUserEventsRequest request =
       ListUserEventsRequest.newBuilder()
           .setParent(
               EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]")
                   .toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .setFilter("filter-1274492040")
           .build();
   for (UserEvent element : userEventServiceClient.listUserEvents(request).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
Name Description
request ListUserEventsRequest

The request object containing all of the parameters for the API call.

Returns
Type Description
UserEventServiceClient.ListUserEventsPagedResponse

listUserEvents(String parent, String filter)

public final UserEventServiceClient.ListUserEventsPagedResponse listUserEvents(String parent, String filter)

Gets a list of user events within a time range, with potential filtering.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   String parent =
       EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]").toString();
   String filter = "filter-1274492040";
   for (UserEvent element : userEventServiceClient.listUserEvents(parent, filter).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameters
Name Description
parent String

Required. The parent eventStore resource name, such as projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store.

filter String

Optional. Filtering expression to specify restrictions over returned events. This is a sequence of terms, where each term applies some kind of a restriction to the returned user events. Use this expression to restrict results to a specific time range, or filter events by eventType. eg: eventTime > "2012-04-23T18:25:43.511Z" eventsMissingCatalogItems eventTime<"2012-04-23T18:25:43.511Z" eventType=search

We expect only 3 types of fields:

* eventTime: this can be specified a maximum of 2 times, once with a less than operator and once with a greater than operator. The eventTime restrict should result in one contiguous valid eventTime range.

* eventType: only 1 eventType restriction can be specified.

* eventsMissingCatalogItems: specififying this will restrict results to events for which catalog items were not found in the catalog. The default behavior is to return only those events for which catalog items were found.

Some examples of valid filters expressions:

* Example 1: eventTime > "2012-04-23T18:25:43.511Z" eventTime < "2012-04-23T18:30:43.511Z" * Example 2: eventTime > "2012-04-23T18:25:43.511Z" eventType = detail-page-view * Example 3: eventsMissingCatalogItems eventType = search eventTime < "2018-04-23T18:30:43.511Z" * Example 4: eventTime > "2012-04-23T18:25:43.511Z" * Example 5: eventType = search * Example 6: eventsMissingCatalogItems

Returns
Type Description
UserEventServiceClient.ListUserEventsPagedResponse

listUserEventsCallable()

public final UnaryCallable<ListUserEventsRequest,ListUserEventsResponse> listUserEventsCallable()

Gets a list of user events within a time range, with potential filtering.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   ListUserEventsRequest request =
       ListUserEventsRequest.newBuilder()
           .setParent(
               EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]")
                   .toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .setFilter("filter-1274492040")
           .build();
   while (true) {
     ListUserEventsResponse response =
         userEventServiceClient.listUserEventsCallable().call(request);
     for (UserEvent element : response.getUserEventsList()) {
       // doThingsWith(element);
     }
     String nextPageToken = response.getNextPageToken();
     if (!Strings.isNullOrEmpty(nextPageToken)) {
       request = request.toBuilder().setPageToken(nextPageToken).build();
     } else {
       break;
     }
   }
 }
 
Returns
Type Description
UnaryCallable<ListUserEventsRequest,ListUserEventsResponse>

listUserEventsPagedCallable()

public final UnaryCallable<ListUserEventsRequest,UserEventServiceClient.ListUserEventsPagedResponse> listUserEventsPagedCallable()

Gets a list of user events within a time range, with potential filtering.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   ListUserEventsRequest request =
       ListUserEventsRequest.newBuilder()
           .setParent(
               EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]")
                   .toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .setFilter("filter-1274492040")
           .build();
   ApiFuture<UserEvent> future =
       userEventServiceClient.listUserEventsPagedCallable().futureCall(request);
   // Do something.
   for (UserEvent element : future.get().iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Returns
Type Description
UnaryCallable<ListUserEventsRequest,ListUserEventsPagedResponse>

purgeUserEventsAsync(EventStoreName parent, String filter, boolean force)

public final OperationFuture<PurgeUserEventsResponse,PurgeUserEventsMetadata> purgeUserEventsAsync(EventStoreName parent, String filter, boolean force)

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.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   EventStoreName parent =
       EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
   String filter = "filter-1274492040";
   boolean force = true;
   PurgeUserEventsResponse response =
       userEventServiceClient.purgeUserEventsAsync(parent, filter, force).get();
 }
 
Parameters
Name Description
parent EventStoreName

Required. The resource name of the event_store under which the events are created. The format is projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}

filter String

Required. The filter string to specify the events to be deleted. Empty string filter is not allowed. This filter can also be used with ListUserEvents API to list events that will be deleted. The eligible fields for filtering are:

  • eventType - UserEvent.eventType field of type string.
  • eventTime - in ISO 8601 "zulu" format.
  • visitorId - field of type string. Specifying this will delete all events associated with a visitor.
  • userId - field of type string. Specifying this will delete all events associated with a user. Example 1: Deleting all events in a time range. eventTime > "2012-04-23T18:25:43.511Z" eventTime < "2012-04-23T18:30:43.511Z" Example 2: Deleting specific eventType in time range. eventTime > "2012-04-23T18:25:43.511Z" eventType = "detail-page-view" Example 3: Deleting all events for a specific visitor visitorId = visitor1024 The filtering fields are assumed to have an implicit AND.

force boolean

Optional. The default value is false. Override this flag to true to actually perform the purge. If the field is not set to true, a sampling of events to be deleted will be returned.

Returns
Type Description
OperationFuture<PurgeUserEventsResponse,PurgeUserEventsMetadata>

purgeUserEventsAsync(PurgeUserEventsRequest request)

public final OperationFuture<PurgeUserEventsResponse,PurgeUserEventsMetadata> purgeUserEventsAsync(PurgeUserEventsRequest request)

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.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   PurgeUserEventsRequest request =
       PurgeUserEventsRequest.newBuilder()
           .setParent(
               EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]")
                   .toString())
           .setFilter("filter-1274492040")
           .setForce(true)
           .build();
   PurgeUserEventsResponse response = userEventServiceClient.purgeUserEventsAsync(request).get();
 }
 
Parameter
Name Description
request PurgeUserEventsRequest

The request object containing all of the parameters for the API call.

Returns
Type Description
OperationFuture<PurgeUserEventsResponse,PurgeUserEventsMetadata>

purgeUserEventsAsync(String parent, String filter, boolean force)

public final OperationFuture<PurgeUserEventsResponse,PurgeUserEventsMetadata> purgeUserEventsAsync(String parent, String filter, boolean force)

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.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   String parent =
       EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]").toString();
   String filter = "filter-1274492040";
   boolean force = true;
   PurgeUserEventsResponse response =
       userEventServiceClient.purgeUserEventsAsync(parent, filter, force).get();
 }
 
Parameters
Name Description
parent String

Required. The resource name of the event_store under which the events are created. The format is projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}

filter String

Required. The filter string to specify the events to be deleted. Empty string filter is not allowed. This filter can also be used with ListUserEvents API to list events that will be deleted. The eligible fields for filtering are:

  • eventType - UserEvent.eventType field of type string.
  • eventTime - in ISO 8601 "zulu" format.
  • visitorId - field of type string. Specifying this will delete all events associated with a visitor.
  • userId - field of type string. Specifying this will delete all events associated with a user. Example 1: Deleting all events in a time range. eventTime > "2012-04-23T18:25:43.511Z" eventTime < "2012-04-23T18:30:43.511Z" Example 2: Deleting specific eventType in time range. eventTime > "2012-04-23T18:25:43.511Z" eventType = "detail-page-view" Example 3: Deleting all events for a specific visitor visitorId = visitor1024 The filtering fields are assumed to have an implicit AND.

force boolean

Optional. The default value is false. Override this flag to true to actually perform the purge. If the field is not set to true, a sampling of events to be deleted will be returned.

Returns
Type Description
OperationFuture<PurgeUserEventsResponse,PurgeUserEventsMetadata>

purgeUserEventsCallable()

public final UnaryCallable<PurgeUserEventsRequest,Operation> purgeUserEventsCallable()

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.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   PurgeUserEventsRequest request =
       PurgeUserEventsRequest.newBuilder()
           .setParent(
               EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]")
                   .toString())
           .setFilter("filter-1274492040")
           .setForce(true)
           .build();
   ApiFuture<Operation> future =
       userEventServiceClient.purgeUserEventsCallable().futureCall(request);
   // Do something.
   Operation response = future.get();
 }
 
Returns
Type Description
UnaryCallable<PurgeUserEventsRequest,Operation>

purgeUserEventsOperationCallable()

public final OperationCallable<PurgeUserEventsRequest,PurgeUserEventsResponse,PurgeUserEventsMetadata> purgeUserEventsOperationCallable()

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.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   PurgeUserEventsRequest request =
       PurgeUserEventsRequest.newBuilder()
           .setParent(
               EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]")
                   .toString())
           .setFilter("filter-1274492040")
           .setForce(true)
           .build();
   OperationFuture<PurgeUserEventsResponse, PurgeUserEventsMetadata> future =
       userEventServiceClient.purgeUserEventsOperationCallable().futureCall(request);
   // Do something.
   PurgeUserEventsResponse response = future.get();
 }
 
Returns
Type Description
OperationCallable<PurgeUserEventsRequest,PurgeUserEventsResponse,PurgeUserEventsMetadata>

shutdown()

public void shutdown()

shutdownNow()

public void shutdownNow()

writeUserEvent(EventStoreName parent, UserEvent userEvent)

public final UserEvent writeUserEvent(EventStoreName parent, UserEvent userEvent)

Writes a single user event.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   EventStoreName parent =
       EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
   UserEvent userEvent = UserEvent.newBuilder().build();
   UserEvent response = userEventServiceClient.writeUserEvent(parent, userEvent);
 }
 
Parameters
Name Description
parent EventStoreName

Required. The parent eventStore resource name, such as projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store.

userEvent UserEvent

Required. User event to write.

Returns
Type Description
UserEvent

writeUserEvent(WriteUserEventRequest request)

public final UserEvent writeUserEvent(WriteUserEventRequest request)

Writes a single user event.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   WriteUserEventRequest request =
       WriteUserEventRequest.newBuilder()
           .setParent(
               EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]")
                   .toString())
           .setUserEvent(UserEvent.newBuilder().build())
           .build();
   UserEvent response = userEventServiceClient.writeUserEvent(request);
 }
 
Parameter
Name Description
request WriteUserEventRequest

The request object containing all of the parameters for the API call.

Returns
Type Description
UserEvent

writeUserEvent(String parent, UserEvent userEvent)

public final UserEvent writeUserEvent(String parent, UserEvent userEvent)

Writes a single user event.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   String parent =
       EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]").toString();
   UserEvent userEvent = UserEvent.newBuilder().build();
   UserEvent response = userEventServiceClient.writeUserEvent(parent, userEvent);
 }
 
Parameters
Name Description
parent String

Required. The parent eventStore resource name, such as projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store.

userEvent UserEvent

Required. User event to write.

Returns
Type Description
UserEvent

writeUserEventCallable()

public final UnaryCallable<WriteUserEventRequest,UserEvent> writeUserEventCallable()

Writes a single user event.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
   WriteUserEventRequest request =
       WriteUserEventRequest.newBuilder()
           .setParent(
               EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]")
                   .toString())
           .setUserEvent(UserEvent.newBuilder().build())
           .build();
   ApiFuture<UserEvent> future =
       userEventServiceClient.writeUserEventCallable().futureCall(request);
   // Do something.
   UserEvent response = future.get();
 }
 
Returns
Type Description
UnaryCallable<WriteUserEventRequest,UserEvent>