EMRServerless / Client / start_job_run



Starts a job run.

See also: AWS API Documentation

Request Syntax

response = client.start_job_run(
        'sparkSubmit': {
            'entryPoint': 'string',
            'entryPointArguments': [
            'sparkSubmitParameters': 'string'
        'hive': {
            'query': 'string',
            'initQueryFile': 'string',
            'parameters': 'string'
        'applicationConfiguration': [
                'classification': 'string',
                'properties': {
                    'string': 'string'
                'configurations': {'... recursive ...'}
        'monitoringConfiguration': {
            's3MonitoringConfiguration': {
                'logUri': 'string',
                'encryptionKeyArn': 'string'
            'managedPersistenceMonitoringConfiguration': {
                'enabled': True|False,
                'encryptionKeyArn': 'string'
        'string': 'string'
  • applicationId (string) –


    The ID of the application on which to run the job.

  • clientToken (string) –


    The client idempotency token of the job run to start. Its value must be unique for each request.

    This field is autopopulated if not provided.

  • executionRoleArn (string) –


    The execution role ARN for the job run.

  • jobDriver (dict) –

    The job driver for the job run.


    This is a Tagged Union structure. Only one of the following top level keys can be set: sparkSubmit, hive.

    • sparkSubmit (dict) –

      The job driver parameters specified for Spark.

      • entryPoint (string) – [REQUIRED]

        The entry point for the Spark submit job run.

      • entryPointArguments (list) –

        The arguments for the Spark submit job run.

        • (string) –

      • sparkSubmitParameters (string) –

        The parameters for the Spark submit job run.

    • hive (dict) –

      The job driver parameters specified for Hive.

      • query (string) – [REQUIRED]

        The query for the Hive job run.

      • initQueryFile (string) –

        The query file for the Hive job run.

      • parameters (string) –

        The parameters for the Hive job run.

  • configurationOverrides (dict) –

    The configuration overrides for the job run.

    • applicationConfiguration (list) –

      The override configurations for the application.

      • (dict) –

        A configuration specification to be used when provisioning an application. A configuration consists of a classification, properties, and optional nested configurations. A classification refers to an application-specific configuration file. Properties are the settings you want to change in that file.

        • classification (string) – [REQUIRED]

          The classification within a configuration.

        • properties (dict) –

          A set of properties specified within a configuration classification.

          • (string) –

            • (string) –

        • configurations (list) –

          A list of additional configurations to apply within a configuration object.

    • monitoringConfiguration (dict) –

      The override configurations for monitoring.

      • s3MonitoringConfiguration (dict) –

        The Amazon S3 configuration for monitoring log publishing.

        • logUri (string) –

          The Amazon S3 destination URI for log publishing.

        • encryptionKeyArn (string) –

          The KMS key ARN to encrypt the logs published to the given Amazon S3 destination.

      • managedPersistenceMonitoringConfiguration (dict) –

        The managed log persistence configuration for a job run.

        • enabled (boolean) –

          Enables managed logging and defaults to true. If set to false, managed logging will be turned off.

        • encryptionKeyArn (string) –

          The KMS key ARN to encrypt the logs stored in managed log persistence.

  • tags (dict) –

    The tags assigned to the job run.

    • (string) –

      • (string) –

  • executionTimeoutMinutes (integer) – The maximum duration for the job run to run. If the job run runs beyond this duration, it will be automatically cancelled.

  • name (string) – The optional job run name. This doesn’t have to be unique.

Return type:



Response Syntax

    'applicationId': 'string',
    'jobRunId': 'string',
    'arn': 'string'

Response Structure

  • (dict) –

    • applicationId (string) –

      This output displays the application ID on which the job run was submitted.

    • jobRunId (string) –

      The output contains the ID of the started job run.

    • arn (string) –

      The output lists the execution role ARN of the job run.


  • EMRServerless.Client.exceptions.ValidationException

  • EMRServerless.Client.exceptions.ResourceNotFoundException

  • EMRServerless.Client.exceptions.InternalServerException

  • EMRServerless.Client.exceptions.ConflictException