---
title: "Retrieve last 50 test runs of a test"
method: GET
path: "/journeyRuns/journey/{journey_id}"
tags: ["TestRun"]
---

# Retrieve last 50 test runs of a test

`GET /journeyRuns/journey/{journey_id}`

Used to retrieve last n test runs

## Path parameters

- `journey_id` string, required

## Query parameters

- `limit` integer
- `cursor` string

## Response `200`

Array of test scripts matching the query

- TestRunQueryResult — result envelope for test run query results
  - `test_script_executions` TestRun[] — All test runs that matched the query
    - `id` string — Object id. Set by system.
    - `test_ref_id` string — reference to this test in another system
    - `workspace_id` string — workspace Id
    - `started_time` integer — Time test run was started, in epoch milliseconds
    - `completed_time` integer — Time test run was completed, in epoch milliseconds
    - `tags` Tag[] — Free text tags associated with this entity
      - `name` string, required — tag name
      - `values` string[]
    - `journey_id` string — (deprecated, use test_id) Test id
    - `test_id` string — Test id
    - `test_labels` string[] — Test labels
    - `test_name` string — Test name
    - `test_type` 'api' | 'browser' | 'performance' | 'mobile' — Type of test
    - `failure_summary` TestRunFailureSummary — Information useful for diagnosing test run failures
      - `flow_id` string — ID of the flow in which the failure occurred
      - `flow_name` string — Name of the flow in which the failure occurred, if any
      - `step_number` integer — Step number within the flow where the failure occurred
      - `step_id` string — ID of the step (with respect to the flow) where the failure occurred
      - `step_id_in_test` string — ID of the step (with respect to the test) where the failure occurred
      - `step_display_number` string — Display number of the failing step in nested dotted notation (e.g. "2.7" or "2.7.3"). Null when unavailable; only populated for runs executed after this field shipped (not present on backfilled historical runs).
      - `error` string — Unexpected error or formatted assertion failure that was recorded
      - `image_uri` string — URL of an image showing the error
      - `image_href` string — URL of an image showing the error
      - `image_artifact_url` string — API url of the image that will redirect to a newly signed image url
      - `assert_failure` AssertFailure — Details about assert failure
        - `reason` string — Assert failure description without expected/found values to eliminate the need for parsing downstream
        - `expected` string — Expected value where applicable
        - `found` string — Value actually found during test execution
    - `failure_categorization` FailureCategorization — Information describing the cause of a test run failure
      - `failure_category_id` string — A failure category id
      - `failure_synopsis` string — DEPRECATED -- Now persisted as FailureAnalysis -- A synopsis of the failure summary
      - `failure_summary_text` string — A summary describing the test run failure and potential root cause
      - `is_failure_category_generated` boolean — Indicates if the failure category was generated by AI
      - `is_failure_summary_generated` boolean — Indicates if the failure summary was generated by AI
      - `suggested_failure_category_id` string — Failure category ID suggested by automated analysis
      - `last_updated_by_id` string — The ID of the user who updated the categorization of this failure
      - `last_updated_time` integer — time the failure categorization was last updated
      - `failure_reason_assignment_source` 'manual' | 'auto' — How the failure reason was assigned to this test run. Server-managed; client-supplied values are ignored on write.
      - `failure_reason_assigned_by_id` string — The ID of the user or system that assigned the failure reason. Server-managed; client-supplied values are ignored on write.
      - `failure_reason_assigned_time` integer — Timestamp in epoch milliseconds when the failure reason was assigned. Server-managed; client-supplied values are ignored on write.
    - `test_cases` ExternalTestCase[] — User provided external test cases
      - `id` string — Id associated with this test case
    - `timing_summary` TimingSummary — Sumamry of various timing measures for this run
      - `find_time_ms` integer — Total time spent in finds for this run
      - `find_extra_wait_time_ms` integer — Extra wait time added by intelligent waiting in finds
    - `execution_source` 'mabl_cloud' | 'external' | 'mabl_local' | 'mabl_agent' — Where the test lives
    - `status` 'awaiting_precondition' | 'skipped' | 'rate_limited' | 'queued' | 'running' | 'completed' | 'failed' | 'terminating' | 'terminated' — The current status of this test run
    - `status_cause` string — Cause for setting given status, such as failure cause. Updated in pairs with Status.
    - `outcome` 'passed' | 'failed' | 'stopped'
    - `customer_log_uri` string — Customer facing output log (formerly output_log_uri)
    - `ad_hoc_run_info` AdHocRunInfo — Metadata about the run if it is an ad hoc run
      - `is_ad_hoc_run` boolean — true if the run is an ad hoc run
    - `attempt_count` integer — the number of times this test run was scheduled
    - `cloud_safe_id` string — Cloud safe ID representation (e.g. GCP/email/Kubernetes safe)
    - `debug` boolean — If true will capture additional debugging information during execution
    - `execution_cluster_ipv4` string — Execution cluster v4 IP address used for runtime type 'container'
    - `execution_credit_weights` ExecutionCreditWeights — A mapping used to translate test executions into the equivalent execution credit usage
      - `adhoc_ai_assertion_batch` integer — Adhoc ai assertion batch size per billable unit
      - `functional_advanced_ai` integer — Defines how many additional credits each functional test will consume due to advanced ai features
      - `functional_api` integer — Defines how many credits each functional api test consume
      - `functional_browser` integer — Defines how many credits each functional browser test consume
      - `functional_mobile` integer — Defines how many credits each functional mobile test consume
      - `performance_api_15vum` integer — Defines how many credits 15 virtual user minutes consume in a performance api test
      - `performance_browser_15vum` integer — Defines how many credits 15 virtual user minutes consume in a performance browser test
    - `execution_vm_instance_name` string — unique instance name, if runtime type 'virtual_machine'
    - `execution_vm_instance_zone` string — instance zone name, if runtime type 'virtual_machine'
    - `execution_container_id` string — execution container identifier
    - `execution_runtime_id` string — instance of execution runner unique identifier
    - `execution_runtime_type` 'container' | 'virtual_machine' — execution runtime type
    - `execution_runtime_version` string — runtime version used
    - `execution_runner_type` 'cloud_java_v1' | 'cloud_nodejs_v2' | 'cloud_perftest' — Test execution runtime to use
    - `execution_runner_size` 'x1' | 'x2' | 'x3' | 'x4' | 'x5' | 'x6' | 'small' | 'medium' | 'large' | 'inherit' — available runner sizes
    - `functionally_completed` boolean — Test execution functionally completed regardless of its status
    - `variant_id` string — variant id of the test
    - `invariant_id` string — invariant id of the test
    - `source_control` SourceControl
      - `revision` string — the primary source revision associated with this object
      - `revisions` string[] — all source revision ids associated with this object
      - `commit_username` string — the username of the user who committed the revision associated with this object
      - `branch_name` string — the branch associated with this object
      - `branches` SourceControlBranch[] — Related branches
        - `name` string, required — repository unique branch name
        - `html_url` string, required — HTML page url to view branch tree
      - `pull_request` SourceControlPullRequest — the pull request associated with this object
        - `id` string — vendor unique pull request identifier (immutable)
        - `number` integer — the number associated with the pull request (repository unique)
        - `title` string — the title of the pull request
        - `html_url` string — HTML page url to view pull request object
      - `pull_requests` SourceControlPullRequest[] — Related pull requests
        - `id` string — vendor unique pull request identifier (immutable)
        - `number` integer — the number associated with the pull request (repository unique)
        - `title` string — the title of the pull request
        - `html_url` string — HTML page url to view pull request object
      - `authors` SourceControlAuthor[] — Related authors. Should be at least one
        - `id` string, required — vendor unique author id (invariant)
        - `user_name` string, required — author username name (mutable)
        - `name` string — author full name (mutable)
        - `email` string — author email
        - `html_url` string, required — HTML page url to view author
        - `avatar_url` string, required — author avatar image URL
        - `user_type` string — repository name unique within owner scope
      - `repository_url` string — the url of the repository associated with this object
      - `repository_name` string — the name of the repository associated with this object
      - `repository` SourceControlRepository — the SCM repository associated with this object
        - `id` string, required — vendor unique repository id (immutable)
        - `name` string, required — repository name unique within owner scope
        - `full_name` string — vendor unique name to identify this repo across all vendor's repos
        - `owner_name` string, required — repository name unique within owner scope
        - `owner` SourceControlRepositoryOwner — the SCM repository associated with this object
          - `id` string, required — vendor unique repository id (immutable)
          - `name` string, required — repository name unique within owner scope
          - `owner_type` string, required — repository name unique within owner scope
          - `html_url` string, required — HTML page url to view branch tree
          - `avatar_url` string — owner avatar image URL
        - `html_url` string, required — HTML page url to view branch tree
        - `is_public` boolean — true if repository publicly visible
        - `checkout_url` string — SCM remote checkout path
    - `termination_reason` 'execution_complete' | 'execution_overtime' | 'heartbeat_lost' | 'insufficient_allocation' | 'insufficient_quota' | 'insufficient_resources' | 'invalid_configuration' | 'no_gpus_available' | 'startup_overtime' | 'stop_requested' | 'unknown' | 'usage_quota_exceeded'
    - `terminated_by_id` string — The ID of the user who terminated this test run
    - `browser` string — Browser type that was used during this test run
    - `browser_version` string — Specific version of the browser that was used during this test run
    - `journey_run_output` TestRunOutput — Contains exported items from the results of the test run
      - `exported_variables` unknown
      - `exported_variable_sources` object — Step source metadata for each exported variable, keyed by variable name
      - `live_video_output` LiveVideoOutput — Information about live test run output
        - `url` string, required — Source URL, fully populated with protocol, host, port
        - `username` string, required — Username for access
        - `password` string, required — Password for access
    - `parent_execution` string — The id of the parent plan run
    - `organization_id` string — (deprecated) The organization that this run belongs to
    - `scheduled_time` integer — The time this test run was scheduled for execution
    - `last_scheduled_time` integer — The most recent time this test run was scheduled for execution
    - `created_time` integer — time the test run was created
    - `created_by_id` string — The ID of the user who created this test run
    - `last_updated_time` integer — time the test run object was last updated
    - `last_updated_by_id` string — The ID of the user who last updated this test run
    - `output_log_uri` string — DEPRECATED, see customer_log_uri. A link to the test output logs
    - `runtime_log_uri` string — Detailed runtime logs
    - `driver_log_uri` string — Detailed webdriver logs
    - `mabldriver_log_uri` string — Detailed Node.js logs
    - `mablnet_log_uri` string — Detailed mablnet host worker logs (runs routed over mablnet)
    - `video_recording_uri` string — Video output location
    - `api_result_uri` string — API output location
    - `formatted_api_steps_uri` string — Formatted API steps output location
    - `variable_summary_uri` string — Location of variable summary file
    - `checked_links` integer — The total number of links checked by this test run
    - `broken_links` integer — The total number of broken links found by this test run
    - `checked_pages` integer — The total number of pages checked found by this test run
    - `journey` Test — A single test version
      - `id` string — Unique identifier
      - `created_by_id` string — The ID of the user who created this test
      - `last_updated_time` integer — Time the test was last updated in epoch milliseconds
      - `last_updated_by_id` string — The ID of the user who last updated this test
      - `created_time` integer — Time the test was created in epoch milliseconds
      - `revision_history` string — Serialized graph describing the test's version history. Managed by mabl API only.
      - `version_tags` object — Mapping of version tags to version numbers that the tag is currently applied to
      - `latest_version` integer — The latest numeric version of this test
      - `organization_id` string — (deprecated) The ID of the organization that this journey belongs to
      - `workspace_id` string — Workspace Id
      - `enabled` boolean — If test is enabled to execute
      - `name` string — The display name of the test
      - `description` string — Brief description the test
      - `device_emulation` DeviceEmulation — Emulation configuration
        - `device_config` DeviceEmulationConfiguration, required — Emulation configuration
          - `name` string, required — Emulation configuration display name
          - `preset_type` 'blackberry_playbook' | 'blackberry_z30' | 'galaxy_fold' | 'galaxy_note_3' | 'galaxy_note_ii' | 'galaxy_s5' | 'galaxy_s6' | 'galaxy_s8' | 'galaxy_s21' | 'galaxy_s22' | 'galaxy_s23' | 'galaxy_s_iii' | 'galaxy_tab_s7' | 'ipad' | 'ipad_air_2020' | 'ipad_mini' | 'ipad_mini_4' | 'ipad_pro' | 'ipad_ten_point_two' | 'iphone_11_pro_max' | 'iphone_11' | 'iphone_12' | 'iphone_12_pro_max' | 'iphone_13_mini' | 'iphone_13' | 'iphone_13_pro' | 'iphone_13_pro_max' | 'iphone_14' | 'iphone_14_pro' | 'iphone_14_plus' | 'iphone_14_pro_max' | 'iphone_15' | 'iphone_15_plus' | 'iphone_15_pro' | 'iphone_15_pro_max' | 'iphone_4' | 'iphone_5_se' | 'iphone_6_7_8' | 'iphone_6_7_8_plus' | 'iphone_x' | 'jiophone_2' | 'kindle_fire_hdx' | 'laptop_with_hidpi_screen' | 'laptop_with_mdpi_screen' | 'laptop_with_touch' | 'lg_optimus_l70' | 'microsoft_lumia_550' | 'microsoft_lumia_950' | 'moto_g4' | 'nexus_4' | 'nexus_5' | 'nexus_5x' | 'nexus_6' | 'nexus_6p' | 'nexus_7' | 'nexus_10' | 'nokia_lumia_520' | 'nokia_n9' | 'pixel_2' | 'pixel_2_xl' | 'pixel_6' | 'surface_duo' — Preset device configuration (optional)
          - `user_agent` string — Client User Agent string
          - `type` 'phone' | 'tablet' | 'notebook' — General device type
          - `capabilities` string[] — Optional device capabilities
          - `screen` object — Screen configuration
            - `device_pixel_ratio` number, double — Device pixel ratio (may be decimal)
            - `horizontal` DeviceScreenDimensions
              - …
            - `vertical` DeviceScreenDimensions
              - …
        - `orientation` 'portrait_primary' | 'portrait_secondary' | 'landscape_primary' | 'landscape_secondary', required — Fixed device orientation
      - `device_emulations` DeviceEmulation[] — List of browser device emulation configurations. Empty list means configured for desktop
        - `device_config` DeviceEmulationConfiguration, required — Emulation configuration
          - `name` string, required — Emulation configuration display name
          - `preset_type` 'blackberry_playbook' | 'blackberry_z30' | 'galaxy_fold' | 'galaxy_note_3' | 'galaxy_note_ii' | 'galaxy_s5' | 'galaxy_s6' | 'galaxy_s8' | 'galaxy_s21' | 'galaxy_s22' | 'galaxy_s23' | 'galaxy_s_iii' | 'galaxy_tab_s7' | 'ipad' | 'ipad_air_2020' | 'ipad_mini' | 'ipad_mini_4' | 'ipad_pro' | 'ipad_ten_point_two' | 'iphone_11_pro_max' | 'iphone_11' | 'iphone_12' | 'iphone_12_pro_max' | 'iphone_13_mini' | 'iphone_13' | 'iphone_13_pro' | 'iphone_13_pro_max' | 'iphone_14' | 'iphone_14_pro' | 'iphone_14_plus' | 'iphone_14_pro_max' | 'iphone_15' | 'iphone_15_plus' | 'iphone_15_pro' | 'iphone_15_pro_max' | 'iphone_4' | 'iphone_5_se' | 'iphone_6_7_8' | 'iphone_6_7_8_plus' | 'iphone_x' | 'jiophone_2' | 'kindle_fire_hdx' | 'laptop_with_hidpi_screen' | 'laptop_with_mdpi_screen' | 'laptop_with_touch' | 'lg_optimus_l70' | 'microsoft_lumia_550' | 'microsoft_lumia_950' | 'moto_g4' | 'nexus_4' | 'nexus_5' | 'nexus_5x' | 'nexus_6' | 'nexus_6p' | 'nexus_7' | 'nexus_10' | 'nokia_lumia_520' | 'nokia_n9' | 'pixel_2' | 'pixel_2_xl' | 'pixel_6' | 'surface_duo' — Preset device configuration (optional)
          - `user_agent` string — Client User Agent string
          - `type` 'phone' | 'tablet' | 'notebook' — General device type
          - `capabilities` string[] — Optional device capabilities
          - `screen` object — Screen configuration
            - `device_pixel_ratio` number, double — Device pixel ratio (may be decimal)
            - `horizontal` DeviceScreenDimensions
              - …
            - `vertical` DeviceScreenDimensions
              - …
        - `orientation` 'portrait_primary' | 'portrait_secondary' | 'landscape_primary' | 'landscape_secondary', required — Fixed device orientation
      - `tags` Tag[] — Tag objects associated with this test
        - `name` string, required — tag name
        - `values` string[]
      - `default` boolean — Whether this test is a default test generated for all customers from a template
      - `labels` Label[] — User provided labels
        - `name` string, required — name
        - `color` string — color
      - `datatables` string[] — Array of datatable IDs for datatables that satisfy the parameter requirements of the test
      - `export_variables` boolean — Whether this test should export variables
      - `source_control_tags` object — (deprecated, use versionTags) mapping of source control tags to version numbers the tag is currently applied to
      - `ref_id` string — Reference id to this test in another system
      - `test_type` 'api' | 'browser' | 'performance' | 'mobile' — Type of test
      - `test_source` 'mabl_cloud' | 'external' | 'mabl_local' | 'mabl_agent' — Where the test lives
      - `test_cases` ExternalTestCase[] — User provided external test cases (limit 20)
        - `id` string — Id associated with this test case
      - `send_mabl_header` boolean — Controls whether or not the x-mabl-agent header is sent on requests
      - `execution_runner_size` 'x1' | 'x2' | 'x3' | 'x4' | 'x5' | 'x6' | 'small' | 'medium' | 'large' | 'inherit' — available runner sizes
      - `mobile_platform` 'android' | 'ios' — The mobile platform associated with this object
      - `intent` string — The intent of the test as natural language
      - `test_case_id` string — Unique identifier of the associated TestCase
      - `is_latest` boolean — Indicates whether this was the latest variant when retrieved
      - `version` integer — The generation number of this variant
      - `previous_version` integer — The generation number of the variant that was edited to create this variant (if applicable)
      - `merged_version` integer — The generation number of the variant that was merged with the previous version to create this variant (if applicable)
      - `merged_from_branch` string — Name of the source branch whose version was merged to create this variant (if applicable)
      - `created_on_branch` string — Branch name the test was created on
      - `change_description` string — Description of the change between this variant and the previous variant
      - `manual_steps` string — Test steps outline, used for manual tests
      - `flows` string[] — Array of flow IDs for flows to execute during test
      - `flow_configuration` object — Configuration for specific flow instances
      - `iterations` object — Iteration configurations keyed by flow index (as string)
      - `performance_configuration` PerformanceConfiguration — Configuration of the performance test type.
        - `runtime` object — Overall duration of the performance test.
          - `duration_mins` integer — Test duration in minutes
          - `ramp_up_seconds` integer — Test ramp up time in seconds
        - `workloads` WorkloadConfiguration[] — Workloads included in this performance test
          - `test_invariant_id` string — The invariant id of the test (tes) used to generate the workload
          - `test_variant_id` string — The variant id of the test (tes) used to generate the workload. Only populated in test runs and can be found in TestRun.tes.performance_configuration.workloads. It is never populated in Test.performance_configuration.workloads.
          - `concurrency` integer — Number of threads/users to use for this test
          - `failure_criteria` PerformanceFailureCriteria[] — The failure criteria associated with this workload
            - `metric_comparator` 'greater_than' | 'less_than' — The comparator determining the failure case
            - `metric_threshold` number, double — The cutoff value determining the failure case
            - `metric_type` 'response_time' | 'http_error_rate' | 'functional_test_failure_rate' | 'core_web_vitals' | 'step_duration' — The type of metric determining failure case
            - `metric_optional_parameters` PerformanceFailureCriteriaOptionalParameters — Optional parameters related to specific failure criteria
              - …
          - `failure_criteria_evaluate` 'any' | 'all' — How to combine failure criteria
          - `datatables` string[] — IDs of data tables to be used for this workload
          - `credentials_id` string — Optional ID of the credentials object to use with this test
          - `http_auth_credentials_id` string — Optional ID of credentials to pass in the HTTP request (as opposed to interactive login credentials)
      - `api_url` string — the API URL associated with the test
      - `api_configuration` ApiConfiguration — Configuration of the API test type.
        - `authentication` ApiAuthentication — Configuration for API authentication
          - `type` 'apikey' | 'basic' | 'bearer' | 'noauth' | 'oauth1' | 'oauth2', required — The authentication type to use
          - `api_key` ApiKeyAuthentication — Configuration for API key authentication
            - `location` 'header' | 'query' — The location of the API key
            - `key` string — The key to use for authentication
            - `value` string — The value to use for authentication
          - `basic` BasicAuthentication — Configuration for basic authentication
            - `username` string — The username to use for authentication
            - `password` string — The password to use for authentication
          - `bearer` BearerAuthentication — Configuration for bearer authentication
            - `token` string — The token to use for authentication
          - `oauth1` OAuth1Authentication — Configuration for OAuth 1.0 authentication
            - `add_parameters_to_header` boolean
            - `add_empty_parameters_to_signature` boolean
            - `callback_url` string
            - `consumer_key` string
            - `consumer_secret` string
            - `include_body_hash` boolean
            - `nonce` string
            - `realm` string
            - `signature_method` 'HMAC-SHA1' | 'HMAC-SHA256' | 'HMAC-SHA512' | 'RSA-SHA1' | 'RSA-SHA256' | 'RSA-SHA512' | 'PLAINTEXT'
            - `timestamp` string
            - `token` string
            - `token_secret` string
            - `verifier` string
            - `version` string
          - `oauth2` OAuth2Authentication — Configuration for OAuth 2.0 authentication
            - `access_token_url` string, required
            - `client_credentials_location` 'basic_auth_header' | 'body', required
            - `client_id` string, required
            - `client_secret` string, required
            - `grant_type` 'client_credentials', required
            - `scope` string
            - `token_variable` string, required — The OAuth token will be stored to this variable
        - `pre_request_snippets` ExecutableSnippet[] — Snippets to execute before the request
          - `invariant_id` string — Object ID for the parent type. Set by system.
          - `description` string — Summary of the Snippet
          - `name` string — The display name of the Snippet
          - `body` string — the base64 encoded body of the Snippet
          - `snippet_type` 'css' | 'javascript' | 'xpath' | 'sql' | 'postman'
          - `reusable` boolean — Indicates whether the snippet is reusable
          - `workspace_id` string — The ID of the workspace that this Snippet belongs to
        - `post_request_snippets` ExecutableSnippet[] — Snippets to execute after the request
          - `invariant_id` string — Object ID for the parent type. Set by system.
          - `description` string — Summary of the Snippet
          - `name` string — The display name of the Snippet
          - `body` string — the base64 encoded body of the Snippet
          - `snippet_type` 'css' | 'javascript' | 'xpath' | 'sql' | 'postman'
          - `reusable` boolean — Indicates whether the snippet is reusable
          - `workspace_id` string — The ID of the workspace that this Snippet belongs to
      - `url` string — the URL used when creating the test version
      - `credentials_id` string — the id of the credentials used when creating the test version
      - `application_id` string — the id of the application used when creating the test version
      - `environment_id` string — the id of the environment used when creating the test version
      - `datatable_row_id` string — the id of the DataTable row used when creating the test version
      - `variables` UserDefinedVariables
        - `inputs` UserDefinedInputVariable[] — the input variables for the flow/test (used before they are defined) with set semantics on name
          - `name` string, required — the fully qualified symbol name of the variable
          - `default_value` string — the value to use when the variable is not otherwise defined
          - `value_type` 'string' | 'file' — The kind of value this variable carries. Absent implies `string` for backward compatibility; existing string variables are unaffected.
          - `file_value` FileValue — A typed file value for a file-typed variable, reconciling field-for-field with the runtime FileValue (mabl-cli mablscript-find). `origin` selects which reference is populated: `upload` uses file_upload_id, `download` uses download_ref. This one-of invariant is NOT enforced by the schema (a oneOf/discriminator would make the generated Java/TS clients polymorphic and diverge from the flat runtime FileValue); it must be enforced by validation on the Flow/Test write path, tracked in MABL-20387, before file variables are consumed (first reader: MABL-20718). Until then a malformed file_value is accepted but unused. The run-local localUri from the runtime shape is intentionally omitted (ephemeral, never persisted).
            - `origin` 'upload' | 'download', required — Provenance of the file. `upload` is a durable, reusable FileUpload (see file_upload_id). `download` is a transient file produced by a test run (see download_ref).
            - `name` string, required — the base file name
            - `mime_type` string, required — the true MIME type (e.g. application/pdf), not a file extension
            - `size` integer, required — the size of the file in bytes
            - `checksum` string — optional content checksum
            - `file_upload_id` string — Set when origin == upload; the id of a durable FileUpload (FileUpload.id). This is how a persisted or authored file variable references its file.
            - `download_ref` FileDownloadReference — Run-scoped coordinates locating a file downloaded during a test run. The backend derives the workspace from test_run_id and reconstructs the artifact location from object_key server-side; the bucket name is never stored here or returned to clients. Valid only within the producing run's artifact-retention window.
              - …
        - `outputs` UserDefinedOutputVariable[] — the variables defined by this script with set semantics. this is not used by the test.
          - `name` string, required — the fully qualified symbol name of the variable
      - `mobile_training_info` MobileTrainingInfo
        - `device_name` string — The name of the mobile device
        - `device_api_level` string — The API level of the mobile device
        - `device_os_version` string — The OS version of the mobile device
        - `screen_dimensions` DeviceScreenDimensions
          - `height` integer, required — Height (pixels)
          - `width` integer, required — Width (pixels)
        - `is_cloud_training` boolean — Whether the training took place on a cloud device or local device
        - `is_real_device` boolean — Whether the training took place on a real device or an emulator/simulator
        - `app_file_name` string — The mobile app file name (only present for local training)
        - `app_file_id` string — The file id of the mobile app (only present for cloud training)
      - `training_session_id` string — the id of the training session used when creating the test version
      - `agent_session_id` string — the id of the agent session that authored this test version, if any
      - `variant_last_updated_time` integer — Time the variant was last updated
      - `variant_last_updated_by_id` string — ID of the user who last updated the variant
      - `cloud_safe_invariant_id` string — Cloud safe ID representation (e.g. GCP/email/Kubernetes safe)
      - `invariant_id` string — Object ID for the parent type. Set by system.
    - `journey_configuration` TestConfiguration — Specifies a Test that should be executed as part of a Plan
      - `journey_id` string, required
      - `parameters` ExecutionParameter[]
        - `type` 'basic_auth' | 'credentials' | 'ignore_variables' | 'value' | 'variable_row' | 'variables', required — The type of this parameter
        - `name` string — The name of this parameter
        - `value` string, required — The value of this parameter
        - `argument` string — Additional text data for this parameter.
        - `argumentObject` union — Additional data for this parameter.
          - DynamicScenarioSelection — Dynamic scenario selection parameter argument
            - `type` 'dynamic'
            - `query` string, required — The user query prompt
            - `count` integer, required — The estimated count of scenarios
          - StaticScenarioSelection — Static scenario selection parameter argument
            - `type` 'static'
            - `scenario_ids` string[], required — The selection scenario IDs
            - `count` integer, required — The estimated count of scenarios
    - `journey_parameters` TestParameters — The parameters that differentiate this test run from another run of the same test within the same plan
      - `browser_type` string — The browser used during this test run
      - `device_emulation` DeviceEmulation — Emulation configuration
        - `device_config` DeviceEmulationConfiguration, required — Emulation configuration
          - `name` string, required — Emulation configuration display name
          - `preset_type` 'blackberry_playbook' | 'blackberry_z30' | 'galaxy_fold' | 'galaxy_note_3' | 'galaxy_note_ii' | 'galaxy_s5' | 'galaxy_s6' | 'galaxy_s8' | 'galaxy_s21' | 'galaxy_s22' | 'galaxy_s23' | 'galaxy_s_iii' | 'galaxy_tab_s7' | 'ipad' | 'ipad_air_2020' | 'ipad_mini' | 'ipad_mini_4' | 'ipad_pro' | 'ipad_ten_point_two' | 'iphone_11_pro_max' | 'iphone_11' | 'iphone_12' | 'iphone_12_pro_max' | 'iphone_13_mini' | 'iphone_13' | 'iphone_13_pro' | 'iphone_13_pro_max' | 'iphone_14' | 'iphone_14_pro' | 'iphone_14_plus' | 'iphone_14_pro_max' | 'iphone_15' | 'iphone_15_plus' | 'iphone_15_pro' | 'iphone_15_pro_max' | 'iphone_4' | 'iphone_5_se' | 'iphone_6_7_8' | 'iphone_6_7_8_plus' | 'iphone_x' | 'jiophone_2' | 'kindle_fire_hdx' | 'laptop_with_hidpi_screen' | 'laptop_with_mdpi_screen' | 'laptop_with_touch' | 'lg_optimus_l70' | 'microsoft_lumia_550' | 'microsoft_lumia_950' | 'moto_g4' | 'nexus_4' | 'nexus_5' | 'nexus_5x' | 'nexus_6' | 'nexus_6p' | 'nexus_7' | 'nexus_10' | 'nokia_lumia_520' | 'nokia_n9' | 'pixel_2' | 'pixel_2_xl' | 'pixel_6' | 'surface_duo' — Preset device configuration (optional)
          - `user_agent` string — Client User Agent string
          - `type` 'phone' | 'tablet' | 'notebook' — General device type
          - `capabilities` string[] — Optional device capabilities
          - `screen` object — Screen configuration
            - `device_pixel_ratio` number, double — Device pixel ratio (may be decimal)
            - `horizontal` DeviceScreenDimensions
              - …
            - `vertical` DeviceScreenDimensions
              - …
        - `orientation` 'portrait_primary' | 'portrait_secondary' | 'landscape_primary' | 'landscape_secondary', required — Fixed device orientation
      - `mobile_device` MobileDeviceConfiguration — Represents a mobile device configuration (model, OS version) for executing mobile tests
        - `created_by_id` string — The ID of the user who created this configuration
        - `created_time` integer — The time at which this configuration was created
        - `cloud_training_hot_pool_support` boolean — Device is included in the cloud training hot pool
        - `cloud_runner_hot_pool_support` boolean — Device is included in the cloud runner hot pool
        - `cloud_training_support` boolean — Device supports cloud training
        - `id` string — The unique ID for this configuration entity
        - `last_updated_by_id` string — The ID of the user who last updated this configuration
        - `last_updated_time` integer — The time at which this configuration was last updated
        - `platform` 'android' | 'ios', required — The mobile platform associated with this object
        - `device_manufacturer` string, required — Device manufacturer (Apple, Google, Samsung)
        - `device_name` string, required — Device display name (iPhone 14, Pixel 7 Pro)
        - `device_id` string — Vendor unique device id (pixel_7_pro)
        - `screen_dimensions` DeviceScreenDimensions, required
          - `height` integer, required — Height (pixels)
          - `width` integer, required — Width (pixels)
        - `os_version` string, required — OS version (16.6.1, Oreo, 12.0)
        - `android_configuration` AndroidDeviceConfiguration — Android specific options
          - `api_level` string — Version of API this device is running (34, 33).
          - `abi` string — Application boundary interface identifies combination of CPU and instruction set (x86, x86_64)
      - `imported_variables` unknown
      - `imported_variable_sources` object — Source metadata for imported variables, keyed by variable name
      - `user_variables` VariableRow
        - `id` string — The ID of the VariableRow
        - `table_id` string — The ID of the VariableRow's parent table
        - `row` Variable[]
          - `name` string — The variable name
          - `value` string — The value associated with the variable defined in the "name" field
        - `created_time` integer — Time at which the VariableRow was created
        - `created_by_id` string — The ID of the user who created this VariableRow
        - `last_updated_time` integer — Time at which the VariableRow was last updated
        - `last_updated_by_id` string — The ID of the user who last updated this VariableRow
        - `organization_id` string — The ID of the organization associated with this VariableRow
        - `scenario_id` string — The ID of the particular scenario to differentiate between rows in a VariableTable
      - `scenario_ids` string[] — Specific scenario IDs to run, instead of running all of the scenarios defined in the user_variables.
      - `credentials_id` string — the id of the credentials used when creating the test version
      - `http_auth_credentials_id` string — the id of the HTTP basic auth credentials used when creating the test version
      - `deployment` Deployment
        - `id` string — The ID of the deployment
        - `created_time` integer — Time at which the deployment was created
        - `created_by_id` string — The ID of the user who created this deployment
        - `last_updated_time` integer — Time at which the deployment was last updated
        - `last_updated_by_id` string — The ID of the user who last updated this deployment
        - `organization_id` string — The ID of the organization associated with this deployment
        - `application_id` string — The ID of the application associated with this deployment
        - `environment_id` string — The ID of the environment associated with this deployment
        - `name` string — The display name of the deployment
        - `tags` Tag[] — Free text tags associated with this entity
          - `name` string, required — tag name
          - `values` string[]
        - `uri` string — URI of the deployment (empty for mobile_application deployment type)
        - `deployment_type` 'web_application' | 'api' | 'mobile_application' — The type of the deployment.
        - `variables` object — Variables for this deployment. Overrides variables with the same name specified in the environment configuration.
        - `link_agent_label` string — DEPRECATED - use link_agent_labels
        - `link_agent_labels` string[] — Overrides the link_agent_labels in the associated environment
        - `link_bypass_mabl_proxy` boolean — Overrides the link_bypass_mabl_proxy in the associated environment (mabl link only)
        - `use_personal_link_agent` boolean — Route this run's test traffic through the triggering user's own personal mablnet Link tunnels (tunnels whose egress is that user's machine), in addition to the environment's configured link agents. The owner is the user who triggers the run, resolved server-side — there is no id to pass. By default the run stripes across every live personal tunnel the user has (e.g. one per machine); set personal_link_tunnel_label to pin it to one. mablnet-only; requires that user to have at least one live personal Link Agent connected.
        - `personal_link_tunnel_label` string — Restrict use_personal_link_agent to a single personal tunnel by its Link label (the tunnel-safe machine hostname the user's `link-agents start --personal` registers under), instead of striping across all of the user's live personal tunnels. Ignored when use_personal_link_agent is not set.
        - `source_control_tag_target` string — Overrides the source_control_tag_target in the associated environment
        - `mobile_app_file_id` string — Identifier of mobile app file for this deployment (empty for web_application and api deployment types)
      - `related_deployments` Deployment[] — Deployments related to this run. For example, when executing a browser test there may be a related API deployment.
        - `id` string — The ID of the deployment
        - `created_time` integer — Time at which the deployment was created
        - `created_by_id` string — The ID of the user who created this deployment
        - `last_updated_time` integer — Time at which the deployment was last updated
        - `last_updated_by_id` string — The ID of the user who last updated this deployment
        - `organization_id` string — The ID of the organization associated with this deployment
        - `application_id` string — The ID of the application associated with this deployment
        - `environment_id` string — The ID of the environment associated with this deployment
        - `name` string — The display name of the deployment
        - `tags` Tag[] — Free text tags associated with this entity
          - `name` string, required — tag name
          - `values` string[]
        - `uri` string — URI of the deployment (empty for mobile_application deployment type)
        - `deployment_type` 'web_application' | 'api' | 'mobile_application' — The type of the deployment.
        - `variables` object — Variables for this deployment. Overrides variables with the same name specified in the environment configuration.
        - `link_agent_label` string — DEPRECATED - use link_agent_labels
        - `link_agent_labels` string[] — Overrides the link_agent_labels in the associated environment
        - `link_bypass_mabl_proxy` boolean — Overrides the link_bypass_mabl_proxy in the associated environment (mabl link only)
        - `use_personal_link_agent` boolean — Route this run's test traffic through the triggering user's own personal mablnet Link tunnels (tunnels whose egress is that user's machine), in addition to the environment's configured link agents. The owner is the user who triggers the run, resolved server-side — there is no id to pass. By default the run stripes across every live personal tunnel the user has (e.g. one per machine); set personal_link_tunnel_label to pin it to one. mablnet-only; requires that user to have at least one live personal Link Agent connected.
        - `personal_link_tunnel_label` string — Restrict use_personal_link_agent to a single personal tunnel by its Link label (the tunnel-safe machine hostname the user's `link-agents start --personal` registers under), instead of striping across all of the user's live personal tunnels. Ignored when use_personal_link_agent is not set.
        - `source_control_tag_target` string — Overrides the source_control_tag_target in the associated environment
        - `mobile_app_file_id` string — Identifier of mobile app file for this deployment (empty for web_application and api deployment types)
      - `source_control_tag` string — The source control tag associated with this test run
      - `page_load_wait` 'FAST' | 'NORMAL' | 'SLOW' | 'SLOWER' — The amount of time to wait after page loads, if supported by the runtime.
    - `plan_id` string — Plan id
    - `link_server_id` string — DEPRECATED - use link_server_ids
    - `link_server_ids` string[] — IDs of the Link Server used during this test run, if any
    - `run_multiplier_index` integer — Zero-indexed run multiplier index for this run
    - `stage_index` integer — Zero-indexed stage index for this run
    - `journey_run_index` integer — Zero-indexed test run index within its plan run; describes the order in which test runs were created.
    - `send_mabl_header` boolean — Controls whether or not the x-mabl-agent header is sent on requests
    - `localization_options` LocalizationOptions — Localization-related settings to apply on the browser in browser tests, e.g. timezone, locale. When not specified, cloud tests run with UTC timezone and default locale for the region of the cloud runs. Local runs use the timezone and locale of the machine running the test.
      - `locale` string — The language locale identifier to run the test with, e.g. en-US, jp, etc.
      - `timezone_identifier` string — The timezone identifier to run the test with, e.g. America/Los_Angeles, etc.
    - `billing_summary` TestRunBillingSummary — Summary of usage associated with this run for billing purposes
      - `billable_api_minutes` integer — Billable API performance test minutes associated with this run (e.g. 10 min * 5 users = 75 min billable)
      - `billable_api_vuh` number, double — Billable API performance test virtual user hours associated with this run (e.g. 10 min * 4 users = 1.0 billable VUH)
      - `used_api_minutes` integer — API performance test minutes used during this run (e.g. 10 min * 5 users = 50 min used)
      - `billable_browser_minutes` integer — Billable browser performance test minutes associated with this run (e.g. 10 min * 5 users * 2.0 browser multiplier = 150 min billable)
      - `billable_browser_vuh` number, double — Billable browser performance test virtual user hours associated with this run (e.g. 10 min * 4 users * 2.0 browser multiplier = 2.0 billable VUH)
      - `used_browser_minutes` integer — Browser performance test minutes used during this run (e.g. 10 min * 5 users = 50 min used)
    - `billing_summary_billable_api_minutes` integer — Billable API performance test minutes associated with this run (e.g. 10 min * 5 users = 75 min billable)
    - `billing_summary_billable_api_vuh` number, double — Billable API performance test virtual user hours associated with this run (e.g. 10 min * 4 users = 1.0 billable VUH)
    - `billing_summary_used_api_minutes` integer — API performance test minutes used during this run (e.g. 10 min * 5 users = 50 min used)
    - `billing_summary_billable_browser_minutes` integer — Billable browser performance test minutes associated with this run (e.g. 10 min * 5 users * 2.0 browser multiplier = 150 min billable)
    - `billing_summary_billable_browser_vuh` number, double — Billable browser performance test virtual user hours associated with this run (e.g. 10 min * 4 users * 2.0 browser multiplier = 2.0 billable VUH)
    - `billing_summary_used_browser_minutes` integer — Browser performance test minutes used during this run (e.g. 10 min * 5 users = 50 min used)
    - `runner_id` string — The ExecutionRunner id. This is currently only set by the mobile queue processor.
    - `advanced_ai` boolean — This run includes the use of features in the advanced AI package
    - `step_features` string[] — Feature IDs for features used in this test run
    - `related_agent_sessions` RelatedAgentSession[] — Agent sessions associated with this test run (e.g., test recovery sessions)
      - `agent_type` 'test_authoring' | 'test_creation_planning' | 'test_planning' | 'agent_review' | 'app_summary' | 'test_run_analysis' | 'test_recovery' | 'runtime_recovery_summary_agent' | 'plan_run_analysis' | 'deployment_analysis' | 'workspace_results_analysis' | 'results_auto_analysis' | 'app_modeling' | 'app_modeling_run' | 'file_assertion', required
      - `agent_session_id` string, required — The ID of the agent session
      - `recovery_session_properties` RecoverySessionProperties — Additional properties specific to test recovery agent sessions
        - `step_id` string — The ID of the step that triggered recovery
        - `step_run_id` string — The run ID of the step that triggered recovery
        - `step_number` string — The step number within the flow
        - `decision` 'fail' | 'resume' — The recovery decision made by the agent
  - `cursor` string — Cursor used for pagination

## Other responses

- `401` — User not authenticated
- `403` — User not authorized
- `default` — Unknown error

---

[API](https://skmtc.net/mabl/apis/mabl-api.md) · [All operations](https://skmtc.net/mabl/apis/mabl-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/mabl/mabl-api/revisions/d0fc0114da66/schema)
