Historical execution data overview

Prerequisites

Edge and Media Tier version:

To enable or disable historical execution data storage:

  • Directory > Organization > Admin
  • Settings > Execution Data > Edit permission
  • Settings > Execution Data > View permission

To set the historical execution data level for flows for the organization:

  • Architect > Flow Log Level Default > Delete permission
  • Architect > Flow Log Level Default > Edit permission
  • Architect > Flow Log Level Default > View permission

To set the historical execution data level for a specific flow:

  • Architect > Flow Log Level > Add permission
  • Architect > Flow Log Level > Delete permission
  • Architect > Flow Log Level > Edit permission
  • Architect > Flow Log Level > View permission

To see execution data for a flow:

  • Architect > Flow Instance Execution Data > Edit permission
  • Architect > Flow Instance Execution Data > View permission

Genesys Cloud offers access to comprehensive historical execution data for all Architect flow types. With advanced capabilities in historical data analysis, users can manage and analyze historical execution data effectively, and gain insights into user journeys to make improvements and troubleshoot. Users can enable or disable execution data storage and select from four distinct levels of execution data granularity:

  • Base: understand high-level user journeys through Architect actions and navigated menus, errors, and events.
  • Notes: optimize Architect flows using variable values (includes the Base level).
  • Verbose Notes: access conversation content with communication values (includes the Notes level).
  • All: troubleshoot through action input and output values (includes the Verbose Notes level).

Notes:
  • Historical execution data counts toward your organization’s data storage limit under the Genesys Cloud fair use policy. For more information, see Genesys Cloud fair use policy.
  • Execution data storage is disabled by default. To start capturing execution data, you must enable it and republish flows.

The following examples are possible scenarios that consumers of historical execution data can use the execution data for:

  • Listen for specific flow events, for example, when flows encounter an error
  • Watch events for a specific flow and analyze specific flow execution items, for example, when a flow runs a particular action and the action takes the failure or timeout path
  • See which flows are running more than others

Genesys Cloud disables historical execution data storage by default. To enable storage, follow these steps:

  1. Click Admin.
  2. Under Account Settings, click Organization Settings.
  3. On the Settings tab, scroll down to the Execution Data section.
  4. Under Execution Data, use the toggle to enable execution data storage for your organization. A disclaimer message appears that informs you that Genesys Cloud may store sensitive information.
  5. Click Yes to enable storage.

To navigate to Admin > Account Settings > Organization Settings > Settings from Architect, click Help and select Execution Data Settings.

Notes:
  • You need the following permissions to enable or disable historical execution data storage in the Organization Settings:

    • Directory > Organization > Admin
    • Settings > Execution Data > Edit permission
    • Settings > Execution Data > View permission
  • Configure the data types for which you want to store execution data. If Architect Flows is disabled, Genesys Cloud does not store execution data for Architect flows.

To configure the data types for which to store historical execution data, follow these steps:

  1. Click Admin.
  2. Under Account Settings, click Organization Settings.
  3. On the Settings tab, scroll down to the Execution Data section.
  4. Under Execution Data Storage, use the Architect Flows toggle to enable execution data storage for the data type.

To navigate to Admin > Account Settings > Organization Settings > Settings from Architect, click Help and select Execution Data Settings.

Note:

You need the following permissions to view and enable the Architect Flows toggle in the Organization Settings:

  • Architect > Flow Instance Execution Data > Edit permission
  • Architect > Flow Instance Execution Data > View permission

        {
            "flow": {
                "conversationId": "49dbd0ea-c3ee-4568-ab5b-1fac76a5b81c",
                "division": {
                    "id": "d62836e8-ff2a-43ee-bcf6-dc9d8b9e89a0"
                },
                "endDateTime": "2023-10-12T09:09:50.495Z",
                "execution": [
                    {
                        "startedFlow": {
                            "dateTime": "2023-10-12T09:09:17.642Z",
                            "languageTag": "en-us",
                            "variables": []
                        }
                    },
                    {
                        "startedBotState": {
                            "dateTime": "2023-10-12T09:09:17.642Z",
                            "executionId": "433aad21-9b89-4c4c-aa46-3c2a23459a68",
                            "stateId": "26d285b4-fdc8-4978-9d33-b9eb46a10cf9",
                            "variables": []
                        }
                    },
                    {
                        "actionAskForIntent": {
                            "actionId": "c5f05c45-f683-4ea5-ab0b-93ca101c0d66",
                            "dateTime": "2023-10-12T09:09:17.642Z",
                            "execution": [],
                            "executionId": "00c0597c-7810-4425-b079-91bd680b9a8b",
                            "outputPathId": "b12f6d65-5f4c-4702-843a-c753885fd57b",
                            "outputVariables": [],
                            "trackingId": 11
                        }
                    },
                    {
                        "actionAskForSlot": {
                            "actionId": "a6846b61-7736-42ef-ada2-05643078bef5",
                            "dateTime": "2023-10-12T09:09:24.708Z",
                            "execution": [],
                            "executionId": "02f44452-7883-4ea4-a854-973121fb6020",
                            "outputPathId": "__DEFAULT__",
                            "outputVariables": [],
                            "trackingId": 12
                        }
                    },
                    {
                        "actionDecision": {
                            "actionId": "efa25778-0b01-4e78-ab66-b5893cbfa72c",
                            "dateTime": "2023-10-12T09:09:34.462Z",
                            "executionId": "6e39cc7f-4701-4b9e-b0d0-f2b4adf80752",
                            "outputPathId": "__NO__",
                            "trackingId": 15
                        }
                    },
                    {
                        "actionDecision": {
                            "actionId": "bcfc8a36-b4e4-4cb1-a9cf-f1fe9ec084cd",
                            "dateTime": "2023-10-12T09:09:34.462Z",
                            "executionId": "e6b8644a-d4ab-4743-a447-31b0e198ef60",
                            "outputPathId": "__NO__",
                            "trackingId": 23
                        }
                    },
                    {
                        "actionCommunicate": {
                            "actionId": "137e8a9b-de39-4641-9304-2905548d4112",
                            "dateTime": "2023-10-12T09:09:34.462Z",
                            "executionId": "a1f21445-9841-43fb-8bf0-ba9111bb27b5",
                            "trackingId": 17
                        }
                    },
                    {
                        "actionClearSlot": {
                            "actionId": "768304ea-6aae-4a29-9f17-a708dcaba087",
                            "dateTime": "2023-10-12T09:09:34.900Z",
                            "executionId": "809640f3-5d0e-461e-9a6a-468e6afcc9c3",
                            "outputVariables": [],
                            "trackingId": 22
                        }
                    },
                    {
                        "actionLoopAnythingElse": {
                            "actionId": "a6b6d035-f291-4c4b-bf8f-d6a9becc43e8",
                            "dateTime": "2023-10-12T09:09:34.900Z",
                            "execution": [],
                            "executionId": "7a18178e-a65e-4bb4-abd7-5c2cf5ad78a7",
                            "outputPathId": "__LOOP__",
                            "outputVariables": [],
                            "trackingId": 18
                        }
                    },
                    {
                        "actionCommunicate": {
                            "actionId": "4bb7d902-57ad-4183-924d-02e03a03c1f3",
                            "dateTime": "2023-10-12T09:09:50.229Z",
                            "executionId": "b1574b6a-cc2b-4a56-87ad-46b1430c2f0b",
                            "trackingId": 19
                        }
                    },
                    {
                        "actionExitBotFlow": {
                            "actionId": "8d2f40dc-9269-41b4-bf8e-d7ac4d631fe3",
                            "dateTime": "2023-10-12T09:09:50.495Z",
                            "executionId": "8f97d86c-cd6a-4c14-aa4b-bf5bcd60f89c",
                            "trackingId": 14
                        }
                    },
                    {
                        "endedBotState": {
                            "dateTime": "2023-10-12T09:09:50.495Z"
                        }
                    },
                    {
                        "endedFlow": {
                            "dateTime": "2023-10-12T09:09:50.495Z",
                            "flowExitReason": "FLOW_EXIT",
                            "naturalLanguageUnderstanding": {
                                "intent": {
                                    "intentName": "Check Account Balance"
                                }
                            },
                            "outputVariables": []
                        }
                    }
                ],
                "executionId": "9ce12079-8e45-42ad-8130-2f104b258777",
                "flowId": "7df71c06-4d63-43ef-8db7-d90e68d037f2",
                "flowIsDebug": false,
                "flowName": "Bank Bot",
                "flowType": "bot",
                "flowVersion": "7.0",
                "startDateTime": "2023-10-12T09:09:17.642Z"
            }
        }
        

        Note: The following table includes information on the sample data only.

        Name Type Description
        Name Type Description
        flow:conversationId String The unique identifier for a conversation in Genesys Cloud. A conversation can involve multiple flows or agents.
        flow:division:id String
        The division the flow is in when Genesys Cloud saves the execution data after the flow execution completes.
        flow:endDateTime String
        The date and time when the flow execution was completed.
        flow:execution Array An array of flow execution items that describe what happened when the flow ran.
        flow:execution:startedFlow Object A flow execution item that describes the starting date and time of the flow and the language the flow was running in.
        flow:execution:startedBotState Object

        A flow execution item that describes:

        • dateTime = the starting date and time when the bot state occurred.
        • executionId = the Architect execution identifier that uniquely identifies the instance of the bot state that ran during the execution of the Architect flow.
        • stateId = the Architect identifier that uniquely identifies the state within the Architect flow’s configuration.
        flow:execution:actionAskForIntent Object

        The flow execution item that holds the execution data for the Ask for Intent action:

        • actionId = the Architect action identifier that uniquely identifies the Ask for Intent action within the Architect flow configuration.
        • dateTime = the date and time when the Ask for Intent action started.
        • executionId = the execution identifier for the Ask for Intent action that uniquely identifies the execution instance of the Ask for Intent action that ran.
        • outputPathId = The identifier of the output path that the Ask for Intent action followed at flow runtime.
        • trackingId = the Architect tracking identifier for the Ask for Slot action. A tracking identifier might not be unique within the flow configuration. Use the actionId property to identify uniquely the Ask for Intent action in the flow’s configuration.
        flow:execution:actionAskForSlot Object

        The flow execution item that holds the execution data for the Ask for Slot action:

        • actionId = the Architect action identifier that uniquely identifies the Ask for Slot action within the Architect flow configuration.
        • dateTime = the date and time when the Ask for Slot action started.
        • executionId = the execution identifier for the Ask for Slot action that uniquely identifies the execution instance of the Ask for Slot action that ran.
        • outputPathId = The identifier of the output path that the Ask for Slot action followed at flow runtime.
        • trackingId = the Architect tracking identifier for the Ask for Intent action. A tracking identifier might not be unique within the flow configuration. Use the actionId property to identify uniquely the Ask for Slot action in the flow’s configuration.
        flow:execution:actionDecision Object

        The flow execution item that holds the execution data for the Decision action:

        • actionId = the Architect action identifier that uniquely identifies the Decision action within the Architect flow configuration.
        • dateTime = the date and time when the Decision action started.
        • executionId = the execution identifier for the Decision action that uniquely identifies the execution instance of the Decision action that ran.
        • outputPathId = The identifier of the output path that the Decision action followed at flow runtime.
        • trackingId = the Architect tracking identifier for the Decision action. A tracking identifier might not be unique within the flow configuration. Use the actionId property to identify uniquely the Decision action in the flow’s configuration.
        flow:execution:actionCommunicate Object

        The flow execution item that holds the execution data for the Communicate action:

        • actionId = the Architect action identifier that uniquely identifies the Communicate action within the Architect flow configuration.
        • dateTime = the date and time when the Communicate action started.
        • executionId = the execution identifier for the Communicate action that uniquely identifies the execution instance of the Communicate action that ran.
        • trackingId = the Architect tracking identifier for the Communicate action. A tracking identifier might not be unique within the flow configuration. Use the actionId property to identify uniquely the Communicate action in the flow’s configuration.
        flow:execution:actionClearSlot Object

        The flow execution item that holds the execution data for the Clear Slot action:

        • actionId = the Architect action identifier that uniquely identifies the Clear Slot action within the Architect flow configuration.
        • dateTime = the date and time when the Clear Slot action started.
        • executionId = the execution identifier for the Clear Slot action that uniquely identifies the execution instance of the Clear Slot action that ran.
        • trackingId = the Architect tracking identifier for the Clear Slot action. A tracking identifier might not be unique within the flow configuration. Use the actionId property to identify uniquely the Clear Slot action in the flow’s configuration.
        flow:execution:actionLoopAnythingElse Object

        The flow execution item that holds the execution data for the Anything Else? Loop action:

        • actionId = the Architect action identifier that uniquely identifies the Anything Else? Loop action within the Architect flow configuration.
        • dateTime = the date and time when the Anything Else? Loop action started.
        • executionId = the execution identifier for the Anything Else? Loop action that uniquely identifies the execution instance of the Anything Else? Loop action that ran.
        • outputPathId = The identifier of the output path that the Anything Else? Loop action followed at flow runtime.
        • trackingId = the Architect tracking identifier for the Anything Else? Loop action. A tracking identifier might not be unique within the flow configuration. Use the actionId property to identify uniquely the Anything Else? Loop action in the flow’s configuration.
        flow:execution:actionExitBotFlow Object

        The flow execution item that holds the execution data for the Exit Bot Flow action:

        • actionId = the Architect action identifier that uniquely identifies the Exit Bot Flow action within the Architect flow configuration.
        • dateTime = the date and time when the Exit Bot Flow action started.
        • executionId = the execution identifier for the Exit Bot Flow action that uniquely identifies the execution instance of the Exit Bot Flow action that ran.
        • trackingId = the Architect tracking identifier for the Exit Bot Flow action. A tracking identifier might not be unique within the flow configuration. Use the actionId property to identify uniquely the Exit Bot Flow action in the flow’s configuration.
        flow:execution:endedBotState Object

        A flow execution item that describes

        • dateTime = the ending date and time when the bot state occurred.
        flow:execution:endedFlow Object

        The flow execution item that describes

        • dateTime = the date and time when the flow occurred.
        • flowExitReason = the reason why a flow ended.
        • naturalLanguageUnderstanding = the data for natural language understanding for when the flow ended.
        flow:executionId String

        The unique identifier that identifies a unique instance of an Architect flow that ran.

        flow:flowId String

        The unique identifier for the flow in Architect.

        flow:flowIsDebug Boolean

        It specifies whether the executed flow was in debug mode.

        flow:flowName String

        The name of the flow that ran.

        flow:flowType String

        The Architect flow type of the flow that ran.

        flow:flowVersion String

        The version of the flow that ran.

        flow:startDateTime String

        The date and time when the flow execution started.

        Notes:
        • Genesys Cloud stores historical flow execution data for 10 days.
        • Genesys Cloud supports returning a maximum of 200 execution data instances per query. It is important to note that Genesys Cloud cannot guarantee that the query returns the most recent 200 execution instances.
        • Genesys Cloud does not store the historical execution data of flows that run longer than three days.
        • In call flows, Genesys Cloud reports only the first 4,500 action executions.
        • As common module flows are embedded in their parent flows and do not run on their own, you can get execution data for them only as part of the invoking (parent) flow’s historical execution data.
        • If a value of the following data types exceeds the size limit that Genesys Cloud can store in execution data, Genesys Cloud reports valueIsTooLarge:true:
          • JSON – maximum 1,000 characters
          • String – maximum 253 characters
          • Collection data types – maximum 20 items
        • Genesys Cloud only allows reporting data at the Base level for execution instances of secure flows, for example, bot flows that ran in a secure session, regardless of the execution data setting of your organization or the specific secure bot flows.
        • It is not possible to query execution data for flow instances by start or end date time. To narrow the scope of responses, Genesys Cloud recommends that you rely on conversationId instead.

        The following video walks you through how to enable and configure historical execution data. The video also demonstrates how you can use the various data settings for advanced troubleshooting.

        For more information about how to set the execution data level for an organization or override the organization-wide execution data level for an individual flow, see Manage historical execution data.

        Features in Architect

        Use Architect’s flow execution history to view the detailed status of previously executed flows. For more information, see Flow execution history.
        Use Architect’s Query Builder to search for flow execution data that meets different criteria, based on how a flow started and ended, or based on execution criteria for individual actions. You can also view the setting that values on an Architect action resolved to at runtime. For more information, see Build a flow execution history query and Manage a query in the Query Builder.
        Use Architect’s Replay Mode to play back the flow instance data of Architect flows to debug and troubleshoot. For more information, see Use replay mode to troubleshoot an Architect flow

        Use Architect’s Flow Insights toggle to view the frequency of previously executed flow components as an overlay in Architect flows. For more information, see Use Flow Insights to view the frequency of executed flow components.

        Note: You do not need to enable execution data storage for Architect flows to use Flow Insights.

        Historical execution data is retrievable via the public API and the notification service for third-party access. For more information about the relevant endpoints in the public API, see Start a process (job) to prepare a download of a singular flow execution data instance by Id and Get the status and/or results of an asynchronous flow execution data retrieval job in the Genesys Cloud Developer Center.

        Notes:
        • Aggregate data, such as counts of the number of times that an action runs during a flow, is not supported.
        • You can only view flow execution data for published flows. To ensure that you capture the most recent execution data, make sure that you republish the flow and send an interaction through it before you run a query.