Skip to content

Conversation

lindsey-volta
Copy link
Contributor

@lindsey-volta lindsey-volta commented Sep 12, 2025

Support overriding timestamp at the user property and event level (already supported at request level).

  • Add a new TimestampPicker component that allows users to easily select the timestamp_micros value using a DateTimePicker.
    • Use this component for request level timestamp and user property level timestamp.
  • Allow users to send timestamp micros at the event level (vs. request level) via JSON input if multiple events are provided.
  • Send request level timestamp_micros as a number based on proto file.

event validated with request level timestamp

image image image

event validated with user property level timestamp

image image image

event validated with no user property level timestamp

image image

@lindsey-volta lindsey-volta marked this pull request as ready for review September 12, 2025 16:50
onChange={e => setTimestamp(e.target.value)}
onBlur={() => setParamTimestamp(parseInt(timestamp, 10))}
label="timestamp micros"
helperText="The timestamp to be applied to the user property. Optional."
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we make it easier for the user to populate this field by giving them a date/time widget where they can select a value and we'll convert it to micros for them?
Many users of the Event Builder aren't necessarily developers, so the whole concept of timestamp micros might be confusing.

variant="outlined"
size="small"
value={timestamp}
onChange={e => setTimestamp(e.target.value)}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we warn them if the timestamp is invalid, or show them what their value translates to in terms of a standard date/time format? This would help them visually verify that the value is what they intended.
Also, I've seen confusion from users due to the fact that engagement_time_msec is in millis, but timestamp_micros is in micros. If a user accidentally used a millis value, for example, it'd be great if we could show them that it translated to the beginning of the current epoch. :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants