Amazon EMR Emr Step API
The Emr Step API from Amazon EMR — 3 operation(s) for emr step.
The Emr Step API from Amazon EMR — 3 operation(s) for emr step.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/amazon-emr:amazon-emr-step-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Amazon EMR Step API
version: '2009-03-31'
description: Generated from AWS's published Smithy model for Amazon EMR. 3 operation(s).
contact:
name: Amazon Web Services
url: https://aws.amazon.com/contact-us/
license:
name: Apache 2.0
identifier: Apache-2.0
url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://elasticmapreduce.{region}.amazonaws.com
variables:
region:
default: us-east-1
security:
- sigv4: []
tags:
- name: Step
paths:
/#CancelSteps:
post:
operationId: CancelSteps
summary: Cancel Steps
description: Cancels a pending step or steps in a running cluster. Available only in Amazon EMR versions 4.8.0 and later, excluding version 5.0.0. A maximum of 256 steps are allowed in each CancelSteps request. CancelSteps is idempotent but asynchronous; it does not guarantee that a step will be canceled, even if the request is successfully submitted. When you use Amazon EMR releases 5.28.0 and later, you can cancel steps that are in a PENDING or RUNNING state. In earlier versions of Amazon EMR, you can only cancel steps that are in a PENDING state.
responses:
'200':
description: Success
content:
application/x-amz-json-1.1:
schema:
$ref: '#/components/schemas/CancelStepsOutput'
'500':
description: InternalServerError
content:
application/x-amz-json-1.1:
schema:
$ref: '#/components/schemas/InternalServerError'
'400':
description: InvalidRequestException
content:
application/x-amz-json-1.1:
schema:
$ref: '#/components/schemas/InvalidRequestException'
parameters:
- name: X-Amz-Target
in: header
required: true
schema:
type: string
enum:
- ElasticMapReduce.CancelSteps
requestBody:
required: true
content:
application/x-amz-json-1.1:
schema:
$ref: '#/components/schemas/CancelStepsInput'
tags:
- Step
/#DescribeStep:
post:
operationId: DescribeStep
summary: Describe Step
description: Provides more detail about the cluster step.
responses:
'200':
description: Success
content:
application/x-amz-json-1.1:
schema:
$ref: '#/components/schemas/DescribeStepOutput'
'500':
description: InternalServerException
content:
application/x-amz-json-1.1:
schema:
$ref: '#/components/schemas/InternalServerException'
'400':
description: InvalidRequestException
content:
application/x-amz-json-1.1:
schema:
$ref: '#/components/schemas/InvalidRequestException'
parameters:
- name: X-Amz-Target
in: header
required: true
schema:
type: string
enum:
- ElasticMapReduce.DescribeStep
requestBody:
required: true
content:
application/x-amz-json-1.1:
schema:
$ref: '#/components/schemas/DescribeStepInput'
tags:
- Step
/#ListSteps:
post:
operationId: ListSteps
summary: List Steps
description: Provides a list of steps for the cluster in reverse order unless you specify stepIds with the request or filter by StepStates. You can specify a maximum of 10 stepIDs. The CLI automatically paginates results to return a list greater than 50 steps. To return more than 50 steps using the CLI, specify a Marker, which is a pagination token that indicates the next set of steps to retrieve.
responses:
'200':
description: Success
content:
application/x-amz-json-1.1:
schema:
$ref: '#/components/schemas/ListStepsOutput'
'500':
description: InternalServerException
content:
application/x-amz-json-1.1:
schema:
$ref: '#/components/schemas/InternalServerException'
'400':
description: InvalidRequestException
content:
application/x-amz-json-1.1:
schema:
$ref: '#/components/schemas/InvalidRequestException'
parameters:
- name: X-Amz-Target
in: header
required: true
schema:
type: string
enum:
- ElasticMapReduce.ListSteps
requestBody:
required: true
content:
application/x-amz-json-1.1:
schema:
$ref: '#/components/schemas/ListStepsInput'
tags:
- Step
components:
schemas:
DescribeStepOutput:
type: object
properties:
Step:
$ref: '#/components/schemas/Step'
StepStateChangeReason:
type: object
properties:
Code:
type: string
enum:
- NONE
description: 'The programmable code for the state change reason. Note: Currently, the service provides no code for the state change.'
Message:
type: string
description: The descriptive message for the state change reason.
StepStatus:
type: object
properties:
State:
type: string
enum:
- PENDING
- CANCEL_PENDING
- RUNNING
- COMPLETED
- CANCELLED
- FAILED
- INTERRUPTED
description: The execution state of the cluster step.
StateChangeReason:
$ref: '#/components/schemas/StepStateChangeReason'
FailureDetails:
$ref: '#/components/schemas/FailureDetails'
Timeline:
$ref: '#/components/schemas/StepTimeline'
Step:
type: object
properties:
Id:
type: string
description: The identifier of the cluster step.
Name:
type: string
description: The name of the cluster step.
Config:
$ref: '#/components/schemas/HadoopStepConfig'
ActionOnFailure:
type: string
enum:
- TERMINATE_JOB_FLOW
- TERMINATE_CLUSTER
- CANCEL_AND_WAIT
- CONTINUE
description: The action to take when the cluster step fails. Possible values are TERMINATE_CLUSTER, CANCEL_AND_WAIT, and CONTINUE. TERMINATE_JOB_FLOW is provided for backward compatibility. We recommend using TERMINATE_CLUSTER instead. If a cluster's StepConcurrencyLevel is greater than 1, do not use AddJobFlowSteps to submit a step with this parameter set to CANCEL_AND_WAIT or TERMINATE_CLUSTER. The step is not submitted and the action fails with a message that the ActionOnFailure setting is not valid. If you change a cluster's StepConcurrencyLevel to be greater than 1 while a step is running, the ActionO
Status:
$ref: '#/components/schemas/StepStatus'
ExecutionRoleArn:
type: string
description: 'The Amazon Resource Name (ARN) of the runtime role for a step on the cluster. The runtime role can be a cross-account IAM role. The runtime role ARN is a combination of account ID, role name, and role type using the following format: arn:partition:service:region:account:resource. For example, arn:aws:IAM::1234567890:role/ReadOnly is a correctly formatted runtime role ARN.'
LogUri:
type: string
description: The Amazon S3 destination URI for log publishing.
EncryptionKeyArn:
type: string
description: The KMS key ARN to encrypt the logs published to the given Amazon S3 destination.
ListStepsInput:
type: object
properties:
ClusterId:
type: string
description: The identifier of the cluster for which to list the steps.
StepStates:
type: array
items:
type: string
enum:
- PENDING
- CANCEL_PENDING
- RUNNING
- COMPLETED
- CANCELLED
- FAILED
- INTERRUPTED
description: The filter to limit the step list based on certain states.
StepIds:
type: array
items:
type: string
description: The filter to limit the step list based on the identifier of the steps. You can specify a maximum of ten Step IDs. The character constraint applies to the overall length of the array.
Marker:
type: string
description: The maximum number of steps that a single ListSteps action returns is 50. To return a longer list of steps, use multiple ListSteps actions along with the Marker parameter, which is a pagination token that indicates the next set of results to retrieve.
required:
- ClusterId
ListStepsOutput:
type: object
properties:
Steps:
type: array
items:
$ref: '#/components/schemas/StepSummary'
description: The filtered list of steps for the cluster.
Marker:
type: string
description: The maximum number of steps that a single ListSteps action returns is 50. To return a longer list of steps, use multiple ListSteps actions along with the Marker parameter, which is a pagination token that indicates the next set of results to retrieve.
CancelStepsInfo:
type: object
properties:
StepId:
type: string
description: The encrypted StepId of a step.
Status:
type: string
enum:
- SUBMITTED
- FAILED
description: The status of a CancelSteps Request. The value may be SUBMITTED or FAILED.
Reason:
type: string
description: The reason for the failure if the CancelSteps request fails.
InternalServerException:
type: object
properties:
Message:
type: string
description: The message associated with the exception.
FailureDetails:
type: object
properties:
Reason:
type: string
description: The reason for the step failure. In the case where the service cannot successfully determine the root cause of the failure, it returns "Unknown Error" as a reason.
Message:
type: string
description: The descriptive message including the error the Amazon EMR service has identified as the cause of step failure. This is text from an error log that describes the root cause of the failure.
LogFile:
type: string
description: The path to the log file where the step failure root cause was originally recorded.
CancelStepsInput:
type: object
properties:
ClusterId:
type: string
description: The ClusterID for the specified steps that will be canceled. Use RunJobFlow and ListClusters to get ClusterIDs.
StepIds:
type: array
items:
type: string
description: The list of StepIDs to cancel. Use ListSteps to get steps and their states for the specified cluster.
StepCancellationOption:
type: string
enum:
- SEND_INTERRUPT
- TERMINATE_PROCESS
description: The option to choose to cancel RUNNING steps. By default, the value is SEND_INTERRUPT.
required:
- ClusterId
- StepIds
CancelStepsOutput:
type: object
properties:
CancelStepsInfoList:
type: array
items:
$ref: '#/components/schemas/CancelStepsInfo'
description: A list of CancelStepsInfo, which shows the status of specified cancel requests for each StepID specified.
InvalidRequestException:
type: object
properties:
ErrorCode:
type: string
description: The error code associated with the exception.
Message:
type: string
description: The message associated with the exception.
StepSummary:
type: object
properties:
Id:
type: string
description: The identifier of the cluster step.
Name:
type: string
description: The name of the cluster step.
Config:
$ref: '#/components/schemas/HadoopStepConfig'
ActionOnFailure:
type: string
enum:
- TERMINATE_JOB_FLOW
- TERMINATE_CLUSTER
- CANCEL_AND_WAIT
- CONTINUE
description: The action to take when the cluster step fails. Possible values are TERMINATE_CLUSTER, CANCEL_AND_WAIT, and CONTINUE. TERMINATE_JOB_FLOW is available for backward compatibility.
Status:
$ref: '#/components/schemas/StepStatus'
LogUri:
type: string
description: The Amazon S3 destination URI for log publishing.
EncryptionKeyArn:
type: string
description: The KMS key ARN to encrypt the logs published to the given Amazon S3 destination.
DescribeStepInput:
type: object
properties:
ClusterId:
type: string
description: The identifier of the cluster with steps to describe.
StepId:
type: string
description: The identifier of the step to describe.
required:
- ClusterId
- StepId
StepTimeline:
type: object
properties:
CreationDateTime:
type: string
format: date-time
description: The date and time when the cluster step was created.
StartDateTime:
type: string
format: date-time
description: The date and time when the cluster step execution started.
EndDateTime:
type: string
format: date-time
description: The date and time when the cluster step execution completed or failed.
InternalServerError:
type: object
properties: {}
HadoopStepConfig:
type: object
properties:
Jar:
type: string
description: The path to the JAR file that runs during the step.
Properties:
type: object
additionalProperties:
type: string
description: The list of Java properties that are set when the step runs. You can use these properties to pass key-value pairs to your main function.
MainClass:
type: string
description: The name of the main class in the specified Java file. If not specified, the JAR file should specify a main class in its manifest file.
Args:
type: array
items:
type: string
description: The list of command line arguments to pass to the JAR file's main function for execution.
securitySchemes:
sigv4:
type: apiKey
in: header
name: Authorization
description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
x-aws-sigv4:
signingName: elasticmapreduce
x-provenance:
method: harvested
publisher: Amazon Web Services
source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/emr/service/2009-03-31/emr-2009-03-31.json
note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)