Cloud Dataproc API . projects . regions . jobs

Instance Methods

cancel(projectId, region, jobId, body=None, x__xgafv=None)

Starts a job cancellation request. To access the job resource after cancellation, call regions/{region}/jobs.list (https://cloud.google.com/dataproc/docs/reference/rest/v1beta2/projects.regions.jobs/list) or regions/{region}/jobs.get (https://cloud.google.com/dataproc/docs/reference/rest/v1beta2/projects.regions.jobs/get).

close()

Close httplib2 connections.

delete(projectId, region, jobId, x__xgafv=None)

Deletes the job from the project. If the job is active, the delete fails, and the response returns FAILED_PRECONDITION.

get(projectId, region, jobId, x__xgafv=None)

Gets the resource representation for a job in a project.

getIamPolicy(resource, options_requestedPolicyVersion=None, x__xgafv=None)

Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

list(projectId, region, clusterName=None, filter=None, jobStateMatcher=None, pageSize=None, pageToken=None, x__xgafv=None)

Lists regions/{region}/jobs in a project.

list_next(previous_request, previous_response)

Retrieves the next page of results.

patch(projectId, region, jobId, body=None, updateMask=None, x__xgafv=None)

Updates a job in a project.

setIamPolicy(resource, body=None, x__xgafv=None)

Sets the access control policy on the specified resource. Replaces any existing policy.Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.

submit(projectId, region, body=None, x__xgafv=None)

Submits a job to a cluster.

submitAsOperation(projectId, region, body=None, x__xgafv=None)

Submits job to a cluster.

testIamPermissions(resource, body=None, x__xgafv=None)

Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

Method Details

cancel(projectId, region, jobId, body=None, x__xgafv=None)
Starts a job cancellation request. To access the job resource after cancellation, call regions/{region}/jobs.list (https://cloud.google.com/dataproc/docs/reference/rest/v1beta2/projects.regions.jobs/list) or regions/{region}/jobs.get (https://cloud.google.com/dataproc/docs/reference/rest/v1beta2/projects.regions.jobs/get).

Args:
  projectId: string, Required. The ID of the Google Cloud Platform project that the job belongs to. (required)
  region: string, Required. The Dataproc region in which to handle the request. (required)
  jobId: string, Required. The job ID. (required)
  body: object, The request body.
    The object takes the form of:

{ # A request to cancel a job.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A Dataproc job resource.
  "done": True or False, # Output only. Indicates whether the job is completed. If the value is false, the job is still in progress. If true, the job is completed, and status.state field will indicate if it was successful, failed, or cancelled.
  "driverControlFilesUri": "A String", # Output only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri.
  "driverOutputResourceUri": "A String", # Output only. A URI pointing to the location of the stdout of the job's driver program.
  "hadoopJob": { # A Dataproc job for running Apache Hadoop MapReduce (https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html). # Optional. Job is a Hadoop job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainClass": "A String", # The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris.
    "mainJarFileUri": "A String", # The HCFS URI of the jar file containing the main class. Examples: 'gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar' 'hdfs:/tmp/test-samples/custom-wordcount.jar' 'file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar'
    "properties": { # Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.
      "a_key": "A String",
    },
  },
  "hiveJob": { # A Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN. # Optional. Job is a Hive job.
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.
      "A String",
    ],
    "properties": { # Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains Hive queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name="value";).
      "a_key": "A String",
    },
  },
  "jobUuid": "A String", # Output only. A UUID that uniquely identifies a job within the project over time. This is in contrast to a user-settable reference.job_id that may be reused over time.
  "labels": { # Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job.
    "a_key": "A String",
  },
  "pigJob": { # A Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN. # Optional. Job is a Pig job.
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "properties": { # Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains the Pig queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).
      "a_key": "A String",
    },
  },
  "placement": { # Dataproc job config. # Required. Job information, including how, when, and where to run the job.
    "clusterLabels": { # Optional. Cluster labels to identify a cluster where the job will be submitted.
      "a_key": "A String",
    },
    "clusterName": "A String", # Required. The name of the cluster where the job will be submitted.
    "clusterUuid": "A String", # Output only. A cluster UUID generated by the Dataproc service when the job is submitted.
  },
  "prestoJob": { # A Dataproc job for running Presto (https://prestosql.io/) queries. IMPORTANT: The Dataproc Presto Optional Component (https://cloud.google.com/dataproc/docs/concepts/components/presto) must be enabled when the cluster is created to submit a Presto job to the cluster. # Optional. Job is a Presto job.
    "clientTags": [ # Optional. Presto client tags to attach to this query
      "A String",
    ],
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "outputFormat": "A String", # Optional. The format in which query output will be displayed. See the Presto documentation for supported output formats
    "properties": { # Optional. A mapping of property names to values. Used to set Presto session properties (https://prestodb.io/docs/current/sql/set-session.html) Equivalent to using the --session flag in the Presto CLI
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
  },
  "pysparkJob": { # A Dataproc job for running Apache PySpark (https://spark.apache.org/docs/0.9.0/python-programming-guide.html) applications on YARN. # Optional. Job is a PySpark job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainPythonFileUri": "A String", # Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.
    "properties": { # Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
    "pythonFileUris": [ # Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.
      "A String",
    ],
  },
  "reference": { # Encapsulates the full scoping used to reference a job. # Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a job_id.
    "jobId": "A String", # Optional. The job ID, which must be unique within the project. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.If not specified by the caller, the job ID will be provided by the server.
    "projectId": "A String", # Optional. The ID of the Google Cloud Platform project that the job belongs to. If specified, must match the request project ID.
  },
  "scheduling": { # Job scheduling options. # Optional. Job scheduling configuration.
    "maxFailuresPerHour": 42, # Optional. Maximum number of times per hour a driver may be restarted as a result of driver terminating with non-zero code before job is reported failed.A job may be reported as thrashing if driver exits with non-zero code 4 times within 10 minute window.Maximum value is 10.
    "maxFailuresTotal": 42, # Optional. Maximum number of times in total a driver may be restarted as a result of driver exiting with non-zero code before job is reported failed. Maximum value is 240.
  },
  "sparkJob": { # A Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN. The specification of the main method to call to drive the job. Specify either the jar file that contains the main class or the main class name. To pass both a main jar and a main class in that jar, add the jar to CommonJob.jar_file_uris, and then specify the main class name in main_class. # Optional. Job is a Spark job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainClass": "A String", # The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.
    "mainJarFileUri": "A String", # The HCFS URI of the jar file that contains the main class.
    "properties": { # Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
  },
  "sparkRJob": { # A Dataproc job for running Apache SparkR (https://spark.apache.org/docs/latest/sparkr.html) applications on YARN. # Optional. Job is a SparkR job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainRFileUri": "A String", # Required. The HCFS URI of the main R file to use as the driver. Must be a .R file.
    "properties": { # Optional. A mapping of property names to values, used to configure SparkR. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
  },
  "sparkSqlJob": { # A Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries. # Optional. Job is a SparkSql job.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "properties": { # Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Dataproc API may be overwritten.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name="value";).
      "a_key": "A String",
    },
  },
  "status": { # Dataproc job status. # Output only. The job status. Additional application-specific status information may be contained in the type_job and yarn_applications fields.
    "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
    "state": "A String", # Output only. A state message specifying the overall job state.
    "stateStartTime": "A String", # Output only. The time when this state was entered.
    "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
  },
  "statusHistory": [ # Output only. The previous job status.
    { # Dataproc job status.
      "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
      "state": "A String", # Output only. A state message specifying the overall job state.
      "stateStartTime": "A String", # Output only. The time when this state was entered.
      "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
    },
  ],
  "submittedBy": "A String", # Output only. The email address of the user submitting the job. For jobs submitted on the cluster, the address is username@hostname.
  "yarnApplications": [ # Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
    { # A YARN application created by a job. Application information is a subset of org.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
      "name": "A String", # Output only. The application name.
      "progress": 3.14, # Output only. The numerical progress of the application, from 1 to 100.
      "state": "A String", # Output only. The application state.
      "trackingUrl": "A String", # Output only. The HTTP URL of the ApplicationMaster, HistoryServer, or TimelineServer that provides application-specific information. The URL uses the internal hostname, and requires a proxy server for resolution and, possibly, access.
    },
  ],
}
close()
Close httplib2 connections.
delete(projectId, region, jobId, x__xgafv=None)
Deletes the job from the project. If the job is active, the delete fails, and the response returns FAILED_PRECONDITION.

Args:
  projectId: string, Required. The ID of the Google Cloud Platform project that the job belongs to. (required)
  region: string, Required. The Dataproc region in which to handle the request. (required)
  jobId: string, Required. The job ID. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON representation for Empty is empty JSON object {}.
}
get(projectId, region, jobId, x__xgafv=None)
Gets the resource representation for a job in a project.

Args:
  projectId: string, Required. The ID of the Google Cloud Platform project that the job belongs to. (required)
  region: string, Required. The Dataproc region in which to handle the request. (required)
  jobId: string, Required. The job ID. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A Dataproc job resource.
  "done": True or False, # Output only. Indicates whether the job is completed. If the value is false, the job is still in progress. If true, the job is completed, and status.state field will indicate if it was successful, failed, or cancelled.
  "driverControlFilesUri": "A String", # Output only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri.
  "driverOutputResourceUri": "A String", # Output only. A URI pointing to the location of the stdout of the job's driver program.
  "hadoopJob": { # A Dataproc job for running Apache Hadoop MapReduce (https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html). # Optional. Job is a Hadoop job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainClass": "A String", # The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris.
    "mainJarFileUri": "A String", # The HCFS URI of the jar file containing the main class. Examples: 'gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar' 'hdfs:/tmp/test-samples/custom-wordcount.jar' 'file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar'
    "properties": { # Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.
      "a_key": "A String",
    },
  },
  "hiveJob": { # A Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN. # Optional. Job is a Hive job.
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.
      "A String",
    ],
    "properties": { # Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains Hive queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name="value";).
      "a_key": "A String",
    },
  },
  "jobUuid": "A String", # Output only. A UUID that uniquely identifies a job within the project over time. This is in contrast to a user-settable reference.job_id that may be reused over time.
  "labels": { # Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job.
    "a_key": "A String",
  },
  "pigJob": { # A Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN. # Optional. Job is a Pig job.
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "properties": { # Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains the Pig queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).
      "a_key": "A String",
    },
  },
  "placement": { # Dataproc job config. # Required. Job information, including how, when, and where to run the job.
    "clusterLabels": { # Optional. Cluster labels to identify a cluster where the job will be submitted.
      "a_key": "A String",
    },
    "clusterName": "A String", # Required. The name of the cluster where the job will be submitted.
    "clusterUuid": "A String", # Output only. A cluster UUID generated by the Dataproc service when the job is submitted.
  },
  "prestoJob": { # A Dataproc job for running Presto (https://prestosql.io/) queries. IMPORTANT: The Dataproc Presto Optional Component (https://cloud.google.com/dataproc/docs/concepts/components/presto) must be enabled when the cluster is created to submit a Presto job to the cluster. # Optional. Job is a Presto job.
    "clientTags": [ # Optional. Presto client tags to attach to this query
      "A String",
    ],
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "outputFormat": "A String", # Optional. The format in which query output will be displayed. See the Presto documentation for supported output formats
    "properties": { # Optional. A mapping of property names to values. Used to set Presto session properties (https://prestodb.io/docs/current/sql/set-session.html) Equivalent to using the --session flag in the Presto CLI
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
  },
  "pysparkJob": { # A Dataproc job for running Apache PySpark (https://spark.apache.org/docs/0.9.0/python-programming-guide.html) applications on YARN. # Optional. Job is a PySpark job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainPythonFileUri": "A String", # Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.
    "properties": { # Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
    "pythonFileUris": [ # Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.
      "A String",
    ],
  },
  "reference": { # Encapsulates the full scoping used to reference a job. # Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a job_id.
    "jobId": "A String", # Optional. The job ID, which must be unique within the project. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.If not specified by the caller, the job ID will be provided by the server.
    "projectId": "A String", # Optional. The ID of the Google Cloud Platform project that the job belongs to. If specified, must match the request project ID.
  },
  "scheduling": { # Job scheduling options. # Optional. Job scheduling configuration.
    "maxFailuresPerHour": 42, # Optional. Maximum number of times per hour a driver may be restarted as a result of driver terminating with non-zero code before job is reported failed.A job may be reported as thrashing if driver exits with non-zero code 4 times within 10 minute window.Maximum value is 10.
    "maxFailuresTotal": 42, # Optional. Maximum number of times in total a driver may be restarted as a result of driver exiting with non-zero code before job is reported failed. Maximum value is 240.
  },
  "sparkJob": { # A Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN. The specification of the main method to call to drive the job. Specify either the jar file that contains the main class or the main class name. To pass both a main jar and a main class in that jar, add the jar to CommonJob.jar_file_uris, and then specify the main class name in main_class. # Optional. Job is a Spark job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainClass": "A String", # The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.
    "mainJarFileUri": "A String", # The HCFS URI of the jar file that contains the main class.
    "properties": { # Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
  },
  "sparkRJob": { # A Dataproc job for running Apache SparkR (https://spark.apache.org/docs/latest/sparkr.html) applications on YARN. # Optional. Job is a SparkR job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainRFileUri": "A String", # Required. The HCFS URI of the main R file to use as the driver. Must be a .R file.
    "properties": { # Optional. A mapping of property names to values, used to configure SparkR. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
  },
  "sparkSqlJob": { # A Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries. # Optional. Job is a SparkSql job.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "properties": { # Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Dataproc API may be overwritten.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name="value";).
      "a_key": "A String",
    },
  },
  "status": { # Dataproc job status. # Output only. The job status. Additional application-specific status information may be contained in the type_job and yarn_applications fields.
    "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
    "state": "A String", # Output only. A state message specifying the overall job state.
    "stateStartTime": "A String", # Output only. The time when this state was entered.
    "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
  },
  "statusHistory": [ # Output only. The previous job status.
    { # Dataproc job status.
      "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
      "state": "A String", # Output only. A state message specifying the overall job state.
      "stateStartTime": "A String", # Output only. The time when this state was entered.
      "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
    },
  ],
  "submittedBy": "A String", # Output only. The email address of the user submitting the job. For jobs submitted on the cluster, the address is username@hostname.
  "yarnApplications": [ # Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
    { # A YARN application created by a job. Application information is a subset of org.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
      "name": "A String", # Output only. The application name.
      "progress": 3.14, # Output only. The numerical progress of the application, from 1 to 100.
      "state": "A String", # Output only. The application state.
      "trackingUrl": "A String", # Output only. The HTTP URL of the ApplicationMaster, HistoryServer, or TimelineServer that provides application-specific information. The URL uses the internal hostname, and requires a proxy server for resolution and, possibly, access.
    },
  ],
}
getIamPolicy(resource, options_requestedPolicyVersion=None, x__xgafv=None)
Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

Args:
  resource: string, REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field. (required)
  options_requestedPolicyVersion: integer, Optional. The policy format version to be returned.Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected.Requests for policies with any conditional bindings must specify version 3. Policies without any conditional bindings may specify any valid value or leave the field unset.To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources.A Policy is a collection of bindings. A binding binds one or more members to a single role. Members can be user accounts, service accounts, Google groups, and domains (such as G Suite). A role is a named list of permissions; each role can be an IAM predefined role or a user-created custom role.For some types of Google Cloud resources, a binding can also specify a condition, which is a logical expression that allows access to a resource only if the expression evaluates to true. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).JSON example: { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": "BwWWja0YfJA=", "version": 3 } YAML example: bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a description of IAM and its features, see the IAM documentation (https://cloud.google.com/iam/docs/).
  "bindings": [ # Associates a list of members to a role. Optionally, may specify a condition that determines how and when the bindings are applied. Each of the bindings must contain at least one member.
    { # Associates members with a role.
      "condition": { # Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec.Example (Comparison): title: "Summary size limit" description: "Determines if a summary is less than 100 chars" expression: "document.summary.size() < 100" Example (Equality): title: "Requestor is owner" description: "Determines if requestor is the document owner" expression: "document.owner == request.auth.claims.email" Example (Logic): title: "Public documents" description: "Determine whether the document should be publicly visible" expression: "document.type != 'private' && document.type != 'internal'" Example (Data Manipulation): title: "Notification string" description: "Create a notification string with a timestamp." expression: "'New message received at ' + string(document.create_time)" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information. # The condition that is associated with this binding.If the condition evaluates to true, then this binding applies to the current request.If the condition evaluates to false, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the members in this binding.To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).
        "description": "A String", # Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
        "expression": "A String", # Textual representation of an expression in Common Expression Language syntax.
        "location": "A String", # Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
        "title": "A String", # Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
      },
      "members": [ # Specifies the identities requesting access for a Cloud Platform resource. members can have the following values: allUsers: A special identifier that represents anyone who is on the internet; with or without a Google account. allAuthenticatedUsers: A special identifier that represents anyone who is authenticated with a Google account or a service account. user:{emailid}: An email address that represents a specific Google account. For example, alice@example.com . serviceAccount:{emailid}: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. group:{emailid}: An email address that represents a Google group. For example, admins@example.com. deleted:user:{emailid}?uid={uniqueid}: An email address (plus unique identifier) representing a user that has been recently deleted. For example, alice@example.com?uid=123456789012345678901. If the user is recovered, this value reverts to user:{emailid} and the recovered user retains the role in the binding. deleted:serviceAccount:{emailid}?uid={uniqueid}: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901. If the service account is undeleted, this value reverts to serviceAccount:{emailid} and the undeleted service account retains the role in the binding. deleted:group:{emailid}?uid={uniqueid}: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, admins@example.com?uid=123456789012345678901. If the group is recovered, this value reverts to group:{emailid} and the recovered group retains the role in the binding. domain:{domain}: The G Suite domain (primary) that represents all the users of that domain. For example, google.com or example.com.
        "A String",
      ],
      "role": "A String", # Role that is assigned to members. For example, roles/viewer, roles/editor, or roles/owner.
    },
  ],
  "etag": "A String", # etag is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the etag in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An etag is returned in the response to getIamPolicy, and systems are expected to put that etag in the request to setIamPolicy to ensure that their change will be applied to the same version of the policy.Important: If you use IAM Conditions, you must include the etag field whenever you call setIamPolicy. If you omit this field, then IAM allows you to overwrite a version 3 policy with a version 1 policy, and all of the conditions in the version 3 policy are lost.
  "version": 42, # Specifies the format of the policy.Valid values are 0, 1, and 3. Requests that specify an invalid value are rejected.Any operation that affects conditional role bindings must specify version 3. This requirement applies to the following operations: Getting a policy that includes a conditional role binding Adding a conditional role binding to a policy Changing a conditional role binding in a policy Removing any role binding, with or without a condition, from a policy that includes conditionsImportant: If you use IAM Conditions, you must include the etag field whenever you call setIamPolicy. If you omit this field, then IAM allows you to overwrite a version 3 policy with a version 1 policy, and all of the conditions in the version 3 policy are lost.If a policy does not include any conditions, operations on that policy may specify any valid version or leave the field unset.To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).
}
list(projectId, region, clusterName=None, filter=None, jobStateMatcher=None, pageSize=None, pageToken=None, x__xgafv=None)
Lists regions/{region}/jobs in a project.

Args:
  projectId: string, Required. The ID of the Google Cloud Platform project that the job belongs to. (required)
  region: string, Required. The Dataproc region in which to handle the request. (required)
  clusterName: string, Optional. If set, the returned jobs list includes only jobs that were submitted to the named cluster.
  filter: string, Optional. A filter constraining the jobs to list. Filters are case-sensitive and have the following syntax:field = value AND field = value ...where field is status.state or labels.[KEY], and [KEY] is a label key. value can be * to match all values. status.state can be either ACTIVE or NON_ACTIVE. Only the logical AND operator is supported; space-separated items are treated as having an implicit AND operator.Example filter:status.state = ACTIVE AND labels.env = staging AND labels.starred = *
  jobStateMatcher: string, Optional. Specifies enumerated categories of jobs to list. (default = match ALL jobs).If filter is provided, jobStateMatcher will be ignored.
    Allowed values
      ALL - Match all jobs, regardless of state.
      ACTIVE - Only match jobs in non-terminal states: PENDING, RUNNING, or CANCEL_PENDING.
      NON_ACTIVE - Only match jobs in terminal states: CANCELLED, DONE, or ERROR.
  pageSize: integer, Optional. The number of results to return in each response.
  pageToken: string, Optional. The page token, returned by a previous call, to request the next page of results.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A list of jobs in a project.
  "jobs": [ # Output only. Jobs list.
    { # A Dataproc job resource.
      "done": True or False, # Output only. Indicates whether the job is completed. If the value is false, the job is still in progress. If true, the job is completed, and status.state field will indicate if it was successful, failed, or cancelled.
      "driverControlFilesUri": "A String", # Output only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri.
      "driverOutputResourceUri": "A String", # Output only. A URI pointing to the location of the stdout of the job's driver program.
      "hadoopJob": { # A Dataproc job for running Apache Hadoop MapReduce (https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html). # Optional. Job is a Hadoop job.
        "archiveUris": [ # Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.
          "A String",
        ],
        "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
          "A String",
        ],
        "fileUris": [ # Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.
          "A String",
        ],
        "jarFileUris": [ # Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.
          "A String",
        ],
        "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
          "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
            "a_key": "A String",
          },
        },
        "mainClass": "A String", # The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris.
        "mainJarFileUri": "A String", # The HCFS URI of the jar file containing the main class. Examples: 'gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar' 'hdfs:/tmp/test-samples/custom-wordcount.jar' 'file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar'
        "properties": { # Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.
          "a_key": "A String",
        },
      },
      "hiveJob": { # A Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN. # Optional. Job is a Hive job.
        "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
        "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.
          "A String",
        ],
        "properties": { # Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.
          "a_key": "A String",
        },
        "queryFileUri": "A String", # The HCFS URI of the script that contains Hive queries.
        "queryList": { # A list of queries to run on a cluster. # A list of queries.
          "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
            "A String",
          ],
        },
        "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name="value";).
          "a_key": "A String",
        },
      },
      "jobUuid": "A String", # Output only. A UUID that uniquely identifies a job within the project over time. This is in contrast to a user-settable reference.job_id that may be reused over time.
      "labels": { # Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job.
        "a_key": "A String",
      },
      "pigJob": { # A Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN. # Optional. Job is a Pig job.
        "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
        "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.
          "A String",
        ],
        "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
          "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
            "a_key": "A String",
          },
        },
        "properties": { # Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.
          "a_key": "A String",
        },
        "queryFileUri": "A String", # The HCFS URI of the script that contains the Pig queries.
        "queryList": { # A list of queries to run on a cluster. # A list of queries.
          "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
            "A String",
          ],
        },
        "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).
          "a_key": "A String",
        },
      },
      "placement": { # Dataproc job config. # Required. Job information, including how, when, and where to run the job.
        "clusterLabels": { # Optional. Cluster labels to identify a cluster where the job will be submitted.
          "a_key": "A String",
        },
        "clusterName": "A String", # Required. The name of the cluster where the job will be submitted.
        "clusterUuid": "A String", # Output only. A cluster UUID generated by the Dataproc service when the job is submitted.
      },
      "prestoJob": { # A Dataproc job for running Presto (https://prestosql.io/) queries. IMPORTANT: The Dataproc Presto Optional Component (https://cloud.google.com/dataproc/docs/concepts/components/presto) must be enabled when the cluster is created to submit a Presto job to the cluster. # Optional. Job is a Presto job.
        "clientTags": [ # Optional. Presto client tags to attach to this query
          "A String",
        ],
        "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
        "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
          "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
            "a_key": "A String",
          },
        },
        "outputFormat": "A String", # Optional. The format in which query output will be displayed. See the Presto documentation for supported output formats
        "properties": { # Optional. A mapping of property names to values. Used to set Presto session properties (https://prestodb.io/docs/current/sql/set-session.html) Equivalent to using the --session flag in the Presto CLI
          "a_key": "A String",
        },
        "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
        "queryList": { # A list of queries to run on a cluster. # A list of queries.
          "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
            "A String",
          ],
        },
      },
      "pysparkJob": { # A Dataproc job for running Apache PySpark (https://spark.apache.org/docs/0.9.0/python-programming-guide.html) applications on YARN. # Optional. Job is a PySpark job.
        "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
          "A String",
        ],
        "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
          "A String",
        ],
        "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
          "A String",
        ],
        "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.
          "A String",
        ],
        "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
          "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
            "a_key": "A String",
          },
        },
        "mainPythonFileUri": "A String", # Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.
        "properties": { # Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
          "a_key": "A String",
        },
        "pythonFileUris": [ # Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.
          "A String",
        ],
      },
      "reference": { # Encapsulates the full scoping used to reference a job. # Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a job_id.
        "jobId": "A String", # Optional. The job ID, which must be unique within the project. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.If not specified by the caller, the job ID will be provided by the server.
        "projectId": "A String", # Optional. The ID of the Google Cloud Platform project that the job belongs to. If specified, must match the request project ID.
      },
      "scheduling": { # Job scheduling options. # Optional. Job scheduling configuration.
        "maxFailuresPerHour": 42, # Optional. Maximum number of times per hour a driver may be restarted as a result of driver terminating with non-zero code before job is reported failed.A job may be reported as thrashing if driver exits with non-zero code 4 times within 10 minute window.Maximum value is 10.
        "maxFailuresTotal": 42, # Optional. Maximum number of times in total a driver may be restarted as a result of driver exiting with non-zero code before job is reported failed. Maximum value is 240.
      },
      "sparkJob": { # A Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN. The specification of the main method to call to drive the job. Specify either the jar file that contains the main class or the main class name. To pass both a main jar and a main class in that jar, add the jar to CommonJob.jar_file_uris, and then specify the main class name in main_class. # Optional. Job is a Spark job.
        "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
          "A String",
        ],
        "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
          "A String",
        ],
        "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
          "A String",
        ],
        "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.
          "A String",
        ],
        "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
          "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
            "a_key": "A String",
          },
        },
        "mainClass": "A String", # The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.
        "mainJarFileUri": "A String", # The HCFS URI of the jar file that contains the main class.
        "properties": { # Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
          "a_key": "A String",
        },
      },
      "sparkRJob": { # A Dataproc job for running Apache SparkR (https://spark.apache.org/docs/latest/sparkr.html) applications on YARN. # Optional. Job is a SparkR job.
        "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
          "A String",
        ],
        "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
          "A String",
        ],
        "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
          "A String",
        ],
        "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
          "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
            "a_key": "A String",
          },
        },
        "mainRFileUri": "A String", # Required. The HCFS URI of the main R file to use as the driver. Must be a .R file.
        "properties": { # Optional. A mapping of property names to values, used to configure SparkR. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
          "a_key": "A String",
        },
      },
      "sparkSqlJob": { # A Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries. # Optional. Job is a SparkSql job.
        "jarFileUris": [ # Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.
          "A String",
        ],
        "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
          "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
            "a_key": "A String",
          },
        },
        "properties": { # Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Dataproc API may be overwritten.
          "a_key": "A String",
        },
        "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
        "queryList": { # A list of queries to run on a cluster. # A list of queries.
          "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
            "A String",
          ],
        },
        "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name="value";).
          "a_key": "A String",
        },
      },
      "status": { # Dataproc job status. # Output only. The job status. Additional application-specific status information may be contained in the type_job and yarn_applications fields.
        "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
        "state": "A String", # Output only. A state message specifying the overall job state.
        "stateStartTime": "A String", # Output only. The time when this state was entered.
        "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
      },
      "statusHistory": [ # Output only. The previous job status.
        { # Dataproc job status.
          "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
          "state": "A String", # Output only. A state message specifying the overall job state.
          "stateStartTime": "A String", # Output only. The time when this state was entered.
          "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
        },
      ],
      "submittedBy": "A String", # Output only. The email address of the user submitting the job. For jobs submitted on the cluster, the address is username@hostname.
      "yarnApplications": [ # Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
        { # A YARN application created by a job. Application information is a subset of org.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
          "name": "A String", # Output only. The application name.
          "progress": 3.14, # Output only. The numerical progress of the application, from 1 to 100.
          "state": "A String", # Output only. The application state.
          "trackingUrl": "A String", # Output only. The HTTP URL of the ApplicationMaster, HistoryServer, or TimelineServer that provides application-specific information. The URL uses the internal hostname, and requires a proxy server for resolution and, possibly, access.
        },
      ],
    },
  ],
  "nextPageToken": "A String", # Optional. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent ListJobsRequest.
}
list_next(previous_request, previous_response)
Retrieves the next page of results.

Args:
  previous_request: The request for the previous page. (required)
  previous_response: The response from the request for the previous page. (required)

Returns:
  A request object that you can call 'execute()' on to request the next
  page. Returns None if there are no more items in the collection.
    
patch(projectId, region, jobId, body=None, updateMask=None, x__xgafv=None)
Updates a job in a project.

Args:
  projectId: string, Required. The ID of the Google Cloud Platform project that the job belongs to. (required)
  region: string, Required. The Dataproc region in which to handle the request. (required)
  jobId: string, Required. The job ID. (required)
  body: object, The request body.
    The object takes the form of:

{ # A Dataproc job resource.
  "done": True or False, # Output only. Indicates whether the job is completed. If the value is false, the job is still in progress. If true, the job is completed, and status.state field will indicate if it was successful, failed, or cancelled.
  "driverControlFilesUri": "A String", # Output only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri.
  "driverOutputResourceUri": "A String", # Output only. A URI pointing to the location of the stdout of the job's driver program.
  "hadoopJob": { # A Dataproc job for running Apache Hadoop MapReduce (https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html). # Optional. Job is a Hadoop job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainClass": "A String", # The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris.
    "mainJarFileUri": "A String", # The HCFS URI of the jar file containing the main class. Examples: 'gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar' 'hdfs:/tmp/test-samples/custom-wordcount.jar' 'file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar'
    "properties": { # Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.
      "a_key": "A String",
    },
  },
  "hiveJob": { # A Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN. # Optional. Job is a Hive job.
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.
      "A String",
    ],
    "properties": { # Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains Hive queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name="value";).
      "a_key": "A String",
    },
  },
  "jobUuid": "A String", # Output only. A UUID that uniquely identifies a job within the project over time. This is in contrast to a user-settable reference.job_id that may be reused over time.
  "labels": { # Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job.
    "a_key": "A String",
  },
  "pigJob": { # A Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN. # Optional. Job is a Pig job.
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "properties": { # Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains the Pig queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).
      "a_key": "A String",
    },
  },
  "placement": { # Dataproc job config. # Required. Job information, including how, when, and where to run the job.
    "clusterLabels": { # Optional. Cluster labels to identify a cluster where the job will be submitted.
      "a_key": "A String",
    },
    "clusterName": "A String", # Required. The name of the cluster where the job will be submitted.
    "clusterUuid": "A String", # Output only. A cluster UUID generated by the Dataproc service when the job is submitted.
  },
  "prestoJob": { # A Dataproc job for running Presto (https://prestosql.io/) queries. IMPORTANT: The Dataproc Presto Optional Component (https://cloud.google.com/dataproc/docs/concepts/components/presto) must be enabled when the cluster is created to submit a Presto job to the cluster. # Optional. Job is a Presto job.
    "clientTags": [ # Optional. Presto client tags to attach to this query
      "A String",
    ],
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "outputFormat": "A String", # Optional. The format in which query output will be displayed. See the Presto documentation for supported output formats
    "properties": { # Optional. A mapping of property names to values. Used to set Presto session properties (https://prestodb.io/docs/current/sql/set-session.html) Equivalent to using the --session flag in the Presto CLI
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
  },
  "pysparkJob": { # A Dataproc job for running Apache PySpark (https://spark.apache.org/docs/0.9.0/python-programming-guide.html) applications on YARN. # Optional. Job is a PySpark job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainPythonFileUri": "A String", # Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.
    "properties": { # Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
    "pythonFileUris": [ # Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.
      "A String",
    ],
  },
  "reference": { # Encapsulates the full scoping used to reference a job. # Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a job_id.
    "jobId": "A String", # Optional. The job ID, which must be unique within the project. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.If not specified by the caller, the job ID will be provided by the server.
    "projectId": "A String", # Optional. The ID of the Google Cloud Platform project that the job belongs to. If specified, must match the request project ID.
  },
  "scheduling": { # Job scheduling options. # Optional. Job scheduling configuration.
    "maxFailuresPerHour": 42, # Optional. Maximum number of times per hour a driver may be restarted as a result of driver terminating with non-zero code before job is reported failed.A job may be reported as thrashing if driver exits with non-zero code 4 times within 10 minute window.Maximum value is 10.
    "maxFailuresTotal": 42, # Optional. Maximum number of times in total a driver may be restarted as a result of driver exiting with non-zero code before job is reported failed. Maximum value is 240.
  },
  "sparkJob": { # A Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN. The specification of the main method to call to drive the job. Specify either the jar file that contains the main class or the main class name. To pass both a main jar and a main class in that jar, add the jar to CommonJob.jar_file_uris, and then specify the main class name in main_class. # Optional. Job is a Spark job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainClass": "A String", # The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.
    "mainJarFileUri": "A String", # The HCFS URI of the jar file that contains the main class.
    "properties": { # Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
  },
  "sparkRJob": { # A Dataproc job for running Apache SparkR (https://spark.apache.org/docs/latest/sparkr.html) applications on YARN. # Optional. Job is a SparkR job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainRFileUri": "A String", # Required. The HCFS URI of the main R file to use as the driver. Must be a .R file.
    "properties": { # Optional. A mapping of property names to values, used to configure SparkR. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
  },
  "sparkSqlJob": { # A Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries. # Optional. Job is a SparkSql job.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "properties": { # Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Dataproc API may be overwritten.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name="value";).
      "a_key": "A String",
    },
  },
  "status": { # Dataproc job status. # Output only. The job status. Additional application-specific status information may be contained in the type_job and yarn_applications fields.
    "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
    "state": "A String", # Output only. A state message specifying the overall job state.
    "stateStartTime": "A String", # Output only. The time when this state was entered.
    "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
  },
  "statusHistory": [ # Output only. The previous job status.
    { # Dataproc job status.
      "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
      "state": "A String", # Output only. A state message specifying the overall job state.
      "stateStartTime": "A String", # Output only. The time when this state was entered.
      "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
    },
  ],
  "submittedBy": "A String", # Output only. The email address of the user submitting the job. For jobs submitted on the cluster, the address is username@hostname.
  "yarnApplications": [ # Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
    { # A YARN application created by a job. Application information is a subset of org.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
      "name": "A String", # Output only. The application name.
      "progress": 3.14, # Output only. The numerical progress of the application, from 1 to 100.
      "state": "A String", # Output only. The application state.
      "trackingUrl": "A String", # Output only. The HTTP URL of the ApplicationMaster, HistoryServer, or TimelineServer that provides application-specific information. The URL uses the internal hostname, and requires a proxy server for resolution and, possibly, access.
    },
  ],
}

  updateMask: string, Required. Specifies the path, relative to Job, of the field to update. For example, to update the labels of a Job the update_mask parameter would be specified as labels, and the PATCH request body would specify the new value. *Note:* Currently, labels is the only field that can be updated.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A Dataproc job resource.
  "done": True or False, # Output only. Indicates whether the job is completed. If the value is false, the job is still in progress. If true, the job is completed, and status.state field will indicate if it was successful, failed, or cancelled.
  "driverControlFilesUri": "A String", # Output only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri.
  "driverOutputResourceUri": "A String", # Output only. A URI pointing to the location of the stdout of the job's driver program.
  "hadoopJob": { # A Dataproc job for running Apache Hadoop MapReduce (https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html). # Optional. Job is a Hadoop job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainClass": "A String", # The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris.
    "mainJarFileUri": "A String", # The HCFS URI of the jar file containing the main class. Examples: 'gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar' 'hdfs:/tmp/test-samples/custom-wordcount.jar' 'file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar'
    "properties": { # Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.
      "a_key": "A String",
    },
  },
  "hiveJob": { # A Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN. # Optional. Job is a Hive job.
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.
      "A String",
    ],
    "properties": { # Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains Hive queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name="value";).
      "a_key": "A String",
    },
  },
  "jobUuid": "A String", # Output only. A UUID that uniquely identifies a job within the project over time. This is in contrast to a user-settable reference.job_id that may be reused over time.
  "labels": { # Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job.
    "a_key": "A String",
  },
  "pigJob": { # A Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN. # Optional. Job is a Pig job.
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "properties": { # Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains the Pig queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).
      "a_key": "A String",
    },
  },
  "placement": { # Dataproc job config. # Required. Job information, including how, when, and where to run the job.
    "clusterLabels": { # Optional. Cluster labels to identify a cluster where the job will be submitted.
      "a_key": "A String",
    },
    "clusterName": "A String", # Required. The name of the cluster where the job will be submitted.
    "clusterUuid": "A String", # Output only. A cluster UUID generated by the Dataproc service when the job is submitted.
  },
  "prestoJob": { # A Dataproc job for running Presto (https://prestosql.io/) queries. IMPORTANT: The Dataproc Presto Optional Component (https://cloud.google.com/dataproc/docs/concepts/components/presto) must be enabled when the cluster is created to submit a Presto job to the cluster. # Optional. Job is a Presto job.
    "clientTags": [ # Optional. Presto client tags to attach to this query
      "A String",
    ],
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "outputFormat": "A String", # Optional. The format in which query output will be displayed. See the Presto documentation for supported output formats
    "properties": { # Optional. A mapping of property names to values. Used to set Presto session properties (https://prestodb.io/docs/current/sql/set-session.html) Equivalent to using the --session flag in the Presto CLI
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
  },
  "pysparkJob": { # A Dataproc job for running Apache PySpark (https://spark.apache.org/docs/0.9.0/python-programming-guide.html) applications on YARN. # Optional. Job is a PySpark job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainPythonFileUri": "A String", # Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.
    "properties": { # Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
    "pythonFileUris": [ # Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.
      "A String",
    ],
  },
  "reference": { # Encapsulates the full scoping used to reference a job. # Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a job_id.
    "jobId": "A String", # Optional. The job ID, which must be unique within the project. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.If not specified by the caller, the job ID will be provided by the server.
    "projectId": "A String", # Optional. The ID of the Google Cloud Platform project that the job belongs to. If specified, must match the request project ID.
  },
  "scheduling": { # Job scheduling options. # Optional. Job scheduling configuration.
    "maxFailuresPerHour": 42, # Optional. Maximum number of times per hour a driver may be restarted as a result of driver terminating with non-zero code before job is reported failed.A job may be reported as thrashing if driver exits with non-zero code 4 times within 10 minute window.Maximum value is 10.
    "maxFailuresTotal": 42, # Optional. Maximum number of times in total a driver may be restarted as a result of driver exiting with non-zero code before job is reported failed. Maximum value is 240.
  },
  "sparkJob": { # A Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN. The specification of the main method to call to drive the job. Specify either the jar file that contains the main class or the main class name. To pass both a main jar and a main class in that jar, add the jar to CommonJob.jar_file_uris, and then specify the main class name in main_class. # Optional. Job is a Spark job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainClass": "A String", # The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.
    "mainJarFileUri": "A String", # The HCFS URI of the jar file that contains the main class.
    "properties": { # Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
  },
  "sparkRJob": { # A Dataproc job for running Apache SparkR (https://spark.apache.org/docs/latest/sparkr.html) applications on YARN. # Optional. Job is a SparkR job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainRFileUri": "A String", # Required. The HCFS URI of the main R file to use as the driver. Must be a .R file.
    "properties": { # Optional. A mapping of property names to values, used to configure SparkR. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
  },
  "sparkSqlJob": { # A Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries. # Optional. Job is a SparkSql job.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "properties": { # Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Dataproc API may be overwritten.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name="value";).
      "a_key": "A String",
    },
  },
  "status": { # Dataproc job status. # Output only. The job status. Additional application-specific status information may be contained in the type_job and yarn_applications fields.
    "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
    "state": "A String", # Output only. A state message specifying the overall job state.
    "stateStartTime": "A String", # Output only. The time when this state was entered.
    "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
  },
  "statusHistory": [ # Output only. The previous job status.
    { # Dataproc job status.
      "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
      "state": "A String", # Output only. A state message specifying the overall job state.
      "stateStartTime": "A String", # Output only. The time when this state was entered.
      "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
    },
  ],
  "submittedBy": "A String", # Output only. The email address of the user submitting the job. For jobs submitted on the cluster, the address is username@hostname.
  "yarnApplications": [ # Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
    { # A YARN application created by a job. Application information is a subset of org.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
      "name": "A String", # Output only. The application name.
      "progress": 3.14, # Output only. The numerical progress of the application, from 1 to 100.
      "state": "A String", # Output only. The application state.
      "trackingUrl": "A String", # Output only. The HTTP URL of the ApplicationMaster, HistoryServer, or TimelineServer that provides application-specific information. The URL uses the internal hostname, and requires a proxy server for resolution and, possibly, access.
    },
  ],
}
setIamPolicy(resource, body=None, x__xgafv=None)
Sets the access control policy on the specified resource. Replaces any existing policy.Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.

Args:
  resource: string, REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for SetIamPolicy method.
  "policy": { # An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources.A Policy is a collection of bindings. A binding binds one or more members to a single role. Members can be user accounts, service accounts, Google groups, and domains (such as G Suite). A role is a named list of permissions; each role can be an IAM predefined role or a user-created custom role.For some types of Google Cloud resources, a binding can also specify a condition, which is a logical expression that allows access to a resource only if the expression evaluates to true. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).JSON example: { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": "BwWWja0YfJA=", "version": 3 } YAML example: bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a description of IAM and its features, see the IAM documentation (https://cloud.google.com/iam/docs/). # REQUIRED: The complete policy to be applied to the resource. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Cloud Platform services (such as Projects) might reject them.
    "bindings": [ # Associates a list of members to a role. Optionally, may specify a condition that determines how and when the bindings are applied. Each of the bindings must contain at least one member.
      { # Associates members with a role.
        "condition": { # Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec.Example (Comparison): title: "Summary size limit" description: "Determines if a summary is less than 100 chars" expression: "document.summary.size() < 100" Example (Equality): title: "Requestor is owner" description: "Determines if requestor is the document owner" expression: "document.owner == request.auth.claims.email" Example (Logic): title: "Public documents" description: "Determine whether the document should be publicly visible" expression: "document.type != 'private' && document.type != 'internal'" Example (Data Manipulation): title: "Notification string" description: "Create a notification string with a timestamp." expression: "'New message received at ' + string(document.create_time)" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information. # The condition that is associated with this binding.If the condition evaluates to true, then this binding applies to the current request.If the condition evaluates to false, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the members in this binding.To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).
          "description": "A String", # Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
          "expression": "A String", # Textual representation of an expression in Common Expression Language syntax.
          "location": "A String", # Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
          "title": "A String", # Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
        },
        "members": [ # Specifies the identities requesting access for a Cloud Platform resource. members can have the following values: allUsers: A special identifier that represents anyone who is on the internet; with or without a Google account. allAuthenticatedUsers: A special identifier that represents anyone who is authenticated with a Google account or a service account. user:{emailid}: An email address that represents a specific Google account. For example, alice@example.com . serviceAccount:{emailid}: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. group:{emailid}: An email address that represents a Google group. For example, admins@example.com. deleted:user:{emailid}?uid={uniqueid}: An email address (plus unique identifier) representing a user that has been recently deleted. For example, alice@example.com?uid=123456789012345678901. If the user is recovered, this value reverts to user:{emailid} and the recovered user retains the role in the binding. deleted:serviceAccount:{emailid}?uid={uniqueid}: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901. If the service account is undeleted, this value reverts to serviceAccount:{emailid} and the undeleted service account retains the role in the binding. deleted:group:{emailid}?uid={uniqueid}: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, admins@example.com?uid=123456789012345678901. If the group is recovered, this value reverts to group:{emailid} and the recovered group retains the role in the binding. domain:{domain}: The G Suite domain (primary) that represents all the users of that domain. For example, google.com or example.com.
          "A String",
        ],
        "role": "A String", # Role that is assigned to members. For example, roles/viewer, roles/editor, or roles/owner.
      },
    ],
    "etag": "A String", # etag is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the etag in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An etag is returned in the response to getIamPolicy, and systems are expected to put that etag in the request to setIamPolicy to ensure that their change will be applied to the same version of the policy.Important: If you use IAM Conditions, you must include the etag field whenever you call setIamPolicy. If you omit this field, then IAM allows you to overwrite a version 3 policy with a version 1 policy, and all of the conditions in the version 3 policy are lost.
    "version": 42, # Specifies the format of the policy.Valid values are 0, 1, and 3. Requests that specify an invalid value are rejected.Any operation that affects conditional role bindings must specify version 3. This requirement applies to the following operations: Getting a policy that includes a conditional role binding Adding a conditional role binding to a policy Changing a conditional role binding in a policy Removing any role binding, with or without a condition, from a policy that includes conditionsImportant: If you use IAM Conditions, you must include the etag field whenever you call setIamPolicy. If you omit this field, then IAM allows you to overwrite a version 3 policy with a version 1 policy, and all of the conditions in the version 3 policy are lost.If a policy does not include any conditions, operations on that policy may specify any valid version or leave the field unset.To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).
  },
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources.A Policy is a collection of bindings. A binding binds one or more members to a single role. Members can be user accounts, service accounts, Google groups, and domains (such as G Suite). A role is a named list of permissions; each role can be an IAM predefined role or a user-created custom role.For some types of Google Cloud resources, a binding can also specify a condition, which is a logical expression that allows access to a resource only if the expression evaluates to true. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).JSON example: { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": "BwWWja0YfJA=", "version": 3 } YAML example: bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a description of IAM and its features, see the IAM documentation (https://cloud.google.com/iam/docs/).
  "bindings": [ # Associates a list of members to a role. Optionally, may specify a condition that determines how and when the bindings are applied. Each of the bindings must contain at least one member.
    { # Associates members with a role.
      "condition": { # Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec.Example (Comparison): title: "Summary size limit" description: "Determines if a summary is less than 100 chars" expression: "document.summary.size() < 100" Example (Equality): title: "Requestor is owner" description: "Determines if requestor is the document owner" expression: "document.owner == request.auth.claims.email" Example (Logic): title: "Public documents" description: "Determine whether the document should be publicly visible" expression: "document.type != 'private' && document.type != 'internal'" Example (Data Manipulation): title: "Notification string" description: "Create a notification string with a timestamp." expression: "'New message received at ' + string(document.create_time)" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information. # The condition that is associated with this binding.If the condition evaluates to true, then this binding applies to the current request.If the condition evaluates to false, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the members in this binding.To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).
        "description": "A String", # Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
        "expression": "A String", # Textual representation of an expression in Common Expression Language syntax.
        "location": "A String", # Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
        "title": "A String", # Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
      },
      "members": [ # Specifies the identities requesting access for a Cloud Platform resource. members can have the following values: allUsers: A special identifier that represents anyone who is on the internet; with or without a Google account. allAuthenticatedUsers: A special identifier that represents anyone who is authenticated with a Google account or a service account. user:{emailid}: An email address that represents a specific Google account. For example, alice@example.com . serviceAccount:{emailid}: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. group:{emailid}: An email address that represents a Google group. For example, admins@example.com. deleted:user:{emailid}?uid={uniqueid}: An email address (plus unique identifier) representing a user that has been recently deleted. For example, alice@example.com?uid=123456789012345678901. If the user is recovered, this value reverts to user:{emailid} and the recovered user retains the role in the binding. deleted:serviceAccount:{emailid}?uid={uniqueid}: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901. If the service account is undeleted, this value reverts to serviceAccount:{emailid} and the undeleted service account retains the role in the binding. deleted:group:{emailid}?uid={uniqueid}: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, admins@example.com?uid=123456789012345678901. If the group is recovered, this value reverts to group:{emailid} and the recovered group retains the role in the binding. domain:{domain}: The G Suite domain (primary) that represents all the users of that domain. For example, google.com or example.com.
        "A String",
      ],
      "role": "A String", # Role that is assigned to members. For example, roles/viewer, roles/editor, or roles/owner.
    },
  ],
  "etag": "A String", # etag is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the etag in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An etag is returned in the response to getIamPolicy, and systems are expected to put that etag in the request to setIamPolicy to ensure that their change will be applied to the same version of the policy.Important: If you use IAM Conditions, you must include the etag field whenever you call setIamPolicy. If you omit this field, then IAM allows you to overwrite a version 3 policy with a version 1 policy, and all of the conditions in the version 3 policy are lost.
  "version": 42, # Specifies the format of the policy.Valid values are 0, 1, and 3. Requests that specify an invalid value are rejected.Any operation that affects conditional role bindings must specify version 3. This requirement applies to the following operations: Getting a policy that includes a conditional role binding Adding a conditional role binding to a policy Changing a conditional role binding in a policy Removing any role binding, with or without a condition, from a policy that includes conditionsImportant: If you use IAM Conditions, you must include the etag field whenever you call setIamPolicy. If you omit this field, then IAM allows you to overwrite a version 3 policy with a version 1 policy, and all of the conditions in the version 3 policy are lost.If a policy does not include any conditions, operations on that policy may specify any valid version or leave the field unset.To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).
}
submit(projectId, region, body=None, x__xgafv=None)
Submits a job to a cluster.

Args:
  projectId: string, Required. The ID of the Google Cloud Platform project that the job belongs to. (required)
  region: string, Required. The Dataproc region in which to handle the request. (required)
  body: object, The request body.
    The object takes the form of:

{ # A request to submit a job.
  "job": { # A Dataproc job resource. # Required. The job resource.
    "done": True or False, # Output only. Indicates whether the job is completed. If the value is false, the job is still in progress. If true, the job is completed, and status.state field will indicate if it was successful, failed, or cancelled.
    "driverControlFilesUri": "A String", # Output only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri.
    "driverOutputResourceUri": "A String", # Output only. A URI pointing to the location of the stdout of the job's driver program.
    "hadoopJob": { # A Dataproc job for running Apache Hadoop MapReduce (https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html). # Optional. Job is a Hadoop job.
      "archiveUris": [ # Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.
        "A String",
      ],
      "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
        "A String",
      ],
      "fileUris": [ # Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.
        "A String",
      ],
      "jarFileUris": [ # Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.
        "A String",
      ],
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "mainClass": "A String", # The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris.
      "mainJarFileUri": "A String", # The HCFS URI of the jar file containing the main class. Examples: 'gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar' 'hdfs:/tmp/test-samples/custom-wordcount.jar' 'file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar'
      "properties": { # Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.
        "a_key": "A String",
      },
    },
    "hiveJob": { # A Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN. # Optional. Job is a Hive job.
      "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
      "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.
        "A String",
      ],
      "properties": { # Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.
        "a_key": "A String",
      },
      "queryFileUri": "A String", # The HCFS URI of the script that contains Hive queries.
      "queryList": { # A list of queries to run on a cluster. # A list of queries.
        "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
          "A String",
        ],
      },
      "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name="value";).
        "a_key": "A String",
      },
    },
    "jobUuid": "A String", # Output only. A UUID that uniquely identifies a job within the project over time. This is in contrast to a user-settable reference.job_id that may be reused over time.
    "labels": { # Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job.
      "a_key": "A String",
    },
    "pigJob": { # A Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN. # Optional. Job is a Pig job.
      "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
      "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.
        "A String",
      ],
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "properties": { # Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.
        "a_key": "A String",
      },
      "queryFileUri": "A String", # The HCFS URI of the script that contains the Pig queries.
      "queryList": { # A list of queries to run on a cluster. # A list of queries.
        "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
          "A String",
        ],
      },
      "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).
        "a_key": "A String",
      },
    },
    "placement": { # Dataproc job config. # Required. Job information, including how, when, and where to run the job.
      "clusterLabels": { # Optional. Cluster labels to identify a cluster where the job will be submitted.
        "a_key": "A String",
      },
      "clusterName": "A String", # Required. The name of the cluster where the job will be submitted.
      "clusterUuid": "A String", # Output only. A cluster UUID generated by the Dataproc service when the job is submitted.
    },
    "prestoJob": { # A Dataproc job for running Presto (https://prestosql.io/) queries. IMPORTANT: The Dataproc Presto Optional Component (https://cloud.google.com/dataproc/docs/concepts/components/presto) must be enabled when the cluster is created to submit a Presto job to the cluster. # Optional. Job is a Presto job.
      "clientTags": [ # Optional. Presto client tags to attach to this query
        "A String",
      ],
      "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "outputFormat": "A String", # Optional. The format in which query output will be displayed. See the Presto documentation for supported output formats
      "properties": { # Optional. A mapping of property names to values. Used to set Presto session properties (https://prestodb.io/docs/current/sql/set-session.html) Equivalent to using the --session flag in the Presto CLI
        "a_key": "A String",
      },
      "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
      "queryList": { # A list of queries to run on a cluster. # A list of queries.
        "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
          "A String",
        ],
      },
    },
    "pysparkJob": { # A Dataproc job for running Apache PySpark (https://spark.apache.org/docs/0.9.0/python-programming-guide.html) applications on YARN. # Optional. Job is a PySpark job.
      "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
        "A String",
      ],
      "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
        "A String",
      ],
      "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
        "A String",
      ],
      "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.
        "A String",
      ],
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "mainPythonFileUri": "A String", # Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.
      "properties": { # Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
        "a_key": "A String",
      },
      "pythonFileUris": [ # Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.
        "A String",
      ],
    },
    "reference": { # Encapsulates the full scoping used to reference a job. # Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a job_id.
      "jobId": "A String", # Optional. The job ID, which must be unique within the project. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.If not specified by the caller, the job ID will be provided by the server.
      "projectId": "A String", # Optional. The ID of the Google Cloud Platform project that the job belongs to. If specified, must match the request project ID.
    },
    "scheduling": { # Job scheduling options. # Optional. Job scheduling configuration.
      "maxFailuresPerHour": 42, # Optional. Maximum number of times per hour a driver may be restarted as a result of driver terminating with non-zero code before job is reported failed.A job may be reported as thrashing if driver exits with non-zero code 4 times within 10 minute window.Maximum value is 10.
      "maxFailuresTotal": 42, # Optional. Maximum number of times in total a driver may be restarted as a result of driver exiting with non-zero code before job is reported failed. Maximum value is 240.
    },
    "sparkJob": { # A Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN. The specification of the main method to call to drive the job. Specify either the jar file that contains the main class or the main class name. To pass both a main jar and a main class in that jar, add the jar to CommonJob.jar_file_uris, and then specify the main class name in main_class. # Optional. Job is a Spark job.
      "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
        "A String",
      ],
      "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
        "A String",
      ],
      "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
        "A String",
      ],
      "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.
        "A String",
      ],
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "mainClass": "A String", # The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.
      "mainJarFileUri": "A String", # The HCFS URI of the jar file that contains the main class.
      "properties": { # Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
        "a_key": "A String",
      },
    },
    "sparkRJob": { # A Dataproc job for running Apache SparkR (https://spark.apache.org/docs/latest/sparkr.html) applications on YARN. # Optional. Job is a SparkR job.
      "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
        "A String",
      ],
      "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
        "A String",
      ],
      "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
        "A String",
      ],
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "mainRFileUri": "A String", # Required. The HCFS URI of the main R file to use as the driver. Must be a .R file.
      "properties": { # Optional. A mapping of property names to values, used to configure SparkR. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
        "a_key": "A String",
      },
    },
    "sparkSqlJob": { # A Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries. # Optional. Job is a SparkSql job.
      "jarFileUris": [ # Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.
        "A String",
      ],
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "properties": { # Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Dataproc API may be overwritten.
        "a_key": "A String",
      },
      "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
      "queryList": { # A list of queries to run on a cluster. # A list of queries.
        "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
          "A String",
        ],
      },
      "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name="value";).
        "a_key": "A String",
      },
    },
    "status": { # Dataproc job status. # Output only. The job status. Additional application-specific status information may be contained in the type_job and yarn_applications fields.
      "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
      "state": "A String", # Output only. A state message specifying the overall job state.
      "stateStartTime": "A String", # Output only. The time when this state was entered.
      "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
    },
    "statusHistory": [ # Output only. The previous job status.
      { # Dataproc job status.
        "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
        "state": "A String", # Output only. A state message specifying the overall job state.
        "stateStartTime": "A String", # Output only. The time when this state was entered.
        "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
      },
    ],
    "submittedBy": "A String", # Output only. The email address of the user submitting the job. For jobs submitted on the cluster, the address is username@hostname.
    "yarnApplications": [ # Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
      { # A YARN application created by a job. Application information is a subset of org.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
        "name": "A String", # Output only. The application name.
        "progress": 3.14, # Output only. The numerical progress of the application, from 1 to 100.
        "state": "A String", # Output only. The application state.
        "trackingUrl": "A String", # Output only. The HTTP URL of the ApplicationMaster, HistoryServer, or TimelineServer that provides application-specific information. The URL uses the internal hostname, and requires a proxy server for resolution and, possibly, access.
      },
    ],
  },
  "requestId": "A String", # Optional. A unique id used to identify the request. If the server receives two SubmitJobRequest (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1beta2#google.cloud.dataproc.v1.SubmitJobRequest)s with the same id, then the second request will be ignored and the first Job created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A Dataproc job resource.
  "done": True or False, # Output only. Indicates whether the job is completed. If the value is false, the job is still in progress. If true, the job is completed, and status.state field will indicate if it was successful, failed, or cancelled.
  "driverControlFilesUri": "A String", # Output only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri.
  "driverOutputResourceUri": "A String", # Output only. A URI pointing to the location of the stdout of the job's driver program.
  "hadoopJob": { # A Dataproc job for running Apache Hadoop MapReduce (https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html). # Optional. Job is a Hadoop job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainClass": "A String", # The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris.
    "mainJarFileUri": "A String", # The HCFS URI of the jar file containing the main class. Examples: 'gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar' 'hdfs:/tmp/test-samples/custom-wordcount.jar' 'file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar'
    "properties": { # Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.
      "a_key": "A String",
    },
  },
  "hiveJob": { # A Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN. # Optional. Job is a Hive job.
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.
      "A String",
    ],
    "properties": { # Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains Hive queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name="value";).
      "a_key": "A String",
    },
  },
  "jobUuid": "A String", # Output only. A UUID that uniquely identifies a job within the project over time. This is in contrast to a user-settable reference.job_id that may be reused over time.
  "labels": { # Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job.
    "a_key": "A String",
  },
  "pigJob": { # A Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN. # Optional. Job is a Pig job.
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "properties": { # Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains the Pig queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).
      "a_key": "A String",
    },
  },
  "placement": { # Dataproc job config. # Required. Job information, including how, when, and where to run the job.
    "clusterLabels": { # Optional. Cluster labels to identify a cluster where the job will be submitted.
      "a_key": "A String",
    },
    "clusterName": "A String", # Required. The name of the cluster where the job will be submitted.
    "clusterUuid": "A String", # Output only. A cluster UUID generated by the Dataproc service when the job is submitted.
  },
  "prestoJob": { # A Dataproc job for running Presto (https://prestosql.io/) queries. IMPORTANT: The Dataproc Presto Optional Component (https://cloud.google.com/dataproc/docs/concepts/components/presto) must be enabled when the cluster is created to submit a Presto job to the cluster. # Optional. Job is a Presto job.
    "clientTags": [ # Optional. Presto client tags to attach to this query
      "A String",
    ],
    "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "outputFormat": "A String", # Optional. The format in which query output will be displayed. See the Presto documentation for supported output formats
    "properties": { # Optional. A mapping of property names to values. Used to set Presto session properties (https://prestodb.io/docs/current/sql/set-session.html) Equivalent to using the --session flag in the Presto CLI
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
  },
  "pysparkJob": { # A Dataproc job for running Apache PySpark (https://spark.apache.org/docs/0.9.0/python-programming-guide.html) applications on YARN. # Optional. Job is a PySpark job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainPythonFileUri": "A String", # Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.
    "properties": { # Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
    "pythonFileUris": [ # Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.
      "A String",
    ],
  },
  "reference": { # Encapsulates the full scoping used to reference a job. # Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a job_id.
    "jobId": "A String", # Optional. The job ID, which must be unique within the project. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.If not specified by the caller, the job ID will be provided by the server.
    "projectId": "A String", # Optional. The ID of the Google Cloud Platform project that the job belongs to. If specified, must match the request project ID.
  },
  "scheduling": { # Job scheduling options. # Optional. Job scheduling configuration.
    "maxFailuresPerHour": 42, # Optional. Maximum number of times per hour a driver may be restarted as a result of driver terminating with non-zero code before job is reported failed.A job may be reported as thrashing if driver exits with non-zero code 4 times within 10 minute window.Maximum value is 10.
    "maxFailuresTotal": 42, # Optional. Maximum number of times in total a driver may be restarted as a result of driver exiting with non-zero code before job is reported failed. Maximum value is 240.
  },
  "sparkJob": { # A Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN. The specification of the main method to call to drive the job. Specify either the jar file that contains the main class or the main class name. To pass both a main jar and a main class in that jar, add the jar to CommonJob.jar_file_uris, and then specify the main class name in main_class. # Optional. Job is a Spark job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainClass": "A String", # The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.
    "mainJarFileUri": "A String", # The HCFS URI of the jar file that contains the main class.
    "properties": { # Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
  },
  "sparkRJob": { # A Dataproc job for running Apache SparkR (https://spark.apache.org/docs/latest/sparkr.html) applications on YARN. # Optional. Job is a SparkR job.
    "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
      "A String",
    ],
    "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
      "A String",
    ],
    "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "mainRFileUri": "A String", # Required. The HCFS URI of the main R file to use as the driver. Must be a .R file.
    "properties": { # Optional. A mapping of property names to values, used to configure SparkR. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
      "a_key": "A String",
    },
  },
  "sparkSqlJob": { # A Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries. # Optional. Job is a SparkSql job.
    "jarFileUris": [ # Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.
      "A String",
    ],
    "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
      "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
        "a_key": "A String",
      },
    },
    "properties": { # Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Dataproc API may be overwritten.
      "a_key": "A String",
    },
    "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
    "queryList": { # A list of queries to run on a cluster. # A list of queries.
      "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
        "A String",
      ],
    },
    "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name="value";).
      "a_key": "A String",
    },
  },
  "status": { # Dataproc job status. # Output only. The job status. Additional application-specific status information may be contained in the type_job and yarn_applications fields.
    "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
    "state": "A String", # Output only. A state message specifying the overall job state.
    "stateStartTime": "A String", # Output only. The time when this state was entered.
    "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
  },
  "statusHistory": [ # Output only. The previous job status.
    { # Dataproc job status.
      "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
      "state": "A String", # Output only. A state message specifying the overall job state.
      "stateStartTime": "A String", # Output only. The time when this state was entered.
      "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
    },
  ],
  "submittedBy": "A String", # Output only. The email address of the user submitting the job. For jobs submitted on the cluster, the address is username@hostname.
  "yarnApplications": [ # Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
    { # A YARN application created by a job. Application information is a subset of org.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
      "name": "A String", # Output only. The application name.
      "progress": 3.14, # Output only. The numerical progress of the application, from 1 to 100.
      "state": "A String", # Output only. The application state.
      "trackingUrl": "A String", # Output only. The HTTP URL of the ApplicationMaster, HistoryServer, or TimelineServer that provides application-specific information. The URL uses the internal hostname, and requires a proxy server for resolution and, possibly, access.
    },
  ],
}
submitAsOperation(projectId, region, body=None, x__xgafv=None)
Submits job to a cluster.

Args:
  projectId: string, Required. The ID of the Google Cloud Platform project that the job belongs to. (required)
  region: string, Required. The Dataproc region in which to handle the request. (required)
  body: object, The request body.
    The object takes the form of:

{ # A request to submit a job.
  "job": { # A Dataproc job resource. # Required. The job resource.
    "done": True or False, # Output only. Indicates whether the job is completed. If the value is false, the job is still in progress. If true, the job is completed, and status.state field will indicate if it was successful, failed, or cancelled.
    "driverControlFilesUri": "A String", # Output only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri.
    "driverOutputResourceUri": "A String", # Output only. A URI pointing to the location of the stdout of the job's driver program.
    "hadoopJob": { # A Dataproc job for running Apache Hadoop MapReduce (https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html). # Optional. Job is a Hadoop job.
      "archiveUris": [ # Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.
        "A String",
      ],
      "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
        "A String",
      ],
      "fileUris": [ # Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.
        "A String",
      ],
      "jarFileUris": [ # Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.
        "A String",
      ],
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "mainClass": "A String", # The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris.
      "mainJarFileUri": "A String", # The HCFS URI of the jar file containing the main class. Examples: 'gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar' 'hdfs:/tmp/test-samples/custom-wordcount.jar' 'file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar'
      "properties": { # Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.
        "a_key": "A String",
      },
    },
    "hiveJob": { # A Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN. # Optional. Job is a Hive job.
      "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
      "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.
        "A String",
      ],
      "properties": { # Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.
        "a_key": "A String",
      },
      "queryFileUri": "A String", # The HCFS URI of the script that contains Hive queries.
      "queryList": { # A list of queries to run on a cluster. # A list of queries.
        "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
          "A String",
        ],
      },
      "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name="value";).
        "a_key": "A String",
      },
    },
    "jobUuid": "A String", # Output only. A UUID that uniquely identifies a job within the project over time. This is in contrast to a user-settable reference.job_id that may be reused over time.
    "labels": { # Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job.
      "a_key": "A String",
    },
    "pigJob": { # A Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN. # Optional. Job is a Pig job.
      "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
      "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.
        "A String",
      ],
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "properties": { # Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.
        "a_key": "A String",
      },
      "queryFileUri": "A String", # The HCFS URI of the script that contains the Pig queries.
      "queryList": { # A list of queries to run on a cluster. # A list of queries.
        "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
          "A String",
        ],
      },
      "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).
        "a_key": "A String",
      },
    },
    "placement": { # Dataproc job config. # Required. Job information, including how, when, and where to run the job.
      "clusterLabels": { # Optional. Cluster labels to identify a cluster where the job will be submitted.
        "a_key": "A String",
      },
      "clusterName": "A String", # Required. The name of the cluster where the job will be submitted.
      "clusterUuid": "A String", # Output only. A cluster UUID generated by the Dataproc service when the job is submitted.
    },
    "prestoJob": { # A Dataproc job for running Presto (https://prestosql.io/) queries. IMPORTANT: The Dataproc Presto Optional Component (https://cloud.google.com/dataproc/docs/concepts/components/presto) must be enabled when the cluster is created to submit a Presto job to the cluster. # Optional. Job is a Presto job.
      "clientTags": [ # Optional. Presto client tags to attach to this query
        "A String",
      ],
      "continueOnFailure": True or False, # Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "outputFormat": "A String", # Optional. The format in which query output will be displayed. See the Presto documentation for supported output formats
      "properties": { # Optional. A mapping of property names to values. Used to set Presto session properties (https://prestodb.io/docs/current/sql/set-session.html) Equivalent to using the --session flag in the Presto CLI
        "a_key": "A String",
      },
      "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
      "queryList": { # A list of queries to run on a cluster. # A list of queries.
        "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
          "A String",
        ],
      },
    },
    "pysparkJob": { # A Dataproc job for running Apache PySpark (https://spark.apache.org/docs/0.9.0/python-programming-guide.html) applications on YARN. # Optional. Job is a PySpark job.
      "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
        "A String",
      ],
      "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
        "A String",
      ],
      "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
        "A String",
      ],
      "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.
        "A String",
      ],
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "mainPythonFileUri": "A String", # Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.
      "properties": { # Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
        "a_key": "A String",
      },
      "pythonFileUris": [ # Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.
        "A String",
      ],
    },
    "reference": { # Encapsulates the full scoping used to reference a job. # Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a job_id.
      "jobId": "A String", # Optional. The job ID, which must be unique within the project. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.If not specified by the caller, the job ID will be provided by the server.
      "projectId": "A String", # Optional. The ID of the Google Cloud Platform project that the job belongs to. If specified, must match the request project ID.
    },
    "scheduling": { # Job scheduling options. # Optional. Job scheduling configuration.
      "maxFailuresPerHour": 42, # Optional. Maximum number of times per hour a driver may be restarted as a result of driver terminating with non-zero code before job is reported failed.A job may be reported as thrashing if driver exits with non-zero code 4 times within 10 minute window.Maximum value is 10.
      "maxFailuresTotal": 42, # Optional. Maximum number of times in total a driver may be restarted as a result of driver exiting with non-zero code before job is reported failed. Maximum value is 240.
    },
    "sparkJob": { # A Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN. The specification of the main method to call to drive the job. Specify either the jar file that contains the main class or the main class name. To pass both a main jar and a main class in that jar, add the jar to CommonJob.jar_file_uris, and then specify the main class name in main_class. # Optional. Job is a Spark job.
      "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
        "A String",
      ],
      "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
        "A String",
      ],
      "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
        "A String",
      ],
      "jarFileUris": [ # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.
        "A String",
      ],
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "mainClass": "A String", # The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.
      "mainJarFileUri": "A String", # The HCFS URI of the jar file that contains the main class.
      "properties": { # Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
        "a_key": "A String",
      },
    },
    "sparkRJob": { # A Dataproc job for running Apache SparkR (https://spark.apache.org/docs/latest/sparkr.html) applications on YARN. # Optional. Job is a SparkR job.
      "archiveUris": [ # Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.
        "A String",
      ],
      "args": [ # Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.
        "A String",
      ],
      "fileUris": [ # Optional. HCFS URIs of files to be placed in the working directory of each executor. Useful for naively parallel tasks.
        "A String",
      ],
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "mainRFileUri": "A String", # Required. The HCFS URI of the main R file to use as the driver. Must be a .R file.
      "properties": { # Optional. A mapping of property names to values, used to configure SparkR. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.
        "a_key": "A String",
      },
    },
    "sparkSqlJob": { # A Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries. # Optional. Job is a SparkSql job.
      "jarFileUris": [ # Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.
        "A String",
      ],
      "loggingConfig": { # The runtime logging config of the job. # Optional. The runtime log config for job execution.
        "driverLogLevels": { # The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'
          "a_key": "A String",
        },
      },
      "properties": { # Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Dataproc API may be overwritten.
        "a_key": "A String",
      },
      "queryFileUri": "A String", # The HCFS URI of the script that contains SQL queries.
      "queryList": { # A list of queries to run on a cluster. # A list of queries.
        "queries": [ # Required. The queries to execute. You do not need to end a query expression with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of a Dataproc API snippet that uses a QueryList to specify a HiveJob: "hiveJob": { "queryList": { "queries": [ "query1", "query2", "query3;query4", ] } }
          "A String",
        ],
      },
      "scriptVariables": { # Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name="value";).
        "a_key": "A String",
      },
    },
    "status": { # Dataproc job status. # Output only. The job status. Additional application-specific status information may be contained in the type_job and yarn_applications fields.
      "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
      "state": "A String", # Output only. A state message specifying the overall job state.
      "stateStartTime": "A String", # Output only. The time when this state was entered.
      "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
    },
    "statusHistory": [ # Output only. The previous job status.
      { # Dataproc job status.
        "details": "A String", # Output only. Optional Job state details, such as an error description if the state is ERROR.
        "state": "A String", # Output only. A state message specifying the overall job state.
        "stateStartTime": "A String", # Output only. The time when this state was entered.
        "substate": "A String", # Output only. Additional state information, which includes status reported by the agent.
      },
    ],
    "submittedBy": "A String", # Output only. The email address of the user submitting the job. For jobs submitted on the cluster, the address is username@hostname.
    "yarnApplications": [ # Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
      { # A YARN application created by a job. Application information is a subset of org.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto.Beta Feature: This report is available for testing purposes only. It may be changed before final release.
        "name": "A String", # Output only. The application name.
        "progress": 3.14, # Output only. The numerical progress of the application, from 1 to 100.
        "state": "A String", # Output only. The application state.
        "trackingUrl": "A String", # Output only. The HTTP URL of the ApplicationMaster, HistoryServer, or TimelineServer that provides application-specific information. The URL uses the internal hostname, and requires a proxy server for resolution and, possibly, access.
      },
    ],
  },
  "requestId": "A String", # Optional. A unique id used to identify the request. If the server receives two SubmitJobRequest (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1beta2#google.cloud.dataproc.v1.SubmitJobRequest)s with the same id, then the second request will be ignored and the first Job created and stored in the backend is returned.It is recommended to always set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.
  "error": { # The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). Each Status message contains three pieces of data: error code, error message, and error details.You can find out more about this error model and how to work with it in the API Design Guide (https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should be a resource name ending with operations/{unique_id}.
  "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
testIamPermissions(resource, body=None, x__xgafv=None)
Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

Args:
  resource: string, REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for TestIamPermissions method.
  "permissions": [ # The set of permissions to check for the resource. Permissions with wildcards (such as '*' or 'storage.*') are not allowed. For more information see IAM Overview (https://cloud.google.com/iam/docs/overview#permissions).
    "A String",
  ],
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response message for TestIamPermissions method.
  "permissions": [ # A subset of TestPermissionsRequest.permissions that the caller is allowed.
    "A String",
  ],
}