:doc:`EMRContainers <../../emr-containers>` / Client / list_job_templates

******************
list_job_templates
******************



.. py:method:: EMRContainers.Client.list_job_templates(**kwargs)

  

  Lists job templates based on a set of parameters. Job template stores values of StartJobRun API request in a template and can be used to start a job run. Job template allows two use cases: avoid repeating recurring StartJobRun API request values, enforcing certain values in StartJobRun API request.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/ListJobTemplates>`_  


  **Request Syntax**
  ::

    response = client.list_job_templates(
        createdAfter=datetime(2015, 1, 1),
        createdBefore=datetime(2015, 1, 1),
        maxResults=123,
        nextToken='string'
    )
    
  :type createdAfter: datetime
  :param createdAfter: 

    The date and time after which the job templates were created.

    

  
  :type createdBefore: datetime
  :param createdBefore: 

    The date and time before which the job templates were created.

    

  
  :type maxResults: integer
  :param maxResults: 

    The maximum number of job templates that can be listed.

    

  
  :type nextToken: string
  :param nextToken: 

    The token for the next set of job templates to return.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'templates': [
              {
                  'name': 'string',
                  'id': 'string',
                  'arn': 'string',
                  'createdAt': datetime(2015, 1, 1),
                  'createdBy': 'string',
                  'tags': {
                      'string': 'string'
                  },
                  'jobTemplateData': {
                      'executionRoleArn': 'string',
                      'releaseLabel': 'string',
                      'configurationOverrides': {
                          'applicationConfiguration': [
                              {
                                  'classification': 'string',
                                  'properties': {
                                      'string': 'string'
                                  },
                                  'configurations': {'... recursive ...'}
                              },
                          ],
                          'monitoringConfiguration': {
                              'persistentAppUI': 'string',
                              'cloudWatchMonitoringConfiguration': {
                                  'logGroupName': 'string',
                                  'logStreamNamePrefix': 'string'
                              },
                              's3MonitoringConfiguration': {
                                  'logUri': 'string'
                              }
                          }
                      },
                      'jobDriver': {
                          'sparkSubmitJobDriver': {
                              'entryPoint': 'string',
                              'entryPointArguments': [
                                  'string',
                              ],
                              'sparkSubmitParameters': 'string'
                          },
                          'sparkSqlJobDriver': {
                              'entryPoint': 'string',
                              'sparkSqlParameters': 'string'
                          }
                      },
                      'parameterConfiguration': {
                          'string': {
                              'type': 'NUMBER'|'STRING',
                              'defaultValue': 'string'
                          }
                      },
                      'jobTags': {
                          'string': 'string'
                      }
                  },
                  'kmsKeyArn': 'string',
                  'decryptionError': 'string'
              },
          ],
          'nextToken': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **templates** *(list) --* 

        This output lists information about the specified job templates.

        
        

        - *(dict) --* 

          This entity describes a job template. Job template stores values of StartJobRun API request in a template and can be used to start a job run. Job template allows two use cases: avoid repeating recurring StartJobRun API request values, enforcing certain values in StartJobRun API request.

          
          

          - **name** *(string) --* 

            The name of the job template.

            
          

          - **id** *(string) --* 

            The ID of the job template.

            
          

          - **arn** *(string) --* 

            The ARN of the job template.

            
          

          - **createdAt** *(datetime) --* 

            The date and time when the job template was created.

            
          

          - **createdBy** *(string) --* 

            The user who created the job template.

            
          

          - **tags** *(dict) --* 

            The tags assigned to the job template.

            
            

            - *(string) --* 
              

              - *(string) --* 
        
      
          

          - **jobTemplateData** *(dict) --* 

            The job template data which holds values of StartJobRun API request.

            
            

            - **executionRoleArn** *(string) --* 

              The execution role ARN of the job run.

              
            

            - **releaseLabel** *(string) --* 

              The release version of Amazon EMR.

              
            

            - **configurationOverrides** *(dict) --* 

              The configuration settings that are used to override defaults configuration.

              
              

              - **applicationConfiguration** *(list) --* 

                The configurations for the application running by the job run.

                
                

                - *(dict) --* 

                  A configuration specification to be used when provisioning virtual clusters, which can include configurations for applications and software bundled with Amazon EMR on EKS. 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) --* 

                    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 configurations for monitoring.

                
                

                - **persistentAppUI** *(string) --* 

                  Monitoring configurations for the persistent application UI.

                  
                

                - **cloudWatchMonitoringConfiguration** *(dict) --* 

                  Monitoring configurations for CloudWatch.

                  
                  

                  - **logGroupName** *(string) --* 

                    The name of the log group for log publishing.

                    
                  

                  - **logStreamNamePrefix** *(string) --* 

                    The specified name prefix for log streams.

                    
              
                

                - **s3MonitoringConfiguration** *(dict) --* 

                  Amazon S3 configuration for monitoring log publishing.

                  
                  

                  - **logUri** *(string) --* 

                    Amazon S3 destination URI for log publishing.

                    
              
            
          
            

            - **jobDriver** *(dict) --* 

              Specify the driver that the job runs on. Exactly one of the two available job drivers is required, either sparkSqlJobDriver or sparkSubmitJobDriver.

              
              

              - **sparkSubmitJobDriver** *(dict) --* 

                The job driver parameters specified for spark submit.

                
                

                - **entryPoint** *(string) --* 

                  The entry point of job application.

                  
                

                - **entryPointArguments** *(list) --* 

                  The arguments for job application.

                  
                  

                  - *(string) --* 
              
                

                - **sparkSubmitParameters** *(string) --* 

                  The Spark submit parameters that are used for job runs.

                  
            
              

              - **sparkSqlJobDriver** *(dict) --* 

                The job driver for job type.

                
                

                - **entryPoint** *(string) --* 

                  The SQL file to be executed.

                  
                

                - **sparkSqlParameters** *(string) --* 

                  The Spark parameters to be included in the Spark SQL command.

                  
            
          
            

            - **parameterConfiguration** *(dict) --* 

              The configuration of parameters existing in the job template.

              
              

              - *(string) --* 
                

                - *(dict) --* 

                  The configuration of a job template parameter.

                  
                  

                  - **type** *(string) --* 

                    The type of the job template parameter. Allowed values are: ‘STRING’, ‘NUMBER’.

                    
                  

                  - **defaultValue** *(string) --* 

                    The default value for the job template parameter.

                    
              
          
        
            

            - **jobTags** *(dict) --* 

              The tags assigned to jobs started using the job template.

              
              

              - *(string) --* 
                

                - *(string) --* 
          
        
        
          

          - **kmsKeyArn** *(string) --* 

            The KMS key ARN used to encrypt the job template.

            
          

          - **decryptionError** *(string) --* 

            The error message in case the decryption of job template fails.

            
      
    
      

      - **nextToken** *(string) --* 

        This output displays the token for the next set of job templates.

        
  
  **Exceptions**
  
  *   :py:class:`EMRContainers.Client.exceptions.ValidationException`

  
  *   :py:class:`EMRContainers.Client.exceptions.InternalServerException`

  