Event tracking for UBI

Type: object

Version 1.2.0; last updated 2024-???. An event that occurred, typically in response to a user.

Type: string

Name of the application that is integrated with UBI. You can think of application as in a source of search queries. For example, if you have a type ahead and a traditional search UI, then you might have type-ahead and primary-search as values.

Must be at most 100 characters long


Examples:

"type-ahead"
"primary-search"
"amazon-shop"
"ABC-microservice"
"doctor-search"


The name of the action that triggered the event. We have a set of common defaults, however you can pass in whatever you want.

Type: enum (of string)

Must be one of:

  • "click_through"
  • "add_to_cart"
  • "click"
  • "watch"
  • "view"
  • "purchase"
  • "impression"
Type: string

Must be at most 100 characters long


The unique identifier of a query, typically a UUID, but can be any string.

Type: stringFormat: uuid

Example:

"00112233-4455-6677-8899-aabbccddeeff"
Type: string

Must be at most 100 characters long


Example:

"1234-user-5678"

Type: string

The session of the user creating the interactions. This allows us to correlate the interactions with the other events created by a service that recognizes session IDs. Can be used to track unique visits for authenticated and anonymous users.

Must be at most 100 characters long


Example:

"84266fdbd31d4c2c6d0665f7e8380fa3"

Type: string

The client issuing the query. This could be a unique browser, a microservice that performs searches, a crawling bot.

Must be at most 100 characters long


Examples:

"5e3b2a1c-8b7d-4f2e-a3d4-c9b2e1f3a4b5"
"quepid-nightly-bot"
"BugsBunny::Firefox@0967084"

Type: string

The user ID associated with the person performing the interactions being logged on the site. Can be null/empty in case of an unauthenticated user.

Must be at most 100 characters long


Example:

"5e3b2a1c-8b7d-4f2e-a3d4-c9b2e1f3a4b5"

Type: stringFormat: date-time

When the event took place. This timestamp is formatted according to the ISO 8601 standard.


Example:

"2018-11-13T20:20:39+00:00"

Type: string

Group various action_name's into logical bins.

Must be at most 100 characters long


Examples:

"QUERY"
"CONVERSION"

Type: string

Optional text message for the log entry. For example, for a message_type of QUERY, we would expect the text to be about what the user is searching on.

Must be at most 1024 characters long

Type: object

Extensible details about a specific event. A common example of an Additional Properties is the specific identifier of the user (user_id). Note: a user identifier is different then the required client_id attribute.

Type: object

Structure which contains identifying information of the object returned from the query that the user interacts with (i.e.: a book, a product, a post, etc..).


The id that a user could look up and find the object instance within the document corpus. Examples include: ssn, isbn, ean, etc. Variants need to be incorporated in the object_id, so for a t-shirt that is red, you would need SKU level as the object_id.

Type: string

Must be at most 256 characters long


Examples:

"XYZ-12345"
"ISBN 0-061-96436-0"
"123"


The type of the object id that the user is searching for. For a social e-commerce site, these could include product, user, post, comment and so on.

Type: enum (of string)

Must be one of:

  • "product"
  • "user"
  • "post"
  • "comment"
  • "video"
Type: string

Must be at most 100 characters long

Type: string

The name of the field that has the id of the objects that will be stored in the backend queries data store. So it you have a query for products and want to save the SKUs, then this might be sku and if you are querying for people, maybe this is ssn. If you do not provide this value then the default primary identifier in your search index will be used. For example _id on OpenSearch.

Must be at most 100 characters long


A unique id that the an individual search engine uses internally to index the object via. For example, in OpenSearch, think the _id field in the indices.

Type: string

Must be at most 256 characters long


Examples:

"1"
"123456"

Additional Properties of any type are allowed.

Type: object


Structure that contains information on the location of the event origin, such as screen x,y coordinates, or the nth object out of 10 results.

Type: object

Type: object

The nth position of the document on the search results page.

Type: integer

The position of the document. For grid layout this would be left to right, ignoring wrapping.


Examples:

1
3
24
Type: object

Type: object

The x,y coordinates on the screen for triggering an event.

Type: number

The horizontal location on the page or screen of the event.

Type: number

The vertical location on the page or screen of the event.

Additional Properties of any type are allowed.

Type: object

Additional Properties of any type are allowed.

Type: object