Analyze Handshake Metadata

Analyze device session metadata and identify errors during flow execution

Attestr Studio platform provides a debug API which gives the detailed metadata, state and execution sequence of the flow in the context of a device session. This is particularly useful in identifying errors during a flow execution after error handler is triggered.

To get the handshake metadata, use the Execution Result API with a query parameter called mode=debug. The modified URL will be https://api.attestr.com/api/{version}/public/flowx/handshake/{handshakeId}?mode=debug

The response contains following additional information.

keyDescriptionMin VersionMax Version
stageMetadataMetadata describing input, output and error at every stage. Null if handshake is archived.v1
requestsSequence of messages shared with Attestr Servers. Null if handshake is archived.v1
metadataInformation about device, user agent and ip address. Null if handshake is archived.v1
stateFinal state of variables post flow execution. Null if handshake is archived.v1
clientThe app client Id used to create the handshakev1
clientKeyThe client key used to generate handshakev1
createdThe unix timestamp when handshake was createdv1
updatedThe unix timestamp when handshake was last updatedv1

Stage Metadata

After a stage completes, the stage metadata is updated with the state of the variables and state of input parameters for all other stages. This acts as a snapshot of the state of the flow after each step in the flow. Stage metadata has the following structure.

JSON
Copy

State

State object is the final state of the flow after all the stages in the flow are complete. State object contains input key values for every stage and values for all the variables defined in the flow. It has following structure.

JSON
Copy

Requests

Attestr uses sockets to connect to its servers and set of messages are exchanged between the device and back end servers as the flow progresses on user's device. Below flow chart describes a typical flow messages sequence.

The requests object contains a sequence of all these messages that are exchanged. This gives a clear picture of the screen by screen flow and every action that was performed by the user on the device. Also in the case of an error, it records the exact step at which flow halted. Requests has the following structure.

JSON
Copy

Metadata

Metadata object contains the device and user agent information. Below is a sample metadata json.

JSON
Copy

All these values combined together constitute a device session metadata and help customers figure out runtime errors if any and find the root cause of those errors.

Type to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard