{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "View and manage your data across Google Cloud Platform services"
        },
        "https://www.googleapis.com/auth/cloud-platform.read-only": {
          "description": "View your data across Google Cloud Platform services"
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://testing.googleapis.com/",
  "batchPath": "batch",
  "description": "Allows developers to run automated tests for their mobile applications on Google infrastructure.",
  "discoveryVersion": "v1",
  "documentationLink": "https://developers.google.com/cloud-test-lab/",
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "id": "testing:v1",
  "kind": "discovery#restDescription",
  "mtlsRootUrl": "https://testing.mtls.googleapis.com/",
  "name": "testing",
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "parameters": {
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "key": {
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query",
      "type": "boolean"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "protocol": "rest",
  "resources": {
    "applicationDetailService": {
      "methods": {
        "getApkDetails": {
          "description": "Gets the details of an Android application APK.",
          "flatPath": "v1/applicationDetailService/getApkDetails",
          "httpMethod": "POST",
          "id": "testing.applicationDetailService.getApkDetails",
          "parameterOrder": [],
          "parameters": {},
          "path": "v1/applicationDetailService/getApkDetails",
          "request": {
            "$ref": "FileReference"
          },
          "response": {
            "$ref": "GetApkDetailsResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        }
      }
    },
    "projects": {
      "resources": {
        "testMatrices": {
          "methods": {
            "cancel": {
              "description": "Cancels unfinished test executions in a test matrix.\nThis call returns immediately and cancellation proceeds asychronously.\nIf the matrix is already final, this operation will have no effect.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project\n- INVALID_ARGUMENT - if the request is malformed\n- NOT_FOUND - if the Test Matrix does not exist",
              "flatPath": "v1/projects/{projectId}/testMatrices/{testMatrixId}:cancel",
              "httpMethod": "POST",
              "id": "testing.projects.testMatrices.cancel",
              "parameterOrder": [
                "projectId",
                "testMatrixId"
              ],
              "parameters": {
                "projectId": {
                  "description": "Cloud project that owns the test.",
                  "location": "path",
                  "required": true,
                  "type": "string"
                },
                "testMatrixId": {
                  "description": "Test matrix that will be canceled.",
                  "location": "path",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/projects/{projectId}/testMatrices/{testMatrixId}:cancel",
              "response": {
                "$ref": "CancelTestMatrixResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "create": {
              "description": "Creates and runs a matrix of tests according to the given specifications.\nUnsupported environments will be returned in the state UNSUPPORTED.\nMatrices are limited to at most 200 supported executions.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to write to project\n- INVALID_ARGUMENT - if the request is malformed or if the matrix expands\n                     to more than 200 supported executions",
              "flatPath": "v1/projects/{projectId}/testMatrices",
              "httpMethod": "POST",
              "id": "testing.projects.testMatrices.create",
              "parameterOrder": [
                "projectId"
              ],
              "parameters": {
                "projectId": {
                  "description": "The GCE project under which this job will run.",
                  "location": "path",
                  "required": true,
                  "type": "string"
                },
                "requestId": {
                  "description": "A string id used to detect duplicated requests.\nIds are automatically scoped to a project, so\nusers should ensure the ID is unique per-project.\nA UUID is recommended.\n\nOptional, but strongly recommended.",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1/projects/{projectId}/testMatrices",
              "request": {
                "$ref": "TestMatrix"
              },
              "response": {
                "$ref": "TestMatrix"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "get": {
              "description": "Checks the status of a test matrix.\n\nMay return any of the following canonical error codes:\n\n- PERMISSION_DENIED - if the user is not authorized to read project\n- INVALID_ARGUMENT - if the request is malformed\n- NOT_FOUND - if the Test Matrix does not exist",
              "flatPath": "v1/projects/{projectId}/testMatrices/{testMatrixId}",
              "httpMethod": "GET",
              "id": "testing.projects.testMatrices.get",
              "parameterOrder": [
                "projectId",
                "testMatrixId"
              ],
              "parameters": {
                "projectId": {
                  "description": "Cloud project that owns the test matrix.",
                  "location": "path",
                  "required": true,
                  "type": "string"
                },
                "testMatrixId": {
                  "description": "Unique test matrix id which was assigned by the service.",
                  "location": "path",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/projects/{projectId}/testMatrices/{testMatrixId}",
              "response": {
                "$ref": "TestMatrix"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/cloud-platform.read-only"
              ]
            }
          }
        }
      }
    },
    "testEnvironmentCatalog": {
      "methods": {
        "get": {
          "description": "Gets the catalog of supported test environments.\n\nMay return any of the following canonical error codes:\n\n- INVALID_ARGUMENT - if the request is malformed\n- NOT_FOUND - if the environment type does not exist\n- INTERNAL - if an internal error occurred",
          "flatPath": "v1/testEnvironmentCatalog/{environmentType}",
          "httpMethod": "GET",
          "id": "testing.testEnvironmentCatalog.get",
          "parameterOrder": [
            "environmentType"
          ],
          "parameters": {
            "environmentType": {
              "description": "Required. The type of environment that should be listed.",
              "enum": [
                "ENVIRONMENT_TYPE_UNSPECIFIED",
                "ANDROID",
                "IOS",
                "NETWORK_CONFIGURATION",
                "PROVIDED_SOFTWARE"
              ],
              "location": "path",
              "required": true,
              "type": "string"
            },
            "projectId": {
              "description": "For authorization, the cloud project requesting the TestEnvironmentCatalog.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1/testEnvironmentCatalog/{environmentType}",
          "response": {
            "$ref": "TestEnvironmentCatalog"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only"
          ]
        }
      }
    }
  },
  "revision": "20200508",
  "rootUrl": "https://testing.googleapis.com/",
  "schemas": {
    "Account": {
      "description": "Identifies an account and how to log into it.",
      "id": "Account",
      "properties": {
        "googleAuto": {
          "$ref": "GoogleAuto",
          "description": "An automatic google login account."
        }
      },
      "type": "object"
    },
    "AndroidDevice": {
      "description": "A single Android device.",
      "id": "AndroidDevice",
      "properties": {
        "androidModelId": {
          "description": "Required. The id of the Android device to be used.\nUse the TestEnvironmentDiscoveryService to get supported options.",
          "type": "string"
        },
        "androidVersionId": {
          "description": "Required. The id of the Android OS version to be used.\nUse the TestEnvironmentDiscoveryService to get supported options.",
          "type": "string"
        },
        "locale": {
          "description": "Required. The locale the test device used for testing.\nUse the TestEnvironmentDiscoveryService to get supported options.",
          "type": "string"
        },
        "orientation": {
          "description": "Required. How the device is oriented during the test.\nUse the TestEnvironmentDiscoveryService to get supported options.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "AndroidDeviceCatalog": {
      "description": "The currently supported Android devices.",
      "id": "AndroidDeviceCatalog",
      "properties": {
        "models": {
          "description": "The set of supported Android device models.",
          "items": {
            "$ref": "AndroidModel"
          },
          "type": "array"
        },
        "runtimeConfiguration": {
          "$ref": "AndroidRuntimeConfiguration",
          "description": "The set of supported runtime configurations."
        },
        "versions": {
          "description": "The set of supported Android OS versions.",
          "items": {
            "$ref": "AndroidVersion"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "AndroidDeviceList": {
      "description": "A list of Android device configurations in which the test is to be executed.",
      "id": "AndroidDeviceList",
      "properties": {
        "androidDevices": {
          "description": "Required. A list of Android devices.",
          "items": {
            "$ref": "AndroidDevice"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "AndroidInstrumentationTest": {
      "description": "A test of an Android application that can control an Android component\nindependently of its normal lifecycle.\nAndroid instrumentation tests run an application APK and test APK inside the\nsame process on a virtual or physical AndroidDevice.  They also specify\na test runner class, such as com.google.GoogleTestRunner, which can vary\non the specific instrumentation framework chosen.\n\nSee \u003chttp://developer.android.com/tools/testing/testing_android.html\u003e for\nmore information on types of Android tests.",
      "id": "AndroidInstrumentationTest",
      "properties": {
        "appApk": {
          "$ref": "FileReference",
          "description": "The APK for the application under test."
        },
        "appBundle": {
          "$ref": "AppBundle",
          "description": "A multi-apk app bundle for the application under test."
        },
        "appPackageId": {
          "description": "The java package for the application under test.\nThe default value is determined by examining the application's manifest.",
          "type": "string"
        },
        "orchestratorOption": {
          "description": "The option of whether running each test within its own invocation of\ninstrumentation with Android Test Orchestrator or not.\n** Orchestrator is only compatible with AndroidJUnitRunner version 1.0 or\nhigher! **\nOrchestrator offers the following benefits:\n - No shared state\n - Crashes are isolated\n - Logs are scoped per test\n\nSee\n\u003chttps://developer.android.com/training/testing/junit-runner.html#using-android-test-orchestrator\u003e\nfor more information about Android Test Orchestrator.\n\nIf not set, the test will be run without the orchestrator.",
          "enum": [
            "ORCHESTRATOR_OPTION_UNSPECIFIED",
            "USE_ORCHESTRATOR",
            "DO_NOT_USE_ORCHESTRATOR"
          ],
          "enumDescriptions": [
            "Default value: the server will choose the mode. Currently implies that\nthe test will run without the orchestrator. In the future,\nall instrumentation tests will be run with the orchestrator.\nUsing the orchestrator is highly encouraged because of all the benefits it\noffers.",
            "Run test using orchestrator.\n** Only compatible with AndroidJUnitRunner version 1.0 or higher! **\nRecommended.",
            "Run test without using orchestrator."
          ],
          "type": "string"
        },
        "shardingOption": {
          "$ref": "ShardingOption",
          "description": "The option to run tests in multiple shards in parallel."
        },
        "testApk": {
          "$ref": "FileReference",
          "description": "Required. The APK containing the test code to be executed."
        },
        "testPackageId": {
          "description": "The java package for the test to be executed.\nThe default value is determined by examining the application's manifest.",
          "type": "string"
        },
        "testRunnerClass": {
          "description": "The InstrumentationTestRunner class.\nThe default value is determined by examining the application's manifest.",
          "type": "string"
        },
        "testTargets": {
          "description": "Each target must be fully qualified with the package name or class name,\nin one of these formats:\n - \"package package_name\"\n - \"class package_name.class_name\"\n - \"class package_name.class_name#method_name\"\n\nIf empty, all targets in the module will be run.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "AndroidMatrix": {
      "description": "A set of Android device configuration permutations is defined by the\nthe cross-product of the given axes. Internally, the given AndroidMatrix\nwill be expanded into a set of AndroidDevices.\n\nOnly supported permutations will be instantiated.  Invalid permutations\n(e.g., incompatible models/versions) are ignored.",
      "id": "AndroidMatrix",
      "properties": {
        "androidModelIds": {
          "description": "Required. The ids of the set of Android device to be used.\nUse the TestEnvironmentDiscoveryService to get supported options.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "androidVersionIds": {
          "description": "Required. The ids of the set of Android OS version to be used.\nUse the TestEnvironmentDiscoveryService to get supported options.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "locales": {
          "description": "Required. The set of locales the test device will enable for testing.\nUse the TestEnvironmentDiscoveryService to get supported options.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "orientations": {
          "description": "Required. The set of orientations to test with.\nUse the TestEnvironmentDiscoveryService to get supported options.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "AndroidModel": {
      "description": "A description of an Android device tests may be run on.",
      "id": "AndroidModel",
      "properties": {
        "brand": {
          "description": "The company that this device is branded with.\nExample: \"Google\", \"Samsung\".",
          "type": "string"
        },
        "codename": {
          "description": "The name of the industrial design.\nThis corresponds to android.os.Build.DEVICE.",
          "type": "string"
        },
        "form": {
          "description": "Whether this device is virtual or physical.",
          "enum": [
            "DEVICE_FORM_UNSPECIFIED",
            "VIRTUAL",
            "PHYSICAL"
          ],
          "enumDescriptions": [
            "Do not use.  For proto versioning only.",
            "A software stack that simulates the device.",
            "Actual hardware."
          ],
          "type": "string"
        },
        "formFactor": {
          "description": "Whether this device is a phone, tablet, wearable, etc.",
          "enum": [
            "DEVICE_FORM_FACTOR_UNSPECIFIED",
            "PHONE",
            "TABLET",
            "WEARABLE"
          ],
          "enumDescriptions": [
            "Do not use. For proto versioning only.",
            "This device has the shape of a phone.",
            "This device has the shape of a tablet.",
            "This device has the shape of a watch or other wearable."
          ],
          "type": "string"
        },
        "id": {
          "description": "The unique opaque id for this model.\nUse this for invoking the TestExecutionService.",
          "type": "string"
        },
        "lowFpsVideoRecording": {
          "description": "True if and only if tests with this model are recorded by stitching\ntogether screenshots. See use_low_spec_video_recording in device config.",
          "type": "boolean"
        },
        "manufacturer": {
          "description": "The manufacturer of this device.",
          "type": "string"
        },
        "name": {
          "description": "The human-readable marketing name for this device model.\nExamples: \"Nexus 5\", \"Galaxy S5\".",
          "type": "string"
        },
        "screenDensity": {
          "description": "Screen density in DPI.\nThis corresponds to ro.sf.lcd_density",
          "format": "int32",
          "type": "integer"
        },
        "screenX": {
          "description": "Screen size in the horizontal (X) dimension measured in pixels.",
          "format": "int32",
          "type": "integer"
        },
        "screenY": {
          "description": "Screen size in the vertical (Y) dimension measured in pixels.",
          "format": "int32",
          "type": "integer"
        },
        "supportedAbis": {
          "description": "The list of supported ABIs for this device.\nThis corresponds to either android.os.Build.SUPPORTED_ABIS (for API level\n21 and above) or android.os.Build.CPU_ABI/CPU_ABI2.\nThe most preferred ABI is the first element in the list.\n\nElements are optionally prefixed by \"version_id:\" (where version_id is\nthe id of an AndroidVersion), denoting an ABI that is supported only on\na particular version.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "supportedVersionIds": {
          "description": "The set of Android versions this device supports.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "tags": {
          "description": "Tags for this dimension.\nExamples: \"default\", \"preview\", \"deprecated\".",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "thumbnailUrl": {
          "description": "URL of a thumbnail image (photo) of the device.\ne.g. https://lh3.googleusercontent.com/90WcauuJiCYABEl8U0lcZeuS5STUbf2yW...",
          "type": "string"
        }
      },
      "type": "object"
    },
    "AndroidRoboTest": {
      "description": "A test of an android application that explores the application on a virtual\nor physical Android Device, finding culprits and crashes as it goes.",
      "id": "AndroidRoboTest",
      "properties": {
        "appApk": {
          "$ref": "FileReference",
          "description": "The APK for the application under test."
        },
        "appBundle": {
          "$ref": "AppBundle",
          "description": "A multi-apk app bundle for the application under test."
        },
        "appInitialActivity": {
          "description": "The initial activity that should be used to start the app.",
          "type": "string"
        },
        "appPackageId": {
          "description": "The java package for the application under test.\nThe default value is determined by examining the application's manifest.",
          "type": "string"
        },
        "maxDepth": {
          "description": "The max depth of the traversal stack Robo can explore. Needs to be at least\n2 to make Robo explore the app beyond the first activity.\nDefault is 50.",
          "format": "int32",
          "type": "integer"
        },
        "maxSteps": {
          "description": "The max number of steps Robo can execute.\nDefault is no limit.",
          "format": "int32",
          "type": "integer"
        },
        "roboDirectives": {
          "description": "A set of directives Robo should apply during the crawl.\nThis allows users to customize the crawl. For example, the username and\npassword for a test account can be provided.",
          "items": {
            "$ref": "RoboDirective"
          },
          "type": "array"
        },
        "roboScript": {
          "$ref": "FileReference",
          "description": "A JSON file with a sequence of actions Robo should perform as a prologue\nfor the crawl."
        },
        "startingIntents": {
          "description": "The intents used to launch the app for the crawl.\nIf none are provided, then the main launcher activity is launched.\nIf some are provided, then only those provided are launched (the main\nlauncher activity must be provided explicitly).",
          "items": {
            "$ref": "RoboStartingIntent"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "AndroidRuntimeConfiguration": {
      "description": "Android configuration that can be selected at the time a test is run.",
      "id": "AndroidRuntimeConfiguration",
      "properties": {
        "locales": {
          "description": "The set of available locales.",
          "items": {
            "$ref": "Locale"
          },
          "type": "array"
        },
        "orientations": {
          "description": "The set of available orientations.",
          "items": {
            "$ref": "Orientation"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "AndroidTestLoop": {
      "description": "A test of an Android Application with a Test Loop.\nThe intent \\\u003cintent-name\\\u003e will be implicitly added, since Games is the only\nuser of this api, for the time being.",
      "id": "AndroidTestLoop",
      "properties": {
        "appApk": {
          "$ref": "FileReference",
          "description": "The APK for the application under test."
        },
        "appBundle": {
          "$ref": "AppBundle",
          "description": "A multi-apk app bundle for the application under test."
        },
        "appPackageId": {
          "description": "The java package for the application under test.\nThe default is determined by examining the application's manifest.",
          "type": "string"
        },
        "scenarioLabels": {
          "description": "The list of scenario labels that should be run during the test.\nThe scenario labels should map to labels defined in the application's\nmanifest. For example, player_experience and\ncom.google.test.loops.player_experience add all of the loops labeled in the\nmanifest with the com.google.test.loops.player_experience name to the\nexecution.\nScenarios can also be specified in the scenarios field.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "scenarios": {
          "description": "The list of scenarios that should be run during the test.\nThe default is all test loops, derived from the application's\nmanifest.",
          "items": {
            "format": "int32",
            "type": "integer"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "AndroidVersion": {
      "description": "A version of the Android OS.",
      "id": "AndroidVersion",
      "properties": {
        "apiLevel": {
          "description": "The API level for this Android version.\nExamples: 18, 19.",
          "format": "int32",
          "type": "integer"
        },
        "codeName": {
          "description": "The code name for this Android version.\nExamples: \"JellyBean\", \"KitKat\".",
          "type": "string"
        },
        "distribution": {
          "$ref": "Distribution",
          "description": "Market share for this version."
        },
        "id": {
          "description": "An opaque id for this Android version.\nUse this id to invoke the TestExecutionService.",
          "type": "string"
        },
        "releaseDate": {
          "$ref": "Date",
          "description": "The date this Android version became available in the market."
        },
        "tags": {
          "description": "Tags for this dimension.\nExamples: \"default\", \"preview\", \"deprecated\".",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "versionString": {
          "description": "A string representing this version of the Android OS.\nExamples: \"4.3\", \"4.4\".",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Apk": {
      "description": "An Android package file to install.",
      "id": "Apk",
      "properties": {
        "location": {
          "$ref": "FileReference",
          "description": "The path to an APK to be installed on the device before the test begins."
        },
        "packageName": {
          "description": "The java package for the APK to be installed.\nValue is determined by examining the application's manifest.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ApkDetail": {
      "description": "Android application details based on application manifest and apk archive\ncontents.",
      "id": "ApkDetail",
      "properties": {
        "apkManifest": {
          "$ref": "ApkManifest"
        }
      },
      "type": "object"
    },
    "ApkManifest": {
      "description": "An Android app manifest. See\nhttp://developer.android.com/guide/topics/manifest/manifest-intro.html",
      "id": "ApkManifest",
      "properties": {
        "applicationLabel": {
          "description": "User-readable name for the application.",
          "type": "string"
        },
        "intentFilters": {
          "items": {
            "$ref": "IntentFilter"
          },
          "type": "array"
        },
        "maxSdkVersion": {
          "description": "Maximum API level on which the application is designed to run.",
          "format": "int32",
          "type": "integer"
        },
        "minSdkVersion": {
          "description": "Minimum API level required for the application to run.",
          "format": "int32",
          "type": "integer"
        },
        "packageName": {
          "description": "Full Java-style package name for this application, e.g.\n\"com.example.foo\".",
          "type": "string"
        },
        "targetSdkVersion": {
          "description": "Specifies the API Level on which the application is designed to run.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "AppBundle": {
      "description": "An Android App Bundle file format, containing a BundleConfig.pb file,\na base module directory, zero or more dynamic feature module directories.\n\u003cp\u003eSee https://developer.android.com/guide/app-bundle/build for guidance on\nbuilding App Bundles.",
      "id": "AppBundle",
      "properties": {
        "bundleLocation": {
          "$ref": "FileReference",
          "description": ".aab file representing the app bundle under test."
        }
      },
      "type": "object"
    },
    "CancelTestMatrixResponse": {
      "description": "Response containing the current state of the specified test matrix.",
      "id": "CancelTestMatrixResponse",
      "properties": {
        "testState": {
          "description": "The current rolled-up state of the test matrix.\nIf this state is already final, then the cancelation request will\nhave no effect.",
          "enum": [
            "TEST_STATE_UNSPECIFIED",
            "VALIDATING",
            "PENDING",
            "RUNNING",
            "FINISHED",
            "ERROR",
            "UNSUPPORTED_ENVIRONMENT",
            "INCOMPATIBLE_ENVIRONMENT",
            "INCOMPATIBLE_ARCHITECTURE",
            "CANCELLED",
            "INVALID"
          ],
          "enumDescriptions": [
            "Do not use.  For proto versioning only.",
            "The execution or matrix is being validated.",
            "The execution or matrix is waiting for resources to become available.",
            "The execution is currently being processed.\n\nCan only be set on an execution.",
            "The execution or matrix has terminated normally.\n\nOn a matrix this means that the matrix level processing completed normally,\nbut individual executions may be in an ERROR state.",
            "The execution or matrix has stopped because it encountered an\ninfrastructure failure.",
            "The execution was not run because it corresponds to a unsupported\nenvironment.\n\nCan only be set on an execution.",
            "The execution was not run because the provided inputs are incompatible with\nthe requested environment.\n\nExample: requested AndroidVersion is lower than APK's minSdkVersion\n\nCan only be set on an execution.",
            "The execution was not run because the provided inputs are incompatible with\nthe requested architecture.\n\nExample: requested device does not support running the native code in\nthe supplied APK\n\nCan only be set on an execution.",
            "The user cancelled the execution.\n\nCan only be set on an execution.",
            "The execution or matrix was not run because the provided inputs are not\nvalid.\n\nExamples: input file is not of the expected type, is malformed/corrupt, or\nwas flagged as malware"
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "ClientInfo": {
      "description": "Information about the client which invoked the test.",
      "id": "ClientInfo",
      "properties": {
        "clientInfoDetails": {
          "description": "The list of detailed information about client.",
          "items": {
            "$ref": "ClientInfoDetail"
          },
          "type": "array"
        },
        "name": {
          "description": "Required. Client name, such as gcloud.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ClientInfoDetail": {
      "description": "Key-value pair of detailed information about the client which invoked the\ntest. Examples: {'Version', '1.0'}, {'Release Track', 'BETA'}.",
      "id": "ClientInfoDetail",
      "properties": {
        "key": {
          "description": "Required. The key of detailed client information.",
          "type": "string"
        },
        "value": {
          "description": "Required. The value of detailed client information.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Date": {
      "description": "Represents a whole or partial calendar date, e.g. a birthday. The time of day\nand time zone are either specified elsewhere or are not significant. The date\nis relative to the Proleptic Gregorian Calendar. This can represent:\n\n* A full date, with non-zero year, month and day values\n* A month and day value, with a zero year, e.g. an anniversary\n* A year on its own, with zero month and day values\n* A year and month value, with a zero day, e.g. a credit card expiration date\n\nRelated types are google.type.TimeOfDay and `google.protobuf.Timestamp`.",
      "id": "Date",
      "properties": {
        "day": {
          "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0\nif specifying a year by itself or a year and month where the day is not\nsignificant.",
          "format": "int32",
          "type": "integer"
        },
        "month": {
          "description": "Month of year. Must be from 1 to 12, or 0 if specifying a year without a\nmonth and day.",
          "format": "int32",
          "type": "integer"
        },
        "year": {
          "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "DeviceFile": {
      "description": "A single device file description.",
      "id": "DeviceFile",
      "properties": {
        "obbFile": {
          "$ref": "ObbFile",
          "description": "A reference to an opaque binary blob file."
        },
        "regularFile": {
          "$ref": "RegularFile",
          "description": "A reference to a regular file."
        }
      },
      "type": "object"
    },
    "Distribution": {
      "description": "Data about the relative number of devices running a\ngiven configuration of the Android platform.",
      "id": "Distribution",
      "properties": {
        "marketShare": {
          "description": "Output only. The estimated fraction (0-1) of the total market with this\nconfiguration.",
          "format": "double",
          "type": "number"
        },
        "measurementTime": {
          "description": "Output only. The time this distribution was measured.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Environment": {
      "description": "The environment in which the test is run.",
      "id": "Environment",
      "properties": {
        "androidDevice": {
          "$ref": "AndroidDevice",
          "description": "An Android device which must be used with an Android test."
        },
        "iosDevice": {
          "$ref": "IosDevice",
          "description": "An iOS device which must be used with an iOS test."
        }
      },
      "type": "object"
    },
    "EnvironmentMatrix": {
      "description": "The matrix of environments in which the test is to be executed.",
      "id": "EnvironmentMatrix",
      "properties": {
        "androidDeviceList": {
          "$ref": "AndroidDeviceList",
          "description": "A list of Android devices; the test will be run only on the specified\ndevices."
        },
        "androidMatrix": {
          "$ref": "AndroidMatrix",
          "description": "A matrix of Android devices."
        },
        "iosDeviceList": {
          "$ref": "IosDeviceList",
          "description": "A list of iOS devices."
        }
      },
      "type": "object"
    },
    "EnvironmentVariable": {
      "description": "A key-value pair passed as an environment variable to the test.",
      "id": "EnvironmentVariable",
      "properties": {
        "key": {
          "description": "Key for the environment variable.",
          "type": "string"
        },
        "value": {
          "description": "Value for the environment variable.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "FileReference": {
      "description": "A reference to a file, used for user inputs.",
      "id": "FileReference",
      "properties": {
        "gcsPath": {
          "description": "A path to a file in Google Cloud Storage.\nExample: gs://build-app-1414623860166/app-debug-unaligned.apk",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GetApkDetailsResponse": {
      "description": "Response containing the details of the specified Android application APK.",
      "id": "GetApkDetailsResponse",
      "properties": {
        "apkDetail": {
          "$ref": "ApkDetail",
          "description": "Details of the Android APK."
        }
      },
      "type": "object"
    },
    "GoogleAuto": {
      "description": "Enables automatic Google account login.\nIf set, the service automatically generates a Google test account and adds\nit to the device, before executing the test. Note that test accounts might be\nreused.\nMany applications show their full set of functionalities when an account is\npresent on the device. Logging into the device with these generated accounts\nallows testing more functionalities.",
      "id": "GoogleAuto",
      "properties": {},
      "type": "object"
    },
    "GoogleCloudStorage": {
      "description": "A storage location within Google cloud storage (GCS).",
      "id": "GoogleCloudStorage",
      "properties": {
        "gcsPath": {
          "description": "Required. The path to a directory in GCS that will\neventually contain the results for this test.\nThe requesting user must have write access on the bucket in the supplied\npath.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "IntentFilter": {
      "description": "The \u003cintent-filter\u003e section of an \u003cactivity\u003e tag.\nhttps://developer.android.com/guide/topics/manifest/intent-filter-element.html",
      "id": "IntentFilter",
      "properties": {
        "actionNames": {
          "description": "The android:name value of the \u003caction\u003e tag.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "categoryNames": {
          "description": "The android:name value of the \u003ccategory\u003e tag.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "mimeType": {
          "description": "The android:mimeType value of the \u003cdata\u003e tag.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "IosDevice": {
      "description": "A single iOS device.",
      "id": "IosDevice",
      "properties": {
        "iosModelId": {
          "description": "Required. The id of the iOS device to be used.\nUse the TestEnvironmentDiscoveryService to get supported options.",
          "type": "string"
        },
        "iosVersionId": {
          "description": "Required. The id of the iOS major software version to be used.\nUse the TestEnvironmentDiscoveryService to get supported options.",
          "type": "string"
        },
        "locale": {
          "description": "Required. The locale the test device used for testing.\nUse the TestEnvironmentDiscoveryService to get supported options.",
          "type": "string"
        },
        "orientation": {
          "description": "Required. How the device is oriented during the test.\nUse the TestEnvironmentDiscoveryService to get supported options.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "IosDeviceCatalog": {
      "description": "The currently supported iOS devices.",
      "id": "IosDeviceCatalog",
      "properties": {
        "models": {
          "description": "The set of supported iOS device models.",
          "items": {
            "$ref": "IosModel"
          },
          "type": "array"
        },
        "runtimeConfiguration": {
          "$ref": "IosRuntimeConfiguration",
          "description": "The set of supported runtime configurations."
        },
        "versions": {
          "description": "The set of supported iOS software versions.",
          "items": {
            "$ref": "IosVersion"
          },
          "type": "array"
        },
        "xcodeVersions": {
          "description": "The set of supported Xcode versions.",
          "items": {
            "$ref": "XcodeVersion"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "IosDeviceList": {
      "description": "A list of iOS device configurations in which the test is to be executed.",
      "id": "IosDeviceList",
      "properties": {
        "iosDevices": {
          "description": "Required. A list of iOS devices.",
          "items": {
            "$ref": "IosDevice"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "IosModel": {
      "description": "A description of an iOS device tests may be run on.\nNext tag: 13",
      "id": "IosModel",
      "properties": {
        "deviceCapabilities": {
          "description": "Device capabilities.\nCopied from\nhttps://developer.apple.com/library/archive/documentation/DeviceInformation/Reference/iOSDeviceCompatibility/DeviceCompatibilityMatrix/DeviceCompatibilityMatrix.html",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "formFactor": {
          "description": "Whether this device is a phone, tablet, wearable, etc.",
          "enum": [
            "DEVICE_FORM_FACTOR_UNSPECIFIED",
            "PHONE",
            "TABLET",
            "WEARABLE"
          ],
          "enumDescriptions": [
            "Do not use. For proto versioning only.",
            "This device has the shape of a phone.",
            "This device has the shape of a tablet.",
            "This device has the shape of a watch or other wearable."
          ],
          "type": "string"
        },
        "id": {
          "description": "The unique opaque id for this model.\nUse this for invoking the TestExecutionService.",
          "type": "string"
        },
        "name": {
          "description": "The human-readable name for this device model.\nExamples: \"iPhone 4s\", \"iPad Mini 2\".",
          "type": "string"
        },
        "screenDensity": {
          "description": "Screen density in DPI.",
          "format": "int32",
          "type": "integer"
        },
        "screenX": {
          "description": "Screen size in the horizontal (X) dimension measured in pixels.",
          "format": "int32",
          "type": "integer"
        },
        "screenY": {
          "description": "Screen size in the vertical (Y) dimension measured in pixels.",
          "format": "int32",
          "type": "integer"
        },
        "supportedVersionIds": {
          "description": "The set of iOS major software versions this device supports.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "tags": {
          "description": "Tags for this dimension.\nExamples: \"default\", \"preview\", \"deprecated\".",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "IosRuntimeConfiguration": {
      "description": "iOS configuration that can be selected at the time a test is run.",
      "id": "IosRuntimeConfiguration",
      "properties": {
        "locales": {
          "description": "The set of available locales.",
          "items": {
            "$ref": "Locale"
          },
          "type": "array"
        },
        "orientations": {
          "description": "The set of available orientations.",
          "items": {
            "$ref": "Orientation"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "IosTestLoop": {
      "description": "A test of an iOS application that implements one or more game loop scenarios.\nThis test type accepts an archived application (.ipa file) and a list of\ninteger scenarios that will be executed on the app sequentially.",
      "id": "IosTestLoop",
      "properties": {
        "appBundleId": {
          "description": "Output only. The bundle id for the application under test.",
          "type": "string"
        },
        "appIpa": {
          "$ref": "FileReference",
          "description": "Required. The .ipa of the application to test."
        },
        "scenarios": {
          "description": "The list of scenarios that should be run during the test. Defaults to the\nsingle scenario 0 if unspecified.",
          "items": {
            "format": "int32",
            "type": "integer"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "IosTestSetup": {
      "description": "A description of how to set up an iOS device prior to running the test.",
      "id": "IosTestSetup",
      "properties": {
        "networkProfile": {
          "description": "The network traffic profile used for running the test.\nAvailable network profiles can be queried by using the\nNETWORK_CONFIGURATION environment type when calling\nTestEnvironmentDiscoveryService.GetTestEnvironmentCatalog.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "IosVersion": {
      "description": "An iOS version.",
      "id": "IosVersion",
      "properties": {
        "id": {
          "description": "An opaque id for this iOS version.\nUse this id to invoke the TestExecutionService.",
          "type": "string"
        },
        "majorVersion": {
          "description": "An integer representing the major iOS version.\nExamples: \"8\", \"9\".",
          "format": "int32",
          "type": "integer"
        },
        "minorVersion": {
          "description": "An integer representing the minor iOS version.\nExamples: \"1\", \"2\".",
          "format": "int32",
          "type": "integer"
        },
        "supportedXcodeVersionIds": {
          "description": "The available Xcode versions for this version.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "tags": {
          "description": "Tags for this dimension.\nExamples: \"default\", \"preview\", \"deprecated\".",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "IosXcTest": {
      "description": "A test of an iOS application that uses the XCTest framework.\nXcode supports the option to \"build for testing\", which generates an\n.xctestrun file that contains a test specification (arguments, test methods,\netc). This test type accepts a zip file containing the .xctestrun file and\nthe corresponding contents of the Build/Products directory that contains all\nthe binaries needed to run the tests.",
      "id": "IosXcTest",
      "properties": {
        "appBundleId": {
          "description": "Output only. The bundle id for the application under test.",
          "type": "string"
        },
        "testSpecialEntitlements": {
          "description": "The option to test special app entitlements. Setting this would re-sign the\napp having special entitlements with an explicit application-identifier.\nCurrently supports testing aps-environment entitlement.",
          "type": "boolean"
        },
        "testsZip": {
          "$ref": "FileReference",
          "description": "Required. The .zip containing the .xctestrun file and the contents of the\nDerivedData/Build/Products directory.\nThe .xctestrun file in this zip is ignored if the xctestrun field is\nspecified."
        },
        "xcodeVersion": {
          "description": "The Xcode version that should be used for the test.\nUse the TestEnvironmentDiscoveryService to get supported options.\nDefaults to the latest Xcode version Firebase Test Lab supports.",
          "type": "string"
        },
        "xctestrun": {
          "$ref": "FileReference",
          "description": "An .xctestrun file that will override the .xctestrun file in the\ntests zip. Because the .xctestrun file contains environment variables along\nwith test methods to run and/or ignore, this can be useful for sharding\ntests. Default is taken from the tests zip."
        }
      },
      "type": "object"
    },
    "LauncherActivityIntent": {
      "description": "Specifies an intent that starts the main launcher activity.",
      "id": "LauncherActivityIntent",
      "properties": {},
      "type": "object"
    },
    "Locale": {
      "description": "A location/region designation for language.",
      "id": "Locale",
      "properties": {
        "id": {
          "description": "The id for this locale.\nExample: \"en_US\".",
          "type": "string"
        },
        "name": {
          "description": "A human-friendly name for this language/locale.\nExample: \"English\".",
          "type": "string"
        },
        "region": {
          "description": "A human-friendly string representing the region for this\nlocale. Example: \"United States\". Not present for every locale.",
          "type": "string"
        },
        "tags": {
          "description": "Tags for this dimension.\nExample: \"default\".",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ManualSharding": {
      "description": "Shards test cases into the specified groups of packages, classes, and/or\nmethods.\n\nWith manual sharding enabled, specifying test targets via\nenvironment_variables or in InstrumentationTest is invalid.",
      "id": "ManualSharding",
      "properties": {
        "testTargetsForShard": {
          "description": "Required. Group of packages, classes, and/or test methods to be run for\neach shard. The number of shard_test_targets must be \u003e= 1 and \u003c= 50.",
          "items": {
            "$ref": "TestTargetsForShard"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "NetworkConfiguration": {
      "id": "NetworkConfiguration",
      "properties": {
        "downRule": {
          "$ref": "TrafficRule",
          "description": "The emulation rule applying to the download traffic."
        },
        "id": {
          "description": "The unique opaque id for this network traffic configuration.",
          "type": "string"
        },
        "upRule": {
          "$ref": "TrafficRule",
          "description": "The emulation rule applying to the upload traffic."
        }
      },
      "type": "object"
    },
    "NetworkConfigurationCatalog": {
      "id": "NetworkConfigurationCatalog",
      "properties": {
        "configurations": {
          "items": {
            "$ref": "NetworkConfiguration"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ObbFile": {
      "description": "An opaque binary blob file to install on the device before the test starts.",
      "id": "ObbFile",
      "properties": {
        "obb": {
          "$ref": "FileReference",
          "description": "Required. Opaque Binary Blob (OBB) file(s) to install on the device."
        },
        "obbFileName": {
          "description": "Required. OBB file name which must conform to the format as specified by\nAndroid\ne.g. [main|patch].0300110.com.example.android.obb\nwhich will be installed into\n  \\\u003cshared-storage\\\u003e/Android/obb/\\\u003cpackage-name\\\u003e/\non the device.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Orientation": {
      "description": "Screen orientation of the device.",
      "id": "Orientation",
      "properties": {
        "id": {
          "description": "The id for this orientation.\nExample: \"portrait\".",
          "type": "string"
        },
        "name": {
          "description": "A human-friendly name for this orientation.\nExample: \"portrait\".",
          "type": "string"
        },
        "tags": {
          "description": "Tags for this dimension.\nExample: \"default\".",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ProvidedSoftwareCatalog": {
      "description": "The currently provided software environment on the devices under test.",
      "id": "ProvidedSoftwareCatalog",
      "properties": {
        "orchestratorVersion": {
          "description": "A string representing the current version of Android Test\nOrchestrator that is provided by TestExecutionService.\nExample: \"1.0.2 beta\".",
          "type": "string"
        }
      },
      "type": "object"
    },
    "RegularFile": {
      "description": "A file or directory to install on the device before the test starts.",
      "id": "RegularFile",
      "properties": {
        "content": {
          "$ref": "FileReference",
          "description": "Required. The source file."
        },
        "devicePath": {
          "description": "Required. Where to put the content on the device. Must be an absolute,\nwhitelisted path. If the file exists, it will be replaced.\nThe following device-side directories and any of their subdirectories are\nwhitelisted:\n\u003cp\u003e${EXTERNAL_STORAGE}, or /sdcard\u003c/p\u003e\n\u003cp\u003e${ANDROID_DATA}/local/tmp, or /data/local/tmp\u003c/p\u003e\n\u003cp\u003eSpecifying a path outside of these directory trees is invalid.\n\n\u003cp\u003e The paths /sdcard and /data will be made available and treated as\nimplicit path substitutions. E.g. if /sdcard on a particular device does\nnot map to external storage, the system will replace it with the external\nstorage path prefix for that device and copy the file there.\n\n\u003cp\u003e It is strongly advised to use the \u003ca href=\n\"http://developer.android.com/reference/android/os/Environment.html\"\u003e\nEnvironment API\u003c/a\u003e in app and test code to access files on the device in a\nportable way.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ResultStorage": {
      "description": "Locations where the results of running the test are stored.",
      "id": "ResultStorage",
      "properties": {
        "googleCloudStorage": {
          "$ref": "GoogleCloudStorage",
          "description": "Required."
        },
        "resultsUrl": {
          "description": "Output only. URL to the results in the Firebase Web Console.",
          "type": "string"
        },
        "toolResultsExecution": {
          "$ref": "ToolResultsExecution",
          "description": "Output only. The tool results execution that results are written to."
        },
        "toolResultsHistory": {
          "$ref": "ToolResultsHistory",
          "description": "The tool results history that contains the tool results execution that\nresults are written to.\n\nIf not provided, the service will choose an appropriate value."
        }
      },
      "type": "object"
    },
    "RoboDirective": {
      "description": "Directs Robo to interact with a specific UI element if it is encountered\nduring the crawl. Currently, Robo can perform text entry or element click.",
      "id": "RoboDirective",
      "properties": {
        "actionType": {
          "description": "Required. The type of action that Robo should perform on the specified\nelement.",
          "enum": [
            "ACTION_TYPE_UNSPECIFIED",
            "SINGLE_CLICK",
            "ENTER_TEXT",
            "IGNORE"
          ],
          "enumDescriptions": [
            "DO NOT USE. For proto versioning only.",
            "Direct Robo to click on the specified element. No-op if specified element\nis not clickable.",
            "Direct Robo to enter text on the specified element. No-op if specified\nelement is not enabled or does not allow text entry.",
            "Direct Robo to ignore interactions with a specific element."
          ],
          "type": "string"
        },
        "inputText": {
          "description": "The text that Robo is directed to set. If left empty, the directive will be\ntreated as a CLICK on the element matching the resource_name.",
          "type": "string"
        },
        "resourceName": {
          "description": "Required. The android resource name of the target UI element.\nFor example,\n   in Java: R.string.foo\n   in xml: @string/foo\nOnly the \"foo\" part is needed.\nReference doc:\nhttps://developer.android.com/guide/topics/resources/accessing-resources.html",
          "type": "string"
        }
      },
      "type": "object"
    },
    "RoboStartingIntent": {
      "description": "Message for specifying the start activities to crawl.",
      "id": "RoboStartingIntent",
      "properties": {
        "launcherActivity": {
          "$ref": "LauncherActivityIntent",
          "description": "An intent that starts the main launcher activity."
        },
        "startActivity": {
          "$ref": "StartActivityIntent",
          "description": "An intent that starts an activity with specific details."
        },
        "timeout": {
          "description": "Timeout in seconds for each intent.",
          "format": "google-duration",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Shard": {
      "description": "Output only. Details about the shard.",
      "id": "Shard",
      "properties": {
        "numShards": {
          "description": "Output only. The total number of shards.",
          "format": "int32",
          "type": "integer"
        },
        "shardIndex": {
          "description": "Output only. The index of the shard among all the shards.",
          "format": "int32",
          "type": "integer"
        },
        "testTargetsForShard": {
          "$ref": "TestTargetsForShard",
          "description": "Output only. Test targets for each shard."
        }
      },
      "type": "object"
    },
    "ShardingOption": {
      "description": "Options for enabling sharding.",
      "id": "ShardingOption",
      "properties": {
        "manualSharding": {
          "$ref": "ManualSharding",
          "description": "Shards test cases into the specified groups of packages, classes, and/or\nmethods."
        },
        "uniformSharding": {
          "$ref": "UniformSharding",
          "description": "Uniformly shards test cases given a total number of shards."
        }
      },
      "type": "object"
    },
    "StartActivityIntent": {
      "description": "A starting intent specified by an action, uri, and categories.",
      "id": "StartActivityIntent",
      "properties": {
        "action": {
          "description": "Action name.\nRequired for START_ACTIVITY.",
          "type": "string"
        },
        "categories": {
          "description": "Intent categories to set on the intent.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "uri": {
          "description": "URI for the action.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "SystraceSetup": {
      "id": "SystraceSetup",
      "properties": {
        "durationSeconds": {
          "description": "Systrace duration in seconds.\nShould be between 1 and 30 seconds. 0 disables systrace.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "TestDetails": {
      "description": "Additional details about the progress of the running test.",
      "id": "TestDetails",
      "properties": {
        "errorMessage": {
          "description": "Output only. If the TestState is ERROR, then this string will contain\nhuman-readable details about the error.",
          "type": "string"
        },
        "progressMessages": {
          "description": "Output only. Human-readable, detailed descriptions of the test's progress.\nFor example: \"Provisioning a device\", \"Starting Test\".\n\nDuring the course of execution new data may be appended\nto the end of progress_messages.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "TestEnvironmentCatalog": {
      "description": "A description of a test environment.",
      "id": "TestEnvironmentCatalog",
      "properties": {
        "androidDeviceCatalog": {
          "$ref": "AndroidDeviceCatalog",
          "description": "Supported Android devices."
        },
        "iosDeviceCatalog": {
          "$ref": "IosDeviceCatalog",
          "description": "Supported iOS devices."
        },
        "networkConfigurationCatalog": {
          "$ref": "NetworkConfigurationCatalog",
          "description": "Supported network configurations."
        },
        "softwareCatalog": {
          "$ref": "ProvidedSoftwareCatalog",
          "description": "The software test environment provided by TestExecutionService."
        }
      },
      "type": "object"
    },
    "TestExecution": {
      "description": "A single test executed in a single environment.",
      "id": "TestExecution",
      "properties": {
        "environment": {
          "$ref": "Environment",
          "description": "Output only. How the host machine(s) are configured."
        },
        "id": {
          "description": "Output only. Unique id set by the service.",
          "type": "string"
        },
        "matrixId": {
          "description": "Output only. Id of the containing TestMatrix.",
          "type": "string"
        },
        "projectId": {
          "description": "Output only. The cloud project that owns the test execution.",
          "type": "string"
        },
        "shard": {
          "$ref": "Shard",
          "description": "Output only. Details about the shard."
        },
        "state": {
          "description": "Output only. Indicates the current progress of the test execution\n(e.g., FINISHED).",
          "enum": [
            "TEST_STATE_UNSPECIFIED",
            "VALIDATING",
            "PENDING",
            "RUNNING",
            "FINISHED",
            "ERROR",
            "UNSUPPORTED_ENVIRONMENT",
            "INCOMPATIBLE_ENVIRONMENT",
            "INCOMPATIBLE_ARCHITECTURE",
            "CANCELLED",
            "INVALID"
          ],
          "enumDescriptions": [
            "Do not use.  For proto versioning only.",
            "The execution or matrix is being validated.",
            "The execution or matrix is waiting for resources to become available.",
            "The execution is currently being processed.\n\nCan only be set on an execution.",
            "The execution or matrix has terminated normally.\n\nOn a matrix this means that the matrix level processing completed normally,\nbut individual executions may be in an ERROR state.",
            "The execution or matrix has stopped because it encountered an\ninfrastructure failure.",
            "The execution was not run because it corresponds to a unsupported\nenvironment.\n\nCan only be set on an execution.",
            "The execution was not run because the provided inputs are incompatible with\nthe requested environment.\n\nExample: requested AndroidVersion is lower than APK's minSdkVersion\n\nCan only be set on an execution.",
            "The execution was not run because the provided inputs are incompatible with\nthe requested architecture.\n\nExample: requested device does not support running the native code in\nthe supplied APK\n\nCan only be set on an execution.",
            "The user cancelled the execution.\n\nCan only be set on an execution.",
            "The execution or matrix was not run because the provided inputs are not\nvalid.\n\nExamples: input file is not of the expected type, is malformed/corrupt, or\nwas flagged as malware"
          ],
          "type": "string"
        },
        "testDetails": {
          "$ref": "TestDetails",
          "description": "Output only. Additional details about the running test."
        },
        "testSpecification": {
          "$ref": "TestSpecification",
          "description": "Output only. How to run the test."
        },
        "timestamp": {
          "description": "Output only. The time this test execution was initially created.",
          "format": "google-datetime",
          "type": "string"
        },
        "toolResultsStep": {
          "$ref": "ToolResultsStep",
          "description": "Output only. Where the results for this execution are written."
        }
      },
      "type": "object"
    },
    "TestMatrix": {
      "description": "TestMatrix captures all details about a test. It contains the environment\nconfiguration, test specification, test executions and overall state and\noutcome.",
      "id": "TestMatrix",
      "properties": {
        "clientInfo": {
          "$ref": "ClientInfo",
          "description": "Information about the client which invoked the test."
        },
        "environmentMatrix": {
          "$ref": "EnvironmentMatrix",
          "description": "Required. The devices the tests are being executed on."
        },
        "flakyTestAttempts": {
          "description": "The number of times a TestExecution should be re-attempted if one or more\nof its test cases fail for any reason.\nThe maximum number of reruns allowed is 10.\n\nDefault is 0, which implies no reruns.",
          "format": "int32",
          "type": "integer"
        },
        "invalidMatrixDetails": {
          "description": "Output only. Describes why the matrix is considered invalid.\nOnly useful for matrices in the INVALID state.",
          "enum": [
            "INVALID_MATRIX_DETAILS_UNSPECIFIED",
            "DETAILS_UNAVAILABLE",
            "MALFORMED_APK",
            "MALFORMED_TEST_APK",
            "NO_MANIFEST",
            "NO_PACKAGE_NAME",
            "INVALID_PACKAGE_NAME",
            "TEST_SAME_AS_APP",
            "NO_INSTRUMENTATION",
            "NO_SIGNATURE",
            "INSTRUMENTATION_ORCHESTRATOR_INCOMPATIBLE",
            "NO_TEST_RUNNER_CLASS",
            "NO_LAUNCHER_ACTIVITY",
            "FORBIDDEN_PERMISSIONS",
            "INVALID_ROBO_DIRECTIVES",
            "INVALID_RESOURCE_NAME",
            "INVALID_DIRECTIVE_ACTION",
            "TEST_LOOP_INTENT_FILTER_NOT_FOUND",
            "SCENARIO_LABEL_NOT_DECLARED",
            "SCENARIO_LABEL_MALFORMED",
            "SCENARIO_NOT_DECLARED",
            "DEVICE_ADMIN_RECEIVER",
            "MALFORMED_XC_TEST_ZIP",
            "BUILT_FOR_IOS_SIMULATOR",
            "NO_TESTS_IN_XC_TEST_ZIP",
            "USE_DESTINATION_ARTIFACTS",
            "TEST_NOT_APP_HOSTED",
            "PLIST_CANNOT_BE_PARSED",
            "TEST_ONLY_APK",
            "MALFORMED_IPA",
            "MISSING_URL_SCHEME",
            "MALFORMED_APP_BUNDLE",
            "NO_CODE_APK",
            "INVALID_INPUT_APK",
            "INVALID_APK_PREVIEW_SDK"
          ],
          "enumDescriptions": [
            "Do not use. For proto versioning only.",
            "The matrix is INVALID, but there are no further details available.",
            "The input app APK could not be parsed.",
            "The input test APK could not be parsed.",
            "The AndroidManifest.xml could not be found.",
            "The APK manifest does not declare a package name.",
            "The APK application ID (aka package name) is invalid.\nSee also\nhttps://developer.android.com/studio/build/application-id",
            "The test package and app package are the same.",
            "The test apk does not declare an instrumentation.",
            "The input app apk does not have a signature.",
            "The test runner class specified by user or in the test APK's manifest file\nis not compatible with Android Test Orchestrator.\nOrchestrator is only compatible with AndroidJUnitRunner version 1.0 or\nhigher.\nOrchestrator can be disabled by using DO_NOT_USE_ORCHESTRATOR\nOrchestratorOption.",
            "The test APK does not contain the test runner class specified by user or in\nthe manifest file.\nThis can be caused by either of the following reasons:\n- the user provided a runner class name that's incorrect, or\n- the test runner isn't built into the test APK (might be in the app APK\ninstead).",
            "A main launcher activity could not be found.",
            "The app declares one or more permissions that are not allowed.",
            "There is a conflict in the provided robo_directives.",
            "There is at least one invalid resource name in the provided\nrobo directives",
            "Invalid definition of action in the robo directives\n(e.g. a click or ignore action includes an input text field)",
            "There is no test loop intent filter, or the one that is given is\nnot formatted correctly.",
            "The request contains a scenario label that was not declared in the\nmanifest.",
            "There was an error when parsing a label's value.",
            "The request contains a scenario number that was not declared in the\nmanifest.",
            "Device administrator applications are not allowed.",
            "The zipped XCTest was malformed. The zip did not contain a single\n.xctestrun file and the contents of the DerivedData/Build/Products\ndirectory.",
            "The zipped XCTest was built for the iOS simulator rather than for a\nphysical device.",
            "The .xctestrun file did not specify any test targets.",
            "One or more of the test targets defined in the .xctestrun file specifies\n\"UseDestinationArtifacts\", which is disallowed.",
            "XC tests which run on physical devices must have\n\"IsAppHostedTestBundle\" == \"true\" in the xctestrun file.",
            "An Info.plist file in the XCTest zip could not be parsed.",
            "The APK is marked as \"testOnly\".\nDeprecated and not currently used.",
            "The input IPA could not be parsed.",
            "The application doesn't register the game loop URL scheme.",
            "The iOS application bundle (.app) couldn't be processed.",
            "APK contains no code.\nSee also\nhttps://developer.android.com/guide/topics/manifest/application-element.html#code",
            "Either the provided input APK path was malformed,\nthe APK file does not exist, or the user does not have permission to\naccess the APK file.",
            "APK is built for a preview SDK which is unsupported"
          ],
          "type": "string"
        },
        "outcomeSummary": {
          "description": "Output Only. The overall outcome of the test.\nOnly set when the test matrix state is FINISHED.",
          "enum": [
            "OUTCOME_SUMMARY_UNSPECIFIED",
            "SUCCESS",
            "FAILURE",
            "INCONCLUSIVE",
            "SKIPPED"
          ],
          "enumDescriptions": [
            "Do not use. For proto versioning only.",
            "The test matrix run was successful, for instance:\n- All the test cases passed.\n- Robo did not detect a crash of the application under test.",
            "A run failed, for instance:\n- One or more test case failed.\n- A test timed out.\n- The application under test crashed.",
            "Something unexpected happened. The run should still be considered\nunsuccessful but this is likely a transient problem and re-running the\ntest might be successful.",
            "All tests were skipped, for instance:\n- All device configurations were incompatible."
          ],
          "type": "string"
        },
        "projectId": {
          "description": "The cloud project that owns the test matrix.",
          "type": "string"
        },
        "resultStorage": {
          "$ref": "ResultStorage",
          "description": "Required. Where the results for the matrix are written."
        },
        "state": {
          "description": "Output only. Indicates the current progress of the test matrix.",
          "enum": [
            "TEST_STATE_UNSPECIFIED",
            "VALIDATING",
            "PENDING",
            "RUNNING",
            "FINISHED",
            "ERROR",
            "UNSUPPORTED_ENVIRONMENT",
            "INCOMPATIBLE_ENVIRONMENT",
            "INCOMPATIBLE_ARCHITECTURE",
            "CANCELLED",
            "INVALID"
          ],
          "enumDescriptions": [
            "Do not use.  For proto versioning only.",
            "The execution or matrix is being validated.",
            "The execution or matrix is waiting for resources to become available.",
            "The execution is currently being processed.\n\nCan only be set on an execution.",
            "The execution or matrix has terminated normally.\n\nOn a matrix this means that the matrix level processing completed normally,\nbut individual executions may be in an ERROR state.",
            "The execution or matrix has stopped because it encountered an\ninfrastructure failure.",
            "The execution was not run because it corresponds to a unsupported\nenvironment.\n\nCan only be set on an execution.",
            "The execution was not run because the provided inputs are incompatible with\nthe requested environment.\n\nExample: requested AndroidVersion is lower than APK's minSdkVersion\n\nCan only be set on an execution.",
            "The execution was not run because the provided inputs are incompatible with\nthe requested architecture.\n\nExample: requested device does not support running the native code in\nthe supplied APK\n\nCan only be set on an execution.",
            "The user cancelled the execution.\n\nCan only be set on an execution.",
            "The execution or matrix was not run because the provided inputs are not\nvalid.\n\nExamples: input file is not of the expected type, is malformed/corrupt, or\nwas flagged as malware"
          ],
          "type": "string"
        },
        "testExecutions": {
          "description": "Output only. The list of test executions that the service creates for\nthis matrix.",
          "items": {
            "$ref": "TestExecution"
          },
          "type": "array"
        },
        "testMatrixId": {
          "description": "Output only. Unique id set by the service.",
          "type": "string"
        },
        "testSpecification": {
          "$ref": "TestSpecification",
          "description": "Required. How to run the test."
        },
        "timestamp": {
          "description": "Output only. The time this test matrix was initially created.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    },
    "TestSetup": {
      "description": "A description of how to set up the Android device prior to running the test.",
      "id": "TestSetup",
      "properties": {
        "account": {
          "$ref": "Account",
          "description": "The device will be logged in on this account for the duration of the test."
        },
        "additionalApks": {
          "description": "APKs to install in addition to those being directly tested.\nCurrently capped at 100.",
          "items": {
            "$ref": "Apk"
          },
          "type": "array"
        },
        "directoriesToPull": {
          "description": "List of directories on the device to upload to GCS at the end of the test;\nthey must be absolute paths under /sdcard or /data/local/tmp.\nPath names are restricted to characters a-z A-Z 0-9 _ - . + and /\n\nNote: The paths /sdcard and /data will be made available and treated as\nimplicit path substitutions. E.g. if /sdcard on a particular device does\nnot map to external storage, the system will replace it with the external\nstorage path prefix for that device.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "environmentVariables": {
          "description": "Environment variables to set for the test (only applicable for\ninstrumentation tests).",
          "items": {
            "$ref": "EnvironmentVariable"
          },
          "type": "array"
        },
        "filesToPush": {
          "description": "List of files to push to the device before starting the test.",
          "items": {
            "$ref": "DeviceFile"
          },
          "type": "array"
        },
        "networkProfile": {
          "description": "The network traffic profile used for running the test.\nAvailable network profiles can be queried by using the\nNETWORK_CONFIGURATION environment type when calling\nTestEnvironmentDiscoveryService.GetTestEnvironmentCatalog.",
          "type": "string"
        },
        "systrace": {
          "$ref": "SystraceSetup",
          "description": "Systrace configuration for the run.\nIf set a systrace will be taken, starting on test start and lasting for the\nconfigured duration. The systrace file thus obtained is put in the results\nbucket together with the other artifacts from the run."
        }
      },
      "type": "object"
    },
    "TestSpecification": {
      "description": "A description of how to run the test.",
      "id": "TestSpecification",
      "properties": {
        "androidInstrumentationTest": {
          "$ref": "AndroidInstrumentationTest",
          "description": "An Android instrumentation test."
        },
        "androidRoboTest": {
          "$ref": "AndroidRoboTest",
          "description": "An Android robo test."
        },
        "androidTestLoop": {
          "$ref": "AndroidTestLoop",
          "description": "An Android Application with a Test Loop."
        },
        "disablePerformanceMetrics": {
          "description": "Disables performance metrics recording. May reduce test latency.",
          "type": "boolean"
        },
        "disableVideoRecording": {
          "description": "Disables video recording. May reduce test latency.",
          "type": "boolean"
        },
        "iosTestLoop": {
          "$ref": "IosTestLoop",
          "description": "An iOS application with a test loop."
        },
        "iosTestSetup": {
          "$ref": "IosTestSetup",
          "description": "Test setup requirements for iOS."
        },
        "iosXcTest": {
          "$ref": "IosXcTest",
          "description": "An iOS XCTest, via an .xctestrun file."
        },
        "testSetup": {
          "$ref": "TestSetup",
          "description": "Test setup requirements for Android e.g. files to install, bootstrap\nscripts."
        },
        "testTimeout": {
          "description": "Max time a test execution is allowed to run before it is\nautomatically cancelled.\nThe default value is 5 min.",
          "format": "google-duration",
          "type": "string"
        }
      },
      "type": "object"
    },
    "TestTargetsForShard": {
      "description": "Test targets for a shard.",
      "id": "TestTargetsForShard",
      "properties": {
        "testTargets": {
          "description": "Group of packages, classes, and/or test methods to be run for each shard.\nThe targets need to be specified in AndroidJUnitRunner argument format. For\nexample, “package com.my.packages” “class com.my.package.MyClass”.\n\nThe number of shard_test_targets must be greater than 0.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ToolResultsExecution": {
      "description": "Represents a tool results execution resource.\n\nThis has the results of a TestMatrix.",
      "id": "ToolResultsExecution",
      "properties": {
        "executionId": {
          "description": "Output only. A tool results execution ID.",
          "type": "string"
        },
        "historyId": {
          "description": "Output only. A tool results history ID.",
          "type": "string"
        },
        "projectId": {
          "description": "Output only. The cloud project that owns the tool results execution.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ToolResultsHistory": {
      "description": "Represents a tool results history resource.",
      "id": "ToolResultsHistory",
      "properties": {
        "historyId": {
          "description": "Required. A tool results history ID.",
          "type": "string"
        },
        "projectId": {
          "description": "Required. The cloud project that owns the tool results history.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ToolResultsStep": {
      "description": "Represents a tool results step resource.\n\nThis has the results of a TestExecution.",
      "id": "ToolResultsStep",
      "properties": {
        "executionId": {
          "description": "Output only. A tool results execution ID.",
          "type": "string"
        },
        "historyId": {
          "description": "Output only. A tool results history ID.",
          "type": "string"
        },
        "projectId": {
          "description": "Output only. The cloud project that owns the tool results step.",
          "type": "string"
        },
        "stepId": {
          "description": "Output only. A tool results step ID.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "TrafficRule": {
      "description": "Network emulation parameters.",
      "id": "TrafficRule",
      "properties": {
        "bandwidth": {
          "description": "Bandwidth in kbits/second.",
          "format": "float",
          "type": "number"
        },
        "burst": {
          "description": "Burst size in kbits.",
          "format": "float",
          "type": "number"
        },
        "delay": {
          "description": "Packet delay, must be \u003e= 0.",
          "format": "google-duration",
          "type": "string"
        },
        "packetDuplicationRatio": {
          "description": "Packet duplication ratio (0.0 - 1.0).",
          "format": "float",
          "type": "number"
        },
        "packetLossRatio": {
          "description": "Packet loss ratio (0.0 - 1.0).",
          "format": "float",
          "type": "number"
        }
      },
      "type": "object"
    },
    "UniformSharding": {
      "description": "Uniformly shards test cases given a total number of shards.\n\nFor Instrumentation test, it will be translated to “-e numShard” “-e\nshardIndex” AndroidJUnitRunner arguments. With uniform sharding enabled,\nspecifying these sharding arguments via environment_variables is invalid.",
      "id": "UniformSharding",
      "properties": {
        "numShards": {
          "description": "Required. Total number of shards. The number must be \u003e= 1 and \u003c= 50.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "XcodeVersion": {
      "description": "An Xcode version that an iOS version is compatible with.",
      "id": "XcodeVersion",
      "properties": {
        "tags": {
          "description": "Tags for this Xcode version.\nExample: \"default\".",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "version": {
          "description": "The id for this version.\nExample: \"9.2\".",
          "type": "string"
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "Cloud Testing API",
  "version": "v1"
}