This page describes how to view and delete user events. For information about recording user events as they happen, see Recording user events. To import user event data from past events, see Importing user events.
Removing user events
Generally, you should leave user events in place after they have been recorded.
However, if you have user events that were not recorded properly, you can
remove them from your event store using the
userEvents.purge
method.
Specify the events you want to remove by using a filter string. This
supports selectively deleting user events by filtering on the eventTime
,
eventType
, visitorID
, and userID
fields.
Because you cannot undo the delete, test your filter string by conducting a dry
run before deleting user events. The force
field is set to false
by
default; this setting will return the number of events to be deleted without
actually deleting them. When you are ready to actually delete the user events,
set the force
field to true
.
curl
This example filters for a time range, which must use the
Zulu Time date format.
The force
field is set to false
.
curl -X POST \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token)"" \ -H "Content-Type: application/json; charset=utf-8" \ --data '{ "filter":"eventTime > \"2019-12-23T18:25:43.511Z\" eventTime < \"2019-12-23T18:30:43.511Z\"", "force":"false" }' \ "https://retail.googleapis.com/v2/projects/[PROJECT_ID]/locations/global/catalogs/default_catalog/userEvents:purge"
You should receive a response object that looks something like this, where
purge-user-events-54321
is the operation ID:
{ "name": "projects/[PROJECT_ID]/locations/global/catalogs/default_catalog/operations/purge-user-events-54321" }
This example requests the operation status:
curl -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://retail.googleapis.com/v2/projects/[PROJECT_ID]/locations/global/catalogs/default_catalog/operations/[OPERATION_ID]"
Operation status example:
{ "name": "projects/[PROJECT_ID]/locations/global/catalogs/default_catalog/operations/[OPERATION_ID]", "done": true, "response": { "@type": "type.googleapis.com/google.cloud.retail.v2main.PurgeUserEventsResponse", "purgedEventsCount": "1" } }
Setting the force
field to true
forces the delete to occur.
curl -X POST \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token)"" \ -H "Content-Type: application/json; charset=utf-8" \ --data '{ "filter":"eventTime > \"2019-12-23T18:25:43.511Z\" eventTime < \"2019-12-23T18:30:43.511Z\"", "force":"true" }' \ "https://retail.googleapis.com/v2/projects/[PROJECT_ID]/locations/global/catalogs/default_catalog/userEvents:purge"
Viewing aggregated user event information
You can view the number of recorded user events for your project in the Event tab on the Recommendations AI Data page. Metrics will appear about 24 hours after you first upload events to Recommendations AI.
Using the user event filter
You can filter user events to be deleted.
The filter is a string that contains one or more of the following restrictions:
eventTime
Provides a timestamp to bound the events to be deleted. This filter can be specified once or twice, with a greater-than (>) or less-than (<) symbol. The bounded time must be a single, contiguous block.
eventType
Restrict the events to be deleted to a single event type.
visitorID
Restrict the events to be deleted to a single visitor ID.
userID
Restrict the events to be deleted to a single user ID.
Only user events that satisfy all of the restrictions are deleted.
To delete all user events of type add-to-cart
that were logged
on or after February 1, 2019, you would provide the following filter string:
eventTime > "2019-02-01T00:00:00Z" eventType = add-to-cart