--- title: "Testing and Debugging Flows" slug: "testing-and-debugging-flows" updated: 2026-03-02T05:08:07Z published: 2026-03-02T05:08:07Z canonical: "help.hyperscience.ai/testing-and-debugging-flows" --- > ## Documentation Index > Fetch the complete documentation index at: https://help.hyperscience.ai/llms.txt > Use this file to discover all available pages before exploring further. # Testing and Debugging Flows With our testing and debugging tools, you can see more information about why a particular submission failed. You can also learn more about how flows are constructed and use what you've learned to build and test your own flows with our Flows SDK. You can use this information to troubleshoot halted submissions and failed flows in your production or development environments, or you can view it in a development instance as part of your flow-testing process. ## Viewing execution details for a flow run You can access the execution details for a particular flow in the following ways. ### From the details page for a submission 1. Click **Submissions**, and click on the name of the submission you'd like to view flow-execution details for. 2. Click **Actions**, and then click **View Flow Run**. ### From the Flow Runs page 1. Go to the Flow Runs page (**Flows** > **Flow Runs**). 2. Find the flow in the Flow Runs table, and click its **Flow Run ID**. Note that you need the View Flow Executions permission to access the Flow Runs page, which is given to users in the System Admin and Business Admin permission groups by default. ### From the Jobs page 1. Go to the Jobs page (**Administration** > **Jobs**). 2. Make sure **Flows** is selected in the drop-down menu at the top of the page. 3. Click on the **ID** of the flow run that you want to view details for. Note that you need the View Jobs permission to access the Jobs page, which is given to users in the System Admin permission group by default. ## Navigating the Flow Run page ![](https://cdn.us.document360.io/87894cef-4958-4f3f-be6f-b75a78c82548/Images/Documentation/FlowRunV42(1).png) The Flow Run page has the following parts: ![Red1.png](https://lh3.googleusercontent.com/pylukd0Gx_JbSoNJnHkr1nrx_q5M6eAKuRrByb7YHwcFVPRUg8SfpvssUSn7YKl1zfsk6wI5HC1FYpKfgHxNPExOTZ7XGIEIOXLXeUuSP4aL6IrXCa_WaZyzc-c2_4AdphRpjbhv1T8ZIDwCIamocWU) **Debugging** — The links in the top section of the left-hand sidebar show flow-level details that can help troubleshoot the flow’s execution: - **Flow Runtime Errors** — Clicking **View** opens the **Flow Runtime Errors** tab in the Data panel at the bottom of the page. - **Flow Inputs/Outputs** — Clicking **View** opens the **Flow Input** tab in the Data panel at the bottom of the page, which shows the data that was submitted to the flow in JSON format. You can click the **Flow Output** tab to see the JSON output of the flow. ![Red2.png](https://lh6.googleusercontent.com/dv3hrf-YT7HsDzrwBtSlgfzyNBknr2c5__y-NviXAEm_68K3U1Ajq_WXEwGEnEJblwrXzUJTJC84j1ya7FhnN1qZY-Lj77NGvA4ypbPple7r2DRluoNNBvjMFhV6ZmUvBg7Mg5nY20gvVZCx3-8Eb9o) **Overview** — The left-hand sidebar shows metadata for the submission or flow run. If you access the Flow Run page from either the Flow Runs page or Jobs page, the **Overview** section contains the following metadata: - **Flow Run ID** — The internal ID of the flow run - **Correlation ID** — The ID given to all flow runs related to a particular flow run, including those for subflows and on-error flows. If any of these related flow runs have failed, the number of failed flow runs is provided under the Correlation ID. **Clicking View related flow runs** opens the Flow Runs page filtered to show all flow runs with this Correlation ID. - **Status** — The status of the submission’s flow run: - **Failed** — The flow run was not completed successfully. - **Running** — The flow run is currently in progress. - If a flow run is in progress, an **Auto refresh** option appears at the top of the page. It is on by default and refreshes the page once per second. To disable or enable this option, click **Auto refresh is on** or **Auto refresh is off**. - **Completed** — The flow run was completed successfully. - **Terminated** — The flow run was deliberately stopped before it could be completed. - **Paused** — The flow run has been temporarily stopped and may be resumed in the future. - **On-Error Flow** — A link to the Flow Run page for this flow’s on-error flow, if any. To learn more about on-error flows, see [On-Error Flows](/v42/docs/on-error-flows). - **Flow Name** — The name of the flow being run - **Start Time** — The date and time the flow run began - **End Time** — The date and time the flow run ended (if applicable) - **Total Processing Time** — The amount of time taken to execute the flow If you access the Flow Run page from a submission’s details page, the **Overview** section contains the following metadata: - **Submission ID** — The submission’s internal ID. Clicking on the ID redirects you to the details page for the submission. - **Flow Run ID** — The internal ID of the flow run - **Correlation ID** — The ID given to all flow runs related to a particular flow run, including those for subflows and on-error flows. If any of these related flow runs have failed, the number of failed flow runs is provided under the Correlation ID. Clicking **View related flow runs** opens the Flow Runs page filtered to show all flow runs with this Correlation ID. - **Submission Status** — The current processing status of the submission - If the submission has a status other than Halted or Completed, an **Auto refresh** option appears at the top of the page. It is on by default and refreshes the page once per second. To turn this feature off or on, click **Auto refresh is on** or **Auto refresh is off**. - If a submission is halted, the number of related flow runs that have failed appears below the submission’s status, along with a **View List** link that redirects you to the Flow Runs page. The table is filtered to show the failed flow runs for the submission. ![](https://lh5.googleusercontent.com/UVNY6Vsp5Nf-HnZrztGxn47TdWq5xOTSf1ZwrnDefTr_-sFxS99EEOf_HEuZYKkWzoxifiN441QiVFcBpbeJcm97hLldD9qr8a2JjowrrshZaGmQ4JhMvEiW5O5u5nofTZo2FvIhlLBQlGqwluVk90M) - **On-Error Flow** — A link to the Flow Run page for this flow’s on-error flow, if any. To learn more about on-error flows, see [On-Error Flows](/v42/docs/on-error-flows). - **External ID** — The external ID of the submission - **Flow Name** — The name of the flow used to process the submission. Clicking on the name redirects you to the flow's settings in Flow Studio. - **Flow Version** — The version of the flow named in **Flow Name** used to process the submission - **Start Time** — The date and time the submission’s processing began - **Complete Time** — The date and time the submission’s processing ended (if applicable) - **Total Processing Time** — The amount of time taken to process the submission ![Red3.png](https://lh5.googleusercontent.com/0IFG0LJohAQJPetIixb0K6Zgo6KCgjuTSSvsYCBhMRLem-R_ExUh_7aItsqAOVe09faMjUAPTESxV6lwYvQ3KHbpFeLoMNmaOcXFYSYVIVd9InBWvnP97y3LjnIK2yXL21elrsbCWoO1A1JJB0y2f_4) **Flow-run diagram** — The upper-right panel shows a diagram of the flow. - The processing status for an individual block is shown under the block, along with the time the block completed or failed processing (if applicable). - If the block has no status underneath it, it has not been executed yet. - Clicking on a block reveals its metadata, input, output, and logs in the Data panel below. - If the block contains sub-blocks, a **View Flow Run** link appears in that block. Clicking on that link redirects you to the Flow Run page for the block, which shows the block’s sub-blocks. - In v42.1 and later: - the executed or in-progress routes of the flow are highlighted, making it easier to focus on the parts of the flow that have been or will be completed. - you can expand or collapse all routing blocks in the flow by clicking the **Expand All** ( ![](https://cdn.us.document360.io/87894cef-4958-4f3f-be6f-b75a78c82548/Images/Documentation/ExpandAllButton.png) ) or **Collapse All** ( ![](https://cdn.us.document360.io/87894cef-4958-4f3f-be6f-b75a78c82548/Images/Documentation/CollapseAllButton.png) ) buttons, respectively, in the upper-left corner of the canvas. ![Red4.png](https://lh6.googleusercontent.com/P7OAt6BPnv-ZudF-KAWGb4QtgAivoYL7Wc7Azkit7V3upjiNHa4SLh26R-sIxA1KEKvtRK2APN159xqID8OdtyfvE29irPkpH2MBzyxlKFB-0uWU-fBDY_EjBXILpWpJAOs9Igm1nfo0z7t_W57nK0k) **Data** — The Data panel can show either flow-level or block-level information. **Block-level data** — By default, the Data panel shows details for the block currently selected in the flow-run diagram. Click on a block in the diagram to see its details in the Data panel. The panel contains the following tabs when a block is selected: - **Details** — The **Details** tab contains metadata for the block, including when the block’s task was created, when it began, and (in v42.1 and later) when it ended. In v42.1 and later, each of these timestamps has a **Copy as UTC date** icon ( ![](https://cdn.us.document360.io/87894cef-4958-4f3f-be6f-b75a78c82548/Images/Documentation/CopyIcon.png) ) next to it, allowing you to copy its value to search for it in logs. The tab also shows the block’s reference name and type. - To learn more about reference names and block types, see the [Flows SDK documentation](https://flows-sdk.hyperscience.ai/pages/idp.html). - **Input** — The **Input** tab shows the JSON that the block used for processing. - Note that the input JSON for the first block in a completed submission is not the same as the JSON input for the entire submission. To view the submission’s JSON input, click **View** next to **Flow Inputs/Outputs** in the Overview section of the page. - If a submission was created via API, the `metadata` property in `api_params` will contain the metadata for that submission. - **Output** — Clicking on the **Output** tab shows the JSON that the block produced during processing (if applicable). - Note that the output JSON for the final block in a completed submission is not the same as the JSON output for the entire submission. To view the submission’s JSON output, click **View** next to **Flow Inputs/Outputs** in the Overview section of the page, and then click the **Flow Output** tab in the Data panel. - **Logs**: If the block failed to process the submission, the **Logs** tab shows error information for the block. - If you’ve enabled logging for your Custom Code or Python Blocks in the Flows SDK, the **Logs** tab also shows any applicable info, debugging, warning, or error messages you created for the block. You can also find these messages in your Docker logs. - **Code**: This tab is only available if a Custom Code Block or Python Block is selected. If the block was executed, clicking the **Code** tab reveals the Python code that was run by the block. **Flow-level data** — If you click either of the **View** links in the **Debugging** section of the page, the **Flow Runtime Errors**, **Flow Input**, and **Flow Output** tabs appear in the Data panel. To learn more about these tabs, see the “Debugging” portion of this article. You can copy any of the data shown in the Data panel by clicking **Copy** in the upper-right corner of the panel. ## Retrying a submission If you access the Flow Run page from a submission’s details page, you can retry the submission by clicking **Resubmit submission** in the upper-right corner of the page. This action will generate a new, separate submission using the same input as the submission you’re currently viewing flow-run data for.