Amazon EMR

2025/05/16 - Amazon EMR - 4 new api methods

Changes  Added APIs for managing Application UIs: Access Persistent (serverless) UIs via CreatePersistentAppUI DescribePersistentAppUI & GetPersistentAppUIPresignedURL, and Cluster-based UIs through GetOnClusterAppUIPresignedURL. Supports Yarn, Spark History, and TEZ interfaces.

DescribePersistentAppUI (new) Link ¶

Describes a persistent application user interface.

See also: AWS API Documentation

Request Syntax

client.describe_persistent_app_ui(
    PersistentAppUIId='string'
)
type PersistentAppUIId:

string

param PersistentAppUIId:

[REQUIRED]

The identifier for the persistent application user interface.

rtype:

dict

returns:

Response Syntax

{
    'PersistentAppUI': {
        'PersistentAppUIId': 'string',
        'PersistentAppUITypeList': [
            'SHS'|'TEZ'|'YTS',
        ],
        'PersistentAppUIStatus': 'string',
        'AuthorId': 'string',
        'CreationTime': datetime(2015, 1, 1),
        'LastModifiedTime': datetime(2015, 1, 1),
        'LastStateChangeReason': 'string',
        'Tags': [
            {
                'Key': 'string',
                'Value': 'string'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • PersistentAppUI (dict) --

      The persistent application user interface.

      • PersistentAppUIId (string) --

        The identifier for the persistent application user interface object.

      • PersistentAppUITypeList (list) --

        The type list for the persistent application user interface object. Valid values include SHS, YTS, or TEZ.

        • (string) --

      • PersistentAppUIStatus (string) --

        The status for the persistent application user interface object.

      • AuthorId (string) --

        The author ID for the persistent application user interface object.

      • CreationTime (datetime) --

        The creation date and time for the persistent application user interface object.

      • LastModifiedTime (datetime) --

        The date and time the persistent application user interface object was last changed.

      • LastStateChangeReason (string) --

        The reason the persistent application user interface object was last changed.

      • Tags (list) --

        A collection of tags for the persistent application user interface object.

        • (dict) --

          A key-value pair containing user-defined metadata that you can associate with an Amazon EMR resource. Tags make it easier to associate clusters in various ways, such as grouping clusters to track your Amazon EMR resource allocation costs. For more information, see Tag Clusters.

          • Key (string) --

            A user-defined key, which is the minimum required information for a valid tag. For more information, see Tag.

          • Value (string) --

            A user-defined value, which is optional in a tag. For more information, see Tag Clusters.

CreatePersistentAppUI (new) Link ¶

Creates a persistent application user interface.

See also: AWS API Documentation

Request Syntax

client.create_persistent_app_ui(
    TargetResourceArn='string',
    EMRContainersConfig={
        'JobRunId': 'string'
    },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    XReferer='string',
    ProfilerType='SHS'|'TEZUI'|'YTS'
)
type TargetResourceArn:

string

param TargetResourceArn:

[REQUIRED]

The unique Amazon Resource Name (ARN) of the target resource.

type EMRContainersConfig:

dict

param EMRContainersConfig:

The EMR containers configuration.

  • JobRunId (string) --

    The Job run ID for the container configuration.

type Tags:

list

param Tags:

Tags for the persistent application user interface.

  • (dict) --

    A key-value pair containing user-defined metadata that you can associate with an Amazon EMR resource. Tags make it easier to associate clusters in various ways, such as grouping clusters to track your Amazon EMR resource allocation costs. For more information, see Tag Clusters.

    • Key (string) --

      A user-defined key, which is the minimum required information for a valid tag. For more information, see Tag.

    • Value (string) --

      A user-defined value, which is optional in a tag. For more information, see Tag Clusters.

type XReferer:

string

param XReferer:

The cross reference for the persistent application user interface.

type ProfilerType:

string

param ProfilerType:

The profiler type for the persistent application user interface. Valid values are SHS, TEZUI, or YTS.

rtype:

dict

returns:

Response Syntax

{
    'PersistentAppUIId': 'string',
    'RuntimeRoleEnabledCluster': True|False
}

Response Structure

  • (dict) --

    • PersistentAppUIId (string) --

      The persistent application user interface identifier.

    • RuntimeRoleEnabledCluster (boolean) --

      Represents if the EMR on EC2 cluster that the persisent application user interface is created for is a runtime role enabled cluster or not.

GetOnClusterAppUIPresignedURL (new) Link ¶

The presigned URL properties for the cluster's application user interface.

See also: AWS API Documentation

Request Syntax

client.get_on_cluster_app_ui_presigned_url(
    ClusterId='string',
    OnClusterAppUIType='SparkHistoryServer'|'YarnTimelineService'|'TezUI'|'ApplicationMaster'|'JobHistoryServer'|'ResourceManager',
    ApplicationId='string',
    DryRun=True|False,
    ExecutionRoleArn='string'
)
type ClusterId:

string

param ClusterId:

[REQUIRED]

The cluster ID associated with the cluster's application user interface presigned URL.

type OnClusterAppUIType:

string

param OnClusterAppUIType:

The application UI type associated with the cluster's application user interface presigned URL.

type ApplicationId:

string

param ApplicationId:

The application ID associated with the cluster's application user interface presigned URL.

type DryRun:

boolean

param DryRun:

Determines if the user interface presigned URL is for a dry run.

type ExecutionRoleArn:

string

param ExecutionRoleArn:

The execution role ARN associated with the cluster's application user interface presigned URL.

rtype:

dict

returns:

Response Syntax

{
    'PresignedURLReady': True|False,
    'PresignedURL': 'string'
}

Response Structure

  • (dict) --

    • PresignedURLReady (boolean) --

      Used to determine if the presigned URL is ready.

    • PresignedURL (string) --

      The cluster's generated presigned URL.

GetPersistentAppUIPresignedURL (new) Link ¶

The presigned URL properties for the cluster's application user interface.

See also: AWS API Documentation

Request Syntax

client.get_persistent_app_ui_presigned_url(
    PersistentAppUIId='string',
    PersistentAppUIType='SHS'|'TEZ'|'YTS',
    ApplicationId='string',
    AuthProxyCall=True|False,
    ExecutionRoleArn='string'
)
type PersistentAppUIId:

string

param PersistentAppUIId:

[REQUIRED]

The persistent application user interface ID associated with the presigned URL.

type PersistentAppUIType:

string

param PersistentAppUIType:

The persistent application user interface type associated with the presigned URL.

type ApplicationId:

string

param ApplicationId:

The application ID associated with the presigned URL.

type AuthProxyCall:

boolean

param AuthProxyCall:

A boolean that represents if the caller is an authentication proxy call.

type ExecutionRoleArn:

string

param ExecutionRoleArn:

The execution role ARN associated with the presigned URL.

rtype:

dict

returns:

Response Syntax

{
    'PresignedURLReady': True|False,
    'PresignedURL': 'string'
}

Response Structure

  • (dict) --

    • PresignedURLReady (boolean) --

      Used to determine if the presigned URL is ready.

    • PresignedURL (string) --

      The returned presigned URL.