Discovery Engine v1 API - Class UserEventServiceClient (1.3.0)

public abstract class UserEventServiceClient

Reference documentation and code samples for the Discovery Engine v1 API class UserEventServiceClient.

UserEventService client wrapper, for convenient use.

Inheritance

object > UserEventServiceClient

Namespace

Google.Cloud.DiscoveryEngine.V1

Assembly

Google.Cloud.DiscoveryEngine.V1.dll

Remarks

Service for ingesting end user actions on a website to Discovery Engine API.

Properties

DefaultEndpoint

public static string DefaultEndpoint { get; }

The default endpoint for the UserEventService service, which is a host of "discoveryengine.googleapis.com" and a port of 443.

Property Value
Type Description
string

DefaultScopes

public static IReadOnlyList<string> DefaultScopes { get; }

The default UserEventService scopes.

Property Value
Type Description
IReadOnlyListstring
Remarks

The default UserEventService scopes are:

GrpcClient

public virtual UserEventService.UserEventServiceClient GrpcClient { get; }

The underlying gRPC UserEventService client

Property Value
Type Description
UserEventServiceUserEventServiceClient

ImportUserEventsOperationsClient

public virtual OperationsClient ImportUserEventsOperationsClient { get; }

The long-running operations client for ImportUserEvents.

Property Value
Type Description
OperationsClient

LocationsClient

public virtual LocationsClient LocationsClient { get; }

The LocationsClient associated with this client.

Property Value
Type Description
LocationsClient

ServiceMetadata

public static ServiceMetadata ServiceMetadata { get; }

The service metadata associated with this client type.

Property Value
Type Description
ServiceMetadata

Methods

CollectUserEvent(CollectUserEventRequest, CallSettings)

public virtual HttpBody CollectUserEvent(CollectUserEventRequest request, CallSettings callSettings = null)

Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a third-party domain.

This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.

Parameters
Name Description
request CollectUserEventRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
HttpBody

The RPC response.

Example
// Create client
UserEventServiceClient userEventServiceClient = UserEventServiceClient.Create();
// Initialize request argument(s)
CollectUserEventRequest request = new CollectUserEventRequest
{
    ParentAsDataStoreName = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]"),
    UserEvent = "",
    Uri = "",
    Ets = 0L,
};
// Make the request
HttpBody response = userEventServiceClient.CollectUserEvent(request);

CollectUserEventAsync(CollectUserEventRequest, CallSettings)

public virtual Task<HttpBody> CollectUserEventAsync(CollectUserEventRequest request, CallSettings callSettings = null)

Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a third-party domain.

This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.

Parameters
Name Description
request CollectUserEventRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskHttpBody

A Task containing the RPC response.

Example
// Create client
UserEventServiceClient userEventServiceClient = await UserEventServiceClient.CreateAsync();
// Initialize request argument(s)
CollectUserEventRequest request = new CollectUserEventRequest
{
    ParentAsDataStoreName = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]"),
    UserEvent = "",
    Uri = "",
    Ets = 0L,
};
// Make the request
HttpBody response = await userEventServiceClient.CollectUserEventAsync(request);

CollectUserEventAsync(CollectUserEventRequest, CancellationToken)

public virtual Task<HttpBody> CollectUserEventAsync(CollectUserEventRequest request, CancellationToken cancellationToken)

Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a third-party domain.

This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.

Parameters
Name Description
request CollectUserEventRequest

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

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
TaskHttpBody

A Task containing the RPC response.

Example
// Create client
UserEventServiceClient userEventServiceClient = await UserEventServiceClient.CreateAsync();
// Initialize request argument(s)
CollectUserEventRequest request = new CollectUserEventRequest
{
    ParentAsDataStoreName = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]"),
    UserEvent = "",
    Uri = "",
    Ets = 0L,
};
// Make the request
HttpBody response = await userEventServiceClient.CollectUserEventAsync(request);

Create()

public static UserEventServiceClient Create()

Synchronously creates a UserEventServiceClient using the default credentials, endpoint and settings. To specify custom credentials or other settings, use UserEventServiceClientBuilder.

Returns
Type Description
UserEventServiceClient

The created UserEventServiceClient.

CreateAsync(CancellationToken)

public static Task<UserEventServiceClient> CreateAsync(CancellationToken cancellationToken = default)

Asynchronously creates a UserEventServiceClient using the default credentials, endpoint and settings. To specify custom credentials or other settings, use UserEventServiceClientBuilder.

Parameter
Name Description
cancellationToken CancellationToken

The CancellationToken to use while creating the client.

Returns
Type Description
TaskUserEventServiceClient

The task representing the created UserEventServiceClient.

ImportUserEvents(ImportUserEventsRequest, CallSettings)

public virtual Operation<ImportUserEventsResponse, ImportUserEventsMetadata> ImportUserEvents(ImportUserEventsRequest request, CallSettings callSettings = null)

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.

Parameters
Name Description
request ImportUserEventsRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
OperationImportUserEventsResponseImportUserEventsMetadata

The RPC response.

Example
// Create client
UserEventServiceClient userEventServiceClient = UserEventServiceClient.Create();
// Initialize request argument(s)
ImportUserEventsRequest request = new ImportUserEventsRequest
{
    ParentAsDataStoreName = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]"),
    InlineSource = new ImportUserEventsRequest.Types.InlineSource(),
    ErrorConfig = new ImportErrorConfig(),
};
// Make the request
Operation<ImportUserEventsResponse, ImportUserEventsMetadata> response = userEventServiceClient.ImportUserEvents(request);

// Poll until the returned long-running operation is complete
Operation<ImportUserEventsResponse, ImportUserEventsMetadata> completedResponse = response.PollUntilCompleted();
// Retrieve the operation result
ImportUserEventsResponse result = completedResponse.Result;

// Or get the name of the operation
string operationName = response.Name;
// This name can be stored, then the long-running operation retrieved later by name
Operation<ImportUserEventsResponse, ImportUserEventsMetadata> retrievedResponse = userEventServiceClient.PollOnceImportUserEvents(operationName);
// Check if the retrieved long-running operation has completed
if (retrievedResponse.IsCompleted)
{
    // If it has completed, then access the result
    ImportUserEventsResponse retrievedResult = retrievedResponse.Result;
}

ImportUserEventsAsync(ImportUserEventsRequest, CallSettings)

public virtual Task<Operation<ImportUserEventsResponse, ImportUserEventsMetadata>> ImportUserEventsAsync(ImportUserEventsRequest request, CallSettings callSettings = null)

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.

Parameters
Name Description
request ImportUserEventsRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskOperationImportUserEventsResponseImportUserEventsMetadata

A Task containing the RPC response.

Example
// Create client
UserEventServiceClient userEventServiceClient = await UserEventServiceClient.CreateAsync();
// Initialize request argument(s)
ImportUserEventsRequest request = new ImportUserEventsRequest
{
    ParentAsDataStoreName = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]"),
    InlineSource = new ImportUserEventsRequest.Types.InlineSource(),
    ErrorConfig = new ImportErrorConfig(),
};
// Make the request
Operation<ImportUserEventsResponse, ImportUserEventsMetadata> response = await userEventServiceClient.ImportUserEventsAsync(request);

// Poll until the returned long-running operation is complete
Operation<ImportUserEventsResponse, ImportUserEventsMetadata> completedResponse = await response.PollUntilCompletedAsync();
// Retrieve the operation result
ImportUserEventsResponse result = completedResponse.Result;

// Or get the name of the operation
string operationName = response.Name;
// This name can be stored, then the long-running operation retrieved later by name
Operation<ImportUserEventsResponse, ImportUserEventsMetadata> retrievedResponse = await userEventServiceClient.PollOnceImportUserEventsAsync(operationName);
// Check if the retrieved long-running operation has completed
if (retrievedResponse.IsCompleted)
{
    // If it has completed, then access the result
    ImportUserEventsResponse retrievedResult = retrievedResponse.Result;
}

ImportUserEventsAsync(ImportUserEventsRequest, CancellationToken)

public virtual Task<Operation<ImportUserEventsResponse, ImportUserEventsMetadata>> ImportUserEventsAsync(ImportUserEventsRequest request, CancellationToken cancellationToken)

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.

Parameters
Name Description
request ImportUserEventsRequest

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

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
TaskOperationImportUserEventsResponseImportUserEventsMetadata

A Task containing the RPC response.

Example
// Create client
UserEventServiceClient userEventServiceClient = await UserEventServiceClient.CreateAsync();
// Initialize request argument(s)
ImportUserEventsRequest request = new ImportUserEventsRequest
{
    ParentAsDataStoreName = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]"),
    InlineSource = new ImportUserEventsRequest.Types.InlineSource(),
    ErrorConfig = new ImportErrorConfig(),
};
// Make the request
Operation<ImportUserEventsResponse, ImportUserEventsMetadata> response = await userEventServiceClient.ImportUserEventsAsync(request);

// Poll until the returned long-running operation is complete
Operation<ImportUserEventsResponse, ImportUserEventsMetadata> completedResponse = await response.PollUntilCompletedAsync();
// Retrieve the operation result
ImportUserEventsResponse result = completedResponse.Result;

// Or get the name of the operation
string operationName = response.Name;
// This name can be stored, then the long-running operation retrieved later by name
Operation<ImportUserEventsResponse, ImportUserEventsMetadata> retrievedResponse = await userEventServiceClient.PollOnceImportUserEventsAsync(operationName);
// Check if the retrieved long-running operation has completed
if (retrievedResponse.IsCompleted)
{
    // If it has completed, then access the result
    ImportUserEventsResponse retrievedResult = retrievedResponse.Result;
}

PollOnceImportUserEvents(string, CallSettings)

public virtual Operation<ImportUserEventsResponse, ImportUserEventsMetadata> PollOnceImportUserEvents(string operationName, CallSettings callSettings = null)

Poll an operation once, using an operationName from a previous invocation of ImportUserEvents.

Parameters
Name Description
operationName string

The name of a previously invoked operation. Must not be null or empty.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
OperationImportUserEventsResponseImportUserEventsMetadata

The result of polling the operation.

PollOnceImportUserEventsAsync(string, CallSettings)

public virtual Task<Operation<ImportUserEventsResponse, ImportUserEventsMetadata>> PollOnceImportUserEventsAsync(string operationName, CallSettings callSettings = null)

Asynchronously poll an operation once, using an operationName from a previous invocation of ImportUserEvents.

Parameters
Name Description
operationName string

The name of a previously invoked operation. Must not be null or empty.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskOperationImportUserEventsResponseImportUserEventsMetadata

A task representing the result of polling the operation.

ShutdownDefaultChannelsAsync()

public static Task ShutdownDefaultChannelsAsync()

Shuts down any channels automatically created by Create() and CreateAsync(CancellationToken). Channels which weren't automatically created are not affected.

Returns
Type Description
Task

A task representing the asynchronous shutdown operation.

Remarks

After calling this method, further calls to Create() and CreateAsync(CancellationToken) will create new channels, which could in turn be shut down by another call to this method.

WriteUserEvent(WriteUserEventRequest, CallSettings)

public virtual UserEvent WriteUserEvent(WriteUserEventRequest request, CallSettings callSettings = null)

Writes a single user event.

Parameters
Name Description
request WriteUserEventRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
UserEvent

The RPC response.

Example
// Create client
UserEventServiceClient userEventServiceClient = UserEventServiceClient.Create();
// Initialize request argument(s)
WriteUserEventRequest request = new WriteUserEventRequest
{
    ParentAsDataStoreName = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]"),
    UserEvent = new UserEvent(),
    WriteAsync = false,
};
// Make the request
UserEvent response = userEventServiceClient.WriteUserEvent(request);

WriteUserEventAsync(WriteUserEventRequest, CallSettings)

public virtual Task<UserEvent> WriteUserEventAsync(WriteUserEventRequest request, CallSettings callSettings = null)

Writes a single user event.

Parameters
Name Description
request WriteUserEventRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskUserEvent

A Task containing the RPC response.

Example
// Create client
UserEventServiceClient userEventServiceClient = await UserEventServiceClient.CreateAsync();
// Initialize request argument(s)
WriteUserEventRequest request = new WriteUserEventRequest
{
    ParentAsDataStoreName = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]"),
    UserEvent = new UserEvent(),
    WriteAsync = false,
};
// Make the request
UserEvent response = await userEventServiceClient.WriteUserEventAsync(request);

WriteUserEventAsync(WriteUserEventRequest, CancellationToken)

public virtual Task<UserEvent> WriteUserEventAsync(WriteUserEventRequest request, CancellationToken cancellationToken)

Writes a single user event.

Parameters
Name Description
request WriteUserEventRequest

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

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
TaskUserEvent

A Task containing the RPC response.

Example
// Create client
UserEventServiceClient userEventServiceClient = await UserEventServiceClient.CreateAsync();
// Initialize request argument(s)
WriteUserEventRequest request = new WriteUserEventRequest
{
    ParentAsDataStoreName = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]"),
    UserEvent = new UserEvent(),
    WriteAsync = false,
};
// Make the request
UserEvent response = await userEventServiceClient.WriteUserEventAsync(request);