{
  "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": "20200603",
  "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%40debug-unaligned.apk\nThese paths are expected to be url encoded (percent encoding)",
          "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"
}