Get Session Events
Return the full set of captured events for a specified Session
Path Parameters
A successful response.
Schema
- Array [
- Array [
- ]
- Array [
- ]
- Array [
- ]
- ]
events object[] optional
JSON array of session events based on the Events model.
The device ID indicates a unique recording device for the event. For web recording, the ID corresponds to a unique user cookie. For mobile recording, this corresponds to a single app/device combo. This field is always present.
If present, indicates the session for the event.
If present, indicates the view for the event. For web recording, this corresponds to a single page load. For mobile recording, this corresponds to a continuous period of recording.
The timestamp for when the event was occurred.
The type of the event.
event_properties object optional
Details about the event.
navigate object optional
Indicates any suspicious activity detected in the navigate event.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
load object optional
The time it took for the document to be parsed and the DOM tree to be constructed.
The time it took for the page to load completely.
The Time to Interactive (TTI) is the time it takes for the page to become fully interactive.
The Total Blocking Time (TBT) is the total amount of time that the page was blocked after the FCP.
The Time to First Byte (TTFB) is the time it takes for the first byte of the response to be received.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
click object optional
target object optional
The target of the click event.
The full selector path to the event's target element.
The relevant text of the event's target element, such as inner text for click events and values for input change events.
If true, indicates that the target text is empty because it was masked due to a privacy rule.
The ID of the most specific, matching user-configured Named Element.
Additional matching Named Element IDs.
Properties extracted from configured attributes on the target element.
If greater than 0, indicates that the click was part of a rage click sequence. Learn more.
This value will be 1
if the click did not have an effect on the page, thus is considered dead.
Learn more.
If true, indicates that the click was a long click. Only available on mobile.
If true, indicates that the click was unhandled. Only available on mobile.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
change object optional
target object optional
The target of the change event.
The full selector path to the event's target element.
The relevant text of the event's target element, such as inner text for click events and values for input change events.
If true, indicates that the target text is empty because it was masked due to a privacy rule.
The ID of the most specific, matching user-configured Named Element.
Additional matching Named Element IDs.
Properties extracted from configured attributes on the target element.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
tap object optional
target object optional
The full selector path to the event's target element.
The relevant text of the event's target element, such as inner text for click events and values for input change events.
If true, indicates that the target text is empty because it was masked due to a privacy rule.
The ID of the most specific, matching user-configured Named Element.
Additional matching Named Element IDs.
Properties extracted from configured attributes on the target element.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
mouse_thrash object optional
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
form_abandon object optional
target object optional
The target indicates the form that was abandoned.
The full selector path to the event's target element.
The relevant text of the event's target element, such as inner text for click events and values for input change events.
If true, indicates that the target text is empty because it was masked due to a privacy rule.
The ID of the most specific, matching user-configured Named Element.
Additional matching Named Element IDs.
Properties extracted from configured attributes on the target element.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
element_seen object optional
The amount of time that the element was rendered.
The amount of time that the element was visible.
The type of the Watched Element at the element_start_time
.
The time at which the Watched Element was first rendered or made visible.
target object optional
The watched element target.
The full selector path to the event's target element.
The relevant text of the event's target element, such as inner text for click events and values for input change events.
If true, indicates that the target text is empty because it was masked due to a privacy rule.
The ID of the most specific, matching user-configured Named Element.
Additional matching Named Element IDs.
Properties extracted from configured attributes on the target element.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
request object optional
The HTTP request method (GET, POST, etc).
request_url object optional
The request URL.
A full URL including the protocol, host, path, query, and hash.
The host portion of the URL. e.g. www.example.com
.
The path portion of the URL. e.g. /path/to/page
.
query object optional
The query portion of the URL, structured as an object where the key is the query parameter name and the value is
a list of values for that parameter.
For example, /path/to/page?foo=bar&baz=qux&baz=boop
would be represented as { "foo": { "values": ["bar"] }, "baz": { "values": ["qux", "boop"] }}
.
property name* object optional
The hash path of the URL. e.g. #/path/to/page
would be represented as /path/to/page
.
hash_query object optional
The hash query of the URL, structured as an object where the key is the query parameter name and the value is
a list of values for that parameter.
For example, #/path/to/page?foo=bar&baz=qux&baz=boop
would be represented as { "foo": { "values": ["bar"] }, "baz": { "values": ["qux", "boop"] }}
.
property name* object optional
The HTTP status code of the request.
The duration of the request.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
background object optional
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
crash object optional
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
custom object optional
The name of the custom event as provided by the API.
An object containing the parsed payload of the custom event.
fs_api_errors object[] optional
Any errors that occurred while processing the custom event.
The reason for the error.
If present, the name/key of the field that is invalid.
If present, the json representation of the invalid value.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
identify object optional
The unique ID for the user provided through the API.
If present, the email address for the user.
The display name for the user as provided through the API. If none is provided, this will be generated by the Fullstory backend.
An object containing the parsed payload of the user properties provided through the API.
fs_api_errors object[] optional
Any errors that occurred while processing the user properties.
The reason for the error.
If present, the name/key of the field that is invalid.
If present, the json representation of the invalid value.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
redact object optional
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
detection object optional
Specifies the type of data discovered (payment card, email, etc).
Specifies the source of the data (navigation url, element, etc).
Source-specific value that gives extra detail on the data origin.
detection_request_url object optional
For network request sources, specifies the associated request url. For log / exception sources, specifies the source file url.
A full URL including the protocol, host, path, query, and hash.
The host portion of the URL. e.g. www.example.com
.
The path portion of the URL. e.g. /path/to/page
.
query object optional
The query portion of the URL, structured as an object where the key is the query parameter name and the value is
a list of values for that parameter.
For example, /path/to/page?foo=bar&baz=qux&baz=boop
would be represented as { "foo": { "values": ["bar"] }, "baz": { "values": ["qux", "boop"] }}
.
property name* object optional
The hash path of the URL. e.g. #/path/to/page
would be represented as /path/to/page
.
hash_query object optional
The hash query of the URL, structured as an object where the key is the query parameter name and the value is
a list of values for that parameter.
For example, #/path/to/page?foo=bar&baz=qux&baz=boop
would be represented as { "foo": { "values": ["bar"] }, "baz": { "values": ["qux", "boop"] }}
.
property name* object optional
target object optional
The full selector path to the event's target element.
The relevant text of the event's target element, such as inner text for click events and values for input change events.
If true, indicates that the target text is empty because it was masked due to a privacy rule.
The ID of the most specific, matching user-configured Named Element.
Additional matching Named Element IDs.
Properties extracted from configured attributes on the target element.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
keyboard_open object optional
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
keyboard_close object optional
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
low_memory object optional
The amount of memory available on the device at the time of the event.
The maximum amount of memory available on the device.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
page_properties object optional
The name of the page as provided through the API.
An object containing the parsed payload of the page properties provided through the API.
fs_api_errors object[] optional
Any errors that occurred while processing the page properties.
The reason for the error.
If present, the name/key of the field that is invalid.
If present, the json representation of the invalid value.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
pinch_gesture object optional
The change in the visual viewport after a finger pinch. If the change > 1.0, it implies scale in. If the change < 1.0, it implies scale out. If the change is exactly 1.0, it means a failed finger pinch.
Scale determines the overall page scale at the end of the pinch. It is the ratio of the layout viewport dimensions to visual viewport dimensions. When the page is scaled out to max, the scale is 1.0 and greater than 1.0 otherwise.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
exception object optional
The source file that produced the exception.
The number of times that this exception fired within a given window (useful for batching bursts of exceptions fired).
Whether the exception is caught or not.
The message associated with the exception.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
highlight object optional
target object optional
The target of the highlight event. The text
field indicates the highlighted text.
The full selector path to the event's target element.
The relevant text of the event's target element, such as inner text for click events and values for input change events.
If true, indicates that the target text is empty because it was masked due to a privacy rule.
The ID of the most specific, matching user-configured Named Element.
Additional matching Named Element IDs.
Properties extracted from configured attributes on the target element.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
copy object optional
target object optional
The target of the copy event. The text
field indicates the copied text.
The full selector path to the event's target element.
The relevant text of the event's target element, such as inner text for click events and values for input change events.
If true, indicates that the target text is empty because it was masked due to a privacy rule.
The ID of the most specific, matching user-configured Named Element.
Additional matching Named Element IDs.
Properties extracted from configured attributes on the target element.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
paste object optional
target object optional
The target of the past event. The 'text' field indicates the pasted text.
The full selector path to the event's target element.
The relevant text of the event's target element, such as inner text for click events and values for input change events.
If true, indicates that the target text is empty because it was masked due to a privacy rule.
The ID of the most specific, matching user-configured Named Element.
Additional matching Named Element IDs.
Properties extracted from configured attributes on the target element.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
console_message object optional
The level that the console message was logged at.
The text of the console message.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
consent object optional
If true, then a user has consented to capture elements that require consent.
The scope of the provided consent.
Indicates how this consent event was added during capture.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
rate_limit object optional
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
first_input_delay object optional
The time from the first user input event to the browser's response.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
cumulative_layout_shift object optional
The Cumulative Layout Shift (CLS) score for the page.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
keep object optional
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
page_view object optional
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
app_forced_restart object optional
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
interaction_to_next_paint object optional
The time from the first user input event to the next paint event.
The name of the event that triggered the first user input as reported by the browser.
Examples are: keydown
and mouseover
.
The ID of the most specific matching user-configured Defined Event.
Additional matching event definition IDs.
The source type describes the type of technology that is the source of this event.
source_properties object optional
Details about the corresponding EventSource.
web object optional
user_agent object optional
The user agent of the browser that generated the event.
An unprocessed user agent string. This value is used to derive the following fields.
There may be cases where this string is not in a known format,
in which case the derived fields will be either Unknown
or null.
If present, the type of device.
Example values include: Tablet
, Mobile
, Desktop
, Robot
.
If present, the operating system of the device.
Example values include: Windows
, OS X
, iOS
, Android
, and Linux
.
The browser used by the device or Unknown.
Example values include: Chrome
, Safari
, Firefox
, Microsoft Edge
, and Custom Agent
.
If present, the version of the browser.
This field will only be present if the version is of the format major.minor.build.patch
where each subversion is optional (e.g. 10A
is a valid version).
Otherwise, this field will be null.
url object optional
The URL of the page when the event occurred.
A full URL including the protocol, host, path, query, and hash.
The host portion of the URL. e.g. www.example.com
.
The path portion of the URL. e.g. /path/to/page
.
query object optional
The query portion of the URL, structured as an object where the key is the query parameter name and the value is
a list of values for that parameter.
For example, /path/to/page?foo=bar&baz=qux&baz=boop
would be represented as { "foo": { "values": ["bar"] }, "baz": { "values": ["qux", "boop"] }}
.
property name* object optional
The hash path of the URL. e.g. #/path/to/page
would be represented as /path/to/page
.
hash_query object optional
The hash query of the URL, structured as an object where the key is the query parameter name and the value is
a list of values for that parameter.
For example, #/path/to/page?foo=bar&baz=qux&baz=boop
would be represented as { "foo": { "values": ["bar"] }, "baz": { "values": ["qux", "boop"] }}
.
property name* object optional
initial_referrer object optional
The referrer from the the first navigation event in the "view".
A full URL including the protocol, host, path, query, and hash.
The host portion of the URL. e.g. www.example.com
.
The path portion of the URL. e.g. /path/to/page
.
query object optional
The query portion of the URL, structured as an object where the key is the query parameter name and the value is
a list of values for that parameter.
For example, /path/to/page?foo=bar&baz=qux&baz=boop
would be represented as { "foo": { "values": ["bar"] }, "baz": { "values": ["qux", "boop"] }}
.
property name* object optional
The hash path of the URL. e.g. #/path/to/page
would be represented as /path/to/page
.
hash_query object optional
The hash query of the URL, structured as an object where the key is the query parameter name and the value is
a list of values for that parameter.
For example, #/path/to/page?foo=bar&baz=qux&baz=boop
would be represented as { "foo": { "values": ["bar"] }, "baz": { "values": ["qux", "boop"] }}
.
property name* object optional
If present, indicates how the event was created, including from the Fullstory capture script.
Some examples are: web client
, setVars
, event
, and POST /v2/users
.
Support for this field not guaranteed across all capture clients.
If present, indicates where the event was generated.
Some examples are: dom
and server
.
If present, indicates the integration that generated the event.
For Fullstory built capture sources, this value will be fs
.
Examples include dlo
, segment
, and zendesk
.
Support fot this field is not guaranteed across all integrations.
location object optional
The location associated with the capture of the event. Learn more.
If present, the IP address at the start of the associated capture instance.
That is, this will be the same for all events with the same device_id
, session_id
, and view_id
.
If present, the country associated with the IP address.
If present, the name of the region associated with the IP address.
If present, the name of the city associated with the IP address.
If present, the latitude and longitude associated with the IP address. The format is "latitude,longitude".
device object optional
Information about the device associated with the event.
For web events, similar information is available in the user_agent
field.
If present, the manufacturer of the device.
Generally available for Mobile Apps, but may also be provided by the server API.
Examples include: Apple
, Samsung
, Google
, and Microsoft
.
If present, the model of the device.
Generally available for Mobile Apps, but may also be provided by the server API.
Examples include: iPhone12,5
, Pixel 5
, and Surface Pro 7
and SM-G950F
.
If present, the operating system of the device. Generally available for Mobile Apps, but may also be provided by the server API.
If present, the version of the operating system. Generally available for Mobile Apps, but may also be provided by the server API.
Indicates the screen height of the device in pixels.
Indicates the screen width of the device in pixels.
Indicates the height of the viewport in pixels at the time of the event. Generally available for web sources, but may also be provided by the server API.
Indicates the width of the viewport in pixels at the time of the event. Generally available for web sources, but may also be provided by the server API.
server object optional
user_agent object optional
An unprocessed user agent string. This value is used to derive the following fields.
There may be cases where this string is not in a known format,
in which case the derived fields will be either Unknown
or null.
If present, the type of device.
Example values include: Tablet
, Mobile
, Desktop
, Robot
.
If present, the operating system of the device.
Example values include: Windows
, OS X
, iOS
, Android
, and Linux
.
The browser used by the device or Unknown.
Example values include: Chrome
, Safari
, Firefox
, Microsoft Edge
, and Custom Agent
.
If present, the version of the browser.
This field will only be present if the version is of the format major.minor.build.patch
where each subversion is optional (e.g. 10A
is a valid version).
Otherwise, this field will be null.
url object optional
A full URL including the protocol, host, path, query, and hash.
The host portion of the URL. e.g. www.example.com
.
The path portion of the URL. e.g. /path/to/page
.
query object optional
The query portion of the URL, structured as an object where the key is the query parameter name and the value is
a list of values for that parameter.
For example, /path/to/page?foo=bar&baz=qux&baz=boop
would be represented as { "foo": { "values": ["bar"] }, "baz": { "values": ["qux", "boop"] }}
.
property name* object optional
The hash path of the URL. e.g. #/path/to/page
would be represented as /path/to/page
.
hash_query object optional
The hash query of the URL, structured as an object where the key is the query parameter name and the value is
a list of values for that parameter.
For example, #/path/to/page?foo=bar&baz=qux&baz=boop
would be represented as { "foo": { "values": ["bar"] }, "baz": { "values": ["qux", "boop"] }}
.
property name* object optional
initial_referrer object optional
A full URL including the protocol, host, path, query, and hash.
The host portion of the URL. e.g. www.example.com
.
The path portion of the URL. e.g. /path/to/page
.
query object optional
The query portion of the URL, structured as an object where the key is the query parameter name and the value is
a list of values for that parameter.
For example, /path/to/page?foo=bar&baz=qux&baz=boop
would be represented as { "foo": { "values": ["bar"] }, "baz": { "values": ["qux", "boop"] }}
.
property name* object optional
The hash path of the URL. e.g. #/path/to/page
would be represented as /path/to/page
.
hash_query object optional
The hash query of the URL, structured as an object where the key is the query parameter name and the value is
a list of values for that parameter.
For example, #/path/to/page?foo=bar&baz=qux&baz=boop
would be represented as { "foo": { "values": ["bar"] }, "baz": { "values": ["qux", "boop"] }}
.
property name* object optional
If present, indicates how the event was created, including from the Fullstory capture script.
Some examples are: web client
, setVars
, event
, and POST /v2/users
.
Support for this field not guaranteed across all capture clients.
If present, indicates where the event was generated.
Some examples are: dom
and server
.
If present, indicates the integration that generated the event.
For Fullstory built capture sources, this value will be fs
.
Examples include dlo
, segment
, and zendesk
.
Support fot this field is not guaranteed across all integrations.
location object optional
The location associated with the capture of the event. Learn more.
If present, the IP address at the start of the associated capture instance.
That is, this will be the same for all events with the same device_id
, session_id
, and view_id
.
If present, the country associated with the IP address.
If present, the name of the region associated with the IP address.
If present, the name of the city associated with the IP address.
If present, the latitude and longitude associated with the IP address. The format is "latitude,longitude".
device object optional
Information about the device associated with the event.
For web events, similar information is available in the user_agent
field.
If present, the manufacturer of the device.
Generally available for Mobile Apps, but may also be provided by the server API.
Examples include: Apple
, Samsung
, Google
, and Microsoft
.
If present, the model of the device.
Generally available for Mobile Apps, but may also be provided by the server API.
Examples include: iPhone12,5
, Pixel 5
, and Surface Pro 7
and SM-G950F
.
If present, the operating system of the device. Generally available for Mobile Apps, but may also be provided by the server API.
If present, the version of the operating system. Generally available for Mobile Apps, but may also be provided by the server API.
Indicates the screen height of the device in pixels.
Indicates the screen width of the device in pixels.
Indicates the height of the viewport in pixels at the time of the event. Generally available for web sources, but may also be provided by the server API.
Indicates the width of the viewport in pixels at the time of the event. Generally available for web sources, but may also be provided by the server API.
mobile_app object optional
The name of the mobile app screen on which the event occurred.
Android build variant (e.g. debug, release).
Identifies a run of FSCLI during iOS native mobile builds.
The name of the mobile app that produced the event.
Code-level package name of a mobile app, e.g. com.fullstory.sampleapp.latest
.
Mobile app version, e.g. 25.0.1
.
If present, indicates how the event was created, including from the Fullstory capture script.
Some examples are: web client
, setVars
, event
, and POST /v2/users
.
Support for this field not guaranteed across all capture clients.
If present, indicates where the event was generated.
Some examples are: dom
and server
.
If present, indicates the integration that generated the event.
For Fullstory built capture sources, this value will be fs
.
Examples include dlo
, segment
, and zendesk
.
Support fot this field is not guaranteed across all integrations.
location object optional
The location associated with the capture of the event. Learn more.
If present, the IP address at the start of the associated capture instance.
That is, this will be the same for all events with the same device_id
, session_id
, and view_id
.
If present, the country associated with the IP address.
If present, the name of the region associated with the IP address.
If present, the name of the city associated with the IP address.
If present, the latitude and longitude associated with the IP address. The format is "latitude,longitude".
device object optional
Information about the device associated with the event.
For web events, similar information is available in the user_agent
field.
If present, the manufacturer of the device.
Generally available for Mobile Apps, but may also be provided by the server API.
Examples include: Apple
, Samsung
, Google
, and Microsoft
.
If present, the model of the device.
Generally available for Mobile Apps, but may also be provided by the server API.
Examples include: iPhone12,5
, Pixel 5
, and Surface Pro 7
and SM-G950F
.
If present, the operating system of the device. Generally available for Mobile Apps, but may also be provided by the server API.
If present, the version of the operating system. Generally available for Mobile Apps, but may also be provided by the server API.
Indicates the screen height of the device in pixels.
Indicates the screen width of the device in pixels.
Indicates the height of the viewport in pixels at the time of the event. Generally available for web sources, but may also be provided by the server API.
Indicates the width of the viewport in pixels at the time of the event. Generally available for web sources, but may also be provided by the server API.
{
"events": [
{
"deviceId": "17117",
"sessionId": "5916567459329906423",
"viewId": "4376064173749384629",
"eventTime": "2024-04-03T17:06:12.290Z",
"eventType": "navigate",
"eventProperties": {
"navigateReason": "navigate",
"fsSuspiciousKind": [],
"eventDefinitionId": "Navigate-Login-Event",
"additionalEventDefinitionIds": []
},
"sourceType": "web",
"sourceProperties": {
"userAgent": {
"rawUserAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",
"device": "Desktop",
"operatingSystem": "OS X",
"browser": "Chrome",
"browserVersion": "123.0.0.0"
},
"url": {
"fullUrl": "https://app.fullstory.com/login/?dest=%2Fui",
"host": "app.fullstory.com",
"path": "/login/",
"query": {
"dest": {
"values": [
"/ui"
]
}
},
"hashPath": "",
"hashQuery": {}
},
"initialReferrer": null
}
}
]
}
Returned when invalid input has been provided. Fix the issue and retry.
Schema
Long form description of what went wrong
A short snake-cased value that is safe to handle programmatically
{
"message": "session_id is required",
"code": "required_field"
}
Returned when access to the resource is unauthorized.
Schema
Long form description of what went wrong
A short snake-cased value that is safe to handle programmatically
{
"message": "access is unauthorized",
"code": "unauthorized"
}
Returned when access is not allowed due to insufficient permissions.
Schema
Long form description of what went wrong
A short snake-cased value that is safe to handle programmatically
{
"message": "insufficient permissions",
"code": "forbidden"
}
Returned when the resource does not exist.
Schema
Long form description of what went wrong
A short snake-cased value that is safe to handle programmatically
{
"message": "Requested resource does not exist",
"code": "resource_not_found"
}
Returned when the client has exceeded the rate limit for this endpoint. A Retry-After
header will be included with the response. This header will contain the number of seconds that you should wait before attempting to send another request.
Schema
Long form description of what went wrong
A short snake-cased value that is safe to handle programmatically
{
"message": "Too many requests. Client has exceeded the rate limit for this endpoint.",
"code": "too_many_requests"
}
Returned when a server error is encountered
Schema
Long form description of what went wrong
A short snake-cased value that is safe to handle programmatically
{
"message": "Server error was encountered",
"code": "server_error"
}